
.tile-text span {
  color: var(--button_text);
}

.lds-ripple,
.lds-ripple div {
  box-sizing: border-box;
}
.lds-ripple {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
}
.lds-ripple div {
  position: absolute;
  border: 4px solid currentColor;
  opacity: 1;
  border-radius: 50%;
  animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
}
.lds-ripple div:nth-child(2) {
  animation-delay: -0.5s;
}

#homepageProductsNoClock {
  margin-top:15px;
}



@keyframes lds-ripple {
  0% {
    top: 36px;
    left: 36px;
    width: 8px;
    height: 8px;
    opacity: 0;
  }
  4.9% {
    top: 36px;
    left: 36px;
    width: 8px;
    height: 8px;
    opacity: 0;
  }
  5% {
    top: 36px;
    left: 36px;
    width: 8px;
    height: 8px;
    opacity: 1;
  }
  100% {
    top: 0;
    left: 0;
    width: 80px;
    height: 80px;
    opacity: 0;
  }
}
.hidden {
  display: none;
}
.hidden_prod {
  display: none;
}
.filter_temp_show {
  display: inline!important; 
}
.filter_temp_hide {
  display: none!important; 
}

.review_hidden {
  display: none;
}


#d2f-adrs {
  display: none;
  position: absolute;
  z-index: 9999;
  border: 1px solid #C2C2CA;  
  overflow: auto;
  background-color: #fff;
}

#d2f-adrs .d2f_adrs_item:hover, #d2f-adrs-alt .d2f_adrs_item:hover {
  background-color: #6247AA;
  color: #fff;
}

#d2f-adrs .d2f_dividers {
  width: 100%;
  margin: 0 auto;
  height: 1px;
  background-color: #C2C2CA;
}

#d2f-adrs .d2f_adrs_item, #d2f-adrs-alt .d2f_adrs_item {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 15px 5px;
  cursor: pointer;
  font-family: inherit;
  font-size: 16px;
  text-align: left;
  background-color: #fff;
}

.adr_selected {
  background-color: #6247AA!important;
  color: #fff;
}

.missing_text {
  color: #F00 !important;
}

.flatpickr-calendar {
  margin: 0 auto 15px auto;
}

.warning_img {
  width: 2.4rem;
}

.out_of_area .box-top p{
  align-self: center;
  margin-left: 10px;
}

@keyframes breathing {
  0% {
    background-color: #FBF9FF; /* Start color */
  }
  50% {
    background-color: #fff; /* Midpoint color */
  }
  100% {
    background-color: #FBF9FF; /* End color */
  }
}

.breathing_effect {
  animation: breathing 3s infinite ease-in-out;
}

.currsym, .currprice {
  font-style: normal;
}

.voucher_saved {
  color: #99CC99;
}

/* .flatpickr-day.today {
  border-color: #6247AA !important;
  background: #6247AA !important;
  color: #FFF !important;
} */
#send-flowers {
  min-width: 150px;  
}


@keyframes spinner {
  to {transform: rotate(360deg);}
}
 
.spinner:before {
  content: '';
  box-sizing: border-box;
  position: absolute;
  /* top: 50%;
  left: 50%; */
  width: 20px;
  height: 20px;
  /* margin-top: -10px; */
  margin-left: -10px;
  border-radius: 50%;
  border-top: 2px solid #6247AA;
  border-right: 2px solid transparent;
  animation: spinner .6s linear infinite;
}


.reviews-img .score {
  font-weight: 600;  
  margin: 15px 0 10px 0;
}

.reviews-img .score.feefo {
  margin-bottom: 30px;
}

.reviews-img, .reviews-text .h3-small {
  text-align: center;
  background-color: #F9F9F9;
}

.reviews-img img {
  width: 60%;
}

.flex-end {
  justify-content: flex-end;
}

.single_reviews {
  max-height: 40vh;
  overflow: hidden;
  position: relative;
}

.read-more-link {
  display: block;
  margin-top: 10px;
  color: #007bff;
  text-decoration: none;
  font-size: 14px;
  text-align: center;
}

