.elementor-kit-80{--e-global-color-primary:#03045E;--e-global-color-secondary:#F0F0F0;--e-global-color-text:#292929;--e-global-color-accent:#0078B7;--e-global-color-dd0f573:#02010100;--e-global-color-e3cc757:#7BC5CF;--e-global-color-153107e:#FFFFFF;--e-global-color-cf7ca0f:#4A4D57;--e-global-color-6098357:#6E7280;--e-global-color-123088a:#C7CCD4;--e-global-color-8f23061:#E3F3F6;--e-global-color-06aef0b:#EDF5FA;--e-global-color-673e974:#EAE7F5;--e-global-color-443bd7f:#F1F2F5;--e-global-color-3a8853c:#F8FAFC;--e-global-color-f8176a9:#5E52A0;--e-global-typography-primary-font-family:"Nuosu SIL";--e-global-typography-primary-font-size:3rem;--e-global-typography-primary-font-weight:500;--e-global-typography-primary-line-height:1em;--e-global-typography-primary-letter-spacing:0.01em;--e-global-typography-secondary-font-family:"Nuosu SIL";--e-global-typography-secondary-font-size:2rem;--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Nunito Sans";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:600;--e-global-typography-text-line-height:1em;--e-global-typography-text-letter-spacing:-0.4px;--e-global-typography-accent-font-family:"Nuosu SIL";--e-global-typography-accent-font-size:0.8rem;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:none;--e-global-typography-dbf9a64-font-family:"Nuosu SIL";--e-global-typography-dbf9a64-font-size:88px;--e-global-typography-dbf9a64-font-weight:500;--e-global-typography-dbf9a64-line-height:1em;--e-global-typography-3f50110-font-family:"Nuosu SIL";--e-global-typography-3f50110-font-size:60px;--e-global-typography-3f50110-font-weight:500;--e-global-typography-3f50110-line-height:1em;--e-global-typography-3f50110-letter-spacing:-0.05em;--e-global-typography-7ae5231-font-family:"Nuosu SIL";--e-global-typography-7ae5231-font-size:36px;--e-global-typography-7ae5231-font-weight:500;--e-global-typography-7ae5231-letter-spacing:-0.0414em;--e-global-typography-a507428-font-family:"Nuosu SIL";--e-global-typography-a507428-font-size:28px;--e-global-typography-a507428-font-weight:500;--e-global-typography-a507428-line-height:1.2em;--e-global-typography-a507428-letter-spacing:-0.02em;--e-global-typography-e47d26e-font-family:"Nuosu SIL";--e-global-typography-e47d26e-font-size:22px;--e-global-typography-e47d26e-font-weight:500;--e-global-typography-e47d26e-line-height:1.3em;--e-global-typography-e47d26e-letter-spacing:-0.02em;--e-global-typography-4d24575-font-family:"Nuosu SIL";--e-global-typography-4d24575-font-size:18px;--e-global-typography-4d24575-font-weight:500;--e-global-typography-4d24575-line-height:1.3em;--e-global-typography-4d24575-letter-spacing:0em;--e-global-typography-68b2a97-font-family:"Nunito Sans";--e-global-typography-68b2a97-font-size:18px;--e-global-typography-68b2a97-font-weight:400;--e-global-typography-68b2a97-line-height:1.55em;--e-global-typography-68b2a97-letter-spacing:-0.4px;--e-global-typography-5752076-font-family:"Nuosu SIL";--e-global-typography-5752076-font-size:25px;--e-global-typography-5752076-font-weight:500;--e-global-typography-5752076-letter-spacing:-0.8px;--e-global-typography-fea5f75-font-family:"Nunito Sans";--e-global-typography-fea5f75-font-size:15px;--e-global-typography-fea5f75-font-weight:400;--e-global-typography-fea5f75-text-transform:uppercase;--e-global-typography-fea5f75-line-height:1.4em;--e-global-typography-fea5f75-letter-spacing:0em;--e-global-typography-9dd7d22-font-family:"Nuosu SIL";--e-global-typography-9dd7d22-font-size:67px;--e-global-typography-9dd7d22-font-weight:500;--e-global-typography-9dd7d22-text-transform:uppercase;--e-global-typography-9dd7d22-font-style:italic;--e-global-typography-9dd7d22-line-height:1em;--e-global-typography-9dd7d22-letter-spacing:-0.025em;color:var( --e-global-color-text );font-family:var( --e-global-typography-68b2a97-font-family ), Sans-serif;font-size:var( --e-global-typography-68b2a97-font-size );font-weight:var( --e-global-typography-68b2a97-font-weight );line-height:var( --e-global-typography-68b2a97-line-height );letter-spacing:var( --e-global-typography-68b2a97-letter-spacing );overscroll-behavior:contain;--e-page-transition-entrance-animation:e-page-transition-fade-out;--e-page-transition-exit-animation:e-page-transition-slide-in-right;--e-page-transition-animation-duration:200ms;--e-preloader-animation:flash;--e-preloader-animation-duration:3000ms;--e-preloader-delay:0ms;--e-preloader-max-width:10%;--e-preloader-opacity:1;}.elementor-kit-80 button,.elementor-kit-80 input[type="button"],.elementor-kit-80 input[type="submit"],.elementor-kit-80 .elementor-button{background-color:var( --e-global-color-secondary );color:var( --e-global-color-text );border-radius:0px 0px 0px 0px;}.elementor-kit-80 button:hover,.elementor-kit-80 button:focus,.elementor-kit-80 input[type="button"]:hover,.elementor-kit-80 input[type="button"]:focus,.elementor-kit-80 input[type="submit"]:hover,.elementor-kit-80 input[type="submit"]:focus,.elementor-kit-80 .elementor-button:hover,.elementor-kit-80 .elementor-button:focus{background-color:var( --e-global-color-primary );color:#03045E;box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.1);}.elementor-kit-80 e-page-transition{background-color:#393939F2;}.elementor-kit-80 h2{font-family:var( --e-global-typography-3f50110-font-family ), Sans-serif;font-size:var( --e-global-typography-3f50110-font-size );font-weight:var( --e-global-typography-3f50110-font-weight );line-height:var( --e-global-typography-3f50110-line-height );letter-spacing:var( --e-global-typography-3f50110-letter-spacing );}.elementor-kit-80 h3{font-family:var( --e-global-typography-7ae5231-font-family ), Sans-serif;font-size:var( --e-global-typography-7ae5231-font-size );font-weight:var( --e-global-typography-7ae5231-font-weight );line-height:var( --e-global-typography-7ae5231-line-height );letter-spacing:var( --e-global-typography-7ae5231-letter-spacing );}.elementor-kit-80 h4{font-family:var( --e-global-typography-a507428-font-family ), Sans-serif;font-size:var( --e-global-typography-a507428-font-size );font-weight:var( --e-global-typography-a507428-font-weight );line-height:var( --e-global-typography-a507428-line-height );letter-spacing:var( --e-global-typography-a507428-letter-spacing );}.elementor-kit-80 h5{font-family:var( --e-global-typography-e47d26e-font-family ), Sans-serif;font-size:var( --e-global-typography-e47d26e-font-size );font-weight:var( --e-global-typography-e47d26e-font-weight );line-height:var( --e-global-typography-e47d26e-line-height );letter-spacing:var( --e-global-typography-e47d26e-letter-spacing );}.elementor-kit-80 h6{font-family:var( --e-global-typography-4d24575-font-family ), Sans-serif;font-size:var( --e-global-typography-4d24575-font-size );font-weight:var( --e-global-typography-4d24575-font-weight );line-height:var( --e-global-typography-4d24575-line-height );letter-spacing:var( --e-global-typography-4d24575-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1400px;}.e-con{--container-max-width:1400px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:#00000082;--lightbox-ui-color-hover:var( --e-global-color-secondary );--lightbox-header-icons-size:0px;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-80{--e-global-typography-dbf9a64-font-size:64px;--e-global-typography-3f50110-font-size:48px;--e-global-typography-3f50110-line-height:1.08em;--e-global-typography-3f50110-letter-spacing:-0.05px;--e-global-typography-7ae5231-font-size:32px;--e-global-typography-7ae5231-line-height:1.12em;--e-global-typography-7ae5231-letter-spacing:-0.0414em;--e-global-typography-a507428-font-size:25px;--e-global-typography-a507428-line-height:1.2em;--e-global-typography-a507428-letter-spacing:-0.02em;--e-global-typography-e47d26e-font-size:21px;--e-global-typography-e47d26e-line-height:1.3em;--e-global-typography-e47d26e-letter-spacing:-0.02em;--e-global-typography-4d24575-font-size:18px;--e-global-typography-4d24575-line-height:1.3em;--e-global-typography-4d24575-letter-spacing:0em;--e-global-typography-68b2a97-font-size:17px;--e-global-typography-68b2a97-line-height:1.55em;--e-global-typography-68b2a97-letter-spacing:0em;--e-global-typography-5752076-font-size:24px;--e-global-typography-fea5f75-font-size:14px;--e-global-typography-fea5f75-line-height:1.4em;--e-global-typography-fea5f75-letter-spacing:0em;--e-global-typography-9dd7d22-font-size:67px;--e-global-typography-9dd7d22-line-height:1em;--e-global-typography-9dd7d22-letter-spacing:-0.025em;font-size:var( --e-global-typography-68b2a97-font-size );line-height:var( --e-global-typography-68b2a97-line-height );letter-spacing:var( --e-global-typography-68b2a97-letter-spacing );--e-preloader-max-width:20%;}.elementor-kit-80 h2{font-size:var( --e-global-typography-3f50110-font-size );line-height:var( --e-global-typography-3f50110-line-height );letter-spacing:var( --e-global-typography-3f50110-letter-spacing );}.elementor-kit-80 h3{font-size:var( --e-global-typography-7ae5231-font-size );line-height:var( --e-global-typography-7ae5231-line-height );letter-spacing:var( --e-global-typography-7ae5231-letter-spacing );}.elementor-kit-80 h4{font-size:var( --e-global-typography-a507428-font-size );line-height:var( --e-global-typography-a507428-line-height );letter-spacing:var( --e-global-typography-a507428-letter-spacing );}.elementor-kit-80 h5{font-size:var( --e-global-typography-e47d26e-font-size );line-height:var( --e-global-typography-e47d26e-line-height );letter-spacing:var( --e-global-typography-e47d26e-letter-spacing );}.elementor-kit-80 h6{font-size:var( --e-global-typography-4d24575-font-size );line-height:var( --e-global-typography-4d24575-line-height );letter-spacing:var( --e-global-typography-4d24575-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-80{--e-global-typography-primary-line-height:1em;--e-global-typography-secondary-line-height:1em;--e-global-typography-dbf9a64-font-size:47px;--e-global-typography-dbf9a64-line-height:1em;--e-global-typography-dbf9a64-letter-spacing:-0.064px;--e-global-typography-3f50110-font-size:36px;--e-global-typography-3f50110-line-height:1.08em;--e-global-typography-3f50110-letter-spacing:-0.05em;--e-global-typography-7ae5231-font-size:29px;--e-global-typography-7ae5231-line-height:1.12em;--e-global-typography-7ae5231-letter-spacing:-0.0414em;--e-global-typography-a507428-font-size:22px;--e-global-typography-a507428-line-height:1.2em;--e-global-typography-a507428-letter-spacing:-0.02em;--e-global-typography-e47d26e-font-size:20px;--e-global-typography-e47d26e-line-height:1.3em;--e-global-typography-e47d26e-letter-spacing:-0.02em;--e-global-typography-4d24575-font-size:18px;--e-global-typography-4d24575-line-height:1.3em;--e-global-typography-4d24575-letter-spacing:0em;--e-global-typography-68b2a97-font-size:16px;--e-global-typography-68b2a97-line-height:1.55em;--e-global-typography-68b2a97-letter-spacing:0em;--e-global-typography-5752076-font-size:22px;--e-global-typography-fea5f75-font-size:13px;--e-global-typography-fea5f75-line-height:1.4em;--e-global-typography-fea5f75-letter-spacing:0em;--e-global-typography-9dd7d22-font-size:49px;--e-global-typography-9dd7d22-line-height:1em;--e-global-typography-9dd7d22-letter-spacing:-0.025em;font-size:var( --e-global-typography-68b2a97-font-size );line-height:var( --e-global-typography-68b2a97-line-height );letter-spacing:var( --e-global-typography-68b2a97-letter-spacing );--e-page-transition-entrance-animation:e-page-transition-fade-out;--e-page-transition-exit-animation:e-page-transition-fade-in;--e-preloader-max-width:30%;}.elementor-kit-80 h2{font-size:var( --e-global-typography-3f50110-font-size );line-height:var( --e-global-typography-3f50110-line-height );letter-spacing:var( --e-global-typography-3f50110-letter-spacing );}.elementor-kit-80 h3{font-size:var( --e-global-typography-7ae5231-font-size );line-height:var( --e-global-typography-7ae5231-line-height );letter-spacing:var( --e-global-typography-7ae5231-letter-spacing );}.elementor-kit-80 h4{font-size:var( --e-global-typography-a507428-font-size );line-height:var( --e-global-typography-a507428-line-height );letter-spacing:var( --e-global-typography-a507428-letter-spacing );}.elementor-kit-80 h5{font-size:var( --e-global-typography-e47d26e-font-size );line-height:var( --e-global-typography-e47d26e-line-height );letter-spacing:var( --e-global-typography-e47d26e-letter-spacing );}.elementor-kit-80 h6{font-size:var( --e-global-typography-4d24575-font-size );line-height:var( --e-global-typography-4d24575-line-height );letter-spacing:var( --e-global-typography-4d24575-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}}/* Start custom CSS *//* ==========================================================
   SNOW LEOPARD PHYSIO — MOTION TOUCHES
   Paste this whole file ONCE into:
   Elementor > Site Settings > Custom CSS
   Then add the class names below to elements via:
   Element > Advanced > CSS Classes  (type the name WITHOUT the dot)
   ========================================================== */

/* Colours used (change here if the palette changes) */
:root {
  --slp-blue: #E4EEF6;
  --slp-lavender: #E6E2F3;
  --slp-silver: #E9ECF0;
  --slp-accent: #5C58A6;
}

/* ----------------------------------------------------------
   1. slp-float — gentle floating up and down
   Use on: hero photo of Gina, headshot, small images
   ---------------------------------------------------------- */
.slp-float {
  animation: slp-float 6s ease-in-out infinite;
}
@keyframes slp-float {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-14px); }
}

