/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */
:root {
    --container-width: 1300px;
    --logo-height: 2.3rem;
    --header-height: 4.5rem;
    --space-xs: 0.25rem;
    --space-s: 0.5rem;
    --space-base: 1rem;
    --space-m: clamp(1.13rem, calc(1.00rem + 0.56vw), 1.50rem);
    --space-l: clamp(1.50rem, calc(1.33rem + 0.74vw), 2.00rem);
    --space-xl: clamp(2.25rem, calc(2.00rem + 1.11vw), 3.00rem);
    --space-2xl: clamp(3.00rem, calc(2.67rem + 1.48vw), 4.00rem);
    --space-3xl: clamp(3.75rem, calc(3.33rem + 1.85vw), 5.00rem);
    --space-section: clamp(4.50rem, calc(4.00rem + 2.22vw), 6.00rem);
    --font-base: 1rem;
    --font-s: 0.75rem;
    --font-xs: 0.5rem;
    --transition: all 0.3s ease-in-out;
    --font-h6: clamp(0.70rem, calc(0.66rem + 0.18vw), 0.82rem);
    --font-h5: clamp(0.87rem, calc(0.82rem + 0.23vw), 1.02rem);
    --font-h4: clamp(1.09rem, calc(1.02rem + 0.28vw), 1.28rem);
    --font-h3: clamp(1.36rem, calc(1.28rem + 0.36vw), 1.60rem);
    --font-h2: clamp(1.70rem, calc(1.60rem + 0.44vw), 2.00rem);
    --font-h1: clamp(2.13rem, calc(2.00rem + 0.56vw), 2.50rem);
}

.review-card__stars-rating:before{
  content:"★ ★ ★ ★ ★";
  --color:#faa241;
  --blank:var(--theme-palette-color-5);
  --percent: calc(var(--rating) / 5 * 100%);
  line-height:1;
  background: linear-gradient(90deg, var(--color) var(--percent), var(--blank) var(--percent));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color:transparent;
}
.reviews-carousel:not(.flickity-enabled) .review-card{
	box-sizing:border-box;
}

.entry-content > * + *:not(.section,h1,h2,h3),
.text-spacing > * + *:not(.section,h1,h2,h3){
	margin-top:var(--space-base);
}
.entry-content > * + :is(h1,h2,h3),
.text-spacing > * + :is(h1,h2,h3){
	margin-top:var(--space-xl);
}
.wp-block-list {
    display: flex;
    flex-direction: column;
    row-gap: 0.25rem;
}
.wp-block-gallery{
	overflow:hidden;
}
/*****************************************
 * Fluent form
 * **************************************/
.fluentform{
width: 100%;
}

.ff-el-group + .ff-el-group {
    margin-top: var(--space-m);
}
.ff-el-input--label{
  margin-bottom: 0.75rem;
  color: var(--cc-color-1);
  font-weight: 600;
}
.ff-el-form-control{
  background-clip: padding-box;
    background-image: none;
    border: 1px solid var(--cc-color-5);
    /*border-radius: 2rem;*/
    color: var(--cc-color-3);
    display: block;
    font-size: 16px;
    font-weight:300;
    line-height: 1.5;
    margin-bottom: 0;
    max-width: 100%;
    padding: 6px 25px;
    width: 100%;
    height: 54px;
    outline: none;
    box-shadow: 3px 3px 30px #68897d66;
}
.ff-el-form-control:focus{
   border-color: var(--cc-color-1);
}
.ff-btn-submit {
    background-color:var(--cc-color-1);
    color: #fff;
    padding: var(--space-base);
    width: 100%;
    /*border-radius: 2rem;*/
    padding:0.75rem var(--space-m);
    height:54px;
    text-transform:uppercase;
    letter-spacing:0.05rem;
}
.ff-btn-submit:hover{
  background-color:var(--cc-color-2);
}
.fluentform .ff_submitting {
  pointer-events: none;
}
.fluentform .ff_btn_style {
  border: 1px solid transparent;
  border-radius: 4px;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  padding: 6px 12px;
  position: relative;
  text-align: center;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out,
    box-shadow 0.15s ease-in-out;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  vertical-align: middle;
  white-space: nowrap;
}
.fluentform .ff_btn_style:focus,
.fluentform .ff_btn_style:hover {
  opacity: 0.8;
  outline: 0;
  text-decoration: none;
}
.fluentform div.ff-el-form-hide_label>.ff-el-input--label {
    display: none;
    visibility: hidden;
}
.fluentform .ff-btn.disabled {
  opacity: 0.65;
}
.fluentform .ff-btn-block {
  display: block;
  width: 100%;
}
.fluentform .ff-btn-block + .ff-el-btn-block {
  margin-top: 8px;
}
.fluentform .ff-btn.ff-working {
  position: relative;
  transition: all 0.3s ease;
}
.fluentform .ff-btn.ff-working:after {
  -webkit-animation: ff-progress-anim 4s 0s infinite;
  animation: ff-progress-anim 4s 0s infinite;
  background: hsla(0, 0%, 100%, 0.4);
  bottom: 0;
  content: "";
  height: 5px;
  left: 0;
  position: absolute;
  right: 0;
}

