/* poppins-600 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/poppins/poppins-v22-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* poppins-800 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 800;
    src: url('../fonts/poppins/poppins-v22-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/inter/inter-v18-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 400;
    src: url('../fonts/inter/inter-v18-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-700 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/inter/inter-v18-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-700italic - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Inter';
    font-style: italic;
    font-weight: 700;
    src: url('../fonts/inter/inter-v18-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

:root {
    --blue: #007bff;
    --indigo: #6610f2;
    --purple: #6f42c1;
    --pink: #e83e8c;
    --red: #dc3545;
    --orange: #fd7e14;
    --yellow: #ffc107;
    --green: #28a745;
    --teal: #20c997;
    --cyan: #17a2b8;
    --white: #fff;
    --gray: #6c757d;
    --gray-dark: #343a40;
    --primary: #F195B2;
    --primary-dark: #ed7399;
    --secondary: #62C3E7;
    --secondary-dark: #41b6e2;
    --success: #28a745;
    --info: #17a2b8;
    --warning: #ffc107;
    --danger: #dc3545;
    --light: #FFFFFF;
    --dark: #333333;
    --link-color: #F195B2;
    --link-hover: #e85181;
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --font-family-heading: "Poppins", Arial, Helvetica, sans-serif;
    --font-family-body-text: 'Inter', Arial, Helvetica, sans-serif;
    --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

*, *::before, *::after{ box-sizing: border-box; }
html{ font-family: var(--font-family-body-text); line-height: 1.15; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
body{ margin: 0; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #555555; text-align: left; background-color: #F3F6FF; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: var(--font-family-heading); margin-top: 0; margin-bottom: 0.5rem; line-height: 1.2; color: #333333; }
h1, .h1 { font-size: 2.5rem; }
h2, .h2 { font-size: 2rem; }
h3, .h3 { font-size: 1.75rem; }
h4, .h4 { font-size: 1.5rem; }
h5, .h5 { font-size: 1.25rem; }
h6, .h6 { font-size: 1rem; }
h1, h2, h3{ font-weight: 800; }
h4, h5 h6{ font-weight: 600; }
@media (max-width: 1200px) { 
  h1, .h1 { font-size: calc(1.375rem + 1.5vw); }
  h2, .h2 { font-size: calc(1.325rem + 0.9vw); }
  h3, .h3 { font-size: calc(1.3rem + 0.6vw); }
  h4, .h4 { font-size: calc(1.275rem + 0.3vw); }
}
p{ margin-top: 0; margin-bottom: 1rem; }
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section { display: block; }
[tabindex="-1"]:focus:not(:focus-visible) { outline: 0 !important; }
hr { box-sizing: content-box; height: 0; overflow: visible; }
abbr[title], abbr[data-original-title] { text-decoration: underline; text-decoration: underline dotted; cursor: help; border-bottom: 0; text-decoration-skip-ink: none; }
address { margin-bottom: 1rem; font-style: normal; line-height: inherit; }
ol, ul, dl { margin-top: 0; margin-bottom: 1rem; }
ol ol, ul ul, ol ul, ul ol{ margin-bottom: 0; }
dt{ font-weight: 700; }
dd{ margin-bottom: .5rem; margin-left: 0; }
blockquote{ margin: 0 0 1rem; }
b, strong{ font-weight: 700; }
small { font-size: 0.875; }
sub, sup{ position: relative; font-size: 0.875rem; line-height: 0; vertical-align: baseline; }
sub { bottom: -.25em; }
sup { top: -.5em; }
a { color: var(--link-color); text-decoration: none; background-color: transparent; }
a:hover { color: var(--link-hover); text-decoration: underline; }
a:not([href]):not([class]) { color: inherit; text-decoration: none; }
a:not([href]):not([class]):hover { color: inherit; text-decoration: none; }
pre, code, kbd, samp { font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: 1em; }
pre { margin-top: 0; margin-bottom: 1rem; overflow: auto; -ms-overflow-style: scrollbar; }
figure { margin: 0; }
img { vertical-align: middle; border-style: none; }
svg { overflow: hidden; vertical-align: middle; }
table { border-collapse: collapse; }
caption { padding-top: 0.75rem; padding-bottom: 0.75rem; color: #6c757d; text-align: left; caption-side: bottom; }
th { text-align: inherit; text-align: -webkit-match-parent; }
label { display: inline-block; margin-bottom: 0.5rem; }
button { border-radius: 0; }
button:focus { outline: 1px dotted; outline: 5px auto -webkit-focus-ring-color; }
input, button, select, optgroup, textarea { margin: 0; font-family: inherit; font-size: inherit; line-height: inherit; }
button, input { overflow: visible; }
button, select { text-transform: none; }
[role="button"] { cursor: pointer; }
select { word-wrap: normal; }
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; appearance: button; }
button:not(:disabled), [type="button"]:not(:disabled), [type="reset"]:not(:disabled), [type="submit"]:not(:disabled) { cursor: pointer; }
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { padding: 0; border-style: none; }
input[type="radio"], input[type="checkbox"] { box-sizing: border-box; padding: 0; }
textarea { overflow: auto; resize: vertical; }
fieldset { min-width: 0; padding: 0; margin: 0; border: 0; }
legend { display: block; width: 100%; max-width: 100%; padding: 0; margin-bottom: .5rem; font-size: 1.5rem; line-height: inherit; color: inherit; white-space: normal; }
@media (max-width: 1200px) {
  legend { font-size: calc(1.275rem + 0.3vw); }
}
progress { vertical-align: baseline; }
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }
[type="search"] { outline-offset: -2px; -webkit-appearance: none; appearance: none; }
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { font: inherit; -webkit-appearance: button; }
output { display: inline-block; }
summary { display: list-item; cursor: pointer; }
template { display: none; }
[hidden] { display: none !important; }

.btn{ display: inline-block; width: fit-content; padding: 10px 25px; line-height: 1.5; border-radius: 100px; text-decoration: none; font-weight: 600; font-family: var(--font-family-heading); text-align: center; border: solid 1px transparent; transition: all .15s ease-in-out; margin-top: .5rem; }
.btn:hover{ text-decoration: none; }
.btn.btn-primary{ background-color: var(--primary); color: #FFF; }
.btn.btn-primary:hover{ background-color: var(--primary-dark); color: #FFF; }
.btn.btn-secondary{ background-color: var(--secondary); color: #FFF; }
.btn.btn-secondary:hover{ background-color: var(--secondary-dark); color: #FFF; }

.container{ max-width: 1500px; width: 100%; padding: 0 30px; margin: 0 auto; }

.text-primary{ color: var(--primary) !important; }
.text-secondary{ color: var(--secondary) !important; }
.text-white{ color: #FFF !important; }
.bg-primary{ background-color: var(--primary) !important; }
.bg-secondary{ background-color: var(--secondary) !important; }
.bg-white{ background-color: #FFF !important; }
.link-primary{ color: var(--primary) !important; }
.link-primary:hover{ color: var(--primary-dark) !important; }
.link-secondary{ color: var(--secondary) !important; }
.link-secondary:hover{ color: var(--secondary-dark) !important; }
.link-underline{ border-bottom: solid 1px; text-decoration: none; }
.link-underline:hover{ text-decoration: none; }

/* Flexbox Columns */
.row{ display: flex; flex-wrap: wrap; }
@media only screen and (min-width: 1200px){
    [class^="col-"], [class*=" col-"]{ padding: 15px; }
    .col-0{ display: none; }
    .col-1{ width: 8.33%; }
    .col-2{ width: 16.66%; }
    .col-3{ width: 25%; }
    .col-4{ width: 33.33%; }
    .col-5{ width: 41.66%; }
    .col-6{ width: 50%; }
    .col-7{ width: 58.33%; }
    .col-8{ width: 66.66%; }
    .col-9{ width: 75%; }
    .col-10{ width: 83.33%; }
    .col-11{ width: 91.66%; }
    .col-12{ width: 100%; }
}
@media only screen and (min-width: 800px) and (max-width: 1199px){
    [class*="t-col-"] { padding: 15px; }
    .t-col-0 {display: none;}
    .t-col-1 {width: 8.33%;}
    .t-col-2 {width: 16.66%;}
    .t-col-3 {width: 25%;}
    .t-col-4 {width: 33.33%;}
    .t-col-5 {width: 41.66%;}
    .t-col-6 {width: 50%;}
    .t-col-7 {width: 58.33%;}
    .t-col-8 {width: 66.66%;}
    .t-col-9 {width: 75%;}
    .t-col-10 {width: 83.33%;}
    .t-col-11 {width: 91.66%;}
    .t-col-12 {width: 100%;}
}
@media only screen and (max-width: 799px){
    [class*="m-col-"] { padding: 15px; }
    .m-col-0 {display: none;}
    .m-col-1 {width: 8.33%;}
    .m-col-2 {width: 16.66%;}
    .m-col-3 {width: 25%;}
    .m-col-4 {width: 33.33%;}
    .m-col-5 {width: 41.66%;}
    .m-col-6 {width: 50%;}
    .m-col-7 {width: 58.33%;}
    .m-col-8 {width: 66.66%;}
    .m-col-9 {width: 75%;}
    .m-col-10 {width: 83.33%;}
    .m-col-11 {width: 91.66%;}
    .m-col-12 {width: 100%;}
}

