html,
*,
*::before,
*::after {
    box-sizing: border-box;
}

:root {
    --primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    --secondary-gradient: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
    --dark-bg: #0f1419;
    --card-bg: rgba(255, 255, 255, 0.05);
    --border-color: rgba(255, 255, 255, 0.1);
    --text-primary: #0c0d0d;
    --text-secondary: rgba(255, 255, 255, 0.7);
    --accent-color: #c4ef17;
    --success-gradient: linear-gradient(135deg, #c4ef17 0%, #38ef7d 100%);
    --warning-gradient: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
    --info-gradient: linear-gradient(
            135deg,
            rgba(79, 172, 254, 0) 0%,
            rgba(0, 242, 254, 0) 100%
    );
    --bg-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%);
    --card-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    scroll-behavior: inherit;
    --ftc-unbounded: "Unbounded", sans-serif;
    --ftc-pr-font: "Ubuntu", sans-serif;
    --saira: "Saira", sans-serif;
    --roboto: "Roboto", sans-serif;
    --golada: "Galada", cursive;
    --ftc-pr-1: #c4ef17;
    --ftc-pr-2: #e504ee;
    --ftc-sd-1: #f093fb;
    --ftc-heading-1: #222627;
    --ftc-heading-2: #020514;
    --ftc-para-1: #343a41;
    --ftc-gd-1: linear-gradient(
            90deg,
            rgba(23, 63, 207, 1) 0%,
            rgba(229, 4, 238, 1) 100%
    );
    --ftc-gd-2: linear-gradient(
            90deg,
            rgba(179, 37, 247, 1) 0%,
            rgba(0, 226, 245, 1) 100%
    );
    --cube-1: cubic-bezier(0.25, 0.46, 0.45, 0.5);
    --cube-2: cubic-bezier(0.31, -0.105, 0.43, 1.4);
}

body {
    width: 100vw;
    padding: 0;
    margin: 0;
    background-color: #121314;
    font-family: montserrat, sans-serif;
    color: white;
}
body {
    overflow-x: hidden;
}
body {
    transition: overflow 0.3s ease;
}
.p {
    font-family:
            -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu,
            Cantarell, sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #333333;
    margin: 0 0 16px 0;
    padding: 0;
    max-width: 100%;
    word-wrap: break-word;
    hyphens: auto;
}
@media (max-width: 767px) {
    .p {
        font-size: 14px;
        line-height: 1.5;
        margin: 0 0 12px 0;
        padding: 0 16px;
        text-align: left;
    }
    .p:first-child {
        margin-top: 0;
    }
    .p:last-child {
        margin-bottom: 0;
    }
}
ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
}
@media (min-width: 768px) and (max-width: 1023px) {
    .p {
        font-size: 16px;
        line-height: 1.6;
        margin: 0 0 18px 0;
        padding: 0 24px;
        max-width: 100%;
    }
}
@media (min-width: 1024px) {
    .p {
        font-size: 18px;
        line-height: 1.7;
        margin: 0 0 20px 0;
        padding: 0;
        max-width: 65ch;
    }
}
@media (min-width: 1440px) {
    .p {
        font-size: 20px;
        line-height: 1.8;
        margin: 0 0 24px 0;
        max-width: 70ch;
    }
}
@media (min-width: 1920px) {
    .p {
        font-size: 22px;
        line-height: 1.8;
        margin: 0 0 28px 0;
        max-width: 75ch;
    }
}
.hidden {
    display: none;
}
section {
    color: white;
}
.response-message {
    margin-top: 15px;
    font-size: 16px;
}
.response-message.success {
    color: #c4ef17;
}
.response-message.error {
    color: #e06565;
}
.grecaptcha-badge {
    z-index: 1000;
    position: relative;
}
.mega-menu-form textarea.input_15793 {
    background-color: transparent;
    color: #fff;
    border: 1px solid#fff;
    border-radius: 0;
    resize: vertical;
    min-height: 100px;
}
.webo_form textarea {
    background-color: transparent;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 0;
    resize: vertical;
    min-height: 100px;
}
.bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}
#bgVid {
    will-change: transform;
}
.dark-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 0;
}
.position-relative {
    position: relative;
}
.overflow-hidden {
    overflow: hidden;
}
.col {
    position: relative;
    z-index: 1;
}
.text-lg-end {
    text-align: right !important;
}
.btn-outline-white .text-end {
    text-align: right;
}
.ml-auto {
    margin-left: auto !important;
}
.dark-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;
}
.banner-bg-image img {
    position: relative;
    z-index: 1;
}
#jobsTable,
#jobsTable td,
#jobsTable th {
    color: #fff !important;
}
.hours-icon {
    width: 50px;
    height: 50px;
    background-color: #c4ef17;
    color: #0c0d0d;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 18px;
    font-weight: bold;
    margin: auto;
}
.splash-page {
    height: 100vh;
}
.main-splash {
    height: 100%;
    position: relative;
    overflow-x: hidden;
}
.top-menu-padding {
    padding-top: 80px;
}
.img,
.img img {
    max-width: 100%;
    height: auto;
}
.w-100 img {
    width: 100%;
}
a {
    color: rgb(246, 241, 241);
    text-decoration: none;
}
a,
span {
    color: inherit;
    font-size: inherit;
    font-family: inherit;
    font-weight: inherit;
    text-transform: inherit;
    text-decoration: none;
    transition: inherit;
}
h1 {
    color: #c4ef17;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: Bold;
}
.hero-title {
    font-size: 50px;
    line-height: 50px;
}
.md-hero-title {
    font-size: 24px;
    line-height: 24px;
}
.sml-hero-title {
    font-size: 18px;
}
.background-white {
    background-color: #fff;
}
.bg-black {
    background-color: #000000;
}
.bg-green {
    background-color: #c4ef17;
}
.bg-blue {
    background-color: rgba(43, 172, 203, 1);
}
.bg-red {
    background-color: #e06565;
}
.bg-ghost {
    background-color: rgba(255, 255, 255, 0.25);
}
.border-blue {
    border-color: rgba(43, 172, 203, 1) !important;
}
.border-red {
    border-color: #e06565 !important;
}
.border-green {
    border-color: #c4ef17 !important;
}
.text-ghost {
    color: #c4ef17;
}
.text-white svg,
.text-white path {
    fill: rgb(12, 13, 13);
}
.text-blue {
    color: rgba(43, 172, 203, 1);
}
.text-blue svg,
.text-blue path,
.text-blue polygon {
    fill: rgba(43, 172, 203, 1);
}
.text-blue-ghost {
    color: rgba(43, 172, 203, 0.6);
}
.text-black-ghost {
    color: rgba(0, 0, 0, 0.6);
}
.hr-ghost {
    border-top: 1px solid rgba(255, 255, 255, 0.6);
}
.ghost-hover:hover .text-ghost {
    -webkit-transition: color transform 500ms ease-out;
    -moz-transition: color transform 500ms ease-out;
    -o-transition: color transform 500ms ease-out;
    transition: color 500ms ease-out;
    color: rgb(196, 239, 23);
}

.page-list .page-list-item {
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 0;
    padding: 0 0 20px 0;
    -webkit-transition: background-color 500ms ease-out;
    -moz-transition: background-color 500ms ease-out;
    -o-transition: background-color 500ms ease-out;
    transition: background-color 500ms ease-out;
    background-color: rgba(43, 172, 203, 0);
}
.page-list .page-list-item:first-child {
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
}
.page-list .page-list-item:last-child {
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}
.page-list .page-list-item:hover {
    background-color: rgba(43, 172, 203, 0.1);
}
.page-image-list .text-overlay {
    color: #fff;
    background-color: rgba(0, 0, 0, 0.6);
    width: 100%;
    -webkit-transition: background-color 500ms ease-out;
    -moz-transition: background-color 500ms ease-out;
    -o-transition: background-color 500ms ease-out;
    transition: background-color 500ms ease-out;
}
.page-image-list:hover .text-overlay {
    background-color: rgba(43, 172, 203, 0.4);
}
.page-item:first-child .page-link {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left: 0;
}
.page-item:last-child .page-link {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 0;
}
.round-tick-list li,
.round-tick-list-blue li,
.round-tick-list-green li,
.warning-list-red li {
    display: block;
    list-style-type: none;
    line-height: 36px;
}
.round-tick-list li:before {
    position: relative;
    content: "";
    background: url(../icons/round-tick-list.svg) no-repeat left center;
    padding-right: 24px;
    margin-right: 10px;
    margin-left: -34px;
}
.round-tick-list-blue li:before {
    position: relative;
    content: "";
    background: url(../icons/round-tick-list-blue.svg) no-repeat left center;
    padding-right: 24px;
    margin-right: 10px;
    margin-left: -34px;
}
.round-tick-list-green li:before {
    position: relative;
    content: "";
    background: url(../icons/round-tick-list-green.svg) no-repeat left center;
    padding-right: 24px;
    margin-right: 10px;
    margin-left: -34px;
}
.warning-list-red li:before {
    position: relative;
    content: "";
    background: url(../icons/warning-list-red.svg) no-repeat left center;
    padding-right: 24px;
    margin-right: 10px;
    margin-left: -34px;
}
.on-page-link-list li {
    margin-left: -50px;
}
.footer-social svg,
a:hover .footer-social svg {
    height: 15px;
    fill: #fff !important;
}
.disclaimer-links {
    text-decoration: none;
}
.site-header {
    height: 75px !important;
    position: fixed;
    top: 0;
    z-index: 99999;
    width: 100%;

}
@media (min-width: 992px) {
    .site-header {
        height: 150px !important;
    }
}

.site-header.scrolling {


}