.fluentform .ff-inline-block + .ff-inline-block {
  margin-left: 10px;
}
.fluentform .ff-el-form-control:disabled,
.fluentform .ff-el-form-control[readonly]:not(.flatpickr-input) {
  background-color: #e9ecef;
  opacity: 1;
}
.fluentform .mce-tinymce.mce-container.mce-panel {
  border: 1px solid #ced4da;
}
select.ff-el-form-control:not([size]):not([multiple]) {
  height: 38px;
}
.ff-upload-preview.ff_uploading {
  opacity: 0.8;
}
@-webkit-keyframes ff_move {
  0% {
    background-position: 0 0;
  }
  to {
    background-position: 50px 50px;
  }
}
@keyframes ff_move {
  0% {
    background-position: 0 0;
  }
  to {
    background-position: 50px 50px;
  }
}
.ff_uploading .ff-el-progress .ff-el-progress-bar {
  -webkit-animation: ff_move 2s linear infinite;
  animation: ff_move 2s linear infinite;
  background-image: linear-gradient(
    -45deg,
    hsla(0, 0%, 100%, 0.2) 25%,
    transparent 0,
    transparent 50%,
    hsla(0, 0%, 100%, 0.2) 0,
    hsla(0, 0%, 100%, 0.2) 75%,
    transparent 0,
    transparent
  );
  background-size: 50px 50px;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 8px;
  border-top-left-radius: 20px;
  border-top-right-radius: 8px;
  bottom: 0;
  content: "";
  left: 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}
@-webkit-keyframes ff-progress-anim {
  0% {
    width: 0;
  }
  5% {
    width: 0;
  }
  10% {
    width: 15%;
  }
  30% {
    width: 40%;
  }
  50% {
    width: 55%;
  }
  80% {
    width: 100%;
  }
  95% {
    width: 100%;
  }
  to {
    width: 0;
  }
}
@keyframes ff-progress-anim {
  0% {
    width: 0;
  }
  5% {
    width: 0;
  }
  10% {
    width: 15%;
  }
  30% {
    width: 40%;
  }
  50% {
    width: 55%;
  }
  80% {
    width: 100%;
  }
  95% {
    width: 100%;
  }
  to {
    width: 0;
  }
}
.fluentform {
  font-family: inherit;
}
.fluentform * {
  box-sizing: border-box;
}
.fluentform .text-danger {
  color: #f56c6c;
  font-size: var(--font-s);
}
.fluentform .ff_gdpr_field {
  margin-right: 5px;
}
.fluentform .hidden_field {
  display: none !important;
}
.fluentform .ff_force_hide,.ff-el-group.hidden {
  display: none !important;
  visibility: hidden !important;
}
.fluentform .ff_scrolled_text {
  background: #e9ebed;
  height: 200px;
  overflow: scroll;
  padding: 10px 15px;
}
.ff-el-group.ff-custom_html.help-text.span {
    margin-bottom: 0;
}
.ff-t-cell.ff-t-column-2 .ff-el-group.ff-el-form-hide_label.video-link {
    margin-top: -1.05rem;
}
.fluentform .ff-screen-reader-element {
    clip: rect(0,0,0,0)!important;
    word-wrap: normal!important;
    border: 0!important;
    height: 1px!important;
    margin: 0!important;
    overflow: hidden!important;
    padding: 0!important;
    position: absolute!important;
    width: 1px!important;
}
.fluentform .ff-el-input--label.ff-el-is-required.asterisk-right label:after {
    color: #f56c6c;
    content: " *";
    margin-left: 3px;
}
.fluentform .ff_upload_btn.ff-btn {
    background-color: var(--cc-color-7);
    color: var(--cc-color-5);
    cursor: pointer;
    display: inline-block;
    border-radius: 10rem;
    padding: 0.75rem var(--space-m);
}
.ff-upload-details {
    display: flex;
    justify-content: center;
    column-gap: 0.5rem;
    font-weight: 600;
}
.ff-upload-progress-inline-text {
    display: none;
}
.ff-upload-remove:hover {
    color: red;
}
.cn-buttons-container {
    color: #fff;
}
.custom-cookies-btn {
    width: 100px;
    border-radius: 20px;
    background: #3f135d;
    padding: 0.3rem;
}

@media (min-width: 768px){
.frm-fluent-form .ff-t-container {
    display: flex;
    gap: 15px;
    width: 100%;
}
.frm-fluent-form .ff-t-container.no-gap {
    gap: 0;
}
}
@media only screen and (max-width: 1040px) {
.ff-t-cell.ff-t-column-2 .ff-el-group.ff-el-form-hide_label.video-link {
    margin-top: -4rem;
}
}
@media only screen and (max-width: 706px) {
  .ff-column-container{
    margin-bottom:3.2rem;
  }
}

@media only screen and (max-width: 768px) {
.ff-t-cell + .ff-t-cell{
  margin-top:var(--space-base);
}
.fluentform .ff_file_upload_holder {
  margin-bottom: 0;
}
.fluentform .ff_hide_label .ff-el-input--label {
  display: none;
}
.fluentform .field-value {
  white-space: pre-line;
}
.fluentform .ff-el-group .ff-read-only {
  background-color: #e9ecef !important;
  opacity: 1;
  pointer-events: none;
}
}