@media only screen and (max-width: 800px) {
    /* For mobile phones: */
    [class^="col-"], [class*=" col-"]{ width: 100%; padding-left: 0; padding-right: 0; }
}
.col-center{ margin-left: auto; margin-right: auto; }

/* Header */
#site-header{ background-color: var(--primary); color: #EFEFEF; font-weight: 700; }
#site-header a{ color: #FBFBFB; }
#site-header a:hover{ color: #FFF; }
#site-header .top-nav{ padding: 15px; }
#site-header .top-nav nav{ flex: 1; }
#site-header .top-nav ul{ list-style: none; margin: 0; padding: 0; }
#site-header .top-nav ul li{ display: inline-block; }
#site-header .top-nav .contacts li:not(:last-of-type){ padding: 0 2.5rem 0 0; }
#site-header .top-nav .contacts i{ display: inline-block; width: 24px; height: 24px; line-height: 24px; vertical-align: middle; }
#site-header .top-nav .contacts span{ display: inline-block; vertical-align: middle; height: 24px; line-height: 24px; padding: 0 0 0 8px; }
#site-header .top-nav .socials{ text-align: right; }
#site-header .top-nav .socials a{ display: block; width: 24px; height: 24px; line-height: 24px; text-align: center; padding: 0 9px; box-sizing: content-box; font-size: 1.1rem; }
#site-header .top-nav .socials li:last-of-type a{ padding-right: 0; }
#site-header .main-nav{ height: 55px; position: relative; }
#site-header .main-nav .navbar{ height: 100px; width: 100%; padding: 0 50px; position: absolute; left: 50%; top: 100%; z-index: 100; transform: translate(-50%, -50%); border-radius: 45px; background-color: #FFF; box-shadow: 0 2px 7px rgba(0,0,0,.25); }
#site-header .main-nav .navbar .mobile-nav{ display: none; width: 100%; align-items: center; justify-content: space-between; }
/* Mobile Menu Toggle */
#site-header .main-nav .navbar .mobile-nav .mobile-toggle{ padding: 0 0; height: 50px; box-sizing: content-box; }
#site-header .main-nav .navbar .mobile-nav .mobile-toggle label{ position: relative; width: 40px; height: 50px; cursor: pointer; display: block; }
#site-header .main-nav .navbar .mobile-nav .mobile-toggle label #menu-check{ display: block; width: 100%; height: 100%; position: relative; cursor: pointer; z-index: 2; -webkit-touch-callout: none; position: absolute; opacity: 0; border: none; margin: 0; }
#site-header .main-nav .navbar .mobile-nav .mobile-toggle label .menu.burger{ margin: auto; position: absolute; top: 0; right: 0; left: 0; bottom: 0; width: 22px; height: 12px; }
#site-header .main-nav .navbar .mobile-nav .mobile-toggle label .menu.burger .bar{ position: absolute; display: block; width: 100%; height: 2px; background-color: var(--bar-bg, #202020); border-radius: 1px; transition: all 0.2s cubic-bezier(0.1, 0.82, 0.76, 0.965); }
#site-header .main-nav .navbar .mobile-nav .mobile-toggle label .menu.burger .bar:first-of-type{ top: 0; }
#site-header .main-nav .navbar .mobile-nav .mobile-toggle label .menu.burger .bar:last-of-type{ bottom: 0; }
#site-header .main-nav .navbar .mobile-nav .mobile-toggle label.active .menu.burger .bar:first-of-type, #site-header .main-nav .navbar .mobile-nav .mobile-toggle label #menu-check:checked + .menu.burger .bar:first-of-type{ transform: rotate(45deg); top: 5px; }
#site-header .main-nav .navbar .mobile-nav .mobile-toggle label.active .menu.burger .bar:last-of-type, #site-header .main-nav .navbar .mobile-nav .mobile-toggle label #menu-check:checked + .menu.burger .bar:last-of-type{ transform: rotate(-45deg); bottom: 5px; }
#site-header .main-nav .navbar .mobile-nav .mobile-toggle label.active:hover .menu.burger .bar:first-of-type, #site-header .main-nav .navbar .mobile-nav .mobile-toggle label.active:hover .menu.burger .bar:last-of-type, #site-header .main-nav .navbar .mobile-nav .mobile-toggle label:hover #menu-check:checked + .menu.burger .bar:first-of-type, #site-header .main-nav .navbar .mobile-nav .mobile-toggle label:hover #menu-check:checked + .menu.burger .bar:last-of-type{ width: 22px; }