.navbar-logo img {
    width: 150px;
    width: 30vw;
    height: 30vw;
    max-width: 150px;
    max-height: 75px;
    margin-left: 20px;
}
.hamburger-checkbox {
    display: none;
}
.hamburger-label {
    display: block;
    cursor: pointer;
    position: absolute;
    width: 30vw;
    height: 30vw;
    max-width: 75px;
    max-height: 75px;
}
.hamburger-label path {
    fill: none;
    stroke: #fff;
    stroke-width: 1;
    stroke-linecap: square;
    stroke-linejoin: square;
    --length: 24;
    --offset: -38;
    stroke-dasharray: var(--length) var(--total-length);
    stroke-dashoffset: var(--offset);
    transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger-label circle {
    fill: #fff;
    opacity: 0;
}
.hamburger-label :hover circle {
    opacity: 0.2;
}
.cross input:checked + svg .line--1,
.cross input:checked + svg .line--3 {
    --length: 22.627416998;
}
.cross input:checked + svg .line--2 {
    --length: 0;
}
.back input:checked + svg .line--1,
.back input:checked + svg .line--3 {
    --length: 8.602325267;
}
.menu-webdesign-dublin {
    background-color: #000000;
    width: 75px;
    height: 75px;
    position: absolute;
    right: 0;
    top: 0;
}
.menu-webdesign-dublin .line--1,
.menu-webdesign-dublin .line--3 {
    --total-length: 126.64183044433594;
}
.menu-webdesign-dublin .line--2 {
    --total-length: 70;
}
.menu-webdesign-dublin input:checked + svg .line--1,
.menu-webdesign-dublin input:checked + svg .line--3 {
    --offset: -94.1149185097;
}
.menu-webdesign-dublin input:checked + svg .line--2 {
    --offset: -50;
}
.breadcrumb {
    margin-right: 200px;
    margin-top: 60px;
    font-weight: bold;
    color: #c4ef17;
}
.breadcrumb a {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.6);
}
.breadcrumb a:hover {
    color: rgba(255, 255, 255, 1);
}
.breadcrumb-dark {
    color: #000000;
}
.breadcrumb-dark a {
    text-decoration: none;
    color: rgba(0, 0, 0, 0.6);
}
.breadcrumb-dark a:hover {
    color: rgba(0, 0, 0, 1);
}
.carousel-image-wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
}
.carousel-indicators a {
    background-color: transparent !important;
}
.banner-bg-image img {
    width: auto;
    max-width: none;
    height: 100%;
}
.speech-block::before {
    display: block;
    position: absolute;
    top: -15px;
    left: -30px;
    content: url("data:image/svg+xml,<svg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 133.6 94.6' style='enable-background:new 0 0 133.6 94.6;' xml:space='preserve'><g><path d='M65.7,0L49.5,39.7c7.9,5.4,11.9,14.4,11.9,24.2c0,18-13,30.7-30.7,30.7C14.4,94.6,0,83.8,0,63.9c0-9.4,3.6-17.3,8.3-24.5 L35.4,0H65.7z M129.2,63.9c0,18-13,30.7-30.7,30.7c-16.2,0-30.7-10.8-30.7-30.7c0-9.4,3.6-17.3,8.3-24.5L103.2,0h30.3l-16.2,39.7 C125.3,45.1,129.2,54.1,129.2,63.9z' fill='white' opacity='0.25' /></g></svg> ");
    width: 136px;
    height: 95px;
}
.speech-block::after {
    display: block;
    position: absolute;
    bottom: -15px;
    right: -30px;
    content: url("data:image/svg+xml,<svg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 133.6 94.6' style='enable-background:new 0 0 133.6 94.6;' xml:space='preserve'><g><path d='M67.9,94.6l16.2-39.7c-7.9-5.4-11.9-14.4-11.9-24.2c0-18,13-30.7,30.7-30.7c16.2,0,30.7,10.8,30.7,30.7 c0,9.4-3.6,17.3-8.3,24.5L98.2,94.6H67.9z M4.3,30.7C4.3,12.6,17.3,0,35,0c16.2,0,30.7,10.8,30.7,30.7c0,9.4-3.6,17.3-8.3,24.5 L30.3,94.6H0l16.2-39.7C8.3,49.5,4.3,40.4,4.3,30.7z' fill='white' opacity='0.25' /></g></svg> ");
    width: 136px;
    height: 95px;
}
.speech-block-blue::before {
    display: block;
    position: absolute;
    top: -15px;
    left: -30px;
    content: url("data:image/svg+xml,<svg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 133.6 94.6' style='enable-background:new 0 0 133.6 94.6;' xml:space='preserve'><g><path d='M65.7,0L49.5,39.7c7.9,5.4,11.9,14.4,11.9,24.2c0,18-13,30.7-30.7,30.7C14.4,94.6,0,83.8,0,63.9c0-9.4,3.6-17.3,8.3-24.5 L35.4,0H65.7z M129.2,63.9c0,18-13,30.7-30.7,30.7c-16.2,0-30.7-10.8-30.7-30.7c0-9.4,3.6-17.3,8.3-24.5L103.2,0h30.3l-16.2,39.7 C125.3,45.1,129.2,54.1,129.2,63.9z' fill='rgba(125,206,35,100)' opacity='0.25' /></g></svg> ");
    width: 136px;
    height: 95px;
}
.speech-block-blue::after {
    display: block;
    position: absolute;
    bottom: -15px;
    right: -30px;
    content: url("data:image/svg+xml,<svg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 133.6 94.6' style='enable-background:new 0 0 133.6 94.6;' xml:space='preserve'><g><path d='M67.9,94.6l16.2-39.7c-7.9-5.4-11.9-14.4-11.9-24.2c0-18,13-30.7,30.7-30.7c16.2,0,30.7,10.8,30.7,30.7 c0,9.4-3.6,17.3-8.3,24.5L98.2,94.6H67.9z M4.3,30.7C4.3,12.6,17.3,0,35,0c16.2,0,30.7,10.8,30.7,30.7c0,9.4-3.6,17.3-8.3,24.5 L30.3,94.6H0l16.2-39.7C8.3,49.5,4.3,40.4,4.3,30.7z' fill='rgba(125,206,35,100)' opacity='0.25' /></g></svg> ");
    width: 136px;
    height: 95px;
}
.speech-block-black::before {
    display: block;
    position: absolute;
    top: -15px;
    left: -30px;
    content: url("data:image/svg+xml,<svg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 133.6 94.6' style='enable-background:new 0 0 133.6 94.6;' xml:space='preserve'><g><path d='M65.7,0L49.5,39.7c7.9,5.4,11.9,14.4,11.9,24.2c0,18-13,30.7-30.7,30.7C14.4,94.6,0,83.8,0,63.9c0-9.4,3.6-17.3,8.3-24.5 L35.4,0H65.7z M129.2,63.9c0,18-13,30.7-30.7,30.7c-16.2,0-30.7-10.8-30.7-30.7c0-9.4,3.6-17.3,8.3-24.5L103.2,0h30.3l-16.2,39.7 C125.3,45.1,129.2,54.1,129.2,63.9z' fill='black' opacity='0.25' /></g></svg> ");
    width: 136px;
    height: 95px;
}
.speech-block-black::after {
    display: block;
    position: absolute;
    bottom: -15px;
    right: -30px;
    content: url("data:image/svg+xml,<svg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 133.6 94.6' style='enable-background:new 0 0 133.6 94.6;' xml:space='preserve'><g><path d='M67.9,94.6l16.2-39.7c-7.9-5.4-11.9-14.4-11.9-24.2c0-18,13-30.7,30.7-30.7c16.2,0,30.7,10.8,30.7,30.7 c0,9.4-3.6,17.3-8.3,24.5L98.2,94.6H67.9z M4.3,30.7C4.3,12.6,17.3,0,35,0c16.2,0,30.7,10.8,30.7,30.7c0,9.4-3.6,17.3-8.3,24.5 L30.3,94.6H0l16.2-39.7C8.3,49.5,4.3,40.4,4.3,30.7z' fill='black' opacity='0.25' /></g></svg> ");
    width: 136px;
    height: 95px;
}
.mega-menu-form input {
    background: transparent;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    border-bottom: 1px solid #faf7f6;
    color: rgba(255, 255, 255, 1);
    font-weight: bold;
}
.mega-menu-form select {
    background: transparent;
    color: rgba(255, 255, 255, 1);
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid #fff;
    font-weight: bold;
}
.mega-menu-form option {
    background: #000000;
    color: rgba(255, 255, 255, 1);
}
.mega-menu-form .input-group-text {
    background: transparent;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    border-bottom: 1px solid #fff;
    color: rgba(255, 255, 255, 1);
}
.mega-menu-form .input-group-text svg {
    fill: #fff;
}
.mega-menu-form {
    color: #fff;
}
.mega-menu-form ::placeholder {
    font-weight: bold;
    text-transform: uppercase;
}
.mega-menu-form .form-control:focus {
    color: rgba(255, 255, 255, 1);
    background-color: rgba(255, 255, 255, 0.3);
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgb(13 110 253 / 25%);
}
.webo-email-error svg,
.webo-phone-error svg {
    fill: #e53935 !important;
}
.webo-email-success svg,
.webo-phone-success svg {
    fill: #c4ef17 !important;
}
.btn-outline-white {
    color: rgb(12, 13, 13);
    background-color: #f093fb;
    background-image: none;
    border: 3px solid rgb(12, 13, 13);
    font-weight: bold;
}
.btn-outline-white:hover {
    color: rgba(255, 255, 255, 1);
    background-color: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 1);
}
.btn-outline-white:focus,
.btn-outline-white.focus {
    box-shadow: 0 0 0 0.2rem rgb(250, 247, 246);
}
.btn-outline-white.disabled,
.btn-outline-white:disabled {
    color: rgba(255, 255, 255, 1);
    background-color: transparent;
}
.btn-outline-white:not(:disabled):not(.disabled):active,
.btn-outline-white:not(:disabled):not(.disabled).active,
.show > .btn-outline-white.dropdown-toggle {
    color: #0c0d0d;
    background-color: rgb(238, 255, 2);
    border-color: rgb(238, 255, 2);
}
.btn-outline-white:not(:disabled):not(.disabled):active:focus,
.btn-outline-white:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-white.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 128, 128, 0.5);
}
.btn-outline-blue {
    color: rgba(43, 172, 203, 1);
    background-color: transparent;
    background-image: none;
    border: 3px solid rgba(43, 172, 203, 1);
    font-weight: bold;
}
.btn-outline-blue:hover {
    color: rgba(43, 172, 203, 1);
    background-color: rgba(43, 172, 203, 0.3);
    border-color: rgba(43, 172, 203, 1);
}
.btn-outline-blue:focus,
.btn-outline-blue.focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 128, 128, 0.5);
}
.btn-outline-blue.disabled,
.btn-outline-blue:disabled {
    color: rgba(43, 172, 203, 1);
    background-color: transparent;
}
.btn-outline-blue:not(:disabled):not(.disabled):active,
.btn-outline-blue:not(:disabled):not(.disabled).active,
.show > .btn-outline-blue.dropdown-toggle {
    color: #fff;
    background-color: #009a9a;
    border-color: rgba(43, 172, 203, 1);
}
.btn-outline-blue:not(:disabled):not(.disabled):active:focus,
.btn-outline-blue:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-blue.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 128, 128, 0.5);
}
@media (max-width: 500px) {
    .d-xs-none {
        display: none !important;
    }
}
@media (min-aspect-ratio: 1/1) {
    .hamburger-label {
        width: 50vh;
        height: 50vh;
    }
}
@media (min-width: 992px) {
    .main-splash {
        overflow: hidden;
    }
    .top-menu-padding {
        padding-top: 200px;
    }
    .position-lg-absolute {
        position: absolute !important;
    }
    .h-lg-25 {
        height: 25% !important;
    }
    .h-lg-50 {
        height: 50% !important;
    }
    .h-lg-75 {
        height: 75% !important;
    }
    .h-lg-100 {
        height: 100% !important;
    }
    .h-lg-auto {
        height: auto !important;
    }
    .translate-lg-middle-y {
        transform: translateY(-50%) !important;
    }
    .hero-title {
        font-size: 100px;
        line-height: 100px;
    }
    .md-hero-title {
        font-size: 55px;
        line-height: 55px;
    }
    .sml-hero-title {
        font-size: 48px;
    }
    .navbar-logo img {
        width: 270px;
        width: 50vw;
        height: 50vw;
        max-width: 270px;
        max-height: 150px;
        margin-left: 50px;
    }
    .header-padding-lg {
        padding-top: 150px !important;
        padding-bottom: 150px !important;
    }
    .header-padding-portfolio-design {
        padding-top: 400px !important;
    }
    .header-padding-base-lg {
        padding-top: 150px !important;
        padding-bottom: 400px !important;
    }
    .hamburger-label {
        display: block;
        cursor: pointer;
        position: absolute;
        width: 50vw;
        height: 50vw;
        max-width: 150px;
        max-height: 150px;
    }
    .hamburger-label path {
        fill: none;
        stroke: #c4ef17;
        stroke-width: 1;
        stroke-linecap: square;
        stroke-linejoin: square;
        --length: 24;
        --offset: -38;
        stroke-dasharray: var(--length) var(--total-length);
        stroke-dashoffset: var(--offset);
        transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
    }
    .hamburger-label circle {
        fill: #fff;
        opacity: 0;
    }
    .hamburger-label :hover circle {
        opacity: 0.2;
    }
    .cross input:checked + svg .line--1,
    .cross input:checked + svg .line--3 {
        --length: 22.627416998;
    }
    .cross input:checked + svg .line--2 {
        --length: 0;
    }
    .back input:checked + svg .line--1,
    .back input:checked + svg .line--3 {
        --length: 8.602325267;
    }
    .menu {
        background-color: #000000;
        width: 150px;
        height: 150px;
        position: absolute;
        right: 0;
        top: 0;
    }
    .menu-webdesign-dublin .line--1,
    .menu-webdesign-dublin .line--3 {
        --total-length: 126.64183044433594;
    }
    .menu-webdesign-dublin .line--2 {
        --total-length: 70;
    }
    .menu-webdesign-dublin input:checked + svg .line--1,
    .menu-webdesign-dublin input:checked + svg .line--3 {
        --offset: -94.1149185097;
    }
    .menu-webdesign-dublin input:checked + svg .line--2 {
        --offset: -50;
    }
    carousel-indicators {
        z-index: 1 !important;
    }
    .banner-bg-image img {
        width: 100%;
        height: auto;
    }
    .speech-block::before {
        display: block;
        position: absolute;
        top: -15px;
        left: -30px;
        content: url("data:image/svg+xml,<svg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 133.6 94.6' style='enable-background:new 0 0 133.6 94.6;' xml:space='preserve'><g><path d='M65.7,0L49.5,39.7c7.9,5.4,11.9,14.4,11.9,24.2c0,18-13,30.7-30.7,30.7C14.4,94.6,0,83.8,0,63.9c0-9.4,3.6-17.3,8.3-24.5 L35.4,0H65.7z M129.2,63.9c0,18-13,30.7-30.7,30.7c-16.2,0-30.7-10.8-30.7-30.7c0-9.4,3.6-17.3,8.3-24.5L103.2,0h30.3l-16.2,39.7 C125.3,45.1,129.2,54.1,129.2,63.9z' fill='white' opacity='0.25' /></g></svg> ");
        width: 136px;
        height: 95px;
    }
    .speech-block::after {
        display: block;
        position: absolute;
        bottom: -15px;
        right: -30px;
        content: url("data:image/svg+xml,<svg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 133.6 94.6' style='enable-background:new 0 0 133.6 94.6;' xml:space='preserve'><g><path d='M67.9,94.6l16.2-39.7c-7.9-5.4-11.9-14.4-11.9-24.2c0-18,13-30.7,30.7-30.7c16.2,0,30.7,10.8,30.7,30.7 c0,9.4-3.6,17.3-8.3,24.5L98.2,94.6H67.9z M4.3,30.7C4.3,12.6,17.3,0,35,0c16.2,0,30.7,10.8,30.7,30.7c0,9.4-3.6,17.3-8.3,24.5 L30.3,94.6H0l16.2-39.7C8.3,49.5,4.3,40.4,4.3,30.7z' fill='white' opacity='0.25' /></g></svg> ");
        width: 136px;
        height: 95px;
    }
    .splash-carousel .carousel-indicators {
        position: absolute;
        left: 0;
        top: 100px;
        bottom: auto;
        display: block;
        width: 200px;
        margin-left: 30px;
        border-right: 1px solid #c4ef17;
        z-index: 1;
    }
    .splash-carousel-slide {
        padding-left: 230px;
    }
    .on-page-link-list li {
        margin-left: -100px;
    }
    .infographic-next-blue::after {
        display: block;
        position: absolute;
        bottom: 7%;
        left: 36%;
        content: url("../images/infographic-linear-next-blue.svg");
        width: 68%;
    }
    .infographic-next-red::after {
        display: block;
        position: absolute;
        bottom: 7%;
        left: 36%;
        content: url("../images/infographic-linear-next-red.svg");
        width: 68%;
    }
    .infographic-next-green-end::after {
        display: block;
        position: absolute;
        bottom: 7%;
        left: 36%;
        content: url("../images/infographic-linear-next-green-end.svg");
        width: 68%;
    }
}
@media (max-width: 1279px) and (min-width: 769px) {
    .top-menu-padding {
        padding-top: 100px;
    }
    .hero-title {
        font-size: 60px;
        line-height: 60px;
    }
    .md-hero-title {
        font-size: 36px;
        line-height: 36px;
    }
    .sml-hero-title {
        font-size: 24px;
    }


    .navbar-logo img {
        width: 150px;
        width: 30vw;
        height: 30vw;
        max-width: 150px;
        max-height: 75px;
        margin-left: 20px;
    }
    .hamburger-checkbox {
        display: none;
    }
    .hamburger-label {
        display: block;
        cursor: pointer;
        position: absolute;
        width: 30vw;
        height: 30vw;
        max-width: 75px;
        max-height: 75px;
    }
    .hamburger-label path {
        fill: none;
        stroke: #c4ef17;
        stroke-width: 1;
        stroke-linecap: square;
        stroke-linejoin: square;
        --length: 24;
        --offset: -38;
        stroke-dasharray: var(--length) var(--total-length);
        stroke-dashoffset: var(--offset);
        transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
    }
    .hamburger-label circle {
        fill: #fff;
        opacity: 0;
    }
    .hamburger-label :hover circle {
        opacity: 0.2;
    }
    .cross input:checked + svg .line--1,
    .cross input:checked + svg .line--3 {
        --length: 22.627416998;
    }
    .cross input:checked + svg .line--2 {
        --length: 0;
    }
    .back input:checked + svg .line--1,
    .back input:checked + svg .line--3 {
        --length: 8.602325267;
    }
    .menu-webdesign-dublin {
        background-color: #000000;
        width: 75px;
        height: 75px;
        position: absolute;
        right: 0;
        top: 0;
    }
    .menu-webdesign-dublin .line--1,
    .menu-webdesign-dublin .line--3 {
        --total-length: 126.64183044433594;
    }
    .menu-webdesign-dublin .line--2 {
        --total-length: 70;
    }
    .menu-webdesign-dublin input:checked + svg .line--1,
    .menu-webdesign-dublin input:checked + svg .line--3 {
        --offset: -94.1149185097;
    }
    .menu-webdesign-dublin input:checked + svg .line--2 {
        --offset: -50;
    }
    .splash-carousel .carousel-indicators {
        position: absolute;
        left: 0;
        top: 100px;
        bottom: auto;
        display: block;
        width: 75px;
        margin-left: 30px;
        border-right: 1px solid #c4ef17;
        z-index: 1;
    }
    .splash-carousel-slide {
        padding-left: 105px;
    }
    .breadcrumb {
        min-width: auto;
        margin-top: 30px;
        margin-right: 100px;
    }
    .on-page-link-list li {
        margin-left: -60px;
    }
    .banner-bg-image img {
        width: 100%;
        height: auto;
    }
}
@media (max-width: 991px) {
    .infographic-next-blue::after {
        display: block;
        position: absolute;
        bottom: 7%;
        left: 33%;
        content: url("../images/infographic-linear-next-blue.svg");
        width: 68%;
    }
    .infographic-next-red::after {
        display: block;
        position: absolute;
        bottom: 7%;
        left: 33%;
        content: url("../images/infographic-linear-next-red.svg");
        width: 68%;
    }
    .infographic-next-green-end::after {
        display: block;
        position: absolute;
        bottom: 7%;
        left: 33%;
        content: url("../images/infographic-linear-next-green-end.svg");
        width: 68%;
    }
    .header-padding-sm-home {
        padding-top: 100px;
    }
    .header-padding-sm {
        padding-top: 100px;
    }
    .header-padding-base-sm {
        padding-bottom: 100px;
    }
}
@media (max-width: 1199px) {
    .infographic-next-blue::after {
        display: block;
        position: absolute;
        bottom: 7%;
        left: 34%;
        content: url("../images/infographic-linear-next-blue.svg");
        width: 68%;
    }
    .infographic-next-red::after {
        display: block;
        position: absolute;
        bottom: 7%;
        left: 34%;
        content: url("../images/infographic-linear-next-red.svg");
        width: 68%;
    }
    .infographic-next-green-end::after {
        display: block;
        position: absolute;
        bottom: 7%;
        left: 34%;
        content: url("../images/infographic-linear-next-green-end.svg");
        width: 68%;
    }
}
@media (max-width: 768px) {
    .overlay-sm-dark {
        position: absolute;
        background: rgba(0, 0, 0, 0.6);
        top: 0;
        width: 200%;
        height: 100%;
    }
    .overlay-sm-light {
        position: absolute;
        background: rgba(255, 255, 255, 0.8);
        top: 0;
        max-width: 100%;
        width: 200%;
        height: 100%;
    }
    .header-padding-sm {
        padding-top: 100px;
    }
    .header-padding-base-sm {
        padding-bottom: 100px;
    }
    .splash-carousel-footer-padding-sm {
        padding-bottom: 200px;
    }
    .splash-carousel .carousel-item {
        padding-bottom: 100px;
    }
    .splash-carousel .carousel-indicators {
        margin-bottom: 50px;
    }
    .carousel-indicators .aside-anchor::before {
        display: none;
    }
    .end-0.banner-bg-image img {
        width: auto;
        max-width: none;
        height: 100%;
        position: absolute;
        right: 0;
    }
    .infographic-next-blue,
    .infographic-next-red {
        margin-bottom: 120px;
    }
    .infographic-next-blue::after {
        display: block;
        position: absolute;
        bottom: -17%;
        left: 6%;
        content: url("../images/infographic-linear-next-blue.svg");
        width: 60%;
        transform: rotate(90deg);
    }
    .infographic-next-red::after {
        display: block;
        position: absolute;
        bottom: -17%;
        left: 6%;
        content: url("../images/infographic-linear-next-red.svg");
        width: 60%;
        transform: rotate(90deg);
    }
    .infographic-next-green-end::after {
        display: block;
        position: absolute;
        bottom: -17%;
        left: 6%;
        content: url("../images/infographic-linear-next-green-end.svg");
        width: 60%;
        transform: rotate(90deg);
    }
}
@media (max-width: 767px) {
    .logos-carousel .carousel-inner .carousel-item-end.active,
    .logos-carousel .carousel-inner .carousel-item-next {
        transform: translateX(25%);
    }
    .logos-carousel .carousel-inner .carousel-item-start.active,
    .logos-carousel .carousel-inner .carousel-item-prev {
        transform: translateX(-25%);
    }
}
.logos-carousel .carousel-inner .carousel-item.active,
.logos-carousel .carousel-inner .carousel-item-next,
.logos-carousel .carousel-inner .carousel-item-prev {
    display: flex;
}
@media (min-width: 768px) {
    .logos-carousel .carousel-inner .carousel-item-end.active,
    .logos-carousel .carousel-inner .carousel-item-next {
        transform: translateX(25%);
    }
    .logos-carousel .carousel-inner .carousel-item-start.active,
    .logos-carousel .carousel-inner .carousel-item-prev {
        transform: translateX(-25%);
    }
}
.logos-carousel .carousel-inner .carousel-item-end,
.logos-carousel .carousel-inner .carousel-item-start {
    transform: translateX(0);
}

.text-ghost {
    position: relative;
    z-index: 2;
}
.intro-text {
    font-size: 1.2rem;
    color: var(--text-secondary);
    margin-bottom: 3rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}
