.elementor-57 .elementor-element.elementor-element-af26e4c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-57 .elementor-element.elementor-element-cae3dbe{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:8px 0px;--row-gap:8px;--column-gap:0px;--padding-top:0px;--padding-bottom:38px;--padding-left:0px;--padding-right:0px;}.elementor-57 .elementor-element.elementor-element-383e8ae{text-align:center;}.elementor-57 .elementor-element.elementor-element-383e8ae .elementor-heading-title{font-family:var( --e-global-typography-cclabel-font-family ), Sans-serif;font-size:var( --e-global-typography-cclabel-font-size );font-weight:var( --e-global-typography-cclabel-font-weight );text-transform:var( --e-global-typography-cclabel-text-transform );line-height:var( --e-global-typography-cclabel-line-height );letter-spacing:var( --e-global-typography-cclabel-letter-spacing );color:var( --e-global-color-ccora700 );}.elementor-57 .elementor-element.elementor-element-5657559{text-align:center;}.elementor-57 .elementor-element.elementor-element-5657559 .elementor-heading-title{font-family:var( --e-global-typography-ccdispm-font-family ), Sans-serif;font-size:var( --e-global-typography-ccdispm-font-size );font-weight:var( --e-global-typography-ccdispm-font-weight );line-height:var( --e-global-typography-ccdispm-line-height );letter-spacing:var( --e-global-typography-ccdispm-letter-spacing );color:var( --e-global-color-accent );}.elementor-57 .elementor-element.elementor-element-3495f1a{text-align:center;font-family:var( --e-global-typography-ccbody-font-family ), Sans-serif;font-size:var( --e-global-typography-ccbody-font-size );font-weight:var( --e-global-typography-ccbody-font-weight );line-height:var( --e-global-typography-ccbody-line-height );color:var( --e-global-color-ccslatst );}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-main-swiper .swiper-slide{background-color:var( --e-global-color-ccblu050 );border-width:3px 3px 3px 3px;border-radius:18px;border-color:var( --e-global-color-ccpaper1 );}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__header{padding-top:0px;padding-left:0px;padding-right:0px;background-color:var( --e-global-color-ccblu050 );padding-block-end:calc( 8px / 2 );}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__content{padding-bottom:0px;padding-left:0px;padding-right:0px;padding-block-start:calc( 8px / 2 );}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-swiper-button{font-size:20px;color:var( --e-global-color-ccslate1 );}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-swiper-button svg{fill:var( --e-global-color-ccslate1 );}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__name{color:var( --e-global-color-accent );}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__header, .elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__name{font-family:"Barlow Condensed", Sans-serif;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:0.6px;}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__title{color:var( --e-global-color-ccslate1 );font-family:"Hanken Grotesk", Sans-serif;font-size:13px;font-weight:400;}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__text{color:var( --e-global-color-text );font-family:"Hanken Grotesk", Sans-serif;font-size:16px;font-weight:400;line-height:1.55em;}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__image img{width:0px;height:0px;}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__image + cite{margin-inline-start:0px;margin-inline-end:0;}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-star-rating{font-size:15px;}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-star-rating i:not(:last-of-type){margin-inline-end:10px;}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-star-rating i:before{color:var( --e-global-color-secondary );}.elementor-57 .elementor-element.elementor-element-d112184 .elementor-star-rating i{color:var( --e-global-color-ccmist01 );}@media(max-width:1024px){.elementor-57 .elementor-element.elementor-element-af26e4c{--padding-top:62px;--padding-bottom:62px;--padding-left:44px;--padding-right:44px;}.elementor-57 .elementor-element.elementor-element-383e8ae .elementor-heading-title{font-size:var( --e-global-typography-cclabel-font-size );line-height:var( --e-global-typography-cclabel-line-height );letter-spacing:var( --e-global-typography-cclabel-letter-spacing );}.elementor-57 .elementor-element.elementor-element-5657559 .elementor-heading-title{font-size:var( --e-global-typography-ccdispm-font-size );line-height:var( --e-global-typography-ccdispm-line-height );letter-spacing:var( --e-global-typography-ccdispm-letter-spacing );}.elementor-57 .elementor-element.elementor-element-3495f1a{font-size:var( --e-global-typography-ccbody-font-size );line-height:var( --e-global-typography-ccbody-line-height );}}@media(max-width:767px){.elementor-57 .elementor-element.elementor-element-af26e4c{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-57 .elementor-element.elementor-element-cae3dbe{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-57 .elementor-element.elementor-element-383e8ae .elementor-heading-title{font-size:var( --e-global-typography-cclabel-font-size );line-height:var( --e-global-typography-cclabel-line-height );letter-spacing:var( --e-global-typography-cclabel-letter-spacing );}.elementor-57 .elementor-element.elementor-element-5657559 .elementor-heading-title{font-size:var( --e-global-typography-ccdispm-font-size );line-height:var( --e-global-typography-ccdispm-line-height );letter-spacing:var( --e-global-typography-ccdispm-letter-spacing );}.elementor-57 .elementor-element.elementor-element-3495f1a{font-size:var( --e-global-typography-ccbody-font-size );line-height:var( --e-global-typography-ccbody-line-height );}}/* Start custom CSS for reviews, class: .elementor-element-d112184 */.elementor-57 .elementor-element.elementor-element-d112184 .swiper-slide{height:auto}
/* Card padding lives here, not in the widget's Padding control. Because the stars and cite are
   reordered with display:contents below, Elementor's slide padding lands on the quote block
   alone rather than the card, which showed up as a large gap under the review text. The native
   control is therefore set to 0 and the real card padding is set on .elementor-testimonial. */
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial{display:flex;flex-direction:column;text-align:center;height:100%;padding:38px 16px 36px}
/* No content-order control on this widget: stars, quote, name, location. */
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__header,.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__cite{display:contents}
/* Internal gaps stay tight so the breathing room reads against the card edge, not between items. */
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-star-rating{order:1;justify-content:center;margin-bottom:4px}
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__content{order:2;flex:1;display:flex;align-items:center;justify-content:center;margin-bottom:4px;padding:0}
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__name{order:3}
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__title{order:4;margin-top:2px}
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial__icon{display:none}
/* Elementor bug: in star_unicode mode it paints the marked colour onto i:before, but the star
   glyph is text inside the i, so the widget's own colour control never lands. Restate it here. */
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-star-rating i.elementor-star-full{color:var(--e-global-color-secondary)}
/* Peeking edges. Slides Per View on this widget is an integer-only select (1 to 10), so Swiper's
   fractional slidesPerView is unreachable through any native control. Instead inset the swiper
   and let the neighbouring slides spill into the gutter, clipped by the widget wrapper.

   IMPORTANT: Elementor Pro's widget-carousel-module-base.min.css hardcodes
     .elementor-widget-reviews .elementor-main-swiper{width:95%}
   to reserve room for the arrows. Margins alone therefore do NOT shrink the box: it stayed 95%
   wide, shifted right by the gutter, and overflowed the widget so the third card was clipped.
   The width must be restated here. Gutters are percentages so the 3-full-plus-peek proportion
   holds at every viewport instead of only at the width it was tuned on.

     desktop  gutter 10.85% + width 78.3%  gap 32  -&gt;  3 cards, peek about a third of a card
     tablet   gutter 14.3%  + width 71.4%  gap 24  -&gt;  2 cards, same proportion
     mobile   gutter 18%    + width 64%    gap 18  -&gt;  1 card, slightly tighter peek

   Each trio sums to 100% so the swiper stays centred and the pagination stays centred with it.
   Arrows are switched off natively (show_arrows), so no arrow offsets are needed. */
.elementor-57 .elementor-element.elementor-element-d112184{overflow:hidden}
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-main-swiper{overflow:visible;width:78.3%;margin-left:10.85%;margin-right:10.85%;padding:18px 0 46px}
.elementor-57 .elementor-element.elementor-element-d112184 .elementor-main-swiper .swiper-slide{box-shadow:0 12px 26px rgba(14,34,48,.16)}
@media(max-width:1024px){
  .elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial{padding:36px 16px 34px}
  .elementor-57 .elementor-element.elementor-element-d112184 .elementor-main-swiper{width:71.4%;margin-left:14.3%;margin-right:14.3%}
}
@media(max-width:767px){
  .elementor-57 .elementor-element.elementor-element-d112184 .elementor-testimonial{padding:34px 16px 32px}
  .elementor-57 .elementor-element.elementor-element-d112184 .elementor-main-swiper{width:64%;margin-left:18%;margin-right:18%;padding:14px 0 40px}
}/* End custom CSS */