/* ----------------------------------------------------------
   2. slp-blob — soft shape that slowly changes shape behind an image
   Use on: an Image widget (the blob sits behind the photo)
   ---------------------------------------------------------- */
.slp-blob {
  position: relative;
  isolation: isolate;
}
.slp-blob::before {
  content: "";
  position: absolute;
  inset: -5% -6% -4% -7%;
  z-index: -1;
  background: var(--slp-lavender);
  border-radius: 42% 58% 63% 37% / 45% 40% 60% 55%;
  animation: slp-blob 14s ease-in-out infinite;
}
@keyframes slp-blob {
  0%, 100% { border-radius: 42% 58% 63% 37% / 45% 40% 60% 55%; transform: rotate(0deg); }
  33%      { border-radius: 60% 40% 38% 62% / 55% 62% 38% 45%; transform: rotate(6deg); }
  66%      { border-radius: 38% 62% 55% 45% / 40% 50% 50% 60%; transform: rotate(-4deg); }
}

/* ----------------------------------------------------------
   3. slp-drift — soft circles drifting slowly in a section background
   Use on: a Container / Section (e.g. the welcome section)
   ---------------------------------------------------------- */
.slp-drift {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.slp-drift::before,
.slp-drift::after {
  content: "";
  position: absolute;
  z-index: -1;
  border-radius: 50%;
  filter: blur(40px);
  opacity: 0.8;
}
.slp-drift::before {
  width: 420px; height: 420px;
  top: -120px; left: -80px;
  background: var(--slp-lavender);
  animation: slp-drift-a 22s ease-in-out infinite;
}
.slp-drift::after {
  width: 360px; height: 360px;
  bottom: -120px; right: -60px;
  background: var(--slp-blue);
  animation: slp-drift-b 26s ease-in-out infinite;
}
@keyframes slp-drift-a {
  0%, 100% { transform: translate(0, 0); }
  50%      { transform: translate(120px, 80px); }
}
@keyframes slp-drift-b {
  0%, 100% { transform: translate(0, 0); }
  50%      { transform: translate(-140px, -60px); }
}

/* ----------------------------------------------------------
   4. slp-tint — background slowly shifts between soft blue and lavender
   Use on: a Container / Section (e.g. quote band or enquiry box)
   ---------------------------------------------------------- */
.slp-tint {
  animation: slp-tint 16s ease-in-out infinite;
}
@keyframes slp-tint {
  0%, 100% { background-color: var(--slp-blue); }
  50%      { background-color: var(--slp-lavender); }
}

/* ----------------------------------------------------------
   5. slp-button — button lifts softly when hovered
   Use on: a Button widget
   ---------------------------------------------------------- */
.slp-button .elementor-button {
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.slp-button .elementor-button:hover,
.slp-button .elementor-button:focus-visible {
  transform: translateY(-3px);
  box-shadow: 0 12px 24px rgba(92, 88, 166, 0.25);
}

/* ----------------------------------------------------------
   6. slp-zoom — photo zooms in slowly when hovered
   Use on: an Image widget (keep its rounded corners)
   ---------------------------------------------------------- */
.slp-zoom .elementor-widget-container {
  overflow: hidden;
  border-radius: 32px;
}
.slp-zoom img {
  transition: transform 1.2s ease;
}
.slp-zoom:hover img {
  transform: scale(1.06);
}

/* ----------------------------------------------------------
   7. slp-link — underline grows in from the left on hover
   Use on: a Text Editor or Heading widget that contains links
   ---------------------------------------------------------- */
.slp-link a {
  text-decoration: none;
  background-image: linear-gradient(var(--slp-accent), var(--slp-accent));
  background-size: 0% 1.5px;
  background-position: 0 100%;
  background-repeat: no-repeat;
  transition: background-size 0.4s ease;
}
.slp-link a:hover,
.slp-link a:focus-visible {
  background-size: 100% 1.5px;
}

/* ----------------------------------------------------------
   IMPORTANT — switches all movement off for anyone whose device
   is set to "reduce motion" (people with dizziness, PoTS, etc.)
   Keep this at the bottom.
   ---------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .slp-float,
  .slp-blob::before,
  .slp-drift::before,
  .slp-drift::after,
  .slp-tint {
    animation: none !important;
  }
  .slp-button .elementor-button,
  .slp-zoom img,
  .slp-link a {
    transition: none !important;
  }
}/* End custom CSS */