.highlight-number {
    color: var(--accent-color);
    font-weight: 700;
}
.section-badge {
    display: inline-block;
    background: var(--primary-gradient);
    color: #fff !important;
    padding: 0.5rem 1.5rem;
    border-radius: 50px;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 1.5rem;
}
.faq-container {
    position: relative;
    z-index: 0;
}
.accordion-item {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 16px !important;
    margin-bottom: 1rem;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
    overflow: visible !important;
}
.accordion-collapse.collapsing {
    overflow: hidden;
}
.accordion-item:hover {
    border-color: var(--accent-color);
    transform: translateY(-2px);
}
.accordion-button {
    background: transparent !important;
    border: none !important;
    color: #eeff02 !important;
    font-weight: 600;
    font-size: 1.1rem;
    padding: 1.5rem 2rem;
    box-shadow: none !important;
    position: relative;
    transition: all 0.3s ease;
}
.accordion-button:not(.collapsed) {
    background: linear-gradient(
            135deg,
            rgba(100, 255, 218, 0.1) 0%,
            rgba(102, 126, 234, 0.1) 100%
    ) !important;
    color: var(--accent-color) !important;
}
.accordion-button::after {
    background-image: none;
    content: "\f107";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 1.2rem;
    color: var(--accent-color);
    transition: transform 0.3s ease;
}
.accordion-button:not(.collapsed)::after {
    transform: rotate(180deg);
}
.accordion-button:hover {
    background: linear-gradient(
            135deg,
            rgba(100, 255, 218, 0.05) 0%,
            rgba(102, 126, 234, 0.05) 100%
    ) !important;
}
.accordion-body {
    padding: 0 2rem 1.5rem 2rem;
    color: var(--text-secondary);
    font-size: 1rem;
    line-height: 1.6;
    position: relative;
}
.accordion-body::before {
    content: "";
    position: absolute;
    top: 0;
    left: 2rem;
    right: 2rem;
    height: 1px;
    background: linear-gradient(
            90deg,
            transparent,
            var(--border-color),
            transparent
    );
}
@media (max-width: 768px) {
    .sml-hero-title {
        font-size: 2rem;
    }
    .accordion-button {
        padding: 1.25rem 1.5rem;
        font-size: 1rem;
    }
    .accordion-body {
        padding: 0 1.5rem 1.25rem 1.5rem;
    }
    .accordion-body::before {
        left: 1.5rem;
        right: 1.5rem;
    }
}
.fade-in-up {
    opacity: 0;
    transform: translateY(30px);
}
.stagger-animation {
    animation-delay: calc(var(--stagger) * 0.1s);
}
.btn-outline-green {
    color: rgb(125, 206, 34);
    background-color: transparent;
    background-image: none;
    border: 3px solid rgb(125, 206, 34);
    font-weight: bold;
}
.service-card:focus {
    outline: 3px solid #ff6b6b;
    outline-offset: 2px;
}
.stats-highlight h2 {
    background: linear-gradient(135deg, #ffffff, #f8f9fa);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-weight: 700;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
    letter-spacing: 1px;
}
.stat-card {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(20px);
    border: 1px solid rgb(125, 206, 34);
    border-radius: 0px;
    padding: 2rem;
    height: 100%;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}
.stat-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.1) 0%,
            rgba(255, 255, 255, 0.05) 100%
    );
    border-radius: 0px;
    z-index: -1;
}
.stat-card:hover {
    transform: translateY(-10px);
    box-shadow: var(--card-shadow);
    border-color: rgb(125, 206, 34);
}
.stat-card.success {
    background: var(--success-gradient);
}
.stat-card.warning {
    background: var(--warning-gradient);
}
.stat-card.info {
    background: var(--info-gradient);
}
.stat-card h3 {
    color: white;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 1rem;
}
.stat-card p {
    color: rgba(255, 255, 255, 0.95);
    line-height: 1.6;
    font-size: 1rem;
}
.icon-container {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    background: rgb(250, 247, 246);
    border-radius: 15px;
    flex-shrink: 0;
}
.combined-card {
    background: linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.15) 0%,
            rgba(255, 255, 255, 0.05) 100%
    );
    backdrop-filter: blur(25px);
    border: 1px solid rgb(125, 206, 34);
}
.combined-card strong {
    background: linear-gradient(135deg, #c4ef17, #c4ef17);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-weight: 700;
}
@media (max-width: 768px) {
    .container {
        padding: 1rem;
    }
    .stat-card {
        padding: 1.5rem;
        margin-bottom: 1rem;
    }
    .stats-highlight h2 {
        font-size: 2rem;
    }
}

.laraweb-offer {
    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}
.laraweb-container-offer {
    display: flex;
    height: 100vh;
    width: 100%;
    min-height: 600px;
}
.laraweb-left-panel {
    flex: 1;
    background-repeat: repeat;
    position: relative;
    overflow: hidden;
    opacity: 0;
    transition:
            background-image 0.3s ease-in-out,
            opacity 0.6s ease-in;
}
.laraweb-left-panel.loaded {
    opacity: 1;
}
.laraweb-left-panel::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.laraweb-right-panel {
    flex: 1;
    color: white;
    padding: 40px;
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
}
.laraweb-content-wrapper {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
}
.laraweb-top-content {
    flex-shrink: 1;
    min-height: 0;
}
.laraweb-bottom-content {
    flex-shrink: 0;
}
.laraweb-offer-badge {
    background: linear-gradient(45deg, #c4ef17, rgba(125, 206, 34, 0.86));
    color: white;
    padding: 8px 20px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: bold;
    display: inline-block;
    margin-bottom: 20px;
    width: fit-content;
    animation: laraweb-pulse 2s infinite;
}
@keyframes laraweb-pulse {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
    100% {
        transform: scale(1);
    }
}
.laraweb-main-title {
    font-size: 3.2rem;
    font-weight: 800;
    color: #c4ef17;
    margin-bottom: 10px;
    line-height: 1.1;
}
.laraweb-subtitle {
    font-size: 1.8rem;
    font-weight: 700;
    color: #faf7f6;
    margin-bottom: 30px;
}
.laraweb-price-section {
    margin: 30px 0;
}
.laraweb-main-price {
    font-size: 4rem;
    font-weight: 900;
    color: #c4ef17;
    display: inline-block;
}
.laraweb-currency {
    font-size: 2.5rem;
    vertical-align: top;
}
.laraweb-vat-text {
    font-size: 1.2rem;
    color: #a0aec0;
    margin-left: 10px;
}
.laraweb-price-details {
    margin: 15px 0;
}
.laraweb-old-price {
    color: #a0aec0;
    text-decoration: line-through;
    font-size: 1.3rem;
    margin-right: 15px;
}
.laraweb-savings {
    background: #c4ef17;
    color: white;
    padding: 5px 15px;
    border-radius: 20px;
    font-size: 16px;
    font-weight: bold;
}
.laraweb-tagline {
    font-size: 1.2rem;
    color: #e2e8f0;
    margin-bottom: 15px;
    font-weight: 500;
}
.laraweb-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin: 15px 0;
    font-size: 14px;
}
.laraweb-feature {
    display: flex;
    align-items: center;
    font-size: inherit;
    color: #f5f5f6;
    padding: 3px 0;
}
.laraweb-feature::before {
    content: "▶";
    color: #c4ef17;
    margin-right: 12px;
    font-size: 12px;
    flex-shrink: 0;
}
.laraweb-countdown {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgb(196, 239, 23);
    padding: 20px;
    border-radius: 15px;
    margin: 20px 0;
    text-align: center;
}
.laraweb-countdown-title {
    font-size: 16px;
    margin-bottom: 15px;
    color: #f7f8fa;
}
.laraweb-countdown-timer {
    display: flex;
    justify-content: center;
    gap: 15px;
}
.laraweb-countdown-item {
    text-align: center;
}
.laraweb-countdown-number {
    font-size: 2rem;
    font-weight: bold;
    background: white;
    color: #1a202c;
    padding: 10px 12px;
    border-radius: 8px;
    min-width: 55px;
    display: block;
    margin-bottom: 5px;
}
.laraweb-countdown-label {
    font-size: 12px;
    color: #a0aec0;
}
.laraweb-cta-button {
    background: linear-gradient(45deg, #c4ef17, rgba(125, 206, 34, 0.9));
    color: black;
    padding: 20px 40px;
    border: none;
    border-radius: 8px;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    width: 100%;
    transition: all 0.3s ease;
    margin-top: 20px;
}
.laraweb-cta-button:hover {
    transform: translateY(-3px);
}
@media (max-width: 1024px) {
    .laraweb-right-panel {
        padding: 40px;
    }
    .laraweb-main-title {
        font-size: 2.8rem;
    }
    .laraweb-subtitle {
        font-size: 1.6rem;
    }
    .laraweb-main-price {
        font-size: 3.5rem;
    }
}
@media (max-width: 768px) {
    .laraweb-container-offer {
        flex-direction: column;
        min-height: fit-content;
    }
    .laraweb-left-panel {
        height: 40vh;
        min-height: 300px;
    }
    .laraweb-right-panel {
        padding: 20px;
        height: auto;
        overflow: visible;
        display: flex;
        flex-direction: column;
        flex: 1 0 auto;
    }
    .laraweb-content-wrapper {
        display: flex;
        flex-direction: column;
        gap: 20px;
        height: auto;
    }
    .laraweb-top-content {
        flex-shrink: 0;
    }
    .laraweb-bottom-content {
        margin-top: 20px;
    }
    .laraweb-main-title {
        font-size: 2.2rem;
        line-height: 1.2;
    }
    .laraweb-subtitle {
        font-size: 1.3rem;
    }
    .laraweb-main-price {
        font-size: 2.8rem;
    }
    .laraweb-features {
        grid-template-columns: 1fr;
        gap: 6px;
        margin: 10px 0;
        font-size: 12px;
    }
    .laraweb-feature {
        font-size: inherit;
        padding: 2px 0;
    }
    .laraweb-countdown {
        padding: 15px;
        margin: 15px 0;
    }
    .laraweb-countdown-timer {
        gap: 10px;
    }
    .laraweb-countdown-number {
        font-size: 1.5rem;
        padding: 8px 10px;
        min-width: 45px;
    }
}
@media (max-width: 768px) {
    .laraweb-top-content {
        overflow-y: auto;
    }
    .laraweb-offer {
        margin-bottom: 500px;
        margin-top: 80px;
    }
}

@media (min-width: 769px) {
    .laraweb-offer {
        margin-bottom: 80px;
        margin-top: 80px;
    }
    .laraweb-container-offer {
        height: auto;
        min-height: auto;
    }
    .laraweb-countdown {
        margin-bottom: 250px;
    }
    .image-wrapper {
        width: 600px !important; /* Fixed width for the wrapper */
        height: 600px !important; /* Fixed height for the wrapper */
        margin: 20px auto; /* Center the wrapper */
    }
}
@media (max-width: 480px) {
    .laraweb-services .header h2 {
        font-size: 2rem;
        margin-bottom: 10px;
        font-weight: 700;
        color: #c4ef17;
    }
    .laraweb-services {
        padding: 60px 0;
        margin-top: 300px;
    }
    .laraweb-right-panel {
        padding: 20px;
    }
    .laraweb-main-title {
        font-size: 1.8rem;
    }
    .laraweb-subtitle {
        font-size: 1.1rem;
    }
    .laraweb-main-price {
        font-size: 2.2rem;
    }
    .laraweb-tagline {
        font-size: 1.1rem;
    }
    .laraweb-countdown {
        padding: 20px;
    }
    .laraweb-countdown-timer {
        gap: 8px;
    }
    .laraweb-countdown-number {
        font-size: 1.2rem;
        padding: 6px 8px;
        min-width: 40px;
    }
    .laraweb-cta-button {
        padding: 16px 30px;
        font-size: 16px;
    }
}
.laraweb-services {
    padding: 80px 0;
    position: relative;
}
.laraweb-services .container {
    max-width: 2400px;
    margin: 0 auto;
    padding: 0 20px;
}
.laraweb-services .header {
    text-align: center;
    margin-bottom: 50px;
}
.laraweb-services .header h2 {
    font-size: 3rem;
    margin-bottom: 10px;
    font-weight: 700;
    color: #c4ef17;
}
.laraweb-services .header p {
    font-size: 1.2rem;
    opacity: 0.9;
    max-width: 600px;
    margin: 0 auto;
}
.laraweb-services .services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
    margin-bottom: 40px;
}
.laraweb-services .service-card {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 0;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    transition: all 0.3s ease;
    cursor: pointer;
    backdrop-filter: blur(10px);
}
.laraweb-services .service-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.2);
}
.laraweb-services .card-image {
    width: 100%;
    height: 200px;
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.laraweb-services .card-image::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1;
}
.laraweb-services .card-image {
    background-color: #f3f3f3;
    background-size: cover;
    background-position: center;
    min-height: 200px;
    transition: background-image 0.3s ease-in-out;
}
.laraweb-services .card-content {
    padding: 25px;
}
.laraweb-services .card-title-service {
    font-size: 1.5rem;
    font-weight: 700;
    color: #333 !important;
    margin-bottom: 15px;
}
.laraweb-services .card-summary {
    color: #666;
    line-height: 1.6;
    margin-bottom: 15px;
}
.laraweb-services .card-details {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    color: #555;
    line-height: 1.6;
}
.laraweb-services .card-details.expanded {
    max-height: 1000px;
}
.laraweb-services .show-more-btn {
    background: linear-gradient(45deg, #c4ef17, rgba(125, 206, 34, 0.75));
    color: #0c0d0d;
    border: none;
    padding: 10px 20px;
    border-radius: 0;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.3s ease;
    margin-top: 10px;
}
.laraweb-services .show-more-btn:hover {
    transform: scale(1.05);
}
@media (max-width: 768px) {
    .laraweb-services .header h2 {
        font-size: 2rem;
    }
    .laraweb-services .services-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .laraweb-services .service-card {
        margin: 0 10px;
        max-width: 360px;
    }
    .laraweb-services {
        padding: 60px 0;
        margin-top: 100px;
    }
}

.pricing-section {
    position: relative;
    min-height: 100vh;
    transition: margin-right 0.3s ease;
}
.pricing-section.sidebar-open {
    margin-right: 350px;
}
.container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 20px;
}
.section-header {
    text-align: center;
    color: #fff;
    margin-bottom: 50px;
}
.section-header h2 {
    font-size: 3rem;
    color: #c4ef17;
    margin: 0;
}
.pricing-grid {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    max-width: 1200px;
    margin: 0 auto 80px auto;
}
@media (min-width: 1200px) {
    .pricing-grid {
        display: grid;
        gap: 50px;
        grid-template-columns: repeat(4, 1fr);
        max-width: 2400px;
        margin-bottom: 200px;
    }
    .pricing-card {
        background: #fff;
        border-radius: 15px;
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
        overflow: hidden;
        transition: transform 0.3s ease;
        color: #000;
        font-weight: 600;
        display: flex;
        flex-direction: column;
    }
}
.pricing-card {
    background: #fff;
    border-radius: 15px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    transition: transform 0.3s ease;
    color: black;
    display: flex;
    flex-direction: column;
    font-weight: 600;
}
.pricing-card:hover {
    transform: translateY(-5px);
}


}
.card-header {
    background: linear-gradient(135deg, rgba(125, 206, 34, 0.86), #c4ef17);
    color: #0c0d0d;
    padding: 20px;
    text-align: center;
    position: relative;
    min-height: 140px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.complexity-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    background: #fff;
    color: #000;
    padding: 5px 10px;
    border-radius: 12px;
    font-size: 0.8rem;
    font-weight: bold;
}
.card-header h3 {
    margin: 0 0 10px 0;
    font-size: 1.5rem;
}
.card-header p {
    margin: 0 0 15px 0;
    opacity: 0.8;
}
.card-header h2 {
    margin: 0;
    font-size: 2rem;
}
.card-header small {
    margin-top: 5px;
    display: block;
    opacity: 0.7;
}
.card-body {
    padding: 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.card-body ul {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
    flex: 1;
}
.card-body li {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
}
.card-body li::before {
    content: "✓";
    color: #7dce22;
    font-weight: bold;
    margin-right: 8px;
    width: 16px;
    flex-shrink: 0;
}
.cta-button {
    background: linear-gradient(135deg, #7dce22, #c4ef17);
    color: #0c0d0d;
    text-decoration: none;
    padding: 15px 30px;
    border-radius: 8px;
    font-weight: bold;
    text-align: center;
    transition: all 0.3s ease;
    display: block;
    margin-top: auto;
}
.cta-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(125, 206, 34, 0.3);
}
.card-multi {
    grid-column: span 1;
}
.cta-button {
    display: block;
    width: 100%;
    background: linear-gradient(135deg, rgba(125, 206, 34, 0.84), #c4ef17);
    color: black;
    font-weight: 600;
    padding: 12px;
    text-align: center;
    border-radius: 8px;
    margin-top: 15px;
    text-decoration: none;
    transition: background 0.3s ease;
}
.cta-button:hover {
    background: linear-gradient(135deg, #c4ef17, rgba(125, 206, 34, 0.88));
}
.cta-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
}
@media (min-width: 768px) {
    .cta-content {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
    .cta-content p {
        margin: 0;
    }
}
.sidebar-toggle-btn {
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    z-index: 1001;
    background: linear-gradient(135deg, #c4ef17 0%, #38ef7d 100%);
    color: black;
    border: none;
    padding: 20px 12px;
    border-radius: 8px 0 0 8px;
    cursor: pointer;
    font-weight: 600;
    font-size: 0.9rem;
    box-shadow: -4px 0 15px rgba(196, 239, 23, 0.3);
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    min-height: 120px;
    width: 50px;
}
.sidebar-toggle-btn:hover {
    transform: translateY(-50%) translateX(-5px);
    box-shadow: -8px 0 20px rgba(196, 239, 23, 0.4);
    background: linear-gradient(135deg, #38ef7d 0%, #c4ef17 100%);
}
.sidebar-toggle-btn i {
    font-size: 1.2rem;
    writing-mode: initial;
    text-orientation: initial;
    transform: rotate(0deg);
    transition: transform 0.3s ease;
}
.sidebar-toggle-btn.active i {
    transform: rotate(180deg);
}
.sidebar-toggle-btn span {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    font-size: 0.8rem;
    letter-spacing: 2px;
}
.sidebar {
    position: fixed;
    top: 150px;
    right: 0;
    width: 1000px;
    height: calc(100vh - 150px);
    background: linear-gradient(
            135deg,
            rgba(0, 0, 0, 0.95) 0%,
            rgba(20, 20, 20, 0.95) 100%
    );
    backdrop-filter: blur(10px);
    border-left: 4px solid #c4ef17;
    box-shadow: -10px 0 30px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
    z-index: 1000;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 20px;
    transform: translateX(0);
    opacity: 1;
    color: white;
}
@media (max-width: 768px) {
    .sidebar {
        top: 75px;
        height: calc(100vh - 75px);
        width: 100% !important;
    }
}
.sidebar.hidden {
    transform: translateX(100%);
    opacity: 0;
}
.sidebar.hidden + .sidebar-toggle-btn {
    right: -5px;
}
.sidebar h2 {
    color: #c4ef17;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 30px;
    padding-bottom: 15px;
    border-bottom: 2px solid rgba(196, 239, 23, 0.3);
}
.sidebar h3 {
    color: #c4ef17;
    font-size: 1.2rem;
    font-weight: 600;
    margin: 25px 0 15px 0;
    padding: 12px 15px;
    background: linear-gradient(
            90deg,
            rgba(196, 239, 23, 0.1) 0%,
            rgba(196, 239, 23, 0.05) 100%
    );
    border-left: 3px solid #c4ef17;
    border-radius: 0 8px 8px 0;
    display: flex;
    align-items: center;
    gap: 10px;
}
.sidebar h3 i {
    color: #c4ef17;
    font-size: 1.1rem;
}
.sidebar ul {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}
.sidebar ul li {
    padding: 8px 15px 8px 35px;
    margin: 5px 0;
    position: relative;
    color: #e2e8f0;
    line-height: 1.5;
    transition: all 0.2s ease;
    border-radius: 6px;
}
.sidebar ul li:hover {
    background: rgba(196, 239, 23, 0.1);
    color: white;
    transform: translateX(5px);
}
.sidebar ul li::before {
    content: "▸";
    position: absolute;
    left: 15px;
    color: #c4ef17;
    font-weight: bold;
    transition: all 0.2s ease;
}
.sidebar ul li:hover::before {
    color: #38ef7d;
    transform: scale(1.2);
}
.sidebar table {
    width: 100%;
    border-collapse: collapse;
    margin: 15px 0 25px 0;
    background: rgba(20, 20, 20, 0.8);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}
.sidebar table th {
    background: linear-gradient(135deg, #c4ef17 0%, #38ef7d 100%);
    color: black;
    padding: 12px 15px;
    font-weight: 600;
    text-align: left;
    font-size: 0.9rem;
}
.sidebar table td {
    padding: 10px 15px;

    color: #e2e8f0;
    font-size: 0.9rem;
}
.sidebar table tr:nth-child(even) td {
    background: rgba(196, 239, 23, 0.05);
}
.sidebar table tr:hover td {
    background: rgba(196, 239, 23, 0.1);
    color: white;
}
.sidebar .highlight {
    background: linear-gradient(
            135deg,
            rgba(196, 239, 23, 0.15) 0%,
            rgba(196, 239, 23, 0.08) 100%
    );

    border-radius: 8px;
    padding: 15px;
    margin: 15px 0;
    display: flex;
    align-items: center;
    gap: 12px;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    color: white;
}
.sidebar .highlight::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: linear-gradient(135deg, #c4ef17 0%, #38ef7d 100%);
}
.sidebar .highlight:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(196, 239, 23, 0.15);
    border-color: rgba(196, 239, 23, 0.5);
}
.sidebar .highlight i {
    color: #c4ef17;
    font-size: 1.2rem;
    min-width: 20px;
}
.sidebar .highlight:hover i {
    color: #38ef7d;
    transform: scale(1.1);
}
@media (max-width: 768px) {
    .sidebar-toggle-btn {
        width: 45px;
        min-height: 100px;
        padding: 15px 8px;
        font-size: 0.7rem;
        z-index: 999999;
    }
    .sidebar-toggle-btn span {
        font-size: 0.7rem;
        letter-spacing: 1px;
    }
    .sidebar-toggle-btn i {
        font-size: 1rem;
    }
    .sidebar h2 {
        font-size: 2rem;
        margin-bottom: 20px;
    }
    .sidebar h3 {
        font-size: 1.1rem;
        padding: 10px 12px;
    }
    .sidebar table {
        font-size: 0.8rem;
    }
    .sidebar table th,
    .sidebar table td {
        padding: 8px 10px;
    }
}
@media (max-width: 768px) {
    .sidebar {
        top: 75px;
        height: calc(100vh - 75px);
        width: 100% !important;
    }
}
.pricing-card:nth-child(1) .card-header {
    background: linear-gradient(135deg, #387e3b, #c4ef17);
}
.pricing-card:nth-child(2) .card-header {
    background: linear-gradient(135deg, #51b956, #c4ef17);
}
.pricing-card:nth-child(3) .card-header {
    background: linear-gradient(135deg, #9ccc65, #c4ef17);
}
.pricing-card:nth-child(4) .card-header {
    background: linear-gradient(135deg, #d4e157, #c4ef17);
}
.pricing-card:nth-child(5) .card-header {
    background: linear-gradient(135deg, #c4ef17, #ffca28);
}
.pricing-card:nth-child(6) .card-header {
    background: linear-gradient(135deg, #ffca28, #ffb300);
}
.pricing-card:nth-child(7) .card-header {
    background: linear-gradient(135deg, #ffb300, #ffa000);
}
.pricing-card:nth-child(8) .card-header {
    background: linear-gradient(135deg, #ffa000, #ff8f00);
}
.pricing-card:nth-child(9) .card-header {
    background: linear-gradient(135deg, #ff8f00, #ff6f00);
}
.pricing-card:nth-child(9) .card-header {
    background: linear-gradient(135deg, #e07e02, #ff6200);
}
.fade-in {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.6s ease;
}
.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}
.bg-green {
    background: linear-gradient(135deg, var(--green-color) 0%, #c4ef17 100%);
}
.bg-blue {
    background: linear-gradient(135deg, var(--blue-color) 0%, #5dade2 100%);
}
.stats-card {
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}
.stats-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}
.stats-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: rgba(255, 255, 255, 0.3);
}
.horizontal-card-body {
    display: flex;
    align-items: center;
    padding: 2rem;
    gap: 2rem;
}
.card-icon-section {
    flex-shrink: 0;
}
.card-content-section {
    flex: 1;
}
.card-icon {
    width: 80px;
    height: 80px;
    background: rgb(12, 13, 13);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}
.stats-card:hover .card-icon {
    background: rgba(12, 13, 13, 0.81);
    transform: scale(1.1);
}
.card-icon i {
    font-size: 40px;
    color: #faf7f6;
}
.card-title {
    font-size: clamp(0.9rem, 2.5vw, 1.1rem);
    font-weight: 600;
    margin-bottom: 0.3rem;
    line-height: 1.2;
}
.stats-description {
    font-size: clamp(0.8rem, 2vw, 0.9rem);
    opacity: 0.9;
    line-height: 1.4;
    margin-bottom: 0;
}
.number-count {
    display: inline-block;
    transition: all 0.3s ease;
}
.number-count.counting {
    transform: scale(1.1);
}
.horizontal-card-body {
    flex-direction: column;
    text-align: center;
    padding: 1.5rem;
    gap: 1.5rem;
}
.card-icon {
    width: 60px;
    height: 60px;
}
.card-icon i {
    font-size: 32px;
}
@keyframes pulse {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
    100% {
        transform: scale(1);
    }
}
.pulse-animation {
    animation: pulse 0.5s ease-in-out;
}
.sidebar-toggle-btn {
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    z-index: 1001;
    background: linear-gradient(135deg, #c4ef17 0%, #38ef7d 100%);
    color: #000;
    border: none;
    border-radius: 8px 0 0 8px;
    padding: 20px 12px;
    min-height: 120px;
    width: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    font-weight: 600;
    font-size: 0.9rem;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    animation: slideInFromRight 0.5s ease-out;
    outline: none;
    margin: 0;
}
.sidebar-toggle-btn i {
    font-size: 1.2rem;
    margin-bottom: 4px;
    transition: transform 0.3s ease;
    display: block;
}
.sidebar-toggle-btn .span-color {
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    line-height: 1.2;
    word-spacing: -2px;
    color: #000;
    opacity: 0.9;
}
.sidebar-toggle-btn:hover {
    background: linear-gradient(135deg, #38ef7d 0%, #c4ef17 100%);
    box-shadow: -6px 0 20px rgba(196, 239, 23, 0.4);
    transform: translateY(-50%) translateX(-3px);
}
.sidebar-toggle-btn:hover i {
    transform: rotate(15deg);
}
.sidebar-toggle-btn:hover .span-color {
    opacity: 1;
}
.sidebar-toggle-btn:active {
    transform: translateY(-50%) translateX(1px);
    box-shadow: -2px 0 10px rgba(196, 239, 23, 0.2);
}
.sidebar-toggle-btn:focus {
    outline: 2px solid rgba(196, 239, 23, 0.5);
    outline-offset: 2px;
}
.sidebar-open .sidebar-toggle-btn,
.sidebar-toggle-btn.active {
    background: linear-gradient(135deg, #38ef7d 0%, #c4ef17 100%);
    transform: translateY(-50%) translateX(-5px);
}
.sidebar-open .sidebar-toggle-btn i,
.sidebar-toggle-btn.active i {
    transform: rotate(180deg);
}
@media (max-width: 768px) {
    .sidebar-toggle-btn {
        padding: 15px 10px;
        min-height: 100px;
        width: 45px;
        font-size: 0.8rem;
    }
    .sidebar-toggle-btn i {
        font-size: 1rem;
    }
    .sidebar-toggle-btn .span-color {
        font-size: 0.75rem;
    }

    .ms-5 {
        margin-left: 0.1rem !important;
    }
}

@media (max-width: 480px) {
    .pricing-card {
        flex: 0 0 100vw;
        margin-right: 1rem;
        max-width: 320px !important;
    }
    .ms-5 {
        margin-left: 0.1rem !important;
    }

}

.pricing-card {
    position: relative;
    overflow: hidden;
    margin-top: 80px;
}
.ribbon {
    width: 150px;
    height: 150px;
    overflow: hidden;
    position: absolute;
    top: -10px;
    right: -10px;
    z-index: 1;
}
.ribbon span {
    position: absolute;
    display: block;
    width: 200px;
    padding: 0.5rem 0;
    background: #f093fb;
    color: white;
    text-align: center;
    font-weight: bold;
    font-size: 0.75rem;
    text-transform: uppercase;
    transform: rotate(45deg);
    top: 45px;
    right: -40px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    letter-spacing: 0.5px;
}
@media (max-width: 768px) {
    .pricing-scroll-wrapper {
        position: relative;
        overflow: hidden;
    }
    .pricing-grid {
        display: flex;
        flex-wrap: nowrap;
    }
    .pricing-card {
        flex: 0 0 100vw;
        margin-right: 1rem;
        max-width: 360px;
    }
}

.attribution {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 0;
    margin-top: 30px;
    border-top: 1px solid #eee;
}
.attribution a {
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    padding: 10px 15px;
    border-radius: 4px;
    transition: all 0.3s ease;
}
.attribution a:hover {
    color: #fff;
    background-color: #2c2c2c;
}
.ghost-hover-1 {
    background: linear-gradient(135deg, #0f0f0f 0%, #1a1a1a 50%, #0f0f0f 100%);
    position: relative;
    overflow: hidden;
}
.ghost-hover-1::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
            90deg,
            transparent,
            rgba(255, 255, 255, 0.05),
            transparent
    );
    animation: ghostSweep 8s infinite;
}
@keyframes ghostSweep {
    0% {
        left: -100%;
    }
    50% {
        left: 100%;
    }
    100% {
        left: 100%;
    }
}
.text-white {
    color: #ffffff !important;
}
.text-white a {
    color: #ffffff;
    text-decoration: none;
    position: relative;
    transition: all 0.3s ease;
}
.text-white a::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, rgba(125, 206, 34, 0.59), #7dce22);
    transition: width 0.3s ease;
}
.text-white a:hover::after {
    width: 100%;
}
.text-white a:hover {
    color: #faf7f6 !important;
}
.question-block {
    opacity: 0;
    transform: translateY(30px);
    margin-bottom: 2rem;
}
.contact-block {
    opacity: 0;
    transform: translateX(50px);
}
#contact_card {
    z-index: 0;
    position: relative;
}
.glitch {
    position: relative;
}
.glitch::before,
.glitch::after {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
}
.glitch::before {
    animation: glitch-1 0.6s infinite;
    color: #f093fb;
    z-index: -1;
}
.glitch::after {
    animation: glitch-2 0.6s infinite;
    color: #00ff00;
    z-index: -2;
}
@keyframes glitch-1 {
    0%,
    14%,
    15%,
    49%,
    50%,
    99%,
    100% {
        opacity: 0;
        transform: translateX(0);
    }
    15%,
    49% {
        opacity: 1;
        transform: translateX(-2px);
    }
}
@keyframes glitch-2 {
    0%,
    19%,
    20%,
    44%,
    45%,
    99%,
    100% {
        opacity: 0;
        transform: translateX(0);
    }
    20%,
    44% {
        opacity: 1;
        transform: translateX(2px);
    }
}
h1 div {
    display: inline-block;
}
.word {
    white-space: nowrap;
    display: inline-block;
}
.char {
    display: inline-block;
}
.space {
    display: inline-block;
    width: 0.3em;
}
.grecaptcha-badge {
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    left: -9999px !important;
}
.grecaptcha-badge {
    display: none !important;
}
.grecaptcha-badge {
    z-index: -1000 !important;
    position: fixed !important;
    bottom: -100px !important;
    right: -100px !important;
}
.grecaptcha-badge {
    transform: scale(0) !important;
    transform-origin: bottom right !important;
}
.grecaptcha-badge {
    clip-path: polygon(0 0, 0 0, 0 0, 0 0) !important;
}
.g-recaptcha {
    transform: scale(0.77);
    transform-origin: 0 0;
}
.grecaptcha-badge {
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}
@media screen and (max-width: 768px) {
    .grecaptcha-badge {
        display: none !important;
    }
}
div[class*="grecaptcha"] {
    display: none !important;
}
iframe[src*="recaptcha"] {
    display: none !important;
}
div:has(.grecaptcha-badge) {
    display: none !important;
}
.grecaptcha-badge {
    position: fixed !important;
    top: -200px !important;
    left: -200px !important;
    width: 1px !important;
    height: 1px !important;
}
.laraweb-services {
    z-index: 0;
}
.ftc-testimonial-1-area {
    position: relative;
    z-index: 1;
    background-color: #e9e9e7;
}
.ftc-testimonial-1-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.ftc-testimonial-1-item {
    display: flex;
    align-items: center;
    gap: 60px;
    padding-bottom: 70px;
}
@media (max-width: 767px) {
    .ftc-testimonial-1-item {
        gap: 150px;
        flex-wrap: wrap;
        padding-bottom: 100px;
    }
}
.ftc-testimonial-1-item .left {
    flex: 0 0 auto;
    position: relative;
    z-index: 1;
    transform: translateY(50%);
    transition: all 1000ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
    opacity: 0;
}
.ftc-testimonial-1-item .content {
    transform: translateY(-50%);
    transition: all 1000ms cubic-bezier(0.47, 1.64, 0.41, 0.8);
    opacity: 0;
}
.ftc-testimonial-1-item .item-icon {
    width: 405px;
    height: 405px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 200px;
    line-height: 1;
    color: #000;
    border: 2px solid #000;
    border-radius: 50%;
    flex: 0 0 auto;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .ftc-testimonial-1-item .item-icon {
        width: 205px;
        height: 205px;
        font-size: 50px;
    }
}
.ftc-testimonial-1-item .author-img {
    width: 125px;
    height: 125px;
    border-radius: 50%;
    margin-bottom: 25px;
}
.ftc-testimonial-1-item .author-name {
    font-size: 28px;
    margin-left: 45px;
    margin-bottom: 2px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .ftc-testimonial-1-item .author-name {
        margin-left: 0px;
    }
}
.ftc-testimonial-1-item .author-disc {
    font-size: 19px;
    color: #7e7f80;
    margin-left: 45px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .ftc-testimonial-1-item .author-disc {
        margin-left: 0px;
    }
}
.ftc-testimonial-1-item .item-author {
    position: absolute;
    right: -160px;
    bottom: -70px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .ftc-testimonial-1-item .item-author {
        right: unset;
        bottom: -130px;
        left: 0;
    }
}
.ftc-testimonial-1-item .item-title {
    font-size: 55px;
    letter-spacing: -2px;
    margin-bottom: 21px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .ftc-testimonial-1-item .item-title {
        font-size: 40px;
    }
}
@media (max-width: 767px) {
    .ftc-testimonial-1-item .item-title {
        font-size: 35px;
    }
}
.ftc-testimonial-1-item .item-subtitle {
    font-size: 25px;
    letter-spacing: -2px;
    margin-bottom: 26px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .ftc-testimonial-1-item .item-subtitle {
        font-size: 22px;
    }
}
@media (max-width: 767px) {
    .ftc-testimonial-1-item .item-subtitle {
        font-size: 22px;
    }
}
.ftc-testimonial-1-slider {
    max-width: 1070px;
    position: relative;
    z-index: 1;
}
.ftc-testimonial-1-slider
.swiper-container
.swiper-wrapper
.swiper-slide:is(.swiper-slide-active)
.ftc-testimonial-1-item
.left {
    transform: translateY(0%);
    opacity: 1;
    transition-delay: 0.5s;
}
.ftc-testimonial-1-slider
.swiper-container
.swiper-wrapper
.swiper-slide:is(.swiper-slide-active)
.ftc-testimonial-1-item
.content {
    transform: translateY(0%);
    opacity: 1;
    transition-delay: 0.5s;
}
.ftc-testimonial-1-slider-btn {
    position: absolute;
    right: 0;
    bottom: 10px;
    gap: 12px;
    z-index: 1;
}
.fix {
    overflow: hidden;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .parallax-img {
        background-position-y: unset !important;
    }
}
.img-cover img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}
.bg-default {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.z-index-3 {
    position: relative;
    z-index: 3;
}
.flaticon {
    display: inline-block;
    line-height: 0.65;
}
.ftc-slider-btn-1 {
    display: flex;
    flex: 0 0 auto;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 2px solid #fff;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    transition: 400ms var(--cube-1);
}
.ftc-slider-btn-1 i {
    display: inline-block;
    transition: 500ms var(--cube-2);
}
.ftc-slider-btn-1:hover {
    animation: wobble-vertical 1s ease-in-out;
    background-color: var(--ftc-pr-1);
    border-color: transparent;
}
.ftc-slider-btn-1.has-color-black {
    border-color: #000;
    color: #000;
}
.ftc-slider-btn-1.has-color-black:hover {
    border-color: transparent;
}
.ftc-heading-1 {
    font-family: var(--ftc-pr-font);
    line-height: 1.2;
    color: var(--ftc-heading-1);
    text-transform: capitalize;
    margin-bottom: 0px;
}
.ftc-heading-1.has-color-white {
    color: #fff;
}
.ftc-heading-2 {
    font-family: var(--saira);
    line-height: 1.16;
    color: var(--ftc-heading-2);
    text-transform: capitalize;
    margin-bottom: 0px;
}
.ftc-heading-2.has-color-white {
    color: #fff;
}
.ftc-subtitle-1 {
    font-family: var(--ftc-pr-font);
    font-size: 19px;
    line-height: 1.2;
    color: var(--ftc-heading-1);
    margin-bottom: 5px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}
.ftc-subtitle-1 .line {
    display: block;
    width: 35px;
    height: 2px;
    background: var(--ftc-heading-1);
    flex: 0 0 auto;
}
.ftc-subtitle-1.has-color-pr {
    color: var(--ftc-pr-1);
}
.ftc-subtitle-1.has-color-pr .line {
    background: var(--ftc-pr-1);
}
.ftc-subtitle-1.has-color-white {
    color: #fff;
}
.ftc-subtitle-1.has-color-white .line {
    background: #fff;
}
.ftc-subtitle-2 {
    font-family: var(--golada);
    font-size: 16px;
    line-height: 1;
    margin-bottom: 17px;
    display: inline-flex;
    text-transform: uppercase;
    align-items: center;
    gap: 10px;
    background: var(--ftc-gd-1);
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ftc-subtitle-2 .line {
    display: block;
    width: 80px;
    height: 2px;
    background: var(--ftc-gd-1);
    flex: 0 0 auto;
    transform-origin: left;
}
.ftc-subtitle-2 .line.has-origin-right {
    transform-origin: right;
}
.ftc-subtitle-2.has-gd-2 .line {
    background: var(--ftc-gd-2);
}
.ftc-para-1 {
    font-family: var(--ftc-pr-font);
    font-weight: 400;
    line-height: 30px;
    font-size: 18px;
    color: var(--ftc-heading-1);
    margin-bottom: 0px;
}
.ftc-para-1.has-color-white {
    color: #fff;
}
.ftc-para-2 {
    font-family: var(--roboto);
    font-weight: 400;
    line-height: 30px;
    font-size: 18px;
    color: var(--ftc-para-1);
    margin-bottom: 0px;
}
.ftc-para-2.has-color-white {
    color: #fff;
}
.ftc-section-title-1 {
    font-family: var(--ftc-pr-font);
    font-size: 55px;
    line-height: 1.2;
    color: var(--ftc-heading-1);
    text-transform: capitalize;
    letter-spacing: -2px;
    margin-bottom: 10px;
}
.rating-stars {
    color: #ffc107;
    font-size: 16px;
    margin-bottom: 10px;
}
.rating-stars .fas,
.rating-stars .far {
    margin-right: 2px;
}
.scroll-top {
    position: fixed;
    right: 80px;
    bottom: 20px;
    width: 45px;
    cursor: pointer;
    display: block;
    z-index: 6;
    opacity: 1;
    visibility: visible;
    transition: all 300ms linear;
    background: transparent;
    text-align: center;
    color: #fff;
    background: var(--txa-gd-1);
    border-radius: 30px;
    border: 2px solid transparent;
    transition: 300ms var(--cube-2);
    transform: translateY(200px);
}
.scroll-top:hover {
    bottom: 35px;
}
.scroll-top-wrap {
    position: relative;
    width: 100%;
    height: 100%;
    background-color: #fff;
    border-radius: 30px;
    padding: 7px 0;
}
.scroll-top-wrap svg {
    fill: var(--txa-pr-1);
    width: 38px;
}
.scroll-top-wrap .text {
    display: inline-block;
    writing-mode: vertical-lr;
    text-transform: uppercase;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.5px;
    background: var(--txa-gd-1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
@media (max-width: 767px) {
    .scroll-top-wrap .text {
        display: none;
    }

    .ftc-section-title-1 {
        font-family: var(--ftc-pr-font);
        font-size: 40px;
        line-height: 0.8;
        color: var(--ftc-heading-1);
        text-transform: capitalize;
        letter-spacing: -2px;
        margin-bottom: 10px;
    }
}
.scroll-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

a,
span {
    text-decoration: none;
}
.pb-65 {
    padding-bottom: 65px;
}
.pt-65 {
    padding-top: 65px;
}
.splitting.animated .char {
    -webkit-animation: fadeInUp 0.4s cubic-bezier(0.3, 0, 0.7, 1) both;
    animation: fadeInUp 0.4s cubic-bezier(0.3, 0, 0.7, 1) both;
    -webkit-animation-delay: calc(30ms * var(--char-index));
    animation-delay: calc(30ms * var(--char-index));
}
.splitting .whitespace {
    width: 10px;
}
.ftc-threed-box {
    perspective: 2000px;
    transform-style: preserve-3d;
}
@media (max-width: 991px), (max-width: 767px), (max-width: 575px) {
    .parallax-img {
        background-position-y: unset !important;
    }
}
.ftc-color-gd {
    background: var(--ftc-gd-1);
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.ftc-color-gd-2 {
    background: var(--ftc-gd-2);
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Reset Bootstrap nav-link styles in tab buttons */
.ftc-price-1-tabs-btn .nav-link {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0.75rem 1rem;
    color: inherit;
}

@media (max-width: 767px) {
    .right-content {
        display: none !important;
    }
}

@-webkit-keyframes wobble-vertical {
    16.65% {
        -webkit-transform: translateY(8px);
        transform: translateY(8px);
    }
    33.3% {
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px);
    }
    49.95% {
        -webkit-transform: translateY(4px);
        transform: translateY(4px);
    }
    66.6% {
        -webkit-transform: translateY(-2px);
        transform: translateY(-2px);
    }
    83.25% {
        -webkit-transform: translateY(1px);
        transform: translateY(1px);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes wobble-vertical {
    16.65% {
        -webkit-transform: translateY(8px);
        transform: translateY(8px);
    }
    33.3% {
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px);
    }
    49.95% {
        -webkit-transform: translateY(4px);
        transform: translateY(4px);
    }
    66.6% {
        -webkit-transform: translateY(-2px);
        transform: translateY(-2px);
    }
    83.25% {
        -webkit-transform: translateY(1px);
        transform: translateY(1px);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes ftc-up-down-keyfrem {
    0% {
        transform: translateY(0px);
    }
    25% {
        transform: translateY(-50px);
    }
    50% {
        transform: translateY(0px);
    }
    75% {
        transform: translateY(50px);
    }
    100% {
        transform: translateY(0px);
    }
}
@keyframes ftc-roteted {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.ftc-home-2 {
    background-color: #1f1e20;
}
.ftc-home-4 {
    background: #010317;
}
.ftc-footer-1-area {
    background: #161616;
}
.ftc-footer-1-top {
    padding: 35px 0;
    gap: 35px;
}
.ftc-footer-1-top .title {
    font-size: 27px;
    margin-left: auto;
}
@media (max-width: 767px) {
    .ftc-footer-1-top .title {
        margin-left: unset;
    }
}
.ftc-footer-1-line {
    width: 100%;
    transform: scaleX(0);
    height: 2px;
    background: #313030;
    transition: 2s var(--cube-2);
}
.ftc-footer-1-line:is(.has-origin-left) {
    transform-origin: left;
}
.ftc-footer-1-line:is(.has-origin-right) {
    transform-origin: right;
}
.ftc-footer-1-line:is(.active) {
    transform: scaleX(1);
}
.ftc-footer-1-widget-wrap {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
    gap: 50px 100px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
    }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
        grid-template-columns: 2fr 1fr 1fr 1fr;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
        grid-template-columns: 2fr 1fr 1fr;
    }
}
@media (max-width: 767px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
        grid-template-columns: 1fr;
    }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
        grid-template-columns: 2fr 1fr;
    }
}
.ftc-footer-1-widget-title {
    font-size: 25px;
    line-height: 1.4;
    margin-bottom: 15px;
}
.ftc-footer-1-menu li:not(:last-child) {
    margin-bottom: 5px;
}
.ftc-footer-1-menu .menu-link {
    font-size: 18px;
    color: #dcdcdc;
    display: inline-block;
    transition: 400ms var(--cube-1);
    position: relative;
    z-index: 1;
}
.ftc-footer-1-menu .menu-link::after {
    content: "";
    width: 0%;
    height: 100%;
    background-color: var(--ftc-pr-1);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 10%;
    transition: 400ms var(--cube-1);
}
.ftc-footer-1-menu .menu-link:hover {
    color: var(--ftc-pr-1);
    transform: translateX(3px);
}
.ftc-footer-1-menu .menu-link:hover::after {
    width: 100%;
}
.ftc-footer-1-bottom {
    gap: 20px;
}
.ftc-footer-1-copyright {
    font-weight: 500;
}
.ftc-footer-1-copyright a {
    display: inline-block;
    transition: 400ms var(--cube-1);
}
.ftc-footer-1-copyright a:hover {
    color: var(--ftc-pr-1);
}
.ftc-social-link-1 {
    gap: 8px;
}
.ftc-social-link-1 .this-link {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fff;
    flex: 0 0 auto;
    font-size: 18px;
    color: #000;
    transition: 400ms var(--cube-1);
}
.ftc-social-link-1 .this-link:hover {
    background-color: var(--ftc-pr-1);
    transform: scale(95%);
}
.ftc-newslatter-1 {
    position: relative;
    z-index: 1;
}
.ftc-newslatter-1 input {
    width: 100%;
    height: 64px;
    border-radius: 30px;
    border: none;
    outline: none;
    padding-left: 20px;
    padding-right: 80px;
    font-size: 16px;
    color: #959595;
    font-family: var(--ftc-pr-font);
}
.ftc-newslatter-1 .this-btn {
    position: absolute;
    right: 0;
    top: 0;
    width: 65px;
    height: 100%;
    background: var(--ftc-pr-1);
    border-radius: 0 30px 30px 0;
    font-size: 20px;
    color: #000;
    transition: 400ms var(--cube-1);
}
.ftc-newslatter-1 .this-btn:hover {
    width: 70px;
}

.ftc-mobile-menu-btn-1 {
    border: none;
    outline: none;
    background: var(--ftc-pr-1);
    flex: 0 0 auto;
    width: 62px;
    height: 62px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 50%;
    transition: 500ms var(--cube-2);
    position: relative;
    z-index: 1;
    overflow: hidden;
    padding: 26px 20px;
}

.ftc-mobile-menu-btn-1 span {
    display: block;
    background: #000;
    width: 100%;
    height: 3px;
    transition: 500ms var(--cube-2);
}

.ftc-mobile-menu-btn-1 span:nth-child(2) {
    transform: translate(-5px, 0);
}

.ftc-mobile-menu-btn-1 span:nth-child(1) {
    transform: translate(5px, 0);
}

.ftc-mobile-menu-btn-1:focus span:nth-child(2) {
    transform: translateY(-4px) rotate(308deg);
}

.ftc-mobile-menu-btn-1:focus span:nth-child(1) {
    transform: translateY(3px) rotate(45deg);
}

.ftc-mobile-menu-btn-1:hover {
    transform: scale(95%);
}

.ftc-mobile-menu-btn-1:hover span:nth-child(2) {
    transform: translateY(-4px) rotate(308deg);
}

.ftc-mobile-menu-btn-1:hover span:nth-child(1) {
    transform: translateY(3px) rotate(45deg);
}

.feh-mobile-menu-btn-1 {
    outline: none;
    background: transparent;
    flex: 0 0 auto;
    width: 62px;
    height: 62px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 50%;
    transition: 500ms var(--cube-2);
    position: relative;
    z-index: 1;
    overflow: hidden;
    padding: 21px 20px;
}

.feh-mobile-menu-btn-1 span {
    display: block;
    background: #000;
    width: 100%;
    height: 2px;
    transition: 500ms var(--cube-2);
    margin-bottom: 2px;
}

.feh-mobile-menu-btn-1:focus span:nth-child(2) {
    transform: translateY(1px) rotate(317deg);
}

.feh-mobile-menu-btn-1:focus span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
}

.feh-mobile-menu-btn-1:focus span:nth-child(3) {
    visibility: hidden;
    opacity: 0;
}

.feh-mobile-menu-btn-1:hover {
    transform: scale(95%);
}

.feh-mobile-menu-btn-1:hover span:nth-child(2) {
    transform: translateY(1px) rotate(317deg);
}

.feh-mobile-menu-btn-1:hover span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
}

.feh-mobile-menu-btn-1:hover span:nth-child(3) {
    visibility: hidden;
    opacity: 0;
}

.ftc-btn-1 {
    display: inline-block;
    background: var(--ftc-pr-1);
    font-size: 19px;
    padding: 16px 47px;
    border-radius: 50px;
    position: relative;
    z-index: 1;
    transition: 0.4s var(--cube-1);
}

.ftc-btn-1::after {
    content: "";
    width: 100%;
    height: 100%;
    right: 0;
    top: 0;
    background: #000;
    position: absolute;
    border-radius: 30px;
    z-index: -1;
    transition: 0.4s var(--cube-2);
    opacity: 0;
}

.ftc-btn-1:hover {
    color: #fff;
}

.ftc-btn-1:hover::after {
    width: 95%;
    opacity: 1;
}

.ftc-btn-1.has-icon {
    padding: 16px 30px;
}

.ftc-btn-1.has-boxed {
    letter-spacing: -1px;
    border-radius: 0;
    font-size: 20px;
    padding: 44px 76px;
}

.ftc-btn-1.has-boxed::after {
    border-radius: 0;
}

@media (max-width: 1199px),
(max-width: 991px),
(max-width: 767px),
(max-width: 575px) {
    .ftc-btn-1.has-boxed {
        padding: 25px 35px;
    }
}

.ftc-btn-3 {
    position: relative;
    z-index: 1;
    display: inline-block;
    font-size: 18px;
    font-weight: 600;
    font-family: var(--saira);
    text-transform: capitalize;
    color: #fff;
    background: var(--ftc-gd-1);
    padding: 11px 27px;
    border-radius: 5px;
}

.ftc-btn-3::after {
    content: "";
    width: 105%;
    height: 117%;
    background: transparent;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: 2px solid var(--ftc-pr-2);
    z-index: -1;
    border-radius: 5px;
    clip-path: polygon(0 45%, 45% 44%, 30% 100%, 0% 100%);
    transition: 400ms var(--cube-1);
}

.ftc-btn-3::before {
    content: "";
    width: 0%;
    height: 100%;
    background: #173fcf;
    position: absolute;
    top: 0%;
    left: 0%;
    z-index: -1;
    border-radius: 5px;
    transition: 400ms var(--cube-1);
    opacity: 0;
}

.ftc-btn-3:hover {
    color: #fff;
}

.ftc-btn-3:hover::before {
    width: 100%;
    opacity: 1;
}

.ftc-btn-3:hover::after {
    clip-path: polygon(0 10%, 97% 6%, 97% 100%, 0% 100%);
}

.ftc-btn-4 {
    position: relative;
    z-index: 1;
    display: inline-block;
    font-size: 18px;
    font-weight: 600;
    font-family: var(--saira);
    text-transform: capitalize;
    color: #fff;
    background: #6827da;
    padding: 15px 40px;
    border-radius: 5px;
}

.ftc-btn-4::after {
    content: "";
    width: 105%;
    height: 117%;
    background: transparent;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: 2px solid #6827da;
    z-index: -1;
    border-radius: 5px;
    clip-path: polygon(0 10%, 97% 6%, 97% 100%, 0% 100%);
    transition: 400ms var(--cube-1);
}

.ftc-btn-4::before {
    content: "";
    width: 0%;
    height: 100%;
    background: var(--ftc-gd-1);
    position: absolute;
    top: 0%;
    left: 0%;
    z-index: -1;
    border-radius: 5px;
    transition: 400ms var(--cube-1);
    opacity: 0;
}

.ftc-btn-4:hover {
    color: #fff;
}

.ftc-btn-4:hover::before {
    width: 100%;
    opacity: 1;
}

.ftc-btn-4:hover::after {
    clip-path: polygon(0 45%, 45% 44%, 30% 100%, 0% 100%);
    border: 2px solid var(--ftc-pr-2);
}

.ftc-pr-btn-5 {
    overflow: hidden;
    z-index: 1;
    position: relative;
    display: inline-block;
    flex: 0 0 auto;
    background: var(--ftc-gd-2);
    font-family: var(--saira);
    font-size: 18px;
    line-height: 1;
    font-weight: 600;
    text-transform: capitalize;
    color: #fff;
    padding: 22px 38px;
    border-radius: 100px;
    transition: 0.2s transform ease-in-out;
    will-change: transform;
    cursor: pointer;
}

.ftc-pr-btn-5::after {
    background: var(--ftc-gd-2);
    content: "";
    height: 22px;
    width: 22px;
    border-radius: 50%;
    position: absolute;
    right: 31px;
    top: 33%;
    z-index: -1;
    transition: 400ms ease;
    transform: scale(1);
}

.ftc-pr-btn-5::before {
    background-color: #010419;
    content: "";
    height: 95%;
    width: 98.5%;
    border-radius: 100px;
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: -1;
    transition: 400ms ease;
    transform: translate(-50%, -50%);
}

.ftc-pr-btn-5 i {
    display: inline-block;
    margin-left: 7px;
    font-size: 13px;
    color: #000;
    transform: rotate(45deg) translateY(-2px);
    transition: 400ms ease;
}

.ftc-pr-btn-5:hover {
    color: #fff;
}

.ftc-pr-btn-5:hover i {
    transform: rotate(90deg) translateY(-2px);
    color: #fff;
}

.ftc-pr-btn-5:hover::after {
    transform: scale(22);
}

.ftc-search-btn-1 {
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    background: #000;
    border-radius: 50%;
    color: #fff;
    font-size: 18px;
    transition: 400ms var(--cube-1);
}

.ftc-search-btn-1:hover {
    background: var(--ftc-pr-1);
}

.ftc-phone-btn-1 {
    font-size: 18px;
    color: #fff;
    display: inline-block;
    line-height: 1;
    transition: 0.4s var(--cube-1);
}

.ftc-phone-btn-1 i {
    margin-right: 5px;
}

.ftc-phone-btn-1:hover {
    color: var(--ftc-pr-1);
}

.ftc-scroll-down-1 {
    width: 160px;
    height: 160px;
    display: inline-block;
    position: relative;
    z-index: 1;
    padding: 30px;
}

.ftc-scroll-down-1-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    animation: ftc-roteted 10s infinite linear;
}

.ftc-scroll-down-1-icon {
    background: var(--ftc-sd-1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 30px;
    width: 100%;
    height: 100%;
}

.ftc-scroll-down-1:hover .ftc-scroll-down-1-icon {
    animation: wobble-vertical 1s ease-in-out;
}

.ftc-circle-btn-1 {
    display: inline-block;
    position: relative;
    z-index: 1;
}

.ftc-circle-btn-1-icon-posi {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.ftc-circle-btn-1-icon {
    width: 65px;
    height: 65px;
    background: var(--ftc-gd-2);
    border-radius: 50%;
    font-size: 35px;
    line-height: 1;
    color: #fff;
}

.ftc-circle-btn-1-text {
    animation: ftc-roteted 10s infinite linear;
}

.ftc-circle-btn-1:hover .ftc-circle-btn-1-icon {
    animation: wobble-vertical 1s ease-in-out;
    opacity: 0.8;
}

.pb-25 {
    padding-bottom: 25px;
}
.pt-25 {
    padding-top: 25px;
}

.ftc-font-500 {
    font-weight: 500;
}
.ftc-pr-font {
    font-family: var(--ftc-pr-font);
}
.text-capitalize {
    text-transform: capitalize !important;
}

.ftc-footer-1-menu .menu-link:hover {
    color: var(--ftc-pr-1);
    transform: translateX(3px);
}
.ftc-footer-1-menu .menu-link {
    font-size: 18px;
    color: #dcdcdc;
    display: inline-block;
    transition: 400ms var(--cube-1);
    position: relative;
    z-index: 1;
}

/* Footer Main Container */
.ftc-footer-1-area {
    background: #161616;
}

/* Footer Top Section */
.ftc-footer-1-top {
    padding: 35px 0;
    gap: 35px;
}

.ftc-footer-1-top .title {
    font-size: 27px;
    margin-left: auto;
}

/* Footer Animated Line */
.ftc-footer-1-line {
    width: 100%;
    transform: scaleX(0);
    height: 2px;
    background: #313030;
    transition: 2s var(--cube-2);
}

.ftc-footer-1-line.has-origin-left {
    transform-origin: left;
}

.ftc-footer-1-line.has-origin-right {
    transform-origin: right;
}

.ftc-footer-1-line.active {
    transform: scaleX(1);
}

/* Footer Widget Grid Layout */
.ftc-footer-1-widget-wrap {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
    gap: 50px 100px;
}

/* Footer Widget Titles */
.ftc-footer-1-widget-title {
    font-size: 25px;
    line-height: 1.4;
    margin-bottom: 15px;
}

/* Footer Menu Styles */
.ftc-footer-1-menu li:not(:last-child) {
    margin-bottom: 5px;
}

.ftc-footer-1-menu .menu-link {
    font-size: 18px;
    color: #dcdcdc;
    display: inline-block;
    transition: 400ms var(--cube-1);
    position: relative;
    z-index: 1;
    text-decoration: none;
}

.ftc-footer-1-menu .menu-link::after {
    content: "";
    width: 0%;
    height: 100%;
    background-color: var(--ftc-pr-1);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 10%;
    transition: 400ms var(--cube-1);
}

.ftc-footer-1-menu .menu-link:hover {
    color: var(--ftc-pr-1);
    transform: translateX(3px);
}

.ftc-footer-1-menu .menu-link:hover::after {
    width: 100%;
}

/* Footer Bottom Section */
.ftc-footer-1-bottom {
    gap: 20px;
}

/* Footer Copyright */
.ftc-footer-1-copyright {
    font-weight: 500;
}

.ftc-footer-1-copyright a {
    display: inline-block;
    transition: 400ms var(--cube-1);
    text-decoration: none;
    color: inherit;
}

.ftc-footer-1-copyright a:hover {
    color: var(--ftc-pr-1);
}

/* Social Links Component */
.ftc-social-link-1 {
    gap: 8px;
    display: flex;
    align-items: center;
}

.ftc-social-link-1 .this-link {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fff;
    flex: 0 0 auto;
    font-size: 18px;
    color: #000;
    transition: 400ms var(--cube-1);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.ftc-social-link-1 .this-link:hover {
    background-color: var(--ftc-pr-1);
    transform: scale(0.95);
}

/* Newsletter Component */
.ftc-newslatter-1 {
    position: relative;
    z-index: 1;
}

.ftc-newslatter-1 input {
    width: 100%;
    height: 64px;
    border-radius: 30px;
    border: none;
    outline: none;
    padding-left: 20px;
    padding-right: 80px;
    font-size: 16px;
    color: #959595;
    font-family: var(--ftc-pr-font);
    background: #fff;
}

.ftc-newslatter-1 .this-btn {
    position: absolute;
    right: 0;
    top: 0;
    width: 65px;
    height: 100%;
    background: var(--ftc-pr-1);
    border-radius: 0 30px 30px 0;
    font-size: 20px;
    color: #000;
    transition: 400ms var(--cube-1);
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ftc-newslatter-1 .this-btn:hover {
    width: 70px;
}

/* Responsive Design */

/* Extra Large screens (1200px and down) */
@media screen and (max-width: 1200px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
    }
}

/* Large screens (992px and down) */
@media screen and (max-width: 992px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
        grid-template-columns: 2fr 1fr 1fr 1fr;
    }
}

/* Medium screens (768px and down) */
@media screen and (max-width: 768px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
        grid-template-columns: 2fr 1fr 1fr;
    }
}

/* Small screens (576px and down) */
@media screen and (max-width: 576px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
        grid-template-columns: 2fr 1fr;
    }

    .ftc-footer-1-top .title {
        margin-left: unset;
    }
}

/* Extra small screens (480px and down) */
@media screen and (max-width: 480px) {
    .ftc-footer-1-widget-wrap {
        gap: 50px 30px;
        grid-template-columns: 1fr;
    }
}

/* Utility classes for flexbox layouts */
.d-flex {
    display: flex;
}

.align-items-center {
    align-items: center;
}

.justify-content-between {
    justify-content: space-between;
}

.justify-content-center {
    justify-content: center;
}

.ftc-footer-1-menu .menu-link:hover {
    color: var(--ftc-pr-1);
    transform: translateX(3px);
}
.ftc-footer-1-menu .menu-link {
    font-size: 18px;
    color: #dcdcdc;
    display: inline-block;
    transition: 400ms var(--cube-1);
    position: relative;
    z-index: 1;
}

.ftc-footer-1-menu .menu-link:hover::after {
    width: 100%;
}
.ftc-footer-1-menu .menu-link::after {
    content: "";
    width: 0%;
    height: 100%;
    background-color: var(--ftc-pr-1);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 10%;
    transition: 400ms var(--cube-1);
}

.ftc-footer-1-menu .menu-link:hover {
    color: var(--ftc-pr-1);
    transform: translateX(3px);
}
.ftc-footer-1-menu .menu-link {
    font-size: 18px;
    color: #dcdcdc;
    display: inline-block;
    transition: 400ms var(--cube-1);
    position: relative;
    z-index: 1;
}
.ftc-footer-1-menu .menu-link:hover::after {
    width: 100%;
}
.ftc-footer-1-menu .menu-link::after {
    content: "";
    width: 0%;
    height: 100%;
    background-color: var(--ftc-pr-1);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 10%;
    transition: 400ms var(--cube-1);
}

.ftc-footer-1-menu .menu-link:hover {
    color: var(--ftc-pr-1);
    transform: translateX(3px);
}
.ftc-footer-1-menu .menu-link {
    font-size: 18px;
    color: #dcdcdc;
    display: inline-block;
    transition: 400ms var(--cube-1);
    position: relative;
    z-index: 1;
}

a:hover {
    color: var(--bs-link-hover-color);
}
.ftc-font-500 {
    font-weight: 500;
}
.ftc-pr-font {
    font-family: var(--ftc-pr-font);
}
.ftc-heading-1:is(.has-color-white) {
    color: #fff;
}
.ftc-footer-1-widget-title {
    font-size: 25px;
    line-height: 1.4;
    margin-bottom: 15px;
}
.ftc-heading-1 {
    font-family: var(--ftc-pr-font);
    line-height: 1.2;
    color: var(--ftc-heading-1);
    text-transform: capitalize;
    margin-bottom: 0px;
}

.ftc-font-700 {
    font-weight: 700;
}

.ftc-footer-1-menu .menu-link {
    font-size: 18px;
    color: #dcdcdc;
    display: inline-block;
    transition: 400ms var(--cube-1);
    position: relative;
    z-index: 1;
}
.ftc-font-500 {
    font-weight: 500;
}
.ftc-pr-font {
    font-family: var(--ftc-pr-font);
}
.text-capitalize {
    text-transform: capitalize !important;
}
.ftc-footer-1-widget-title {
    font-size: 25px;
    line-height: 1.4;
    margin-bottom: 15px;
}
.ftc-heading-1 {
    font-family: var(--ftc-pr-font);
    line-height: 1.2;
    color: var(--ftc-heading-1);
    text-transform: capitalize;
    margin-bottom: 0px;
}
.ftc-font-700 {
    font-weight: 700;
}

/* Reset Styles */
ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

/* Form Element Styles */
input::placeholder,
textarea::placeholder {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    font-family: inherit;
}

input:focus::placeholder,
textarea:focus::placeholder {
    opacity: 0;
}

/* Scrollbar Styles for Desktop and Larger Screens */
@media screen and (min-width: 768px) {
    ::-webkit-scrollbar {
        width: 5px;
        background-color: transparent;
        box-shadow: none;
        border: none;
    }

    ::-webkit-scrollbar-track {
        background: transparent;
        box-shadow: none;
        border: none;
    }

    ::-webkit-scrollbar-thumb {
        background: var(--ftc-pr-1);
        border-radius: 30px;
    }

    /* Custom scrollbar for home-3 */
    .ftc-home-3::-webkit-scrollbar {
        width: 5px;
        background-color: transparent;
        box-shadow: none;
        border: none;
    }

    .ftc-home-3::-webkit-scrollbar-track {
        background: transparent;
        box-shadow: none;
        border: none;
    }

    .ftc-home-3::-webkit-scrollbar-thumb {
        background: var(--ftc-pr-2);
        border-radius: 30px;
    }

    /* Custom scrollbar for home-4 */
    .ftc-home-4::-webkit-scrollbar {
        width: 5px;
        background-color: transparent;
        box-shadow: none;
        border: none;
    }

    .ftc-home-4::-webkit-scrollbar-track {
        background: transparent;
        box-shadow: none;
        border: none;
    }

    .ftc-home-4::-webkit-scrollbar-thumb {
        background: var(--ftc-pr-2);
        border-radius: 30px;
    }
}
.ftc-container-1 {
    max-width: 1380px;
}
/* Container Styles */
@media (min-width: 1300px) {
    .container.ftc-container-1 {
        max-width: 1380px;
    }

    .container.ftc-container-2 {
        max-width: 1280px;
    }

    .container.ftc-container-3 {
        max-width: 1414px;
    }

    .container.ftc-container-4 {
        max-width: 1315px;
    }

    .container.feh-container-2 {
        max-width: 1610px;
    }
}

/* Utility Classes */
.fix {
    overflow: hidden;
}

.img-cover img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

.bg-default {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.flaticon {
    display: inline-block;
    line-height: 0.65;
}

.z-index-3 {
    position: relative;
    z-index: 3;
}

/* Split Text Animation */
.ftc-split-text {
    text-transform: unset !important;
    letter-spacing: -0.1px;
    overflow: hidden;
    perspective: 2000px;
    transform-style: preserve-3d;
}

.ftc-split-text .split-line div div:nth-child(1) {
    text-transform: capitalize;
}

/* Font Utilities */
.ftc-pr-font {
    font-family: var(--ftc-pr-font);
}

.ftc-para-font {
    font-family: var(--ftc-pr-font);
}

.ftc-font-400 {
    font-weight: 400;
}

.ftc-font-500 {
    font-weight: 500;
}

.ftc-font-600 {
    font-weight: 600;
}

.ftc-font-700 {
    font-weight: 700;
}

.ftc-font-800 {
    font-weight: 800;
}

.ftc-font-900 {
    font-weight: 900;
}

/* Color Utilities */
.ftc-color-white {
    color: #fff;
}

/* Margin Top Utilities (mt-5 to mt-200) */
.mt-5 {
    margin-top: 5px;
}
.mt-10 {
    margin-top: 10px;
}
.mt-15 {
    margin-top: 15px;
}
.mt-20 {
    margin-top: 20px;
}
.mt-25 {
    margin-top: 25px;
}
.mt-30 {
    margin-top: 30px;
}
.mt-35 {
    margin-top: 35px;
}
.mt-40 {
    margin-top: 40px;
}
.mt-45 {
    margin-top: 45px;
}
.mt-50 {
    margin-top: 50px;
}
.mt-55 {
    margin-top: 55px;
}
.mt-60 {
    margin-top: 60px;
}
.mt-65 {
    margin-top: 65px;
}
.mt-70 {
    margin-top: 70px;
}
.mt-75 {
    margin-top: 75px;
}
.mt-80 {
    margin-top: 80px;
}
.mt-85 {
    margin-top: 85px;
}
.mt-90 {
    margin-top: 90px;
}
.mt-95 {
    margin-top: 95px;
}
.mt-100 {
    margin-top: 100px;
}
.mt-105 {
    margin-top: 105px;
}
.mt-110 {
    margin-top: 110px;
}
.mt-115 {
    margin-top: 115px;
}
.mt-120 {
    margin-top: 120px;
}
.mt-125 {
    margin-top: 125px;
}
.mt-130 {
    margin-top: 130px;
}
.mt-135 {
    margin-top: 135px;
}
.mt-140 {
    margin-top: 140px;
}
.mt-145 {
    margin-top: 145px;
}
.mt-150 {
    margin-top: 150px;
}
.mt-155 {
    margin-top: 155px;
}
.mt-160 {
    margin-top: 160px;
}
.mt-165 {
    margin-top: 165px;
}
.mt-170 {
    margin-top: 170px;
}
.mt-175 {
    margin-top: 175px;
}
.mt-180 {
    margin-top: 180px;
}
.mt-185 {
    margin-top: 185px;
}
.mt-190 {
    margin-top: 190px;
}
.mt-195 {
    margin-top: 195px;
}
.mt-200 {
    margin-top: 200px;
}

/* Margin Bottom Utilities (mb-5 to mb-200) */
.mb-5 {
    margin-bottom: 5px;
}
.mb-10 {
    margin-bottom: 10px;
}
.mb-15 {
    margin-bottom: 15px;
}
.mb-20 {
    margin-bottom: 20px;
}
.mb-25 {
    margin-bottom: 25px;
}
.mb-30 {
    margin-bottom: 30px;
}
.mb-35 {
    margin-bottom: 35px;
}
.mb-40 {
    margin-bottom: 40px;
}
.mb-45 {
    margin-bottom: 45px;
}
.mb-50 {
    margin-bottom: 50px;
}
.mb-55 {
    margin-bottom: 55px;
}
.mb-60 {
    margin-bottom: 60px;
}
.mb-65 {
    margin-bottom: 65px;
}
.mb-70 {
    margin-bottom: 70px;
}
.mb-75 {
    margin-bottom: 75px;
}
.mb-80 {
    margin-bottom: 80px;
}
.mb-85 {
    margin-bottom: 85px;
}
.mb-90 {
    margin-bottom: 90px;
}
.mb-95 {
    margin-bottom: 95px;
}
.mb-100 {
    margin-bottom: 100px;
}
.mb-105 {
    margin-bottom: 105px;
}
.mb-110 {
    margin-bottom: 110px;
}
.mb-115 {
    margin-bottom: 115px;
}
.mb-120 {
    margin-bottom: 120px;
}
.mb-125 {
    margin-bottom: 125px;
}
.mb-130 {
    margin-bottom: 130px;
}
.mb-135 {
    margin-bottom: 135px;
}
.mb-140 {
    margin-bottom: 140px;
}
.mb-145 {
    margin-bottom: 145px;
}
.mb-150 {
    margin-bottom: 150px;
}
.mb-155 {
    margin-bottom: 155px;
}
.mb-160 {
    margin-bottom: 160px;
}
.mb-165 {
    margin-bottom: 165px;
}
.mb-170 {
    margin-bottom: 170px;
}
.mb-175 {
    margin-bottom: 175px;
}
.mb-180 {
    margin-bottom: 180px;
}
.mb-185 {
    margin-bottom: 185px;
}
.mb-190 {
    margin-bottom: 190px;
}
.mb-195 {
    margin-bottom: 195px;
}
.mb-200 {
    margin-bottom: 200px;
}

/* Margin Left Utilities (ml-5 to ml-200) */
.ml-5 {
    margin-left: 5px;
}
.ml-10 {
    margin-left: 10px;
}
.ml-15 {
    margin-left: 15px;
}
.ml-20 {
    margin-left: 20px;
}
.ml-25 {
    margin-left: 25px;
}
.ml-30 {
    margin-left: 30px;
}
.ml-35 {
    margin-left: 35px;
}
.ml-40 {
    margin-left: 40px;
}
.ml-45 {
    margin-left: 45px;
}
.ml-50 {
    margin-left: 50px;
}
.ml-55 {
    margin-left: 55px;
}
.ml-60 {
    margin-left: 60px;
}
.ml-65 {
    margin-left: 65px;
}
.ml-70 {
    margin-left: 70px;
}
.ml-75 {
    margin-left: 75px;
}
.ml-80 {
    margin-left: 80px;
}
.ml-85 {
    margin-left: 85px;
}
.ml-90 {
    margin-left: 90px;
}
.ml-95 {
    margin-left: 95px;
}
.ml-100 {
    margin-left: 100px;
}
.ml-105 {
    margin-left: 105px;
}
.ml-110 {
    margin-left: 110px;
}
.ml-115 {
    margin-left: 115px;
}
.ml-120 {
    margin-left: 120px;
}
.ml-125 {
    margin-left: 125px;
}
.ml-130 {
    margin-left: 130px;
}
.ml-135 {
    margin-left: 135px;
}
.ml-140 {
    margin-left: 140px;
}
.ml-145 {
    margin-left: 145px;
}
.ml-150 {
    margin-left: 150px;
}
.ml-155 {
    margin-left: 155px;
}
.ml-160 {
    margin-left: 160px;
}
.ml-165 {
    margin-left: 165px;
}
.ml-170 {
    margin-left: 170px;
}
.ml-175 {
    margin-left: 175px;
}
.ml-180 {
    margin-left: 180px;
}
.ml-185 {
    margin-left: 185px;
}
.ml-190 {
    margin-left: 190px;
}
.ml-195 {
    margin-left: 195px;
}
.ml-200 {
    margin-left: 200px;
}

/* Margin Right Utilities (mr-5 to mr-200) */
.mr-5 {
    margin-right: 5px;
}
.mr-10 {
    margin-right: 10px;
}
.mr-15 {
    margin-right: 15px;
}
.mr-20 {
    margin-right: 20px;
}
.mr-25 {
    margin-right: 25px;
}
.mr-30 {
    margin-right: 30px;
}
.mr-35 {
    margin-right: 35px;
}
.mr-40 {
    margin-right: 40px;
}
.mr-45 {
    margin-right: 45px;
}
.mr-50 {
    margin-right: 50px;
}
.mr-55 {
    margin-right: 55px;
}
.mr-60 {
    margin-right: 60px;
}
.mr-65 {
    margin-right: 65px;
}
.mr-70 {
    margin-right: 70px;
}
.mr-75 {
    margin-right: 75px;
}
.mr-80 {
    margin-right: 80px;
}
.mr-85 {
    margin-right: 85px;
}
.mr-90 {
    margin-right: 90px;
}
.mr-95 {
    margin-right: 95px;
}
.mr-100 {
    margin-right: 100px;
}
.mr-105 {
    margin-right: 105px;
}
.mr-110 {
    margin-right: 110px;
}
.mr-115 {
    margin-right: 115px;
}
.mr-120 {
    margin-right: 120px;
}
.mr-125 {
    margin-right: 125px;
}
.mr-130 {
    margin-right: 130px;
}
.mr-135 {
    margin-right: 135px;
}
.mr-140 {
    margin-right: 140px;
}
.mr-145 {
    margin-right: 145px;
}
.mr-150 {
    margin-right: 150px;
}
.mr-155 {
    margin-right: 155px;
}
.mr-160 {
    margin-right: 160px;
}
.mr-165 {
    margin-right: 165px;
}
.mr-170 {
    margin-right: 170px;
}
.mr-175 {
    margin-right: 175px;
}
.mr-180 {
    margin-right: 180px;
}
.mr-185 {
    margin-right: 185px;
}
.mr-190 {
    margin-right: 190px;
}
.mr-195 {
    margin-right: 195px;
}
.mr-200 {
    margin-right: 200px;
}

/* Padding Top Utilities (pt-5 to pt-200) */
.pt-5 {
    padding-top: 5px;
}
.pt-10 {
    padding-top: 10px;
}
.pt-15 {
    padding-top: 15px;
}
.pt-20 {
    padding-top: 20px;
}
.pt-25 {
    padding-top: 25px;
}
.pt-30 {
    padding-top: 30px;
}
.pt-35 {
    padding-top: 35px;
}
.pt-40 {
    padding-top: 40px;
}
.pt-45 {
    padding-top: 45px;
}
.pt-50 {
    padding-top: 50px;
}
.pt-55 {
    padding-top: 55px;
}
.pt-60 {
    padding-top: 60px;
}
.pt-65 {
    padding-top: 65px;
}
.pt-70 {
    padding-top: 70px;
}
.pt-75 {
    padding-top: 75px;
}
.pt-80 {
    padding-top: 80px;
}
.pt-85 {
    padding-top: 85px;
}
.pt-90 {
    padding-top: 90px;
}
.pt-95 {
    padding-top: 95px;
}
.pt-100 {
    padding-top: 100px;
}
.pt-105 {
    padding-top: 105px;
}
.pt-110 {
    padding-top: 110px;
}
.pt-115 {
    padding-top: 115px;
}
.pt-120 {
    padding-top: 120px;
}
.pt-125 {
    padding-top: 125px;
}
.pt-130 {
    padding-top: 130px;
}
.pt-135 {
    padding-top: 135px;
}
.pt-140 {
    padding-top: 140px;
}
.pt-145 {
    padding-top: 145px;
}
.pt-150 {
    padding-top: 150px;
}
.pt-155 {
    padding-top: 155px;
}
.pt-160 {
    padding-top: 160px;
}
.pt-165 {
    padding-top: 165px;
}
.pt-170 {
    padding-top: 170px;
}
.pt-175 {
    padding-top: 175px;
}
.pt-180 {
    padding-top: 180px;
}
.pt-185 {
    padding-top: 185px;
}
.pt-190 {
    padding-top: 190px;
}
.pt-195 {
    padding-top: 195px;
}
.pt-200 {
    padding-top: 200px;
}

/* Padding Bottom Utilities (pb-5 to pb-300) */
.pb-5 {
    padding-bottom: 5px;
}
.pb-10 {
    padding-bottom: 10px;
}
.pb-15 {
    padding-bottom: 15px;
}
.pb-20 {
    padding-bottom: 20px;
}
.pb-25 {
    padding-bottom: 25px;
}
.pb-30 {
    padding-bottom: 30px;
}
.pb-35 {
    padding-bottom: 35px;
}
.pb-40 {
    padding-bottom: 40px;
}
.pb-45 {
    padding-bottom: 45px;
}
.pb-50 {
    padding-bottom: 50px;
}
.pb-55 {
    padding-bottom: 55px;
}
.pb-60 {
    padding-bottom: 60px;
}
.pb-65 {
    padding-bottom: 65px;
}
.pb-70 {
    padding-bottom: 70px;
}
.pb-75 {
    padding-bottom: 75px;
}
.pb-80 {
    padding-bottom: 80px;
}
.pb-85 {
    padding-bottom: 85px;
}
.pb-90 {
    padding-bottom: 90px;
}
.pb-95 {
    padding-bottom: 95px;
}
.pb-100 {
    padding-bottom: 100px;
}
.pb-105 {
    padding-bottom: 105px;
}
.pb-110 {
    padding-bottom: 110px;
}
.pb-115 {
    padding-bottom: 115px;
}
.pb-120 {
    padding-bottom: 120px;
}
.pb-125 {
    padding-bottom: 125px;
}
.pb-130 {
    padding-bottom: 130px;
}
.pb-135 {
    padding-bottom: 135px;
}
.pb-140 {
    padding-bottom: 140px;
}
.pb-145 {
    padding-bottom: 145px;
}
.pb-150 {
    padding-bottom: 150px;
}
.pb-155 {
    padding-bottom: 155px;
}
.pb-160 {
    padding-bottom: 160px;
}
.pb-165 {
    padding-bottom: 165px;
}
.pb-170 {
    padding-bottom: 170px;
}
.pb-175 {
    padding-bottom: 175px;
}
.pb-180 {
    padding-bottom: 180px;
}
.pb-185 {
    padding-bottom: 185px;
}
.pb-190 {
    padding-bottom: 190px;
}
.pb-195 {
    padding-bottom: 195px;
}
.pb-200 {
    padding-bottom: 200px;
}
.pb-205 {
    padding-bottom: 205px;
}
.pb-210 {
    padding-bottom: 210px;
}
.pb-215 {
    padding-bottom: 215px;
}
.pb-220 {
    padding-bottom: 220px;
}
.pb-225 {
    padding-bottom: 225px;
}
.pb-230 {
    padding-bottom: 230px;
}
.pb-235 {
    padding-bottom: 235px;
}
.pb-240 {
    padding-bottom: 240px;
}
.pb-245 {
    padding-bottom: 245px;
}
.pb-250 {
    padding-bottom: 250px;
}
.pb-255 {
    padding-bottom: 255px;
}
.pb-260 {
    padding-bottom: 260px;
}
.pb-265 {
    padding-bottom: 265px;
}
.pb-270 {
    padding-bottom: 270px;
}
.pb-275 {
    padding-bottom: 275px;
}
.pb-280 {
    padding-bottom: 280px;
}
.pb-285 {
    padding-bottom: 285px;
}
.pb-290 {
    padding-bottom: 290px;
}
.pb-295 {
    padding-bottom: 295px;
}
.pb-300 {
    padding-bottom: 300px;
}

/* Padding Left Utilities (pl-5 to pl-200) */
.pl-5 {
    padding-left: 5px;
}
.pl-10 {
    padding-left: 10px;
}
.pl-15 {
    padding-left: 15px;
}
.pl-20 {
    padding-left: 20px;
}
.pl-25 {
    padding-left: 25px;
}
.pl-30 {
    padding-left: 30px;
}
.pl-35 {
    padding-left: 35px;
}
.pl-40 {
    padding-left: 40px;
}
.pl-45 {
    padding-left: 45px;
}
.pl-50 {
    padding-left: 50px;
}
.pl-55 {
    padding-left: 55px;
}
.pl-60 {
    padding-left: 60px;
}
.pl-65 {
    padding-left: 65px;
}
.pl-70 {
    padding-left: 70px;
}
.pl-75 {
    padding-left: 75px;
}
.pl-80 {
    padding-left: 80px;
}
.pl-85 {
    padding-left: 85px;
}
.pl-90 {
    padding-left: 90px;
}
.pl-95 {
    padding-left: 95px;
}
.pl-100 {
    padding-left: 100px;
}
.pl-105 {
    padding-left: 105px;
}
.pl-110 {
    padding-left: 110px;
}
.pl-115 {
    padding-left: 115px;
}
.pl-120 {
    padding-left: 120px;
}
.pl-125 {
    padding-left: 125px;
}
.pl-130 {
    padding-left: 130px;
}
.pl-135 {
    padding-left: 135px;
}
.pl-140 {
    padding-left: 140px;
}
.pl-145 {
    padding-left: 145px;
}
.pl-150 {
    padding-left: 150px;
}
.pl-155 {
    padding-left: 155px;
}
.pl-160 {
    padding-left: 160px;
}
.pl-165 {
    padding-left: 165px;
}
.pl-170 {
    padding-left: 170px;
}
.pl-175 {
    padding-left: 175px;
}
.pl-180 {
    padding-left: 180px;
}
.pl-185 {
    padding-left: 185px;
}
.pl-190 {
    padding-left: 190px;
}
.pl-195 {
    padding-left: 195px;
}
.pl-200 {
    padding-left: 200px;
}

/* Padding Right Utilities (pr-5 to pr-200) */
.pr-5 {
    padding-right: 5px;
}
.pr-10 {
    padding-right: 10px;
}
.pr-15 {
    padding-right: 15px;
}
.pr-20 {
    padding-right: 20px;
}
.pr-25 {
    padding-right: 25px;
}
.pr-30 {
    padding-right: 30px;
}
.pr-35 {
    padding-right: 35px;
}
.pr-40 {
    padding-right: 40px;
}
.pr-45 {
    padding-right: 45px;
}
.pr-50 {
    padding-right: 50px;
}
.pr-55 {
    padding-right: 55px;
}
.pr-60 {
    padding-right: 60px;
}
.pr-65 {
    padding-right: 65px;
}
.pr-70 {
    padding-right: 70px;
}
.pr-75 {
    padding-right: 75px;
}
.pr-80 {
    padding-right: 80px;
}
.pr-85 {
    padding-right: 85px;
}
.pr-90 {
    padding-right: 90px;
}
.pr-95 {
    padding-right: 95px;
}
.pr-100 {
    padding-right: 100px;
}
.pr-105 {
    padding-right: 105px;
}
.pr-110 {
    padding-right: 110px;
}
.pr-115 {
    padding-right: 115px;
}
.pr-120 {
    padding-right: 120px;
}
.pr-125 {
    padding-right: 125px;
}
.pr-130 {
    padding-right: 130px;
}
.pr-135 {
    padding-right: 135px;
}
.pr-140 {
    padding-right: 140px;
}
.pr-145 {
    padding-right: 145px;
}
.pr-150 {
    padding-right: 150px;
}
.pr-155 {
    padding-right: 155px;
}
.pr-160 {
    padding-right: 160px;
}
.pr-165 {
    padding-right: 165px;
}
.pr-170 {
    padding-right: 170px;
}
.pr-175 {
    padding-right: 175px;
}
.pr-180 {
    padding-right: 180px;
}
.pr-185 {
    padding-right: 185px;
}
.pr-190 {
    padding-right: 190px;
}
.pr-195 {
    padding-right: 195px;
}
.pr-200 {
    padding-right: 200px;
}
/*
   price-1-start
*/
.ftc-price-1-area {
    padding-top: 175px;
    padding-bottom: 600px;
    background-color: #e9e9e7;
    min-height: fit-content;
}
.ftc-price-1-row {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 50px 30px;
    align-items: end;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .ftc-price-1-row {
        grid-template-columns: 1.1fr 1fr;
    }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .ftc-price-1-row {
        grid-template-columns: 1fr;
    }
}
.ftc-price-1-content .inner-div {
    display: grid;
    grid-template-columns: 1fr 1.4fr;
    gap: 60px;
    align-items: start;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .ftc-price-1-content .inner-div {
        gap: 30px;
    }
}
@media (max-width: 767px) {
    .ftc-price-1-content .inner-div {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
    .ftc-price-1-content .inner-div {
        grid-template-columns: 1fr 1.4fr;
        gap: 30px;
    }
}
.ftc-price-1-content-disc {
    margin-bottom: 44px;
}
.ftc-price-1-counter {
    max-width: 200px;
}
.ftc-price-1-counter .number {
    font-size: 90px;
    color: #191917;
    letter-spacing: -4px;
    line-height: 1;
    font-family: var(--ftc-unbounded);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .ftc-price-1-counter .number {
        font-size: 70px;
    }
}
@media (max-width: 767px) {
    .ftc-price-1-counter .number {
        font-size: 50px;
    }
}
.ftc-price-1-counter .disc {
    font-size: 20px;
    line-height: normal;
    font-weight: 500;
    color: #000;
}

.ftc-price-1-tabs-btn .nav-item:not(:last-child) {
    margin-bottom: 14px;
}
.ftc-price-1-tabs-btn .nav-item .nav-link {
    font-size: 33px;
    color: #c3c3c3;
    background-color: transparent;
    position: relative;
    z-index: 1;
    transition: 600ms var(--cube-2);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px),
(max-width: 767px) {
    .ftc-price-1-tabs-btn .nav-item .nav-link {
        font-size: 26px;
    }
}
.ftc-price-1-tabs-btn .nav-item .nav-link::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    left: 0;
    background: #ff6a00;
    height: 25px;
    width: 4px;
    border-radius: 30px;
    transition: 600ms var(--cube-2);
    opacity: 0;
}
.ftc-price-1-tabs-btn .nav-item .nav-link:hover {
    color: #ff6a00;
}
.ftc-price-1-tabs-btn .nav-item .nav-link:is(.active) {
    padding-left: 20px;
    color: #ff6a00;
}
.ftc-price-1-tabs-btn .nav-item .nav-link:is(.active)::after {
    transform: translateY(-50%) rotate(0deg);
    opacity: 1;
}
.ftc-price-1-right {
    position: relative;
    z-index: 1;
    padding-left: 120px;
}
@media (max-width: 767px) {
    .ftc-price-1-right {
        padding-left: 0px;
    }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
    .ftc-price-1-right {
        padding-left: 120px;
    }
}
.ftc-price-1-img {
    height: 675px;
    border-radius: 180px;
}
.ftc-price-1-tabs-content {
    position: absolute;
    top: 70px;
    left: 0;
}
.ftc-price-1-tabs-content-item {
    background: #fff;
    max-width: 410px;
    padding: 70px 70px;
    border-radius: 95px 230px 95px 95px;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
only screen and (min-width: 992px) and (max-width: 1199px),
only screen and (min-width: 768px) and (max-width: 991px) {
    .ftc-price-1-tabs-content-item {
        padding: 70px 50px;
    }
}
@media (max-width: 767px) {
    .ftc-price-1-tabs-content-item {
        padding: 70px 25px;
    }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
    .ftc-price-1-tabs-content-item {
        padding: 70px 70px;
    }
}
.ftc-price-1-tabs-content-item .item-title {
    font-size: 40px;
    color: #000;
    margin-bottom: 5px;
}
.ftc-price-1-tabs-content-item .item-disc {
    font-size: 15px;
    color: #000;
    margin-bottom: 31px;
    font-weight: 500;
}
.ftc-price-1-tabs-content-item .item-price {
    font-size: 45px;
    line-height: 1;
    letter-spacing: -2px;
}
.ftc-price-1-tabs-content-item .item-price span {
    font-size: 15px;
    display: inline-block;
    letter-spacing: 0px;
}
.ftc-price-1-tabs-content-item .line {
    width: 100%;
    height: 2px;
    background-color: #ececec;
    margin-top: 25px;
    margin-bottom: 25px;
}
.ftc-price-1-tabs-content-item .list-title {
    font-size: 20px;
    color: #000;
    letter-spacing: -0.2px;
    margin-bottom: 10px;
}
.ftc-price-1-tabs-content-item .item-list li {
    font-weight: 700;
    color: #000;
    position: relative;
    z-index: 1;
    padding-left: 18px;
    font-size: 15px;
    margin-bottom: -4px;
}
.ftc-price-1-tabs-content-item .item-list li::after {
    content: "";
    width: 7px;
    height: 7px;
    background: #212f65;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 13px;
}
.ftc-price-1-tabs-content-item .item-list-2 li {
    font-weight: 400;
    color: #404040;
    position: relative;
    z-index: 1;
    padding-left: 18px;
    font-size: 16px;
    letter-spacing: -0.2px;
}
.ftc-price-1-tabs-content-item .item-list-2 li::after {
    content: "";
    width: 7px;
    height: 7px;
    background: #212f65;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 12px;
}
.ftc-price-1-tabs-content-item .ftc-btn-1 {
    padding: 16px 25px;
}
.ftc-price-1-tabs-content-item .il-img {
    position: absolute;
    bottom: -310px;
    left: 0;
    width: 100%;
    z-index: -1;
}
@media (max-width: 767px) {
    .ftc-price-1-tabs-content-item .il-img {
        bottom: -180px;
    }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
    .ftc-price-1-tabs-content-item .il-img {
        bottom: -290px;
    }
}

@charset "UTF-8";

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.animated.hinge {
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
}

@-webkit-keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

@keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    40% {
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    60% {
        -webkit-transform: translateY(-15px);
        -ms-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

.bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
}

@-webkit-keyframes flash {
    0%,
    50%,
    100% {
        opacity: 1;
    }

    25%,
    75% {
        opacity: 0;
    }
}

@keyframes flash {
    0%,
    50%,
    100% {
        opacity: 1;
    }

    25%,
    75% {
        opacity: 0;
    }
}

.flash {
    -webkit-animation-name: flash;
    animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
    }

    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
}

.pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse;
}

@-webkit-keyframes shake {
    0%,
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }
}

@keyframes shake {
    0%,
    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
        transform: translateX(10px);
    }
}

.shake {
    -webkit-animation-name: shake;
    animation-name: shake;
}

@-webkit-keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg);
    }

    40% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }

    60% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg);
    }

    80% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
        transform: rotate(15deg);
    }

    40% {
        -webkit-transform: rotate(-10deg);
        -ms-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }

    60% {
        -webkit-transform: rotate(5deg);
        -ms-transform: rotate(5deg);
        transform: rotate(5deg);
    }

    80% {
        -webkit-transform: rotate(-5deg);
        -ms-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

.swing {
    -webkit-transform-origin: top center;
    -ms-transform-origin: top center;
    transform-origin: top center;
    -webkit-animation-name: swing;
    animation-name: swing;
}

@-webkit-keyframes tada {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    10%,
    20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }

    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }

    40%,
    60%,
    80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }

    100% {
        -webkit-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
    }
}

@keyframes tada {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }

    10%,
    20% {
        -webkit-transform: scale(0.9) rotate(-3deg);
        -ms-transform: scale(0.9) rotate(-3deg);
        transform: scale(0.9) rotate(-3deg);
    }

    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale(1.1) rotate(3deg);
        -ms-transform: scale(1.1) rotate(3deg);
        transform: scale(1.1) rotate(3deg);
    }

    40%,
    60%,
    80% {
        -webkit-transform: scale(1.1) rotate(-3deg);
        -ms-transform: scale(1.1) rotate(-3deg);
        transform: scale(1.1) rotate(-3deg);
    }

    100% {
        -webkit-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0);
    }
}

.tada {
    -webkit-animation-name: tada;
    animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
    }

    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg);
    }

    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg);
    }

    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg);
    }

    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg);
    }

    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg);
    }

    100% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
    }
}