.read-more-link:hover {
  color: #0056b3;
  text-decoration: underline;
}

/*.find-a-florist-map-overlay {*/
/*  margin-left: -10vw;*/
/*}*/

#product-reviews .star-rating-gold, .d2f-reviews .rstars .star-rating-gold, .feefo-stars .star-rating-gold, .fl .star-rating-gold {
  width: 100%;
  background-image: url(https://cdn.direct2florist.com/1601/stars-Gold.png);
  height: 23px;
}

.d2f-reviews .rstars .star-rating-base, .feefo-stars .star-rating-base, .fl .star-rating-base {
  margin-top: 3px;
  width: 128px;
  background-image: url(https://cdn.direct2florist.com/1601/stars-Silver.png);
  height: 23px;
}

.filters-section-content .filter-dropdown input[type="radio"], .mobile-filter-dropdown-content .mob-filter-dropdown input[type="radio"] {
  content: '' !important;
  accent-color: #6247AA;
}

#ls-clear {
  margin-left: auto;
}
.flatpickr-day.today {
  border: none !important;  
}
.flatpickr-day.selected {
  border-color: #6247AA !important;
  background: #6247AA !important;
  color: #FFF !important;
}
.flatpickr-day:hover {
  background: #6247AA !important;
  border: none !important;
  color: #fff !important;
}
/* 
.flatpickr-day.today {
  background: none !important;
  color: inherit !important;
  border: none !important;
}
.flatpickr-disabled {
  color: #9493A2 !important;  
}
 */

.objfill {
  object-fit: fill !important;
  background: #F9F9F9;
}
.alph_disabled {
  background-color: #e2e2e2;
  border: none!important;;
}
.alph_disabled:hover {
  cursor: default;
  background-color: #e2e2e2!important;  
  color: initial!important;
}

.funfact {
  font-size: 15px;
  border: 1px solid #7b7b7b;
  border-left: 7px solid #fab300;
  padding: 9px 12px 12px;
  margin: 13px 0 20px;
}

.error-page-section-content {
  text-align: center;
}
.error-page-section-content img {
  max-height: 555px;
  object-fit: cover;
  font-family: "object-fit: cover";
  overflow-clip-margin: unset;
  border-radius: 8px;
  width: 100%;
  margin-bottom: 5vh;
}

.error-page-section-content p:first-of-type {
  line-height: 4rem;
  margin-top: 60px;
  font-size: 3.5rem;
  color: #5E4BA7;
}

.error-page-section-content p:nth-of-type(2) {
  font-weight: 600;
  font-size: 1.2rem;
}

.error-page-section-content p:nth-of-type(3) {
  margin-top: 4vh;
  margin-bottom: 2vh;
}

.error-page-section-content p:nth-of-type(4) {
  margin-bottom: 6vh;
}




.confetti {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 80px;
  overflow: hidden;
}

