.elementor-915 .elementor-element.elementor-element-abd5a0c{--e-image-carousel-slides-to-show:1;}.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-swiper-button.elementor-swiper-button-prev, .elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-swiper-button.elementor-swiper-button-next{font-size:36px;color:#FFFFFF;}.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-swiper-button.elementor-swiper-button-prev svg, .elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-swiper-button.elementor-swiper-button-next svg{fill:#FFFFFF;}.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-pagination-bullet{width:7px;height:7px;}.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-pagination-bullet:not(.swiper-pagination-bullet-active){background:#D3B76A;opacity:1;}.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-style:solid;border-color:#D3B76A;}.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-image-carousel-caption{text-align:center;}#elementor-popup-modal-915 .dialog-widget-content{animation-duration:1.5s;background-color:#000000;box-shadow:0px 0px 50px 15px rgba(255, 255, 255, 0.15);}#elementor-popup-modal-915{background-color:rgba(0, 0, 0, 0.75);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-915 .dialog-message{width:1200px;height:auto;}#elementor-popup-modal-915 .dialog-close-button{display:flex;top:50px;}body:not(.rtl) #elementor-popup-modal-915 .dialog-close-button{right:50px;}body.rtl #elementor-popup-modal-915 .dialog-close-button{left:50px;}#elementor-popup-modal-915 .dialog-close-button i{color:#FFFFFF;}#elementor-popup-modal-915 .dialog-close-button svg{fill:#FFFFFF;}@media(max-width:1024px){#elementor-popup-modal-915 .dialog-message{width:715px;}#elementor-popup-modal-915 .dialog-close-button{top:35px;}body:not(.rtl) #elementor-popup-modal-915 .dialog-close-button{right:35px;}body.rtl #elementor-popup-modal-915 .dialog-close-button{left:35px;}}@media(max-width:767px){#elementor-popup-modal-915{align-items:center;}#elementor-popup-modal-915 .dialog-close-button{top:30px;}body:not(.rtl) #elementor-popup-modal-915 .dialog-close-button{right:30px;}body.rtl #elementor-popup-modal-915 .dialog-close-button{left:30px;}}/* Start custom CSS for image-carousel, class: .elementor-element-abd5a0c *//* ==========================================================
   CHARACTER POPUP IMAGE CAROUSEL — COMPLETE REPLACEMENT CSS

   Paste into:
   Image Carousel widget → Advanced → Custom CSS

   Required Image Carousel settings:
   - Image Resolution: Full
   - Slides to Show: 1
   - Image Stretch: No
   - Navigation: Arrows and Dots
   - Link: None
   - Caption: Description
   - Infinite Loop: No
   ========================================================== */

.elementor-915 .elementor-element.elementor-element-abd5a0c {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

/* Keep carousel contained */
.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-image-carousel-wrapper {
  width: 100%;
  overflow: hidden;
}

/* Centre each slide */
.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

/* Each slide content: image left, text right */
.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide-inner {
  display: grid !important;
  grid-template-columns: 42% 48%;
  column-gap: 56px;

  align-items: center;
  justify-content: center;

  width: 100%;
  max-width: 830px;

  margin: 0 auto !important;
  padding: 28px 42px 74px;

  box-sizing: border-box;
}

/* Image frame */
.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide-image {
  display: block !important;

  width: auto !important;
  max-width: 330px !important;

  height: 390px !important;
  max-height: 390px !important;

  object-fit: contain !important;
  object-position: center !important;

  margin: 0 auto !important;
  padding: 12px !important;

  background: #FBF9F3 !important;

  border: 1px solid #D3B76A !important;
  border-radius: 0 !important;

  box-shadow: 0 14px 30px #3A2A14;
}

/* Right-side description block */
.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-image-carousel-caption {
  display: block !important;

  max-width: 390px;
  margin: 0 !important;
  padding: 0 !important;

  color: #172238;

  font-family: Montserrat, Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.48;
  letter-spacing: 0.1px;

  text-align: center;
}

/* Generated title above description */
.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-image-carousel-caption::before {
  display: block;

  margin: 0 0 14px;
  padding-bottom: 12px;

  border-bottom: 2px solid #172238;

  color: #172238;

  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 38px;
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  text-align: left;
}

/* ==========================================================
   TITLE MAPPING — FALLBACK ORDER

   This assumes the selected images are ordered:
   1 Buttercup
   2 Neeve
   3 Blossom
   4 Mr Puffin
   5 The Prince
   6 Lucky
   ========================================================== */

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide:nth-child(1) .elementor-image-carousel-caption::before {
  content: "Buttercup the Baking Fairy";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide:nth-child(2) .elementor-image-carousel-caption::before {
  content: "Neeve Sewing Her Blanket";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide:nth-child(3) .elementor-image-carousel-caption::before {
  content: "Blossom";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide:nth-child(4) .elementor-image-carousel-caption::before {
  content: "Mr Puffin";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide:nth-child(5) .elementor-image-carousel-caption::before {
  content: "The Prince";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide:nth-child(6) .elementor-image-carousel-caption::before {
  content: "Lucky the Dog";
}

/* ==========================================================
   TITLE MAPPING — SWIPER INDEX METHOD

   This overrides the fallback where Elementor outputs
   data-swiper-slide-index.
   ========================================================== */

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide[data-swiper-slide-index="0"] .elementor-image-carousel-caption::before {
  content: "Buttercup the Baking Fairy";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide[data-swiper-slide-index="1"] .elementor-image-carousel-caption::before {
  content: "Neeve Sewing Her Blanket";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide[data-swiper-slide-index="2"] .elementor-image-carousel-caption::before {
  content: "Blossom";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide[data-swiper-slide-index="3"] .elementor-image-carousel-caption::before {
  content: "Mr Puffin";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide[data-swiper-slide-index="4"] .elementor-image-carousel-caption::before {
  content: "The Prince";
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide[data-swiper-slide-index="5"] .elementor-image-carousel-caption::before {
  content: "Lucky the Dog";
}

/* Arrows */
.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-swiper-button {
  color: #FFFFFF !important;
  font-size: 42px !important;
  opacity: 1;
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-swiper-button:hover {
  color: #172238 !important;
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-swiper-button-prev {
  left: 8px !important;
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-swiper-button-next {
  right: 8px !important;
}

/* Dots */
.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-pagination {
  bottom: 24px !important;
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-pagination-bullet {
  width: 8px !important;
  height: 8px !important;

  background: #D3B76A !important;
  opacity: 1 !important;
}

.elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-pagination-bullet-active {
  background: #172238 !important;
}

/* Mobile layout */
@media (max-width: 767px) {
  .elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide-inner {
    grid-template-columns: 1fr;
    row-gap: 22px;

    max-width: 100%;
    padding: 34px 26px 92px;
  }

  .elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-slide-image {
    max-width: 270px !important;
    height: 300px !important;
    max-height: 300px !important;
    padding: 10px !important;
  }

  .elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-image-carousel-caption {
    max-width: 310px;
    margin: 0 auto !important;

    font-size: 14px;
    line-height: 1.45;
    text-align: center;
  }

  .elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-image-carousel-caption::before {
    margin-bottom: 14px;
    padding-bottom: 12px;

    font-size: 28px;
    line-height: 1.05;
    text-align: center;
  }

  .elementor-915 .elementor-element.elementor-element-abd5a0c .elementor-swiper-button {
    font-size: 32px !important;
  }

  .elementor-915 .elementor-element.elementor-element-abd5a0c .swiper-pagination {
    bottom: 20px !important;
  }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-6974571 *//* ==========================================================
   READ MORE CIRCLE BUTTON — COMPLETE REPLACEMENT CSS

   Paste into:
   Button widget → Advanced → Custom CSS
   ========================================================== */

.elementor-915 .elementor-element.elementor-element-6974571 {
  position: absolute;
  z-index: 40;

  left: calc(50% + 120px);
  top: 398px;

  width: 77px !important;
  height: 77px !important;

  margin: 0 !important;
  padding: 0 !important;
}

/* Normalise Elementor button wrappers */
.elementor-915 .elementor-element.elementor-element-6974571 .elementor-widget-container,
.elementor-915 .elementor-element.elementor-element-6974571 .elementor-button-wrapper {
  width: 77px !important;
  height: 77px !important;

  margin: 0 !important;
  padding: 0 !important;
}

/* Circle button */
.elementor-915 .elementor-element.elementor-element-6974571 a.elementor-button,
.elementor-915 .elementor-element.elementor-element-6974571 .elementor-button,
.elementor-915 .elementor-element.elementor-element-6974571 .elementor-button-link,
.elementor-915 .elementor-element.elementor-element-6974571 .e-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 77px !important;
  height: 77px !important;

  min-width: 77px !important;
  min-height: 77px !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 2px solid #172238 !important;
  border-radius: 50% !important;

  background: transparent !important;
  color: #172238 !important;

  font-family: Montserrat, Arial, sans-serif !important;
  font-size: 10.5px !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-decoration: none !important;

  box-shadow: none !important;
}

/* Inner text wrapper */
.elementor-915 .elementor-element.elementor-element-6974571 .elementor-button-content-wrapper,
.elementor-915 .elementor-element.elementor-element-6974571 .elementor-button-text {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  height: 100% !important;

  text-align: center !important;
}

/* Hover */
.elementor-915 .elementor-element.elementor-element-6974571 a.elementor-button:hover,
.elementor-915 .elementor-element.elementor-element-6974571 .elementor-button:hover,
.elementor-915 .elementor-element.elementor-element-6974571 .elementor-button-link:hover,
.elementor-915 .elementor-element.elementor-element-6974571 .e-button:hover {
  transform: translateY(-3px);

  background: #172238 !important;
  color: #F2CF72 !important;
  border-color: #172238 !important;
}

/* Focus */
.elementor-915 .elementor-element.elementor-element-6974571 a.elementor-button:focus-visible,
.elementor-915 .elementor-element.elementor-element-6974571 .elementor-button:focus-visible {
  outline: 2px solid #B99542 !important;
  outline-offset: 5px !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .elementor-915 .elementor-element.elementor-element-6974571 {
    left: calc(50% + 22px);
    top: 414px;
  }
}

/* Mobile: stack naturally below carousel */
@media (max-width: 767px) {
  .elementor-915 .elementor-element.elementor-element-6974571 {
    position: static;

    width: 72px !important;
    height: 72px !important;

    margin: 18px auto 0 !important;
    padding: 0 !important;

    transform: none !important;
  }

  .elementor-915 .elementor-element.elementor-element-6974571 .elementor-widget-container,
  .elementor-915 .elementor-element.elementor-element-6974571 .elementor-button-wrapper,
  .elementor-915 .elementor-element.elementor-element-6974571 a.elementor-button,
  .elementor-915 .elementor-element.elementor-element-6974571 .elementor-button,
  .elementor-915 .elementor-element.elementor-element-6974571 .elementor-button-link,
  .elementor-915 .elementor-element.elementor-element-6974571 .e-button {
    width: 72px !important;
    height: 72px !important;

    min-width: 72px !important;
    min-height: 72px !important;
  }

  .elementor-915 .elementor-element.elementor-element-6974571 a.elementor-button,
  .elementor-915 .elementor-element.elementor-element-6974571 .elementor-button,
  .elementor-915 .elementor-element.elementor-element-6974571 .elementor-button-link,
  .elementor-915 .elementor-element.elementor-element-6974571 .e-button {
    font-size: 10px !important;
  }
}/* End custom CSS */