@keyframes wobble {
    0% {
        -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
        transform: translateX(0%);
    }

    15% {
        -webkit-transform: translateX(-25%) rotate(-5deg);
        -ms-transform: translateX(-25%) rotate(-5deg);
        transform: translateX(-25%) rotate(-5deg);
    }

    30% {
        -webkit-transform: translateX(20%) rotate(3deg);
        -ms-transform: translateX(20%) rotate(3deg);
        transform: translateX(20%) rotate(3deg);
    }

    45% {
        -webkit-transform: translateX(-15%) rotate(-3deg);
        -ms-transform: translateX(-15%) rotate(-3deg);
        transform: translateX(-15%) rotate(-3deg);
    }

    60% {
        -webkit-transform: translateX(10%) rotate(2deg);
        -ms-transform: translateX(10%) rotate(2deg);
        transform: translateX(10%) rotate(2deg);
    }

    75% {
        -webkit-transform: translateX(-5%) rotate(-1deg);
        -ms-transform: translateX(-5%) rotate(-1deg);
        transform: translateX(-5%) rotate(-1deg);
    }

    100% {
        -webkit-transform: translateX(0%);
        -ms-transform: translateX(0%);
        transform: translateX(0%);
    }
}

.wobble {
    -webkit-animation-name: wobble;
    animation-name: wobble;
}