#site-header .main-nav .navbar a{ color: #333; text-decoration: none; }
#site-header .main-nav .navbar a:hover{ color: var(--primary); text-decoration: none; }
#site-header .main-nav .navbar .nav-menu{ display: flex; }
#site-header .main-nav .navbar .nav-menu .home-link{ width: fit-content; }
#site-header .main-nav .navbar .nav-menu .site-nav{ flex: 1; }
#site-header .main-nav .navbar .nav-menu .site-nav .nav-link{ display: inline-block; padding: 35px 10px; line-height: 30px; width: fit-content }
#site-header .main-nav .navbar .nav-menu .left-nav{ text-align: right; padding: 0 35px 0 0; }
#site-header .main-nav .navbar .nav-menu .right-nav{ padding: 0 0 0 35px; }
#site-header .main-nav .home-link{ padding: 15px 10px; display: block; width: fit-content; }
#site-header .main-nav .home-link img{ height: 70px; }
@media only screen and (max-width: 800px){
    #site-header .main-nav .navbar .mobile-nav{ display: flex; padding: 0 25px; }
    #site-header .top-nav .header-socials, #site-header .top-nav .contacts span, #site-header .main-nav .navbar .nav-menu .home-link{ display: none; }
    #site-header .top-nav .contacts{ text-align: center; }
    #site-header .top-nav .contacts li{ padding: 0 0.5rem !important; }
    #site-header .main-nav{ height: 35px; }
    #site-header .main-nav .navbar .nav-menu{ flex-direction: column; padding-top: 15px; display: none; }
    #site-header .main-nav .navbar .home-link + .nav-menu{ padding-top: 0; }
    #site-header .main-nav .navbar .nav-menu .left-nav, #site-header .main-nav .navbar .nav-menu .right-nav{ padding: 0; text-align: left; }
    #site-header .main-nav .navbar .nav-menu .site-nav .nav-link{ width: 100%; display: block; padding: 10px 15px; line-height: 1.2; }
    #site-header .main-nav .navbar{ min-height: 70px; height: fit-content; padding: 0; width: calc( 100% - 40px ); top: 0; transform: translate(-50%, 0); border-radius: 35px; }
    #site-header .main-nav .navbar.open{ border-radius: 35px 35px 15px 15px; padding: 0 0 15px; }
    #site-header .main-nav .home-link{ padding: 10px; }
    #site-header .main-nav .home-link img{ height: 50px; }
}

