.elementor-430 .elementor-element.elementor-element-b3d4a6c > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-430 .elementor-element.elementor-element-e469611{padding:30px 0px 30px 0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-430 .elementor-element.elementor-element-8f7d9b1 .elementor-button{background-color:#FD6A36;}.elementor-430 .elementor-element.elementor-element-d4f8540 .elementor-button{background-color:#FD6A36;}@media(max-width:767px){.elementor-430 .elementor-element.elementor-element-5032ea3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for Amy_V2_Movie_Grid, class: .elementor-element-5032ea3 */padding for edges */
  box-sizing: border-box;
}

.amy-movie-list {
  position: relative;
  width: 100%;
}

.amy-movie-items {
  display: flex; /* Use flexbox for auto-wrapping */
  flex-wrap: wrap; /* Allow items to wrap to next line */
  margin: 0 -10px; /* Negative margins for gutters */
  justify-content: flex-start; /* Align left, but space evenly if needed */
  align-items: stretch; /* Stretch items to same height */
}

/* Movie Item Base */
.amy-movie-item {
  flex: 0 0 auto; /* Allow flex-grow but set basis */
  padding: 0 10px; /* Gutter spacing */
  margin-bottom: 20px; /* Vertical spacing */
  box-sizing: border-box;
  text-align: center; /* Center content inside items */
  transition: transform 0.3s ease; /* Smooth hover effect */
}

.amy-movie-item:hover {
  transform: translateY(-5px); /* Slight lift on hover */
}

/* Default to 1 column on extra small screens */
@media (max-width: 575px) {
  .amy-movie-item {
    flex-basis: 100%; /* 1 column */
  }
}

/* 2 columns on small screens */
@media (min-width: 576px) and (max-width: 767px) {
  .amy-movie-item {
    flex-basis: 50%; /* 2 columns */
  }
}

/* 3 columns on medium screens */
@media (min-width: 768px) and (max-width: 991px) {
  .amy-movie-item {
    flex-basis: 33.333%; /* 3 columns */
  }
}

/* 4 columns on large screens */
@media (min-width: 992px) and (max-width: 1199px) {
  .amy-movie-item {
    flex-basis: 25%; /* 4 columns */
  }
}

/* 5 columns on extra large screens (as per user request for 5 in a line) */
@media (min-width: 1200px) {
  .amy-movie-item {
    flex-basis: 20%; /* 5 columns */
  }
}

/* Override for specific classes like col-md-4, col-md-3, etc., to ensure compatibility */
.amy-movie-item.col-md-15 {
  flex-basis: 20%; /* 5 columns default */
}

@media (max-width: 1199px) {
  .amy-movie-item.col-md-15 {
    flex-basis: 25%; /* 4 columns */
  }
}

@media (max-width: 991px) {
  .amy-movie-item.col-md-15 {
    flex-basis: 33.333%; /* 3 columns */
  }
}

@media (max-width: 767px) {
  .amy-movie-item.col-md-15 {
    flex-basis: 50%; /* 2 columns */
  }
}

@media (max-width: 575px) {
  .amy-movie-item.col-md-15 {
    flex-basis: 100%; /* 1 column */
  }
}

.amy-movie-item.col-md-4 {
  flex-basis: 33.333%; /* 3 columns default for md-4 equivalent */
}

@media (max-width: 1199px) {
  .amy-movie-item.col-md-4 {
    flex-basis: 50%; /* 2 columns */
  }
}

@media (max-width: 991px) {
  .amy-movie-item.col-md-4 {
    flex-basis: 100%; /* 1 column */
  }
}

.amy-movie-item.col-md-3 {
  flex-basis: 33.333%; /* 3 columns */
}

@media (max-width: 1199px) {
  .amy-movie-item.col-md-3 {
    flex-basis: 33.333%; /* Still 3 */
  }
}

@media (max-width: 991px) {
  .amy-movie-item.col-md-3 {
    flex-basis: 50%; /* 2 columns */
  }
}

@media (max-width: 575px) {
  .amy-movie-item.col-md-3 {
    flex-basis: 100%; /* 1 column */
  }
}

.amy-movie-item.col-md-6 {
  flex-basis: 50%; /* 2 columns */
}

@media (max-width: 991px) {
  .amy-movie-item.col-md-6 {
    flex-basis: 100%; /* 1 column */
  }
}

/* Internal Item Structure */
.amy-movie-item-front {
  position: relative;
  width: 100%; /* Full width of item */
  overflow: hidden; /* Prevent overflow */
}

.amy-movie-item-poster {
  position: relative;
  margin-bottom: 10px;
  overflow: hidden;
}

.amy-movie-item-poster img {
  width: 100%; /* Responsive image */
  height: auto; /* Maintain aspect ratio */
  display: block;
  max-height: 300px; /* Cap height on small screens */
  object-fit: cover; /* Cover without distortion */
}

@media (max-width: 575px) {
  .amy-movie-item-poster {
    max-height: 250px; /* Smaller on mobile */
  }
  .amy-movie-item-poster img {
    max-height: 250px;
  }
}

/* Fields like Title, Desc, Duration, etc. */
.amy-movie-field-title {
  font-size: 18px; /* Base size */
  margin: 10px 0 5px;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; /* Prevent wrapping on small screens */
  color: #202020;
}

@media (max-width: 767px) {
  .amy-movie-field-title {
    font-size: 16px; /* Smaller on mobile */
    white-space: normal; /* Allow wrap if needed */
  }
}

.amy-movie-field-desc {
  font-size: 14px;
  color: #666;
  margin-bottom: 10px;
  display: -webkit-box;
  -webkit-line-clamp: 3; /* Limit to 3 lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (max-width: 575px) {
  .amy-movie-field-desc {
    display: none; /* Hide desc on very small screens to save space */
  }
}