@-webkit-keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        transform: scale(0.3);
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }

    70% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes bounceIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -ms-transform: scale(0.3);
        transform: scale(0.3);
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
        transform: scale(1.05);
    }

    70% {
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9);
    }

    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
}

.bounceIn {
    -webkit-animation-name: bounceIn;
    animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }

    80% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes bounceInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
        transform: translateY(30px);
    }

    80% {
        -webkit-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

.bounceInDown {
    -webkit-animation-name: bounceInDown;
    animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        transform: translateX(30px);
    }

    80% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes bounceInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(30px);
        -ms-transform: translateX(30px);
        transform: translateX(30px);
    }

    80% {
        -webkit-transform: translateX(-10px);
        -ms-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.bounceInLeft {
    -webkit-animation-name: bounceInLeft;
    animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        transform: translateX(-30px);
    }

    80% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes bounceInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateX(-30px);
        -ms-transform: translateX(-30px);
        transform: translateX(-30px);
    }

    80% {
        -webkit-transform: translateX(10px);
        -ms-transform: translateX(10px);
        transform: translateX(10px);
    }

    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.bounceInRight {
    -webkit-animation-name: bounceInRight;
    animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    80% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes bounceInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px);
    }

    60% {
        opacity: 1;
        -webkit-transform: translateY(-30px);
        -ms-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    80% {
        -webkit-transform: translateY(10px);
        -ms-transform: translateY(10px);
        transform: translateY(10px);
    }

    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

.bounceInUp {
    -webkit-animation-name: bounceInUp;
    animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    25% {
        -webkit-transform: scale(0.95);
        transform: scale(0.95);
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        transform: scale(0.3);
    }
}

@keyframes bounceOut {
    0% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }

    25% {
        -webkit-transform: scale(0.95);
        -ms-transform: scale(0.95);
        transform: scale(0.95);
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(0.3);
        -ms-transform: scale(0.3);
        transform: scale(0.3);
    }
}