/* Footer */
#site-footer{ background-color: #FFF; padding: 100px 0; }
#site-footer .logo{ padding: 0 0 20px; text-align: center; margin: 0 auto 1.5rem; }
#site-footer .logo a{ display: block; width: fit-content; margin: 0 auto; }
#site-footer .logo img{ max-width: 250px; }
#site-footer .socials{ list-style: none; margin: 0 auto 1.5rem; padding: 0 0 20px; text-align: center;}
#site-footer .socials li{ display: inline-block; padding: 0 5px; }
#site-footer .socials li a{ border-radius: 50%; border: solid 1px var(--secondary); color: var(--secondary); display: block; transition: all .2s ease-in-out; }
#site-footer .socials li a:hover{ background-color: var(--secondary); color: #202020; }
#site-footer .socials li a i{ display: block; width: 48px; height: 48px; line-height: 48px; text-align: center; font-size: 1.1rem; }
#site-footer .copyright{ text-align: center; }
#site-footer .copyright .heart{ color: var(--red); }
#site-footer .contact{ gap: 20px; margin: 0 auto 2rem; }
#site-footer .contact .left-col, #site-footer .contact .right-col{ flex: 1; }
#site-footer .contact .left-col{ text-align: right; }
#site-footer .contact .mid-div{ display: block; width: 1px; background-color: #dee2e6; }
#site-footer .contact .details-title, #site-footer .contact .details:not(:last-of-type){ margin: 0 0 0.85rem; }
#site-footer .contact .details:last-of-type{ margin: 0; }

