:root {

  --font: "Afacad", sans-serif;
  --heading: var(--font);

  --spacing: clamp(65px, 7.29vw, 140px);
  --radius: clamp(133px, 10.42vw, 200px);
  --radius-small: clamp(11px, 0.83vw, 16px);
  --transition: all 0.35s ease;

  --mainFontSize: clamp(17px, 1.25vw, 24px);
  --smallFontSize: clamp(17px, 1.04vw, 20px);
  --h1FontSize: clamp(33px, 4.43vw, 85px);
  --h2FontSize: clamp(33px, 2.86vw, 55px);
  --h3FontSize: clamp(24px, 2.08vw, 40px);
  --h4FontSize: clamp(19px, 1.56vw, 30px);

  --lineHeight: 1.25;
  --lineHeightSm: 1.1;
  --lineHeightLg: 2;
  --headingLineHeight: 0.9;

  --containerAbove1600: 1450px;
  --containerAbove1368: 1308px;

  --blue: #0085FF;
  --teal: #32B5FF;
  --text: #5A5D65;
  --dark: #1D2B50;
  --light: #F0F6FA;
  --lightGradient: linear-gradient(70deg, #F0F6FA 0%, #E6F0F4 100%);
  --lightGradientFallback: var(--light);
  --primary: var(--blue);
  --secondary: var(--dark);

  --buttonPaddingTop: clamp(10px, 0.78vw, 15px);
  --buttonPaddingBottom: var(--buttonPaddingTop);
  --buttonPaddingLeft: clamp(29px, 2.24vw, 43px);
  --buttonPaddingRight: var(--buttonPaddingLeft);
  --buttonCasing: none;
  --buttonRadius: var(--radius);
  --buttonFontSize: var(--mainFontSize);
  --buttonWeight: 500;
  --buttonLetterSpacing: -0.clamp(3px, 0.26vw, 5px);
  --buttonBorderWidth: clamp(1px, 0.05vw, 1px);
  --buttonFont: var(--font);
  --buttonTextColour: #fff;
  --buttonBackgroundPrimary: var(--primary);
  --buttonBackgroundSecondary: var(--secondary);
  --buttonHoverBackgroundColour: var(--dark);
  --buttonHoverFontColour: #fff;

  --formFieldBorder: #E0E0E0;
  --formFieldPaddingTop: clamp(clamp(6px, 0.47vw, 9px), 0.67708vw, clamp(9px, 0.68vw, 13px));
  --formFieldPaddingBottom: clamp(clamp(6px, 0.47vw, 9px), 0.67708vw, clamp(9px, 0.68vw, 13px));
  --formFieldPaddingLeft: clamp(clamp(9px, 0.68vw, 13px), 1.04167vw, clamp(13px, 1.04vw, 20px));
  --formFieldPaddingRight: clamp(clamp(9px, 0.68vw, 13px), 1.04167vw, clamp(13px, 1.04vw, 20px));
  --formFieldRadius: clamp(clamp(3px, 0.26vw, 5px), 0.41667vw, clamp(5px, 0.42vw, 8px));

  --box-shadow: 0 clamp(7px, 0.52vw, 10px) clamp(10px, 0.78vw, 15px) rgba(29,43,80,0.2);

}

  body {
    overflow-x: hidden;
    letter-spacing: -0.5px;
  }

  h1, h2, h3 {
    font-weight: 700;
    color: var(--dark);
  }

  h1, .bg-dark h2, .bg-dark h3, .bg-dark p, #footer h3, #footer p, #footer li {
    color: #fff;
  }

  .bg-light {
    background: var(--lightGradientFallback);
    background: var(--lightGradient);
  }

  html .hero .elementor-element.elementor-button-success .elementor-button {
      border-color: #fff;
      color: #fff;
      margin-left: clamp(10px, 0.78vw, 15px);
  }

  html .hero .elementor-button:hover, html .hero .elementor-button:focus,
  html .hero .elementor-element.elementor-button-success .elementor-button:hover, html .hero .elementor-element.elementor-button-success .elementor-button:focus {
      background: #050B1A;
      border-color: #050B1A;
  }


  .hero .elementor-icon-list-icon svg {
    width: clamp(29px, 3.39vw, 65px) !important;
    height: clamp(29px, 3.39vw, 65px) !important;
  }

  .hero .elementor-icon-list-text {
    color: #fff;
    line-height: 0.9;
    font-size: clamp(17px, 1.30vw, 25px);
    font-weight: 600;
    margin-left: clamp(8px, 0.63vw, 12px);
  }

  .hero .elementor-widget-icon-list {
    margin: clamp(27px, 2.08vw, 40px) 0 clamp(57px, 4.43vw, 85px) !important;
  }

  .hero .elementor-icon-list-items li {
    margin: 0 !important;
  }

  .hero .elementor-icon-list-items li:nth-child(2) {
    margin: 0 clamp(33px, 2.60vw, 50px) !important;
  }

  .hero h1 {
    margin-top: clamp(87px, 6.77vw, 130px);
  }

  .hero h1 + p {
    font-size: clamp(17px, 1.56vw, 30px);
    margin: clamp(7px, 0.52vw, 10px) 0 0;
    color: #fff;
    max-width: clamp(667px, 52.08vw, 1000px);
  }

  .notice {
    margin: 0 0 clamp(27px, 2.08vw, 40px) !important;
  }


  .notice .elementor-widget-container {
    background: var(--lightGradientFallback);
    background: var(--lightGradient);
    padding: clamp(20px, 1.56vw, 30px) clamp(27px, 2.08vw, 40px);
    border-radius: var(--radius-small);
    flex-wrap: wrap;
    display: flex;
    justify-content: space-between;
  }

  .notice .elementor-widget-container h3 {
    flex: 0 0 100%;
    max-width: 100%;
    margin: 0 0 clamp(7px, 0.52vw, 10px);
    display: flex;
    align-items: center;
  }

  .notice .elementor-widget-container h3:before {
    content: '';
    display: block;
    width: clamp(30px, 2.34vw, 45px);
    height: clamp(28px, 2.19vw, 42px);
    background-image: url(i/icons/icon-alert.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    margin: 0 clamp(10px, 0.78vw, 15px) 0 0;
  }

  .notice .elementor-widget-container p:first-of-type {
    flex: 0 0 72%;
    max-width: 72%;
    margin: 0;
    letter-spacing: -0.5px;

  }

  .notice .elementor-widget-container p:last-of-type {
    flex: 0 0 24%;
    max-width: 24%;
    text-align: right;
  }

  .notice .elementor-widget-container p:first-of-type a,
  .notice .elementor-widget-container p strong {
    margin: 0;
    color: var(--dark);
    font-weight: 600;
  }

  .notice .elementor-widget-container p:first-of-type a:hover, .notice .elementor-widget-container p:first-of-type a:focus {
    color: var(--blue);
  }

  .blog-feed .elementor-post__read-more,
  .notice .elementor-widget-container p:last-of-type a {
    font-family: var(--buttonFont) !important;
    font-size: var(--buttonFontSize) !important;
    padding: clamp(10px, 0.78vw, 15px) clamp(19px, 1.51vw, 29px) !important;
    background-color: var(--buttonBackgroundPrimary) !important;
    color: var(--buttonTextColour) !important;
    line-height: 1 !important;
    font-weight: var(--buttonWeight) !important;
    border-radius: var(--buttonRadius) !important;
    text-transform: var(--buttonCasing) !important;
    border: var(--buttonBorderWidth) solid var(--buttonBackgroundPrimary) !important;
    cursor: pointer !important;
    display: inline-block !important;
    transition: var(--transition) !important;
    letter-spacing: var(--buttonLetterSpacing) !important;
  }

  .blog-feed .elementor-post__read-more:hover,
  .blog-feed .elementor-post__read-more:focus,
  .notice .elementor-widget-container p:last-of-type a:hover,
  .notice .elementor-widget-container p:last-of-type a:focus {
    background: var(--buttonHoverBackgroundColour) !important;
    color: var(--buttonHoverFontColour) !important;
    border-color: var(--buttonHoverBackgroundColour) !important;
  }

  .home-services .elementor-image-box-img {
    width: 100% !important;
  }

  .home-services .elementor-image-box-content p {
    padding: 0 clamp(13px, 1.04vw, 20px);
  }

  .home-services .elementor-image-box-content h3 {
    margin: clamp(7px, 0.52vw, 10px) 0 clamp(7px, 0.52vw, 10px);
  }

  .home-services .elementor-image-box-img img, .img-rounded img {
    border-radius: var(--radius-small) !important;
  }

  .home-about .elementor-button-success {
    margin-left: clamp(10px, 0.78vw, 15px);
  }

  .home-about .elementor-button {
    margin-top: clamp(27px, 2.08vw, 40px);
  }

  .home-about h2 {
    margin: 0 0 clamp(7px, 0.52vw, 10px);
  }

  .home-about {
    position: relative;
  }


  .home-about img {
    max-width: unset !important;
    width: clamp(620px, 51.82vw, 995px) !important;
    margin-top: clamp(-60px, -3.13vw, -40px);
  }

  #footer h3 {
    font-size: clamp(21px, 1.67vw, 32px);
    font-weight: 600;
    margin: 0 0 clamp(17px, 1.30vw, 25px);
  }

  #footer ul li a {
    color: #fff;
  }

  #footer ul li a:hover, #footer ul li a:focus {
    color: var(--teal);
  }

  .pg-contact ul li svg,
  #footer ul li svg {
    width: clamp(17px, 1.30vw, 25px) !important;
    height: auto !important;
    margin-right: clamp(5px, 0.36vw, 7px) !important;
  }

  .pg-contact .footer-contact ul li svg,
  #footer .footer-contact ul li svg {
    position: relative;
    top: clamp(1px, 0.10vw, 2px);
  }

  .pg-contact ul li:not(:last-child) {
    margin: 0 0 clamp(7px, 0.52vw, 10px);
  }
  #footer ul li:not(:last-child) {
    margin: 0 0 clamp(13px, 0.99vw, 19px);
  }

  .pg-contact ul li a {
    color: var(--dark);
  }

  .pg-contact ul li a:hover,
  .pg-contact ul li a:focus {
    color: var(--blue);
  }

  #footer .copyright {
    margin: clamp(67px, 5.21vw, 100px) 0 0;
  }

  #footer .copyright p {
    margin: 0;
  }

  #footer .copyright a {
    color: var(--teal);
    text-decoration: underline;
  }

  #footer .copyright a:hover, #footer .copyright a:focus {
    color: #fff;
  }

  #header {
    position: fixed;
    z-index: 5000;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    transition: var(--transition);
    background-color: rgba(15,26,56,0);
    padding: clamp(17px, 1.30vw, 25px) clamp(20px, 1.56vw, 30px);
  }

  .elementor-editor-active #header {
    position: relative;
  }

  .admin-bar #header{
    top: 32px;
  }

  .brand {
    display: block;
    max-width: clamp(133px, 10.42vw, 200px);
  }

  .brand svg {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto !important;
    transition: var(--transition);
  }

  .brand svg.logo-text {
    margin: clamp(10px, 0.78vw, 15px) auto clamp(7px, 0.52vw, 10px) !important;
  }

  .brand svg.logo-crown {
    width: clamp(64px, 7.34375vw, 141px);
  }

  .brand svg.logo-text {
    width: clamp(109px, 10.46875vw, 201px);
  }

  .brand svg.logo-smile {
    width: clamp(54px, 5.78125vw, 111px);
  }

  #header.active {
    background-color: rgba(15,26,56,1);
    padding: clamp(5px, 0.36vw, 7px) clamp(20px, 1.56vw, 30px);
  }


  #header.active .brand svg.logo-crown {
    width: clamp(43px, 3.39vw, 65px);
  }

  #header.active .brand svg.logo-smile {
    width: clamp(33px, 2.60vw, 50px);
  }

  #header.active .brand svg.logo-text {
    margin: clamp(5px, 0.42vw, 8px) 0 clamp(4px, 0.31vw, 6px);
    width: clamp(113px, 8.85vw, 170px);
  }

  #header .side-navigation svg.logo-crown {
    width: clamp(43px, 3.39vw, 65px) !important;
  }
  
  #header .side-navigation svg.logo-smile {
    width: clamp(33px, 2.60vw, 50px) !important;
  }

  #header .side-navigation svg.logo-text {
    margin: clamp(5px, 0.42vw, 8px) auto clamp(4px, 0.31vw, 6px) !important;
    width: clamp(113px, 8.85vw, 170px) !important;
  }

  .navigation a {
    color: #fff;
    padding: clamp(13px, 1.04vw, 20px) clamp(13px, 1.04vw, 20px);
  }

  .navigation a:hover, .navigation a:focus, .navigation .current-menu-item a {
    color: var(--teal);
  }

  .navigation li#openSideMenu i:nth-child(2) {
    display: none;
  }

  .navigation li#openSideMenu i {
    background: #fff;
    width: clamp(24px, 1.88vw, 36px);
    height: clamp(2px, 0.16vw, 3px);
    border-radius: clamp(67px, 5.21vw, 100px);
    margin: clamp(8px, 0.63vw, 12px) 0;
  }

  .navigation li#openSideMenu a {
    padding: clamp(13px, 1.04vw, 20px) clamp(0px, 0.00vw, 0px) clamp(13px, 1.04vw, 20px) clamp(10px, 0.78vw, 15px);
    margin: clamp(2px, 0.16vw, 3px) 0 0;
  }

  .navigation li#openSideMenu a:hover i, .navigation li#openSideMenu a:focus i {
    background: var(--teal);
  }

  .navigation ul {
    margin: 0;
    transition: all 0.3s;
  }

  #header.active .navigation ul {
    margin: clamp(11.333333333333334px, 0.8854166666666666vw, 17px) 0 0 !important;
  }

  .side-navigation .menu {
    max-width: clamp(220px, 17.19vw, 330px);
    width: clamp(220px, 17.19vw, 330px);
    flex: 0 0 clamp(220px, 17.19vw, 330px);
    padding: clamp(40px, 3.13vw, 60px) clamp(27px, 2.08vw, 40px);
  }

  .side-navigation:before {
    opacity: 0.96;
  }

  .side-navigation .brand {
    width: clamp(133px, 10.42vw, 200px);
    margin: 0 auto clamp(20px, 1.56vw, 30px);
  }


  .side-navigation .brand svg * {
    fill: var(--blue);
  }

  .side-navigation .menu li:not(.link-button, :first-child) a {
    color: var(--dark);
    padding: clamp(3px, 0.42vw, 5px) 0;
  }

  .side-navigation .menu li.last-side-menu-nav-item {
    margin: 0 0 clamp(40px, 3.13vw, 60px);
  }

  .side-navigation .menu li strong {
    display: block;
    font-size: clamp(12px, 0.94vw, 18px);
    text-transform: uppercase;
    letter-spacing: 0;
    margin: clamp(7px, 0.52vw, 10px) 0 clamp(-2px, -0.10vw, -1px);
    color: var(--dark);
  }

  .side-navigation .menu li a:has(strong) {
    color: var(--text) !important;
  }

  .side-navigation .menu li a:has(strong):hover,
  .side-navigation .menu li a:has(strong):focus,
  .side-navigation .menu li.current-menu-item a,
  .side-navigation .menu li.current-menu-parent a,
  .side-navigation .menu li a:not(.link-button):hover,
  .side-navigation .menu li a:not(.link-button):focus {
    color: var(--blue) !important;
  }

  .side-navigation .menu li.link-button {
    margin: clamp(10px, 0.78vw, 15px) 0 0;
  }

  .pg-title {
    padding: clamp(267px, 20.83vw, 400px) clamp(20px, 1.56vw, 30px) clamp(67px, 5.21vw, 100px);
  }

  #rating {
    list-style: none;
    margin: clamp(27px, 2.08vw, 40px) 0 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #rating li {
    margin: 0;
    cursor: pointer;
    padding: clamp(3px, 0.26vw, 5px);
  }

  #rating li svg path {
    transition: var(--transition);
  }

  #rating.rating-hover-1 li:nth-child(1) svg path,
  #rating.rating-hover-2 li:nth-child(1) svg path,
  #rating.rating-hover-3 li:nth-child(1) svg path,
  #rating.rating-hover-4 li:nth-child(1) svg path,
  #rating.rating-hover-5 li:nth-child(1) svg path,
  #rating.rating-hover-2 li:nth-child(2) svg path,
  #rating.rating-hover-3 li:nth-child(2) svg path,
  #rating.rating-hover-4 li:nth-child(2) svg path,
  #rating.rating-hover-5 li:nth-child(2) svg path,
  #rating.rating-hover-3 li:nth-child(3) svg path,
  #rating.rating-hover-4 li:nth-child(3) svg path,
  #rating.rating-hover-5 li:nth-child(3) svg path,
  #rating.rating-hover-4 li:nth-child(4) svg path,
  #rating.rating-hover-5 li:nth-child(4) svg path,
  #rating.rating-hover-5 li:nth-child(5) svg path  {
    fill: var(--teal);
    stroke: var(--teal);
    fill-opacity: 1;
  }

  #rating-improve,
  #rating-success {
    display: none;
    text-align: center;
    margin: clamp(17px, 1.30vw, 25px) 0 0;
  }

  .rating, .rating h4 {
    color: #fff;
  }

  .rating h2 {
    margin: 0 0 clamp(3px, 0.52vw, 10px);
  }

  .rating h4 {
    margin: 0 0 clamp(5px, 0.42vw, 8px);
  }

  .rating .button {
    margin: clamp(7px, 0.52vw, 10px) 0 0;
  }

  .rating .button:hover,
  .rating .button:focus {
    background-color: #fff;
    color: var(--dark);
  }

  .testimonials .elementor-testimonial__name {
    font-size: var(--mainFontSize);
    color: var(--dark);
  }

  .testimonials .elementor-testimonial__name:after {
    content: '';
    display: block;
    width: clamp(95px, 7.40vw, 142px);
    height: clamp(15px, 1.20vw, 23px);
    background-image: url(i/icons/icon-stars.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    margin: clamp(3px, 0.26vw, 5px) auto 0;
  }

  .testimonials .elementor-widget-testimonial-carousel .elementor-testimonial__text {
    font-style: normal;
    font-size: var(--mainFontSize);
    max-width: 80%;
    margin: 0 auto clamp(33px, 2.60vw, 50px);
  }

  .testimonials .elementor-element .swiper .elementor-swiper-button svg {
    fill: var(--dark);
    width: clamp(27px, 2.08vw, 40px) !important;
    height: clamp(33px, 2.60vw, 50px) !important;
    padding: 0 !important;
    transition: var(--transition);
  }

  .testimonials .elementor-element .swiper .elementor-swiper-button:hover svg,
  .testimonials .elementor-element .swiper .elementor-swiper-button:focus svg {
    fill: var(--blue);
  }


  .testimonials .elementor-element .swiper .elementor-swiper-button {
    margin: clamp(-60px, -3.13vw, -40px) 0 0;
  }

  .blog-feed .elementor-post__excerpt {
    margin: clamp(3px, 0.26vw, 5px) 0 clamp(23px, 1.82vw, 35px) !important;
  }

  .blog-feed .elementor-post__excerpt p {
    font-size: var(--mainFontSize) !important;
  }

  .blog-feed .elementor-post__excerpt p:after {
    content: "...";
  }

  .blog-feed .elementor-posts .elementor-post__title a {
    font-size: var(--h4FontSize);
    color: var(--dark);
  }

  .blog-feed .elementor-post {
    background-color: #fff;
    box-shadow: var(--box-shadow);
    border-radius: var(--radius-small);
    margin-bottom: clamp(17px, 1.30vw, 25px) !important;
  }

  .blog-feed .elementor-post__text {
    padding: clamp(10px, 0.78vw, 15px) clamp(17px, 1.30vw, 25px) clamp(23px, 1.82vw, 35px);
  }

  .home-services .elementor-image-box-content * {
    text-align: center;
  }

  .services-intro p {
    font-size: clamp(20px, 1.56vw, 30px);
    color: var(--dark);
  }

  .faq,
  .emergency-box {
    background-color: #fff;
    border-radius: var(--radius-small) !important;
  }

  .faq .elementor-widget-container,
  .emergency-box .elementor-widget-container {
    padding: clamp(33px, 2.60vw, 50px);
    text-align: center;
    position: relative;
    z-index: 12;
  }

  .captcha-note {
    margin: -3px 0 0;
    line-height: 1;
  }

  .faq:after,
  .emergency-box:after {
    content: "";
    display: block;
    box-shadow: var(--box-shadow);
    width: auto;
    height: clamp(5px, 0.42vw, 8px);
    position: absolute;
    z-index: 2;
    left: clamp(27px, 2.08vw, 40px);
    right: clamp(27px, 2.08vw, 40px);
    bottom: 0;
  }

  .faq {
    margin-top: clamp(10px, 0.78vw, 15px) !important;
    margin-bottom: clamp(10px, 0.78vw, 15px) !important;
  }

  .faq h3,
  .emergency-box h3 {
    margin: 0 0 clamp(11px, 0.89vw, 17px);
  }




  .faq h3:before {
    content: '';
    display: block;
    width: clamp(33px, 2.60vw, 50px);
    height: clamp(33px, 2.60vw, 50px);
    background-image: url(i/icons/icon-questions.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    margin-bottom: clamp(13px, 1.04vw, 20px);
  }

  .faq .elementor-widget-container {
    text-align: left;
  }

  .pg-section .elementor-icon-box-wrapper .elementor-icon-box-icon {
    background-color: var(--blue);
    max-width: clamp(80px, 6.25vw, 120px);
    height: clamp(80px, 6.25vw, 120px);
    width: clamp(80px, 6.25vw, 120px);
    margin: 0 auto;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .pg-section .elementor-icon-box-wrapper .elementor-icon-box-icon .elementor-icon {
      width: 60%;
      height: auto;
  }

  .pg-section .elementor-icon-box-wrapper .elementor-icon-box-icon .elementor-icon svg {
      width: 100%;
      height: auto;
      max-height: clamp(45px, 3.54vw, 68px);
  }

  .pg-section .elementor-icon-box-wrapper .elementor-icon-box-icon .elementor-icon svg * {
      fill: #fff;
  }

  .section-outro p {
    padding: 0 clamp(67px, 5.21vw, 100px);
    color: var(--dark);
  }

  .bg-light h4 {
    color: var(--dark);
  }

  .pg-section .elementor-icon-box-wrapper {
    margin-top: clamp(17px, 1.30vw, 25px) !important;
    margin-bottom: clamp(17px, 1.30vw, 25px) !important;
  }

  .sedation-box {
    border-radius: var(--radius-small) !important;
  }

  .sedation-box .elementor-widget-container {
    padding: clamp(33px, 2.60vw, 50px);
  }

  .faq h3,
  .sedation-box h3 {
    margin: 0 0 clamp(5px, 0.36vw, 7px);
  }

  .sedation-box ul {
    list-style: none;
    padding: 0;
  }

  .sedation-box ul li {
    padding-left: clamp(23px, 1.77vw, 34px);
    position: relative;
  }

  .sedation-box ul li:before {
    content: '';
    display: block;
    width: clamp(16px, 1.25vw, 24px);
    height: clamp(16px, 1.25vw, 24px);
    background-image: url(i/icons/icon-check.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    left: 0;
    top: clamp(2px, 0.16vw, 3px);
  }

  .pg-contact .footer-contact {
    margin: clamp(17px, 1.30vw, 25px) 0 clamp(40px, 3.13vw, 60px) !important;
  }

  .pg-contact iframe {
    height: clamp(317px, 24.74vw, 475px) !important;
    border-radius: var(--radius-small) !important;
  }

  .pg-contact h2 + h3 {
    font-weight: 200;
    color: var(--blue);
  }

  .pg-contact .elementor-button-success {
    margin-left: clamp(7px, 0.52vw, 10px);
  }

  .dialog-lightbox-widget h3 + p, .dialog-lightbox-widget label {
    font-size: calc(var(--mainFontSize) / 1.25);
    line-height: 1.3;
  }

  .dialog-lightbox-widget label {
    color: var(--dark);
    font-weight: 500;
  }

  .dialog-lightbox-widget .e-con-inner {
    padding: clamp(27px, 2.08vw, 40px) !important;
  }

  .dialog-lightbox-widget .e-con-inner textarea {
    height: clamp(67px, 5.21vw, 100px) !important;
    resize: none !important;
  }

  .dialog-lightbox-widget .captcha-note {
    text-align: center;
    margin: 0 auto clamp(7px, 0.52vw, 10px);
    max-width: clamp(207px, 16.15vw, 310px);
    line-height: 1.25;
  }

  .dialog-lightbox-widget h3 {
    margin: 0 0 clamp(7px, 0.52vw, 10px);
  }

  .dialog-lightbox-widget h3 + p {
    margin: 0 0 clamp(13px, 1.04vw, 20px);
  }

  .dialog-lightbox-widget .elementor-mark-required .elementor-field-label:after {
    padding: 0;
    margin: 0;
    color: var(--blue);
  }

  .elementor-popup-modal .dialog-widget-content {
    border-radius: var(--radius-small) !important;
  }

  .pg-title .elementor-widget-post-info svg {
      fill: var(--blue);
      width: 100% !important;
      height: 100% !important;
  }

.pg-title .elementor-widget-post-info .elementor-icon-list-icon {
    width: clamp(20px, 1.5625vw, 30px) !important;
    height: clamp(20px, 1.5625vw, 30px) !important;
    margin-right: 5px;
}

.pg-title .elementor-widget-post-info {
    margin-top: clamp(10px, 0.78125vw, 15px);
}

.pg-title .elementor-widget-post-info li {
  color: #fff;
}

.back-m {display: none !important;}
.back-d {display: block !important;}

#loadmore {
  background-color: var(--buttonBackgroundSecondary);
    border-color: var(--buttonBackgroundSecondary);
    margin-top: 50px;
}

#loadmore:hover,
#loadmore:focus,
.link-button a:hover, .link-button a:focus, html .button:hover, html .button:focus, html .button.secondary:hover, html .button.secondary:focus, html .button.ghost:hover, html .button.ghost:focus, html .elementor-form .elementor-button:hover, html .elementor-form .elementor-button:focus, html .elementor-button:hover, html .elementor-button:focus, html .woocommerce #respond input#submit:hover, html .woocommerce #respond input#submit.alt:hover, html .woocommerce a.button:hover, html .woocommerce a.button.alt:hover, html .woocommerce button.button:hover, html .woocommerce button.button.alt:hover, html .woocommerce input.button:hover, html .woocommerce input.button.alt:hover, html .woocommerce a.button:focus, html .woocommerce a.button.alt:focus, html .woocommerce button.button:focus, html .woocommerce button.button.alt:focus, html .woocommerce input.button:focus, html .woocommerce input.button.alt:focus, html .elementor-element.elementor-button-info .elementor-button:hover, html .elementor-element.elementor-button-info .elementor-button:focus, html .elementor-element.elementor-button-success .elementor-button:hover, html .elementor-element.elementor-button-success .elementor-button:focus {
  background-color: #777;
}

.pg-content .checklist {
  margin: 30px 0 30px !important;
}

.checklist {
  margin: 20px 0 !important;
}

.checklist svg {
  fill: var(--blue);
}

.checklist li:not(:last-child) {
  margin: 0 0 10px;
}

.rating textarea {
  resize: none;
  height: 80px !important;
}

.rating label {
  font-size: var(--smallFontSize);
}

.rating label span {

}

.rating label:after {
  color: var(--teal) !important;
}

.rating form a {
  color: var(--teal);!;
}

.rating form a:hover, .rating form a:focus {
  color: #fff;
}

.rating form {
  max-width: 650px;
  margin: 15px auto 0;
}

.rating .elementor-button:hover, .rating .elementor-button:focus {
  background-color: #fff !important;
  color: var(--dark) !important;
  opacity: 1 !important;
}

.captcha-note p {
  font-size: 16px;
}

@media (max-height: 700px) and (min-width: 1600px) {

  .hero {
    height: 800px !important;
  }

}

@media (max-width: 1367px) {

  .hero, .pg-title, .pg-section, .rating, #footer, #header {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }

}


@media (max-width: 1199px) {

  .dialog-lightbox-widget h3 + p, .dialog-lightbox-widget label {
    font-size: var(--smallFontSize);
  }

  .hero, .pg-title {
    height: auto !important;
    min-height: auto !important;
    padding-top: clamp(133.33333333333334px, 10.416666666666666vw, 200px);
    padding-bottom: clamp(66.66666666666667px, 5.208333333333333vw, 100px);
  }


  .notice .elementor-widget-container {
    display: block;
  }

  .notice .elementor-widget-container p:first-of-type, .notice .elementor-widget-container p:last-of-type {
    max-width: 100%;
  }

  .notice .elementor-widget-container p:last-of-type {
    text-align: left;
    margin: 25px 0 0;
  }

}

@media (max-width: 991px) {
  #rating li svg {
    width: 30px;
    height: 30px;
  }

  #rating {
    margin-top: 15px;
  }
  .rating {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }

  #rating-improve h2 {margin: 0;font-size: var(--h3FontSize);}

  .home-about {
    padding-top: var(--spacing) !important;
  }

  .home-about .e-con-inner {
    flex-direction: column !important;
  }

  .home-about .elementor-element[data-element_type="container"] {
    flex: 0 0 100%;
    width: 100%;
    justify-content: center;
  }

  .home-about * {
    text-align: center;
  }

  .home-about img {
    max-width: 80% !important;
    width: auto !important;
    margin-top: calc(var(--spacing) / 2);
  }

  .home-about .content-left {
    padding: 0 !important;
  }

  .rating {
  }

  .rating br {
    display: none;
  }

  .blog-feed .elementor-grid {
    grid-template-columns: repeat(1, 1fr) !important;
    grid-gap: 0 !important;
  }

  .blog-feed .elementor-post {
    flex-direction: row !important;
    margin: 15px 0 !important;
  }

  .blog-feed article .elementor-post__thumbnail__link {
    flex: 0 0 40%;
    max-width: 40%;
    margin: 0 !important;
    height: 100%;
  }

  .blog-feed article .elementor-post__text {flex: 0 0 60%;max-width: 60%;padding: 30px;text-align: left;}

  .blog-feed article .elementor-post__thumbnail__link .elementor-post__thumbnail {
    height: 100% !important;
  }

  .section-outro p {
    padding: 0;
  }

}