.bounceOut {
    -webkit-animation-name: bounceOut;
    animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@keyframes bounceOutDown {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

.bounceOutDown {
    -webkit-animation-name: bounceOutDown;
    animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        transform: translateX(20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@keyframes bounceOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

.bounceOutLeft {
    -webkit-animation-name: bounceOutLeft;
    animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@keyframes bounceOutRight {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

.bounceOutRight {
    -webkit-animation-name: bounceOutRight;
    animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

@keyframes bounceOutUp {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    20% {
        opacity: 1;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

.bounceOutUp {
    -webkit-animation-name: bounceOutUp;
    animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

.fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

.fadeInDownBig {
    -webkit-animation-name: fadeInDownBig;
    animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.fadeInLeftBig {
    -webkit-animation-name: fadeInLeftBig;
    animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.fadeInRightBig {
    -webkit-animation-name: fadeInRightBig;
    animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

.fadeInUpBig {
    -webkit-animation-name: fadeInUpBig;
    animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
}

@keyframes fadeOutDown {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px);
    }
}

.fadeOutDown {
    -webkit-animation-name: fadeOutDown;
    animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

@keyframes fadeOutDownBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(2000px);
        -ms-transform: translateY(2000px);
        transform: translateY(2000px);
    }
}

.fadeOutDownBig {
    -webkit-animation-name: fadeOutDownBig;
    animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }
}

@keyframes fadeOutLeft {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
        transform: translateX(-20px);
    }
}

.fadeOutLeft {
    -webkit-animation-name: fadeOutLeft;
    animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@keyframes fadeOutLeftBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

.fadeOutLeftBig {
    -webkit-animation-name: fadeOutLeftBig;
    animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px);
    }
}

@keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px);
    }
}

.fadeOutRight {
    -webkit-animation-name: fadeOutRight;
    animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@keyframes fadeOutRightBig {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

.fadeOutRightBig {
    -webkit-animation-name: fadeOutRightBig;
    animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }
}

@keyframes fadeOutUp {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        -ms-transform: translateY(-20px);
        transform: translateY(-20px);
    }
}

.fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

@keyframes fadeOutUpBig {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

.fadeOutUpBig {
    -webkit-animation-name: fadeOutUpBig;
    animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
    0% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg)
        scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg)
        scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    80% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg)
        scale(0.95);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    100% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

@keyframes flip {
    0% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -ms-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    40% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg)
        scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    50% {
        -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg)
        scale(1);
        -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    80% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg)
        scale(0.95);
        -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    100% {
        -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

.animated.flip {
    -webkit-backface-visibility: visible;
    -ms-backface-visibility: visible;
    backface-visibility: visible;
    -webkit-animation-name: flip;
    animation-name: flip;
}

@-webkit-keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }

    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }

    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}