.confetti-piece {
  position: absolute;
  width: 8px;
  height: 16px;
  background: #ffd300;
  top: 0;
  opacity: 0;
}
.confetti-piece:nth-child(1) {
  left: 7%;
  transform: rotate(-12deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 207ms;
          animation-delay: 207ms;
  -webkit-animation-duration: 1154ms;
          animation-duration: 1154ms;
}
.confetti-piece:nth-child(2) {
  left: 14%;
  transform: rotate(25deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 195ms;
          animation-delay: 195ms;
  -webkit-animation-duration: 964ms;
          animation-duration: 964ms;
}
.confetti-piece:nth-child(3) {
  left: 21%;
  transform: rotate(-36deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 469ms;
          animation-delay: 469ms;
  -webkit-animation-duration: 1019ms;
          animation-duration: 1019ms;
}
.confetti-piece:nth-child(4) {
  left: 28%;
  transform: rotate(67deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 130ms;
          animation-delay: 130ms;
  -webkit-animation-duration: 1034ms;
          animation-duration: 1034ms;
}
.confetti-piece:nth-child(5) {
  left: 35%;
  transform: rotate(-50deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 402ms;
          animation-delay: 402ms;
  -webkit-animation-duration: 858ms;
          animation-duration: 858ms;
}
.confetti-piece:nth-child(6) {
  left: 42%;
  transform: rotate(-78deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 475ms;
          animation-delay: 475ms;
  -webkit-animation-duration: 700ms;
          animation-duration: 700ms;
}
.confetti-piece:nth-child(7) {
  left: 49%;
  transform: rotate(-36deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 399ms;
          animation-delay: 399ms;
  -webkit-animation-duration: 782ms;
          animation-duration: 782ms;
}
.confetti-piece:nth-child(8) {
  left: 56%;
  transform: rotate(9deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 328ms;
          animation-delay: 328ms;
  -webkit-animation-duration: 823ms;
          animation-duration: 823ms;
}
.confetti-piece:nth-child(9) {
  left: 63%;
  transform: rotate(-68deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 0ms;
          animation-delay: 0ms;
  -webkit-animation-duration: 723ms;
          animation-duration: 723ms;
}
.confetti-piece:nth-child(10) {
  left: 70%;
  transform: rotate(9deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 478ms;
          animation-delay: 478ms;
  -webkit-animation-duration: 1127ms;
          animation-duration: 1127ms;
}
.confetti-piece:nth-child(11) {
  left: 77%;
  transform: rotate(72deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 267ms;
          animation-delay: 267ms;
  -webkit-animation-duration: 975ms;
          animation-duration: 975ms;
}
.confetti-piece:nth-child(12) {
  left: 84%;
  transform: rotate(39deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 347ms;
          animation-delay: 347ms;
  -webkit-animation-duration: 743ms;
          animation-duration: 743ms;
}
.confetti-piece:nth-child(13) {
  left: 91%;
  transform: rotate(75deg);
  -webkit-animation: makeItRain 1000ms infinite ease-out;
          animation: makeItRain 1000ms infinite ease-out;
  -webkit-animation-delay: 113ms;
          animation-delay: 113ms;
  -webkit-animation-duration: 832ms;
          animation-duration: 832ms;
}
.confetti-piece:nth-child(odd) {
  background: #17d3ff;
}
.confetti-piece:nth-child(even) {
  z-index: 1;
}
.confetti-piece:nth-child(4n) {
  width: 5px;
  height: 12px;
  -webkit-animation-duration: 2000ms;
          animation-duration: 2000ms;
}
.confetti-piece:nth-child(3n) {
  width: 3px;
  height: 10px;
  -webkit-animation-duration: 2500ms;
          animation-duration: 2500ms;
  -webkit-animation-delay: 1000ms;
          animation-delay: 1000ms;
}
.confetti-piece:nth-child(4n-7) {
  background: #ff4e91;
}

@-webkit-keyframes makeItRain {
  from {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  to {
    transform: translateY(200px);
  }
}

@keyframes makeItRain {
  from {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  to {
    transform: translateY(200px);
  }
}
.voucher-overlay-content {
  text-align: center;
}
.voucher-message {
  max-width: initial!important;
}
.voucher-btns {
  justify-content: center!important;
}

.int-wrap {
  flex-wrap: wrap;
  gap: 20px;
}
.int-wrap a.location {
  width: calc(25% - 20px) !important;
  margin: 0!important;
  align-items: center;
}
.int-wrap a.location p {
  max-width: 168px;
}
.footer-logo {
  margin-bottom: 20px;
}

.generic-title {  
  font-size: 32px;
  line-height: normal;
  font-weight: 600;
  margin-top: 8px;
  margin-bottom: 16px;
}
.d2f-policy, .d2f-tnc, .d2f-cookie-policy, .d2f-flower-guide {
  margin-top: 2vh;
  margin-bottom: 4vh;
}
.d2f-policy h2 {
  margin: 2vh 0;
}
.d2f-policy table {  
  width: 100%;
  max-width: 100%;
  margin: 20px 0;
  border-spacing: 0;
  border-collapse: collapse;
}
.d2f-policy table, .d2f-policy th, .d2f-policy td {
  border: 1px solid #ddd;
}
.d2f-policy table th {
  text-align: left;
}
.d2f-policy table ol {
  list-style-type: lower-alpha;
}
.d2f-policy table li {
  margin-left: 2vw;
  margin-top: 5px;
}
.d2f-policy table th, .d2f-policy table td {
  padding: 10px;
  vertical-align: top;
}
.d2f-tnc ol { 
  list-style-type: auto; 
  counter-reset: item !important;
  font-feature-settings: "liga" off !important;
  margin-top: 2vh;
  margin-bottom: 2vh;
}
.d2f-tnc ol ol {
  margin-left:2vh;  
}
.d2f-tnc ol ol li {
  margin: 2vh 0;  
}
.d2f-tnc ol li { display: block; }
.d2f-tnc ol li:before { content: counters(item, ".") " " !important; counter-increment: item !important; }
.d2f-tnc ul li { margin: 1.5vh 0; }

#payment-form {
  margin-bottom: 32px;
  width: 100%;
}

.meet-the-team-section-content .team-grid {
  justify-content: flex-start;
  column-gap: 8px;
}

.extra-bottom {
  padding-bottom: 48px;
}


.flatpickr-calendar {
  width: 90% !important;
}

.d2f-cookie-policy h2, .d2f-flower-guide h2 {
  margin-top: 20px;
}

img.tp-stars {
  width: unset !important;
}

.loader {
  width: 48px;
  height: 48px;
  border: 5px solid #23233D;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  position: relative;
  animation: pulse 1s linear infinite;
}
.loader:after {
  content: '';
  position: absolute;
  width: 48px;
  height: 48px;
  border: 5px solid #23233D;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  animation: scaleUp 1s linear infinite;
}

@keyframes scaleUp {
  0% { transform: translate(-50%, -50%) scale(0) }
  60% , 100% { transform: translate(-50%, -50%)  scale(1)}
}
@keyframes pulse {
  0% , 60% , 100%{ transform:  scale(1) }
  80% { transform:  scale(1.2)}
}

#home-just-del {
  justify-content: center;
}

#findAnotherFloristCheckoutButton {
  margin-bottom: 0px;
}

.home-v3 {
  padding-top: 30px;
}

.home-v3 .new-reviews-section, .new-reviews-section {
  background: #FFF;
}

.filters-section-content .filter {
  width: 20%;
  cursor: pointer;
  margin-left: 1%;
}


@media only screen and (max-width: 767px) {
  .mobile-hide {
    display: none !important;
  }
}


/*.hero-alt-countdown-section {*/
/*  margin-bottom: 20px;*/
/*}*/

/* .custom-filter-btn {
  background: #FDF3B9;
  border: 1px solid #FFEA82;
  color: #23233D;
  font-weight: 600;
  border-radius: 4px;
  height: 48px;
  width: 90%;
}
.filter-mob {
  flex: 0 0 50%;
}

.filter-mob.full-width {
  flex: 0 0 100%;
} */

/* Checkout header: the logo in the middle, "Return to basket" on its left and the
   phone number on its right, and the logo kept within the header whatever size it
   was uploaded at (it showed at its full width on desktop) */
.checkout-header-content {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  column-gap: 16px;
}
.checkout-header-content .return-to-basket {
  grid-column: 1;
  justify-self: start;
}
.checkout-header-content .main-logo {
  grid-column: 2;
  display: block;
  line-height: 0;
}
.checkout-header-content .help-wrap {
  grid-column: 3;
  justify-self: end;
  text-align: right;
}
.checkout-header-content .main-logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(240px, 40vw);
  max-height: 72px;
  margin: 0 auto;
}
@media only screen and (max-width: 650px) {
  .checkout-header-content {
    padding: 16px 0;
    column-gap: 12px;
  }
  .checkout-header-content .main-logo img {
    max-width: 40vw;
    max-height: 52px;
  }
  .checkout-header-content .icon-wrap {
    margin-left: 0;
  }
}