@media (min-width: 768px) and (max-width: 991px) {

  .navigation a span {
    display: none;
  }

  .navigation a {
    padding: 10px 6px;
    font-size: 15px;
  }

  .navigation li#openSideMenu a {
    padding-left: 5px;
  }

}

@media (max-width: 767px) {

  .notice .elementor-widget-container h3:before {
    display: none;
  }

  .notice .elementor-widget-container:before {
    content: '';
    display: block;
    width: clamp(30px, 2.34vw, 45px);
    height: clamp(28px, 2.19vw, 42px);
    background-image: url(i/icons/icon-alert.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    top: 20px;
    left: 30px;
  }

  .notice .elementor-widget-container {
    position: relative;
    padding-left: 80px !important;
  }


  .emergency-box {
    margin: 10px 0 !important;
  }

  .side-navigation .menu li:first-child .brand {
    margin: 0 auto 30px !important;
  }

  html {margin-top: 0 !important;}
  #wpadminbar, .back-d {display: none !important;}
  .back-m {display: block !important;}

  .admin-bar #header {
    top: 0;
  }

  #header {
    background-color: rgba(15,26,56,0.5);
  }

  #header.active, #header {
    padding-top: 4px;
    padding-bottom: 4px;
  }

  .hero, .pg-title {
    height: auto !important;
    min-height: auto !important;
    padding-top: clamp(133.33333333333334px, 10.416666666666666vw, 200px);
    padding-bottom: clamp(66.66666666666667px, 5.208333333333333vw, 100px);
  }

  .pg-title, body:not(.home) .hero {
    padding-top: clamp(160px, 10.416666666666666vw, 200px);
  }

  #header .brand svg.logo-crown,
  #header.active .brand svg.logo-crown {
    width: clamp(43px, 3.39vw, 65px);
  }

  #header .brand svg.logo-smile,
  #header.active .brand svg.logo-smile {
    width: clamp(33px, 2.60vw, 50px);
  }

  #header .brand svg.logo-text,
  #header.active .brand svg.logo-text {
    margin: clamp(5px, 0.42vw, 8px) 0 clamp(4px, 0.31vw, 6px);
    width: clamp(113px, 8.85vw, 170px);
  }

  .mobile-navigation li.mobile-button span {
    color: #fff;
    font-size: 14px;
  }

  .mobile-navigation li.mobile-button {
    margin-top: 10px !important;
    margin-left: 3px;
  }

  .side-navigation .menu {
    padding-top: 40px;
  }

  .reverse-cols .e-con-inner,
  .blog-post .e-con-inner {
    flex-direction: column-reverse !important;
  }

  .blog-post img {
    margin: 0 0 40px;
    max-width: 300px;
  }

  .rating {
    position: relative;
    background-size: cover !important;
    background-position: center left !important;
  }

  .hero .e-con-inner,
  .rating .e-con-inner {
    z-index: 10;
    position: relative;
  }

  .hero:after,
  .rating:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: var(--dark);
    opacity: 0.5;
  }

  .home-services .elementor-element[data-element_type="container"] {
    position: relative !important;
    padding-left: 156px;
  }

  .home-services .elementor-image-box-wrapper figure {
    position: absolute;
    top: 0;
    left: -156px;
    max-width: 137px;
  }

  .home-services .elementor-image-box-img {
    margin-bottom: 0 !important;
  }

  .home-services * {
    text-align: left;
  }

  .home-services .elementor-image-box-content h3, .home-services .elementor-image-box-content p {
    text-align: left;
    padding: 0;
  }

  .home-services .elementor-image-box-content h3 {
    margin-top: 0;
  }

  .home-services .elementor-element[data-element_type="container"]:nth-of-type(2) {
    margin: 40px 0;
  }
  .notice .elementor-widget-container h3 {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .notice .elementor-widget-container h3:before {
    margin: 0 0 12px;
  }

  .notice .elementor-widget-container h3 {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .notice .elementor-widget-container h3:before {
    margin: 0 0 12px;
  }

  #footer .brand {
    margin: 0 auto;
  }



  #footer .copyright p,
  #footer h3, #footer ul {
    max-width: 250px;
    margin: 0 auto;
  }


  #footer h3 {
    margin: 40px auto 10px;
  }

  #footer .copyright p a {
    display: block;
    margin-top: 10px;
  }

  .hero ul.elementor-icon-list-items {
    flex-direction: column;
  }

  .hero .elementor-icon-list-items li:nth-child(2) {
    margin: 8px 0  !important;
  }

  .hero .elementor-icon-list-items li br {
    display: none;
  }


  .hero .elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text {
    padding: 0;
  }

  .hero .elementor-button-text span {
    display: none;
  }

  .hero {
    padding: 130px 30px 50px;
  }

  .hero h1 {
    margin: 0;
  }

  .hero .elementor-widget-icon-list {
    margin: 15px 0 30px !important;
  }

  .admin-bar .side-navigation {
    top: 0;
  }

  .dialog-lightbox-widget .captcha-note {
    max-width: unset;
  }


  body:not(.home) .img-rounded {
    margin-bottom: 30px !important;
  }

  .side-navigation .menu li {
    font-size: 20px !important;
  }

  .side-navigation .menu li.current-menu-parent li a,
  .side-navigation .menu li.current-menu-item li a {
    color: var(--dark) !important;
  }

  html .side-navigation .menu li li.current-menu-parent a,
  html .side-navigation .menu li li.current-menu-item a {
    color: var(--blue) !important;
  }

  .side-navigation .menu li ul {
    margin-bottom: 15px;
  }

  .side-navigation .menu li br {
    display: none;
  }

  .pg-section .elementor-icon-box-wrapper .elementor-icon-box-icon {
    flex: 0 0 80px;
    max-width: 80px;
  }

  .home .hero {
    background-position:  80% center !important;
  }

  #footer {
    background-size: 1000px;
    background-position: bottom left;
    background-repeat: no-repeat;
    background-color: var(--dark);
  }

  #footer .e-con-inner {
    position: relative;
    z-index: 10;
  }

  #footer:after {
    content: "";
    display: block;
    background: rgb(29,43,80);
    background: linear-gradient(0deg, rgba(29,43,80,0) 0%, rgba(29,43,80,1) 100%);
    position: absolute;
    height: 305px;
    width: 100%;
    left: 0;
    right: 0;
    bottom: 3px;
  }

  .pg-contact iframe {
    max-height: 200px;
    margin-bottom: 25px !important;
  }

  .sedation-box {
    border-radius: 16px !important;
    max-width: 90%;
    margin: 0 auto 15px !important;
  }

  .sedation-box ul li {
    margin: 0 0 10px;
  }

  .sedation-box h3 + p {
    margin: 0;
  }

}

@media (max-width: 640px) {

  .pg-contact .elementor-button,
  .hero .elementor-button, .pg-title .elementor-button {
    width: 100% !important;
    display: block;
    margin: 10px 0 0 !important;
  }

  .pg-contact .elementor-button-success {
    margin-left: 0 !important;
  }

  .pg-contact .e-con-inner .e-con-full,
  .hero .e-con-full, .pg-title .e-con-full {
    flex-direction: column;
  }

}