@keyframes flipInX {
    0% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }

    40% {
        -webkit-transform: perspective(400px) rotateX(-10deg);
        -ms-transform: perspective(400px) rotateX(-10deg);
        transform: perspective(400px) rotateX(-10deg);
    }

    70% {
        -webkit-transform: perspective(400px) rotateX(10deg);
        -ms-transform: perspective(400px) rotateX(10deg);
        transform: perspective(400px) rotateX(10deg);
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }
}

.flipInX {
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInX;
    animation-name: flipInX;
}

@-webkit-keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }

    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg);
    }

    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}

@keyframes flipInY {
    0% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }

    40% {
        -webkit-transform: perspective(400px) rotateY(-10deg);
        -ms-transform: perspective(400px) rotateY(-10deg);
        transform: perspective(400px) rotateY(-10deg);
    }

    70% {
        -webkit-transform: perspective(400px) rotateY(10deg);
        -ms-transform: perspective(400px) rotateY(10deg);
        transform: perspective(400px) rotateY(10deg);
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }
}

.flipInY {
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInY;
    animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

@keyframes flipOutX {
    0% {
        -webkit-transform: perspective(400px) rotateX(0deg);
        -ms-transform: perspective(400px) rotateX(0deg);
        transform: perspective(400px) rotateX(0deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: perspective(400px) rotateX(90deg);
        -ms-transform: perspective(400px) rotateX(90deg);
        transform: perspective(400px) rotateX(90deg);
        opacity: 0;
    }
}

.flipOutX {
    -webkit-animation-name: flipOutX;
    animation-name: flipOutX;
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}

@keyframes flipOutY {
    0% {
        -webkit-transform: perspective(400px) rotateY(0deg);
        -ms-transform: perspective(400px) rotateY(0deg);
        transform: perspective(400px) rotateY(0deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: perspective(400px) rotateY(90deg);
        -ms-transform: perspective(400px) rotateY(90deg);
        transform: perspective(400px) rotateY(90deg);
        opacity: 0;
    }
}

.flipOutY {
    -webkit-backface-visibility: visible !important;
    -ms-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipOutY;
    animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }

    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        opacity: 1;
    }

    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }
}