.amy-movie-field-duration,
.amy-movie-field-rating,
.amy-movie-custom-field-group {
  font-size: 13px;
  color: #999;
  margin-bottom: 5px;
}

@media (max-width: 767px) {
  .amy-movie-field-duration,
  .amy-movie-field-rating,
  .amy-movie-custom-field-group {
    font-size: 12px;
  }
}

/* Back Side (Hover/Flip Effect) */
.amy-movie-item-back {
  display: none; /* Assuming it's shown on hover or JS */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.95); /* Semi-transparent for overlay */
  padding: 15px;
  box-sizing: border-box;
}

.amy-movie-item:hover .amy-movie-item-back {
  display: block; /* Simple show on hover; enhance with JS if needed */
}

/* Adjust min-height for back inner to match poster */
.amy-movie-item-back-inner {
  min-height: auto; /* Auto to match content */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

@media (max-width: 575px) {
  .amy-movie-item-back-inner {
    padding: 10px; /* Smaller padding on mobile */
  }
}

/* Buttons and Icons */
.amy-movie-item-button {
  margin-top: 10px;
  text-align: center;
}

.amy-btn-icon-text {
  display: inline-flex;
  align-items: center;
  margin-right: 10px;
  font-size: 14px;
}

@media (max-width: 575px) {
  .amy-btn-icon-text {
    font-size: 12px;
    margin-right: 5px;
  }
}

.amy-btn-icon-text .fa {
  margin-right: 5px;
  background: #999;
  color: #fff;
  padding: 5px;
  border-radius: 50%;
}

/* Circle Elements (e.g., Scores, MPAA) */
.amy-movie-field-imdb {
  position: absolute;
  bottom: 10px;
  right: 10px; /* Or left for MPAA */
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #fe7900;
  color: #fff;
  text-align: center;
  line-height: 40px;
  font-size: 14px;
  font-weight: bold;
}
/* MPAA Badge – One Line, Perfect Circle, Fully Responsive */
.amy-movie-field-mpaa {
  position: absolute;
  border-radius: 50%;
  background: #fe7900;
  color: #fff;
  font-weight: bold;
  white-space: nowrap;           /* Forces single line */
  overflow: hidden;              /* Hide overflow */
  text-overflow: clip;           /* No "..." */
  line-height: 1;
  
  /* Flexbox = Perfect Center */
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Large Desktop */
@media (min-width: 1200px) {
  .amy-movie-field-mpaa {
    width: 50px;
    height: 50px;
    font-size: 14px;
    bottom: 20px;
    right: 20px;
  }
}

/* Desktop */
@media (max-width: 1199px) {
  .amy-movie-field-mpaa {
    width: 48px;
    height: 48px;
    font-size: 13px;
    bottom: 18px;
    right: 18px;
  }
}

/* Tablet */
@media (max-width: 991px) {
  .amy-movie-field-mpaa {
    width: 44px;
    height: 44px;
    font-size: 12px;
    bottom: 16px;
    right: 16px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .amy-movie-field-mpaa {
    width: 40px;
    height: 40px;
    font-size: 11px;
    bottom: 14px;
    right: 14px;
  }
}

/* Small Mobile */
@media (max-width: 480px) {
  .amy-movie-field-mpaa {
    width: 36px;
    height: 36px;
    font-size: 10px;
    bottom: 12px;
    right: 12px;
  }
}

/* Extra Small (e.g. iPhone SE) */
@media (max-width: 375px) {
  .amy-movie-field-mpaa {
    width: 34px;
    height: 34px;
    font-size: 9px;
    bottom: 10px;
    right: 10px;
  }
}

@media (max-width: 575px) {
  .amy-movie-field-imdb,
  .amy-movie-field-mpaa {
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 12px;
    bottom: 5px;
    right: 5px;
  }
}

/* Extra Fixes for Small Screens */
@media (max-width: 575px) {
  .amy-movie-items {
    margin: 0 -5px; /* Smaller gutters on mobile */
  }
  .amy-movie-item {
    padding: 0 5px;
    margin-bottom: 15px;
  }
  .amy-movie-field-title {
    max-height: none; /* Allow full title on mobile */
  }
}

/* For amy-movie-extra variant */
.amy-movie-extra .amy-movie-item-front {
  height: auto; /* Auto height */
}

.amy-movie-extra .amy-movie-item-poster img {
  height: 220px; /* Fixed height for consistency, but responsive width */
  object-fit: cover;
}

@media (max-width: 575px) {
  .amy-movie-extra .amy-movie-item-poster img {
    height: 180px;
  }
}

/* Clearfix for any remaining floats */
.amy-movie-items::after {
  content: "";
  display: table;
  clear: both;
}

/* Ensure no overflow on containers */
.amy-movie-grid,
.amy-movie-list {
  overflow: hidden; /* Prevent horizontal scroll */
}/* End custom CSS */