.go-to-top{ display: none; position: fixed; bottom: 40px; right: 40px; width: 64px; height: 64px; line-height: 64px; border-radius: 50%; border: solid 2px var(--primary); color: var(--primary); font-size: 1.7rem; text-align: center; transition: all .15s ease-in-out; background-color: #FFF; box-shadow: 0 2px 5px rgba(0,0,0,.3); }
.go-to-top:hover{ background-color: var(--primary-dark); border-color: var(--primary-dark); color: #FFF; text-decoration: none; }
.go-to-top .label{ display: none; }

/* Front Page */
.body-section{ padding: 100px 0; }
.body-section .heading.align-center .title-text{ text-align: center; }
.body-section .heading.align-center .title-text::before{ left: 50%; transform: translateX(-50%); }
/* Slides */
#hero-images{ overflow: hidden; }
#hero-images .slide{ height: 100vh; position: relative; background-size: cover; background-position: center; background-repeat: no-repeat; }
#hero-images .slide::before{ content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,.25); }
#hero-images .slide .container{ width: 100%; position: relative; z-index: 2; width: 100%; height: 100%; display: flex; flex-direction: column; text-align: center; justify-content: center; }
#hero-images .slide .container p, #hero-images .slide .container h1{ color: #FFF; }
#hero-images .slide .container h1{ font-size: 4.5rem; max-width: 1000px; margin: 0 auto; padding: 0; line-height: 1.4; text-transform: capitalize; }
#hero-images .slide .container p{ font-weight: 600; font-family: 'Poppins', Arial, Helvetica, sans-serif; font-size: 1.3rem; text-transform: uppercase; padding: 0 0 15px; }
#hero-images .slick-arrow{ position: absolute; top: 50%; transform: translateY(-50%); width: 52px; height: 52px; color: #FFF; border-radius: 50%; border: solid 2px var(--secondary); background-color: var(--secondary); font-size: 0; z-index: 1; opacity: 0; transition: all .35s ease-in-out; outline: none; }
#hero-images:hover .slick-arrow{ opacity: 1; }
#hero-images .slick-arrow:hover{ background-color: #FFF; color: var(--secondary-dark); }
#hero-images .slick-arrow::before{ font-size: 1.2rem; font-weight: 900; font-family: 'Font Awesome 6 Free'; }
#hero-images .slick-arrow.slick-prev{ left: -50px; }
#hero-images:hover .slick-arrow.slick-prev{ left: 50px; }
#hero-images .slick-arrow.slick-prev::before{ content: "\f053"; }
#hero-images .slick-arrow.slick-next{ right: -50px; }
#hero-images:hover .slick-arrow.slick-next{ right: 50px; }
#hero-images .slick-arrow.slick-next::before{ content: "\f054"; }
.body-section .heading .title-text{ position: relative; padding: 0; margin: 0 0 3rem; font-size: 2.5rem }
.body-section .heading .title-text.slider-title{ width: calc( 100% - 150px ); }
.body-section .heading .title-text::before{ content: ""; display: block; background-color: var(--primary); height: 5px; width: 100px; top: -10px; position: absolute; }
/* About */
.body-section.intro .content.row{ align-items: center; }
.body-section.intro .content .about-image img{ width: 100%; height: auto; }
.body-section.intro .content .section-title, .body-section.intro .content p{ margin-bottom: 1rem; }
.body-section.intro .content .hilite-text{ font-size: 1.25rem; }
.body-section.intro .content .checked i{ margin-right: 1rem; color: var(--secondary); }
/* CTAs */
.cta-section{ display: flex; flex-wrap: wrap; }
.cta-section .cta-panel{ width: 50%; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.cta-section.cta-primary{ background-color: var(--primary); color: #FFF; }
.cta-section.cta-primary .cta-title, .cta-section.cta-secondary .cta-title{ color: #FFF; }
.cta-section.cta-secondary{ background-color: var(--secondary); color: #FFF; }
.cta-section.content-right{ flex-direction: row; }
.cta-section.content-left{ flex-direction: row-reverse; }
.cta-section .cta-content{ padding: 3rem; text-align: center; }
.cta-section .cta-content .cta-title{ margin: 1rem 0 1.5rem; font-size: 1.75rem; }
.cta-section .cta-content .cta-text{ margin: 0 0 1.5rem; }
.cta-section .cta-content .price-tag{ margin: 0 auto; width: 100px; height: 100px; display: flex; flex-direction: column; justify-content: center; border-radius: 50%; margin: 0 0 1.5rem; }
.cta-section .cta-content .price-tag .price-value{ font-size: 1.75rem; font-weight: 600; font-family: var(--font-family-heading); padding: 0; margin: 0; }
.cta-section .cta-image{ min-height: 500px; background-position: center; background-size: cover; background-repeat: no-repeat; }
/* Services */
.body-section.services .services{ width: calc( 100% + 30px ); }
.body-section.services .services .service{ position: relative; margin: 0 30px 0 0; }
.body-section.services .services .service .image{ position: relative; z-index: 1; margin: 0 auto; border-radius: 50%; width: 150px; height: 150px; }
.body-section.services .services .service .image::before{ position: absolute; left: 0; top: 15px; width: 150px; height: 150px; z-index: -1; content: ""; border-radius: 50%; background-color: var(--primary); }
.body-section.services .services .service .image img{ width: 100%; height: 100%; border-radius: 50%; padding: 1rem; }
.body-section.services .services .service .content{ padding: 1.5rem 2rem 3rem; text-align: center; position: relative; margin: -75px 0 0; }
.body-section.services .services .service .content .widget-title{ margin: 3rem 0 1rem; padding: 3rem 0 0; font-size: 1.25rem; }
/* Gallery */
.body-section.photos:not(.full-page){ padding-bottom: 0; }
.body-section.photos .images .image{ padding: 0; position: relative; overflow: hidden; }
.body-section.photos .images .image::after{ position: absolute; content: ""; z-index: 1; top: 30px; bottom: 30px; left: 30px; right: 30px; border: solid 2px #FFF; }
.body-section.photos .images .image img{ max-width: 100%; width: 100%; height: auto; vertical-align: middle; }
.body-section.photos .images .image .image-link{ display: flex; align-items: center; justify-content: center; position: absolute; top: 50%; left: 50%; width: 0; height: 0; z-index: 2; background-color: #FFF; text-decoration: none; transition: all .4s ease-in-out; opacity: 0; }
.body-section.photos .images .image:hover .image-link{ left: 30px; top: 30px; width: calc( 100% - 60px ); height: calc( 100% - 60px ); opacity: 1; }
.body-section.photos .images .image .image-link i{ font-size: 4rem; }
/* Testimonials */
.body-section.testimonials .testimonial .slide-content{ text-align: center; max-width: 1150px; margin: 0 auto; }
.body-section.testimonials .testimonial .quote-icon{ margin-bottom: 1.5rem; font-size: 3rem; }
.body-section.testimonials .testimonial .testimonial-text{ font-size: 1.5rem; margin-bottom: 1.5rem; }
.body-section.testimonials .testimonial .image{ margin: 0 auto 1rem; border-radius: 50%; }
.body-section.testimonials .testimonial .client-name{ font-size: 1.25rem; font-weight: 700; margin: 0; }

/* Single Page */
.main-body .page-title{ padding: 4rem 0; text-align: center; margin: 0; background: linear-gradient(rgba(0,0,0,.3), rgba(0,0,0,.3)), url('../images/header.jpg') no-repeat center center; background-size: cover; position: relative; }
.main-body .page-title h1{ padding: 3rem 1rem; color: #FFF; margin: 3rem 0 0; font-size: 4.5rem; }

/* Products Page */
/* Filter Bar */
.body-section.products .filter-bar{ background-color: #FFF; border-radius: 1rem; padding: 1rem 1.5rem; margin: 0 0 3rem; display: flex; gap: 1.5rem; flex-wrap: wrap; }
.body-section.products .filter-bar label{ display: block; font-weight: 700; font-size: 0.875rem; }
.body-section.products .filter-bar .search{ flex: 1; }
.body-section.products .filter-bar .search input{ border-radius: 30px; display: block; width: 100%; height: 50px; font-size: 1rem; font-weight: 400; font-family: 'Inter', Arial, Helvetica, sans-serif; line-height: 1.5; background-clip: border-box; border: solid 1px #ced1da; padding: 1.5rem; transition: all .15s ease-in-out; }
.body-section.products .filter-bar .search input:focus{ border-color: #FFF; outline: 0; box-shadow: 0 0 0 0.2rem rgba(241,149,178,.2); }
.body-section.products .filter-bar .select select { border-radius: 30px; display: block; width: 100%; height: 50px; font-size: 1rem; font-weight: 400; font-family: 'Inter', Arial, Helvetica, sans-serif; line-height: 1.5; background-clip: border-box; border: solid 1px #ced1da; padding: 0 1.5rem; transition: all .15s ease-in-out; appearance: none; background-color: #fff; color: #333; background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"><path fill="%23ced1da" d="M2 0L0 2h4zM2 5l2-2H0z"/></svg>'); background-repeat: no-repeat; background-position: right 1rem center; background-size: 10px; cursor: pointer; }
.body-section.products .filter-bar .select select:focus { border-color: #FFF; outline: 0;  box-shadow: 0 0 0 0.2rem rgba(241,149,178,.2); }
.body-section.products .filter-bar .select { position: relative; }
.body-section.products .filter-bar .select select::-ms-expand { display: none; }

.body-section.products .filter-bar .filter{ width: 200px; }
.body-section.products .filter-bar .filter select{ width: 100%; }
/* Product List */
.body-section.products .product-list .storefront{ gap: 32px; }
.body-section.products .product-list .storefront .product{ background-color: #FFF; padding: 3rem 1.5rem 1.5rem; border-radius: 5px; width: calc( 25% - 24px ); display: flex; flex-direction: column; }
.body-section.products .product-list .storefront .product .price{ padding: 1rem 0.75rem; margin: -3rem auto 0; font-size: 1.3rem; line-height: 1.5; font-weight: 700; width: fit-content; color: #FFF; background-color: var(--primary); }
.body-section.products .product-list .storefront .product .image{ display: block; width: 175px; height: 175px; background-color: var(--primary); border-radius: 50%; padding: 1rem; margin: -1rem auto 1.5rem; }
.body-section.products .product-list .storefront .product .image img{ width: 100%; height: 100%; border-radius: 50%; }
.body-section.products .product-list .storefront .product .product-details{ flex: 1; text-align: center; padding: 0 0 1.5rem; }
.body-section.products .product-list .storefront .product .product-details .title{ font-size: 1.25rem; margin: 0 0 1.5rem; }
.body-section.products .product-list .storefront .product .product-meta p{ font-size: 0.875rem; margin: 0 0 0.75rem; padding: 0 0 0.125rem; }
.body-section.products .product-list .storefront .product .product-meta p:last-of-type{ margin: 0; }

/* Hire Us / Contact Page */
.body-section.lead-gen .lead-gen-form{ border-radius: 20px; background-color: #FFF; padding: 3rem; }

/* Slick */
.slick-slider.slider-buttons-top .slick-arrow{ position: absolute; top: -90px; width: 65px; height: 65px; border: none; outline: none; background-color: #FFF; color: var(--primary); border-radius: 50%; font-size: 0; transition: all .3s ease-in-out; }
.slick-slider.slider-buttons-top .slick-arrow:hover{ background-color: var(--primary-dark); color: #FFF; }
.slick-slider.slider-buttons-top .slick-arrow::before{ font-family: 'Font Awesome 6 Free'; font-weight: 900; text-align: center; line-height: 65px; width: 65px; font-size: 1.35rem; }
.slick-slider.slider-buttons-top .slick-arrow.slick-prev{ right: 110px; }
.slick-slider.slider-buttons-top .slick-arrow.slick-prev::before{ content: "\f053"; }
.slick-slider.slider-buttons-top .slick-arrow.slick-next{ right: 30px; }
.slick-slider.slider-buttons-top .slick-arrow.slick-next::before{ content: "\f054"; }

.slick-slider .slick-dots{ text-align: center; list-style: none; margin: 1.5rem 0 0; padding: 0;}
.slick-slider .slick-dots li{ display: inline-block; position: relative; width: 25px; height: 25px; margin: 0 3px; }
.slick-slider .slick-dots li button{ font-size: 0; background-color: transparent; border: solid 2px var(--primary); width: 25px; height: 25px; padding: 4px; border-radius: 50%; }
.slick-slider .slick-dots li button::before{ content: ""; display: block; width: 100%; height: 100%; border-radius: 50%; background-color: var(--primary); }
.slick-slider .slick-dots li.slick-active button{ border-color: var(--secondary-dark); }
.slick-slider .slick-dots li.slick-active button::before{ background-color: var(--secondary-dark); }

@media only screen and (max-width: 800px){
    .container{ padding: 0 25px; }
    .go-to-top{ width: calc( 100% - 40px ); left: 20px; right: unset; height: 48px; line-height: unset; border-radius: 24px; font-size: 1.25rem; }
    .go-to-top i{ display: inline-block; vertical-align: middle; }
    .go-to-top .label{ display: inline-block; vertical-align: middle; font-size: 0.875rem; font-weight: 700; padding: 0 0 0 8px; line-height: 44px; }

    #hero-images .slide{ height: 75vh; }
    #hero-images .slide .container p{ font-size: 1rem; padding: 0; }
    #hero-images .slide .container h1{ font-size: 2.4rem; }
    .body-section .heading .title-text{ font-size: 1.9rem; }
    .body-section.intro .content.row{ flex-direction: column; gap: 25px; }
    .cta-section.content-right, .cta-section.content-left{ flex-direction: column; }
    .cta-section .cta-panel{ width: 100%; }
    .cta-section .cta-image{ height: 250px; min-height: 250px; }
    .cta-section .cta-content{ padding: 2.5rem 1.5rem; }

    .body-section .heading .title-text, .body-section .heading .title-text.slider-title{ width: 100%; text-align: center; }
    .body-section .heading .title-text::before{ left: 50%; transform: translateX(-50%); }
    .slick-slider.slider-buttons-top .slick-arrow{ top: unset; bottom: -80px; right: unset; left: 50%; }
    .slick-slider.slider-buttons-top .slick-arrow.slick-prev{ transform: translateX(-95px); }
    .slick-slider.slider-buttons-top .slick-arrow.slick-next{ transform: translateX(-5px); }

    .body-section.services .services .service .image, .body-section.services .services .service .image::before{ width: 125px; height: 125px; }
    .body-section.services .services .service .content{ margin: -62px 0 0; }
    .body-section.testimonials .testimonial .testimonial-text{ font-size: 1.25rem; }

    #site-footer .logo{ padding: 0 20px 20px; }
    #site-footer .contact{ flex-direction: column; }
    #site-footer .contact .left-col, #site-footer .contact .right-col{ text-align: center; }
    #site-footer .contact .mid-div{ height: 1px; width: 100%; }

    .main-body .page-title h1{ font-size: 2.5rem; padding: 1.75rem 1rem; }

    .body-section.products .filter-bar .filter{ width: 100%; }
    .body-section.products .product-list .storefront .product{ width: 100%; }
    .body-section.products .product-list .storefront .product .price{ font-size: 1.15rem; }
    .body-section.products .product-list .storefront .product .image{ width: 140px; height: 140px; }

    .body-section.lead-gen .lead-gen-form{ padding: 3rem 2rem; }

    .body-section.photos .images .image::after{ left: 20px; top: 20px; right: 20px; bottom: 20px; }
    .body-section.photos .images .image:hover .image-link{ left: 20px; top: 20px; width: calc( 100% - 40px ); height: calc( 100% - 40px ); }
    .body-section.photos .images .image .image-link i{ font-size: 2.75rem; }

    #hero-images .slick-arrow{ display: none; }
}