@keyframes lightSpeedIn {
    0% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }

    60% {
        -webkit-transform: translateX(-20%) skewX(30deg);
        -ms-transform: translateX(-20%) skewX(30deg);
        transform: translateX(-20%) skewX(30deg);
        opacity: 1;
    }

    80% {
        -webkit-transform: translateX(0%) skewX(-15deg);
        -ms-transform: translateX(0%) skewX(-15deg);
        transform: translateX(0%) skewX(-15deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }
}

.lightSpeedIn {
    -webkit-animation-name: lightSpeedIn;
    animation-name: lightSpeedIn;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
}

@keyframes lightSpeedOut {
    0% {
        -webkit-transform: translateX(0%) skewX(0deg);
        -ms-transform: translateX(0%) skewX(0deg);
        transform: translateX(0%) skewX(0deg);
        opacity: 1;
    }

    100% {
        -webkit-transform: translateX(100%) skewX(-30deg);
        -ms-transform: translateX(100%) skewX(-30deg);
        transform: translateX(100%) skewX(-30deg);
        opacity: 0;
    }
}

.lightSpeedOut {
    -webkit-animation-name: lightSpeedOut;
    animation-name: lightSpeedOut;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateIn {
    0% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(-200deg);
        -ms-transform: rotate(-200deg);
        transform: rotate(-200deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

.rotateIn {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

.rotateInDownLeft {
    -webkit-animation-name: rotateInDownLeft;
    animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

.rotateInDownRight {
    -webkit-animation-name: rotateInDownRight;
    animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

.rotateInUpLeft {
    -webkit-animation-name: rotateInUpLeft;
    animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

@keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }

    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }
}

.rotateInUpRight {
    -webkit-animation-name: rotateInUpRight;
    animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}

@keyframes rotateOut {
    0% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
        transform-origin: center center;
        -webkit-transform: rotate(200deg);
        -ms-transform: rotate(200deg);
        transform: rotate(200deg);
        opacity: 0;
    }
}

.rotateOut {
    -webkit-animation-name: rotateOut;
    animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

.rotateOutDownLeft {
    -webkit-animation-name: rotateOutDownLeft;
    animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@keyframes rotateOutDownRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

.rotateOutDownRight {
    -webkit-animation-name: rotateOutDownRight;
    animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

@keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: left bottom;
        -ms-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
        opacity: 0;
    }
}

.rotateOutUpLeft {
    -webkit-animation-name: rotateOutUpLeft;
    animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

@keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        opacity: 1;
    }

    100% {
        -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        opacity: 0;
    }
}

.rotateOutUpRight {
    -webkit-animation-name: rotateOutUpRight;
    animation-name: rotateOutUpRight;
}

@-webkit-keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes slideInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }

    100% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

.slideInDown {
    -webkit-animation-name: slideInDown;
    animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes slideInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }

    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes slideInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }

    100% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}

.slideInRight {
    -webkit-animation-name: slideInRight;
    animation-name: slideInRight;
}

@-webkit-keyframes slideOutLeft {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

@keyframes slideOutLeft {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(-2000px);
        -ms-transform: translateX(-2000px);
        transform: translateX(-2000px);
    }
}

.slideOutLeft {
    -webkit-animation-name: slideOutLeft;
    animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

@keyframes slideOutRight {
    0% {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(2000px);
        -ms-transform: translateX(2000px);
        transform: translateX(2000px);
    }
}

.slideOutRight {
    -webkit-animation-name: slideOutRight;
    animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

@keyframes slideOutUp {
    0% {
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(-2000px);
        -ms-transform: translateY(-2000px);
        transform: translateY(-2000px);
    }
}

.slideOutUp {
    -webkit-animation-name: slideOutUp;
    animation-name: slideOutUp;
}

@-webkit-keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }

    20%,
    60% {
        -webkit-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }

    40% {
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }

    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        opacity: 1;
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }

    100% {
        -webkit-transform: translateY(700px);
        transform: translateY(700px);
        opacity: 0;
    }
}

@keyframes hinge {
    0% {
        -webkit-transform: rotate(0);
        -ms-transform: rotate(0);
        transform: rotate(0);
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }

    20%,
    60% {
        -webkit-transform: rotate(80deg);
        -ms-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }

    40% {
        -webkit-transform: rotate(60deg);
        -ms-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }

    80% {
        -webkit-transform: rotate(60deg) translateY(0);
        -ms-transform: rotate(60deg) translateY(0);
        transform: rotate(60deg) translateY(0);
        opacity: 1;
        -webkit-transform-origin: top left;
        -ms-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }

    100% {
        -webkit-transform: translateY(700px);
        -ms-transform: translateY(700px);
        transform: translateY(700px);
        opacity: 0;
    }
}

.hinge {
    -webkit-animation-name: hinge;
    animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
}

@keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%) rotate(-120deg);
        -ms-transform: translateX(-100%) rotate(-120deg);
        transform: translateX(-100%) rotate(-120deg);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }
}

.rollIn {
    -webkit-animation-name: rollIn;
    animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(100%) rotate(120deg);
        transform: translateX(100%) rotate(120deg);
    }
}

@keyframes rollOut {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0px) rotate(0deg);
        -ms-transform: translateX(0px) rotate(0deg);
        transform: translateX(0px) rotate(0deg);
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(100%) rotate(120deg);
        -ms-transform: translateX(100%) rotate(120deg);
        transform: translateX(100%) rotate(120deg);
    }
}

.rollOut {
    -webkit-animation-name: rollOut;
    animation-name: rollOut;
}
@-webkit-keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }

    50% {
        opacity: 1;
    }
}

@keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }

    50% {
        opacity: 1;
    }
}

.zoomIn {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.zoomInDown {
    -webkit-animation-name: zoomInDown;
    animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.zoomInLeft {
    -webkit-animation-name: zoomInLeft;
    animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.zoomInRight {
    -webkit-animation-name: zoomInRight;
    animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.zoomInUp {
    -webkit-animation-name: zoomInUp;
    animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
    from {
        opacity: 1;
    }

    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }

    to {
        opacity: 0;
    }
}

@keyframes zoomOut {
    from {
        opacity: 1;
    }

    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }

    to {
        opacity: 0;
    }
}

.zoomOut {
    -webkit-animation-name: zoomOut;
    animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomOutDown {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.zoomOutDown {
    -webkit-animation-name: zoomOutDown;
    animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }

    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center;
    }
}

@keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }

    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center;
    }
}

.zoomOutLeft {
    -webkit-animation-name: zoomOutLeft;
    animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }

    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center;
    }
}

@keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }

    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center;
    }
}

.zoomOutRight {
    -webkit-animation-name: zoomOutRight;
    animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomOutUp {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }

    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.zoomOutUp {
    -webkit-animation-name: zoomOutUp;
    animation-name: zoomOutUp;
}
/* Scrollable tab buttons on small screens */
@media (max-width: 767px) {
    .ftc-price-1-tabs-btn {
        display: flex;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch; /* smooth scrolling on iOS */
        gap: 10px;
        padding-bottom: 10px;
        scroll-snap-type: x mandatory;
    }

    .ftc-price-1-tabs-btn::-webkit-scrollbar {
        display: none; /* Hide scrollbar */
    }

    .ftc-price-1-tabs-btn .nav-item {
        flex: 0 0 auto;
        scroll-snap-align: start;
    }

    .ftc-price-1-tabs-btn .nav-link {
        min-width: 120px; /* Adjust as needed */
        text-align: center;
        background: #222; /* optional for visibility */
        color: white;
        border-radius: 6px;
        padding: 10px 15px;
    }

    .ftc-price-1-tabs-btn .nav-link.active {
        background: var(--ftc-pr-1);
    }
}
/* campaign-1-start */
.ftc-campaign-1-area {
    position: relative;
    z-index: 1;
    background-color: #000000;
}

.ftc-campaign-1-scn-title {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.ftc-campaign-1-row {
    display: grid;
    grid-template-columns: 1fr 1.1fr 1fr;
}

@media (max-width: 991px) {
    .ftc-campaign-1-row {
        grid-template-columns: 1fr;
        gap: 50px;
    }
}

.ftc-campaign-1-card-wrap {
    perspective: 2000px;
    transform-style: preserve-3d;
}

.ftc-campaign-1-card {
    background: #fff;
    border-radius: 20px;
    padding: 40px 45px;
}

.ftc-campaign-1-card.has-origin-left {
    transform-origin: 0% 50%;
}

.ftc-campaign-1-card.has-origin-right {
    transform-origin: 100% 50%;
}

@media (max-width: 1199px) {
    .ftc-campaign-1-card {
        padding: 40px 20px;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .ftc-campaign-1-card {
        padding: 40px 50px;
    }
}

.ftc-campaign-1-card:not(:last-child) {
    margin-bottom: 55px;
}

.ftc-campaign-1-card .card-title {
    font-size: 26px;
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 13px;
}

@media (max-width: 1199px) {
    .ftc-campaign-1-card .card-title {
        font-size: 22px;
    }
}

.ftc-campaign-1-card .card-title .icon {
    font-size: 50px;
    line-height: 1;
}

@media (max-width: 991px) {
    .ftc-campaign-1-card .card-title .icon {
        font-size: 40px;
    }
}

.ftc-campaign-1-card .card-disc {
    font-weight: 500;
}

.ftc-campaign-1-card:hover .icon {
    animation: wobble-vertical 1s ease-in-out;
}

.ftc-campaign-1-img {
    position: relative;
    z-index: 1;
    padding: 0 85px;
}

@media (max-width: 1199px) {
    .ftc-campaign-1-img {
        padding: 0 30px;
    }
}

.ftc-campaign-1-img-shape {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.ftc-campaign-1-img-shape img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 1199px) {
    .ftc-campaign-1-img-shape img {
        height: 120%;
    }
}

@media (max-width: 991px) {
    .ftc-campaign-1-img-shape img {
        object-fit: unset;
    }
}

.ftc-campaign-1-img-1 {
    height: 100%;
    border-radius: 148px;
}

@media (max-width: 991px) {
    .ftc-campaign-1-img-1 {
        height: 400px;
    }
}

.ftc-campaign-1-link-all {
    font-size: 20px;
}

.ftc-campaign-1-link-all a {
    color: var(--ftc-pr-1);
    text-decoration: underline;
    transition: 400ms var(--cube-1);
}

.ftc-campaign-1-link-all a:hover {
    transform: translateX(5px);
    text-decoration: none;
}
/* campaign-1-end */
.icon-container {
    cursor: pointer;
    transition: transform 0.3s ease;
}

.icon-container:hover {
    transform: scale(1.05);
}

.service-item {
    transition: all 0.3s ease;
}

.service-item:hover {
    transform: translateY(-5px);
}
.icon-container {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    background-color: var(--ghost); /* or use your bg color */
    border-radius: 50%;
    overflow: hidden;
}
.icon-svg {
    color: inherit;
}
/* News Article Styles */
.article-content h2 { margin-top: 2rem; margin-bottom: 1rem; }
.article-content h3 { margin-top: 1.5rem; margin-bottom: 0.75rem; }
.article-content ul { margin-bottom: 1.5rem; }

.text-background {
    background-color: rgba(92, 169, 250, 0.71);
    padding: 5px 10px;
    border-radius: 5px;
    display: inline;
    box-shadow: 5px 0 0 rgb(79, 134, 188), -5px 0 0 rgb(63, 109, 149);
}



/* Breadcrumb Divider Fix */
.breadcrumb-item+.breadcrumb-item::before {
    content: "> ";
}

.image-wrapper {
    width: 200px; /* Set a fixed width for the wrapper */
    height: 200px; /* Set a fixed height for the wrapper to make it square */
    border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%; /* Apply squircle shape */
    overflow: hidden; /* Hide any overflowing parts of the image */
    margin: 20px auto; /* Center the wrapper and add some margin */
    display: block; /* Ensure the wrapper is a block element */
}

.image-wrapper img {
    width: 100%; /* Image takes full width of its wrapper */
    height: 100%; /* Image takes full height of its wrapper */
    object-fit: cover; /* Crop the image to cover the wrapper */
}

/* FAQ Sidebar - High Z-Index Styles */
.faq-sidebar-tab {
    position: fixed;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9999 !important;
}

.faq-tab-button {
    background: linear-gradient(135deg, #c4ef17 0%, #a8d917 100%);
    color: #333;
    border: none;
    padding: 15px 12px;
    cursor: pointer;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    font-weight: 700;
    font-size: 12px;
    border-radius: 0 8px 8px 0;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    letter-spacing: 1px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.faq-tab-button:hover {
    padding: 15px 16px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
    background: linear-gradient(135deg, #d4ff27 0%, #b8e917 100%);
}

.faq-tab-button i {
    display: block;
    font-size: 18px;
    margin-bottom: 8px;
    color: #333;
}

.faq-sidebar-panel {
    position: fixed;
    left: -420px;
    top: 0;
    width: 400px;
    height: 100vh;
    background: white;
    box-shadow: 2px 0 15px rgba(0, 0, 0, 0.2);
    transition: left 0.3s ease;
    z-index: 999999998 !important;
    overflow-y: auto;
    padding: 30px 0;
}

.faq-sidebar-panel.active {
    left: 0;
}

.faq-sidebar-header {
    padding: 0 20px 20px;
    border-bottom: 2px solid #f0f0f0;
    margin-bottom: 20px;
    position: relative;
}

.faq-sidebar-header h2 {
    color: #333;
    font-size: 24px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding-top: 10px;
}

.faq-sidebar-header h2 i {
    color: #c4ef17;
}

.faq-close-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    background: #f0f0f0;
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 20px;
    color: #333;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.faq-close-btn:hover {
    background: #e0e0e0;
    transform: rotate(90deg);
}

.faq-item {
    padding: 15px 20px;
    border-bottom: 1px solid #f0f0f0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.faq-item:hover {
    background: #f9f9f9;
    padding-left: 25px;
}

.faq-question {
    font-weight: 600;
    color: #333;
    font-size: 14px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 0;
    user-select: none;
}

.faq-question i {
    color: #c4ef17;
    margin-top: 4px;
    flex-shrink: 0;
    transition: transform 0.3s ease;
    font-size: 12px;
}

.faq-question span {
    flex: 1;
    margin: 0;
    padding: 0;
}

.faq-answer {
    color: #666;
    font-size: 13px;
    line-height: 1.6;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    margin-top: 0;
    padding-top: 0;
}

.faq-item.active .faq-answer {
    max-height: 500px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #eee;
}

.faq-item.active .faq-question i {
    transform: rotate(180deg);
}

.faq-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 9997 !important;
}

.faq-overlay.active {
    opacity: 1;
    visibility: visible;
}

@media (max-width: 768px) {
    .faq-sidebar-panel {
        width: 75%;
        left: -100%;
    }

    .faq-tab-button {
        padding: 12px 10px;
        font-size: 10px;
    }
}