<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/* Master Stylesheet
 * Version: @@version
 *
 * Coded by VLThemes
 *
 * 01. Helpers
 * 02. Base
 * 03. Layout
 * 04. Pages
 * 05. Partials
 * 06. Vendors
 * 07. Widgets
 */
/* 01. Helpers */
:root
{
    --ptf-accent-1: #5eaf54;
    --ptf-accent-2: #5eaf54;
    --ptf-accent-3: #5eaf54;
    --ptf-accent-4: #5eaf54;
    --ptf-color-white: hsl(0, 0%, 100%);
    --ptf-color-black: hsl(0, 0%, 0%);
    --ptf-color-1: hsl(0, 0%, 80%);
    --ptf-color-2: hsl(0, 0%, 40%);
    --ptf-color-3: hsl(0, 0%, 60%);
    --ptf-color-4: hsl(0, 0%, 97%);
    --ptf-color-5: hsl(213, 60%, 97%);
    --ptf-color-6: hsl(0, 0%, 85%);
    --ptf-color-7: hsl(0, 0%, 97%);
    --ptf-color-8: hsl(0, 0%, 95%);
    --ptf-color-9: hsl(0, 0%, 96%);
    --ptf-color-10: hsl(0, 0%, 87%);
    --ptf-color-11: hsl(38, 22%, 93%);
    --ptf-color-12: hsl(0, 0%, 7%);
    --ptf-color-13: hsl(0, 0%, 50%);
    --ptf-color-14: hsla(0, 0%, 0%, 15%);
    --ptf-color-15: hsl(12, 29%, 97%);
    --ptf-color-16: hsl(0, 0%, 11%);
    --ptf-color-17: hsl(0, 0%, 92%);
    --ptf-color-18: hsla(0, 0%, 0%, 80%);
    --ptf-color-19: hsl(45, 17%, 95%);
    --ptf-primary-font: 'Cerebri Sans';
    --ptf-secondary-font: 'Amiri';
    --ptf-socicon: 'Socicon';
    --ptf-linear-icons-light: LineIconsPro Light;
    --ptf-linear-icons-regular: LineIconsPro Regular;
    --ptf-transition-duration: 300ms;
    --ptf-transition-easing: ease-in-out;
    --ptf-navbar-height: 132px;
}

@-webkit-keyframes ptf_animate_icon_right
{
    49%
    {
        -webkit-transform: translateX(100%);
                transform: translateX(100%);
    }
    50%
    {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%); 

        opacity: 0;
    }
    51%
    {
        opacity: 1;
    }
}

@keyframes ptf_animate_icon_right
{
    49%
    {
        -webkit-transform: translateX(100%);
                transform: translateX(100%);
    }
    50%
    {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%); 

        opacity: 0;
    }
    51%
    {
        opacity: 1;
    }
}

@-webkit-keyframes ptf_animate_icon_left
{
    49%
    {
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); 

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

        opacity: 0;
    }
    51%
    {
        opacity: 1;
    }
}

@keyframes ptf_animate_icon_left
{
    49%
    {
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); 

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

        opacity: 0;
    }
    51%
    {
        opacity: 1;
    }
}

@-webkit-keyframes ptf_fade_in_down
{
    0%
    {
        -webkit-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }
    100%
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@keyframes ptf_fade_in_down
{
    0%
    {
        -webkit-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }
    100%
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
}

@-webkit-keyframes ptf_fade_out_up
{
    0%
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
    100%
    {
        -webkit-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }
}

@keyframes ptf_fade_out_up
{
    0%
    {
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
    }
    100%
    {
        -webkit-transform: translate3d(0, -100%, 0);
                transform: translate3d(0, -100%, 0);
    }
}

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

@keyframes ptf_blink_in
{
    0%
    {
        opacity: 0;
    }
    100%
    {
        opacity: 1;
    }
}

@-webkit-keyframes ptf_bounce_preloader
{
    0%,
    100%
    {
        -webkit-transform: scale(0);
                transform: scale(0);
    }
    50%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
}

@keyframes ptf_bounce_preloader
{
    0%,
    100%
    {
        -webkit-transform: scale(0);
                transform: scale(0);
    }
    50%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
}

@-webkit-keyframes ptf_spin
{
    100%
    {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

@keyframes ptf_spin
{
    100%
    {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

@-webkit-keyframes ptf_bounce
{
    0%,
    20%,
    50%,
    80%,
    100%
    {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
    40%
    {
        -webkit-transform: translateY(-20px);
                transform: translateY(-20px);
    }
    60%
    {
        -webkit-transform: translateY(-10px);
                transform: translateY(-10px);
    }
}

@keyframes ptf_bounce
{
    0%,
    20%,
    50%,
    80%,
    100%
    {
        -webkit-transform: translateY(0);
                transform: translateY(0);
    }
    40%
    {
        -webkit-transform: translateY(-20px);
                transform: translateY(-20px);
    }
    60%
    {
        -webkit-transform: translateY(-10px);
                transform: translateY(-10px);
    }
}

.ptf-navbar-logo
{
    line-height: 1;
}
.ptf-navbar-logo:hover
{
    color: currentColor;
}
.ptf-navbar-logo img
{
    display: block;

    max-width: none;
}
.ptf-header--style-5 .ptf-navbar-logo img
{
    display: none;
}
.ptf-navbar-logo img.white
{
    display: none;
}
.ptf-header--style-5 .ptf-navbar-logo img.white
{
    display: block;
}

.ptf-nav--offcanvas .sf-menu,
.ptf-nav--slide .sf-menu
{
    overflow: hidden;
}
.ptf-nav--offcanvas .sf-menu li,
.ptf-nav--slide .sf-menu li
{
    display: block;
    float: none;
}
.ptf-nav--offcanvas .sf-menu a,
.ptf-nav--slide .sf-menu a
{
    display: inline-block;
}
.ptf-nav--offcanvas .sf-menu &gt; li,
.ptf-nav--slide .sf-menu &gt; li
{
    padding: .625rem 0;
}
.ptf-nav--offcanvas .sf-menu &gt; li &gt; a,
.ptf-nav--slide .sf-menu &gt; li &gt; a
{
    font-size: 1.875rem;
    font-weight: 700; 
    line-height: 1.1;

    padding: .5rem 0;

    color: var(--ptf-color-black);
}
.ptf-nav--offcanvas .sf-menu &gt; li:last-child,
.ptf-nav--slide .sf-menu &gt; li:last-child
{
    padding-bottom: 0;
}
.ptf-nav--offcanvas .sf-menu &gt; li:first-child,
.ptf-nav--slide .sf-menu &gt; li:first-child
{
    padding-top: 0;
}
.ptf-nav--offcanvas .sf-menu &gt; li.current-menu-item &gt; a,
.ptf-nav--slide .sf-menu &gt; li.current-menu-item &gt; a,
.ptf-nav--offcanvas .sf-menu &gt; li.active &gt; a,
.ptf-nav--slide .sf-menu &gt; li.active &gt; a,
.ptf-nav--offcanvas .sf-menu &gt; li:hover &gt; a,
.ptf-nav--slide .sf-menu &gt; li:hover &gt; a,
.ptf-nav--offcanvas .sf-menu &gt; li.sfHover &gt; a,
.ptf-nav--slide .sf-menu &gt; li.sfHover &gt; a
{
    color: var(--ptf-accent-1);
}
.ptf-nav--offcanvas .sf-menu ul.sub-menu,
.ptf-nav--slide .sf-menu ul.sub-menu
{
    position: static;

    margin-top: .625rem;
    padding-left: .625rem;
}
.ptf-nav--offcanvas .sf-menu ul.sub-menu ul.sub-menu,
.ptf-nav--slide .sf-menu ul.sub-menu ul.sub-menu
{
    margin-top: 0;
}
.ptf-nav--offcanvas .sf-menu ul.sub-menu a,
.ptf-nav--slide .sf-menu ul.sub-menu a
{
    font-size: .9375rem;
    font-weight: normal; 
    line-height: 1.8;

    padding: 2px 0;

    color: var(--ptf-color-3);
}
.ptf-nav--offcanvas .sf-menu ul.sub-menu li.current-menu-item &gt; a,
.ptf-nav--slide .sf-menu ul.sub-menu li.current-menu-item &gt; a,
.ptf-nav--offcanvas .sf-menu ul.sub-menu li:hover &gt; a,
.ptf-nav--slide .sf-menu ul.sub-menu li:hover &gt; a,
.ptf-nav--offcanvas .sf-menu ul.sub-menu li.active &gt; a,
.ptf-nav--slide .sf-menu ul.sub-menu li.active &gt; a,
.ptf-nav--offcanvas .sf-menu ul.sub-menu li.sfHover &gt; a,
.ptf-nav--slide .sf-menu ul.sub-menu li.sfHover &gt; a
{
    color: var(--ptf-color-black);
}

.ptf-single-post__footer .ptf-post-tags a
{
    font-size: .875rem;

    margin-bottom: .3125rem;
    padding: .25rem .5625rem;

    text-transform: lowercase;

    color: var(--ptf-color-3);
    background-color: transparent;
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-color-6);
            box-shadow: inset 0 0 0 1px var(--ptf-color-6);
}
.ptf-single-post__footer .ptf-post-tags a:not(:last-child)
{
    margin-right: .3125rem;
}
.ptf-single-post__footer .ptf-post-tags a:hover
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
}

/* 02. Base */
/* COLORS
-------------------------------------------- */
.has-white-color
{
    color: var(--ptf-color-white) !important;
}

.has-black-color
{
    color: var(--ptf-color-black);
}

.has-accent-1
{
    color: var(--ptf-accent-1) !important;
}

.has-accent-1-background
{
    background-color: var(--ptf-accent-1);
}

.has-accent-2
{
    color: var(--ptf-accent-2);
}

.has-accent-3
{
    color: var(--ptf-accent-3);
}

.has-accent-4
{
    color: var(--ptf-accent-4);
}

.has-1-color
{
    color: var(--ptf-color-1);
}

.has-1-background-color
{
    background-color: var(--ptf-color-1);
}

.has-2-color
{
    color: var(--ptf-color-2);
}

.has-2-background-color
{
    background-color: var(--ptf-color-2);
}

.has-3-color
{
    color: var(--ptf-color-3);
}

.has-3-background-color
{
    background-color: var(--ptf-color-3);
}

.has-4-color
{
    color: var(--ptf-color-4);
}

.has-4-background-color
{
    background-color: var(--ptf-color-4);
}

.has-5-color
{
    color: var(--ptf-color-5);
}

.has-5-background-color
{
    background-color: var(--ptf-color-5);
}

.has-6-color
{
    color: var(--ptf-color-6);
}

.has-6-background-color
{
    background-color: var(--ptf-color-6);
}

.has-7-color
{
    color: var(--ptf-color-7);
}

.has-7-background-color
{
    background-color: var(--ptf-color-7);
}

.has-8-color
{
    color: var(--ptf-color-8);
}

.has-8-background-color
{
    background-color: var(--ptf-color-8);
}

.has-9-color
{
    color: var(--ptf-color-9);
}

.has-9-background-color
{
    background-color: var(--ptf-color-9);
}

.has-10-color
{
    color: var(--ptf-color-10);
}

.has-10-background-color
{
    background-color: var(--ptf-color-10);
}

.has-11-color
{
    color: var(--ptf-color-11);
}

.has-11-background-color
{
    background-color: var(--ptf-color-11);
}

.has-12-color
{
    color: var(--ptf-color-12);
}

.has-12-background-color
{
    background-color: var(--ptf-color-12);
}

.has-13-color
{
    color: var(--ptf-color-13);
}

.has-13-background-color
{
    background-color: var(--ptf-color-13);
}

.has-14-color
{
    color: var(--ptf-color-14);
}

.has-14-background-color
{
    background-color: var(--ptf-color-14);
}

/* FONT FAMILY
-------------------------------------------- */
.has-primary-font
{
    font-family: var(--ptf-primary-font) !important;
}

.has-secondary-font
{
    font-family: var(--ptf-secondary-font) !important;
}

/* FONT WEIGTH
-------------------------------------------- */
.fw-semibold
{
    font-weight: 600;
}

.fw-extrabold
{
    font-weight: 800;
}

/* FONT SIZE
-------------------------------------------- */
.fz-230
{
    font-size: 14.375rem;

    letter-spacing: -.05em;
}

.fz-130
{
    font-size: 8.125rem;

    letter-spacing: -.035em;
}
@media only screen and (max-width: 991px)
{
    .fz-130--lg
    {
        font-size: 8.125rem;

        letter-spacing: -.035em;
    }
}

.fz-120
{
    font-size: 7.5rem;

    letter-spacing: -.05em;
}

.fz-100
{
    font-size: 6.25rem;
}

.fz-90
{
    font-size: 5.625rem;
}
@media only screen and (max-width: 991px)
{
    .fz-90--lg
    {
        font-size: 3.625rem;
    }
}
@media only screen and (max-width: 767px)
{
    .fz-90--md
    {
        font-size: 5.625rem;
    }
}

.fz-80
{
    font-size: 5rem;
}

.fz-75
{
    font-size: 4.6875rem;
}

.fz-70
{
    font-size: 4.375rem;
}

.fz-60
{
    font-size: 3.75rem;
}
@media only screen and (max-width: 767px)
{
    .fz-60--md
    {
        font-size: 3.75rem;
    }
}

.fz-48
{
    font-size: 3rem;
}

.fz-40
{
    font-size: 2.5rem;
}
@media only screen and (max-width: 767px)
{
    .fz-40--md
    {
        font-size: 2.5rem;
    }
}
@media only screen and (max-width: 575px)
{
    .fz-40--sm
    {
        font-size: 2.5rem;
    }
}

.fz-36
{
    font-size: 2.25rem;
}
@media only screen and (max-width: 575px)
{
    .fz-36--sm
    {
        font-size: 2.25rem;
    }
}

.fz-30
{
    font-size: 1.875rem;
}

.fz-24
{
    font-size: 1.5rem;
}

.fz-20
{
    font-size: 1.25rem;
}

.fz-18
{
    font-size: 1.125rem;
}

.fz-16
{
    font-size: 1rem;
}

.fz-14
{
    font-size: .875rem;
}

.fz-12
{
    font-size: .75rem;
}

/* LINE HEIGHT
-------------------------------------------- */
.lh-1p75
{
    line-height: 1.75;
}

.lh-1p625
{
    line-height: 1.625;
}

.lh-1p66
{
    line-height: 1.66;
}

.lh-1p6
{
    line-height: 1.6;
}

.lh-1p5
{
    line-height: 1.5;
}

.lh-1p3
{
    line-height: 1.3;
}

.lh-1p1
{
    line-height: 1.1;
}

.lh-1
{
    line-height: 1;
}

.lh-0p8
{
    line-height: .8;
}

.lh-0p9
{
    line-height: .9;
}

/* OTHERS
-------------------------------------------- */
.spin
{
    -webkit-animation: ptf_spin 10s linear infinite;
            animation: ptf_spin 10s linear infinite;
}

/* SECTION: PAGE CONTACT
-------------------------------------------- */
.ptf-page--contact
{
    background-image: url(../img/root/contact-bubble.png);
    background-repeat: no-repeat;
    background-position: 100% 130px;
}

/* SECTION: PAGE SERVICE DETAIL
-------------------------------------------- */
.ptf-page--service-detail .ptf-skill-box-grid
{
    display: grid;

    grid-template-columns: repeat(5, 1fr);
    grid-gap: 1.25rem;
}
@media only screen and (max-width: 991px)
{
    .ptf-page--service-detail .ptf-skill-box-grid
    {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media only screen and (max-width: 767px)
{
    .ptf-page--service-detail .ptf-skill-box-grid
    {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media only screen and (max-width: 575px)
{
    .ptf-page--service-detail .ptf-skill-box-grid
    {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* SECTION: PAGE BLOG MASONRY
-------------------------------------------- */
@media (min-width: 1580px)
{
    .ptf-page--blog-masonry .container-xxl--custom
    {
        max-width: 100% !important;
        padding: 0 3.75rem;
    }
}

/* SECTION: PAGE ABOUT US
-------------------------------------------- */
.ptf-page--about-us section:first-of-type
{
    background-image: url(../img/root/about-us-bubble.png);
    background-repeat: no-repeat;
    background-position: calc(50% + 200px) calc(100% + 50px);
}

/* SECTION: PAGE ABOUT ME
-------------------------------------------- */
.ptf-page--about-me .ptf-custom--5512,
.ptf-page--home-freelancer .ptf-custom--5512
{
    position: relative;

    display: inline-block;

    padding-right: 1.875rem;
}
.ptf-page--about-me .ptf-custom--5512::after,
.ptf-page--home-freelancer .ptf-custom--5512::after
{
    position: absolute;
    z-index: -1; 
    right: -7.5rem;
    bottom: 0;

    width: 24.1875rem;
    height: 28.75rem;

    content: '';

    background-image: url(../img/root/about-me-bubble.png);
    background-repeat: no-repeat;
    background-size: cover;
}

.ptf-page--home-freelancer .ptf-custom--5512
{
    padding-right: 0;
}

.ptf-page--about-me .ptf-custom--1568
{
    background-image: url(../img/root/about-me-bubble-2.png), url(../img/root/about-me-bubble-3.png);
    background-repeat: no-repeat, no-repeat;
    background-position: 0 calc(50% - 50px), 100% calc(50% + 250px);
}

/* SECTION: HOME VERTICAL
-------------------------------------------- */
.ptf-is--home-vertical body,
.ptf-is--home-vertical .ptf-site-wrapper__inner
{
    background-color: var(--ptf-color-19);
}

/* SECTION: HOME MODERN / MINIMAL
-------------------------------------------- */
.ptf-is--home-modern body,
.ptf-is--home-modern .ptf-site-wrapper__inner,
.ptf-is--home-minimal body,
.ptf-is--home-minimal .ptf-site-wrapper__inner
{
    background-color: var(--ptf-color-11);
}

.ptf-is--home-modern .ptf-navbar,
.ptf-is--home-modern .ptf-navbar.ptf-navbar--solid
{
    background-color: var(--ptf-color-11);
}

.ptf-is--home-modern section:first-of-type
{
    background-image: url(../img/root/home-modern-bubble.png);
    background-repeat: no-repeat;
    background-position: calc(50% + 100px) calc(100% + 50px);
}

.ptf-page--home-modern .ptf-work__title
{
    font-weight: normal;
}

.ptf-page--home-modern .ptf-post--style-1 .ptf-post__meta
{
    text-transform: none;
}
.ptf-page--home-modern .ptf-post--style-1 .ptf-post__meta span.cat
{
    font-weight: 600;
}

.ptf-page--home-modern .ptf-post--style-1 .ptf-post__title
{
    font-size: 1.875rem;
    font-weight: normal;
}

/* SECTION: HOME TRENDING
-------------------------------------------- */
.ptf-page--home-trending
{
    background-image: url(../img/root/home-trending-bubbles.png);
    background-repeat: no-repeat;
    background-position: 50% 250px;
    background-size: contain;
}

/* SECTION: HOME DEFAULT
-------------------------------------------- */
.ptf-is--home-default .ptf-navbar,
.ptf-is--home-default .ptf-navbar.ptf-navbar--solid
{
    background-color: var(--ptf-accent-2);
}

.ptf-is--home-default .ptf-nav--default .sf-menu &gt; li.current-menu-ancestor &gt; a,
.ptf-is--home-default .ptf-nav--default .sf-menu &gt; li.current-menu-item &gt; a,
.ptf-is--home-default .ptf-nav--default .sf-menu &gt; li.sfHover &gt; a,
.ptf-is--home-default .ptf-nav--default .sf-menu &gt; li:hover &gt; a
{
    color: var(--ptf-color-white);
}

.ptf-is--home-default section:first-of-type
{
    background-image: url(../img/home/default/main-image.png);
    background-repeat: no-repeat;
    background-position: calc(50vw - 100px) calc(50% + 150px);
}

/* SECTION: HOME STUDIO
-------------------------------------------- */
.ptf-is--home-studio section:first-of-type
{
    background-image: url(../img/root/home-studio-bubble-1.png);
    background-repeat: no-repeat;
    background-position: 100% 200px;
}

.ptf-is--home-studio section.ptf-custom--1562
{
    background-image: url(../img/root/home-studio-bubble-2.png);
    background-repeat: no-repeat;
    background-position: 0 100%;
}

/* SECTION: HOME FREELANCER
-------------------------------------------- */
.ptf-is--home-freelancer .ptf-custom--1528
{
    background-image: url(../img/root/home-freelancer-bubble-1.png), url(../img/root/home-freelancer-bubble-2.png);
    background-repeat: no-repeat, no-repeat;
    background-position: 0 650px, 100% 65%;
}

.ptf-is--home-freelancer .ptf-counter-up--style-2 .ptf-counter-up__value
{
    font-size: 4.5rem;
}

.ptf-is--home-freelancer .ptf-work--style-3 .ptf-work__category
{
    text-transform: none;
}

.ptf-is--home-freelancer .ptf-work--style-3 .ptf-work__title
{
    font-weight: normal;
}

.ptf-is--home-freelancer section:last-of-type
{
    background-image: url(../img/root/call-to-action.png);
    background-repeat: no-repeat;
    background-position: calc(50% + 30px) calc(50% + 30px);
}

/* SECTION: HOME DARK
-------------------------------------------- */
.ptf-is--home-dark body,
.ptf-is--home-dark .ptf-site-wrapper__inner
{
    background-color: var(--ptf-color-12);
}

.ptf-is--home-dark .ptf-work--style-3 .ptf-work__category
{
    text-transform: none; 

    color: var(--ptf-color-white);
}

.ptf-is--home-dark .ptf-work--style-3 .ptf-work__title
{
    font-weight: normal;

    color: var(--ptf-color-white);
}

.ptf-is--home-dark .ptf-custom--1734
{
    position: absolute;
    z-index: 3; 
    top: calc(50% - 190px);
    left: -146px;
}

.ptf-is--home-dark .ptf-custom--1772
{
    background-image: url(../img/root/home-dark-bubble-2.png);
    background-repeat: no-repeat;
    background-position: 100% 150px;
}

.ptf-is--home-dark .ptf-custom--1674
{
    background-image: url(../img/root/home-dark-bubble-1.png);
    background-repeat: no-repeat;
    background-position: 0 250px;
}

.ptf-is--home-dark .ptf-custom--1560
{
    position: relative;

    display: inline-block;
}
.ptf-is--home-dark .ptf-custom--1560::after
{
    position: absolute;
    z-index: -1; 
    right: -7.5rem;
    bottom: 12.5rem;

    width: 15.875rem;
    height: 12rem;

    content: '';

    background-image: url(../img/root/home-dark-waves.png);
    background-repeat: no-repeat;
    background-size: cover;
}

/* SECTION: HOME AGENCY
-------------------------------------------- */
.ptf-is--home-agency .ptf-custom--3993
{
    position: relative;

    background-image: url(../img/home/agency/about-image.png);
    background-repeat: no-repeat;
    background-size: cover;
}
.ptf-is--home-agency .ptf-custom--3993::after
{
    position: absolute;
    z-index: -1; 
    top: 0;
    right: 0;
    bottom: 0;

    width: calc(50% - 15.625rem);

    content: '';

    background-color: var(--ptf-color-white);
}
@media only screen and (max-width: 991px)
{
    .ptf-is--home-agency .ptf-custom--3993::after
    {
        width: 100%;
    }
}

.ptf-is--home-agency .ptf-custom--1569
{
    background-color: var(--ptf-color-8);
    /* background-image: url(../img/root/home-agency-symbol.png); */
    background-repeat: no-repeat;
    background-position: calc(100% + 15px) calc(100% + 150px);
}

/* SECTION: PAGE INTRO
-------------------------------------------- */
.ptf-page--intro
{
    background-image: url(../img/root/intro/bubble-1.png);
    background-repeat: no-repeat;
    background-position: 100% 344px;
}
.ptf-page--intro section#blog
{
    position: relative;

    margin-bottom: -70px;

    background-color: #edece6;
}
.ptf-page--intro section#elementor
{
    background-color: #282828;
}
.ptf-page--intro .ptf-custom--1631
{
    position: relative;
}
.ptf-page--intro .ptf-custom--1631::before
{
    position: absolute;
    z-index: -1; 
    top: 7rem;
    left: calc(100% - 70px);

    width: 12.1875rem;
    height: 24.1875rem;

    content: '';

    background-image: url(../img/root/intro/bubble-2.png);
    background-repeat: no-repeat;
    background-size: cover;
}

/* HTML
-------------------------------------------- */
html
{
    font-size: 16px;
}
@media only screen and (max-width: 767px)
{
    html
    {
        font-size: 15px;
    }
}
@media only screen and (max-width: 575px)
{
    html
    {
        font-size: 14px;
    }
}
html ::-webkit-scrollbar
{
    width: 10px;
}
html ::-webkit-scrollbar-track
{
    background-color: var(--ptf-color-17);
}
html ::-webkit-scrollbar-thumb
{
    background-color: var(--ptf-accent-1);
}

/* SELECTION
-------------------------------------------- */
::-moz-selection
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
}

::selection
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
}

/* BODY
-------------------------------------------- */
body
{
    font-family: var(--ptf-primary-font);
    font-size: 1rem;
    line-height: 1.625;

    min-width: 20rem;
    margin: 0;
    padding: 0;

    letter-spacing: -.025em;

    color: var(--ptf-color-2);
    background-color: var(--ptf-color-white);

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* IMAGE
-------------------------------------------- */
img
{
    max-width: 100%;
    height: auto;
}

/* PARAGRAPH
-------------------------------------------- */
p
{
    margin: 0 0 1.875rem;
}
p:empty
{
    display: none;
}
p:last-of-type
{
    margin-bottom: 0;
}

/* STRONG
-------------------------------------------- */
strong
{
    font-weight: 700;
}

/* MARK
-------------------------------------------- */
mark
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
}

/* LINK
-------------------------------------------- */
a
{
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 
    text-decoration: none;

    color: inherit;
}
a:hover,
a:focus,
a:active
{
    text-decoration: none;

    outline: none;
}
a:hover
{
    color: var(--ptf-accent-1);
}
.ptf-is--home-dark a:hover
{
    color: var(--ptf-color-white);
}

/* HEADINGS
-------------------------------------------- */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6
{
    font-family: var(--ptf-primary-font);
    font-weight: 700;
    line-height: 1.3;

    margin: 0;
    padding: 0;

    color: var(--ptf-color-black);
}

h1,
.h1
{
    font-size: 2.75rem;
    font-weight: 800;
    line-height: 1.2;
}
@media only screen and (min-width: 1200px)
{
    h1.large-heading,
    .h1.large-heading
    {
        font-size: 5rem;
        line-height: 1.1;
    }
}

h2,
.h2
{
    font-size: 3rem;
}

h3,
.h3
{
    font-size: 2.25rem;
    line-height: 1.2;
}

h4,
.h4
{
    font-size: 1.875rem;
}

h5,
.h5
{
    font-size: 1.5rem;
}

h6,
.h6
{
    font-size: 1.25rem;
}

/* LIST
-------------------------------------------- */
ul,
ol
{
    margin: 0;
    padding: 0;

    list-style-position: inside;
}
ul.styled-list,
ol.styled-list
{
    font-size: 1.125rem;

    list-style-type: none;
}
ul.styled-list li::before,
ol.styled-list li::before
{
    font-family: var(--ptf-linear-icons-light);
    font-size: 80%;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    width: 22px;
    height: 22px;
    margin-right: 1.25rem;

    content: '\eb9d';

    border-radius: 50%; 
    background-color: #549b00;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
ul.styled-list li + li,
ol.styled-list li + li
{
    margin-top: 1.125rem;
}

/* DIVIDER
-------------------------------------------- */
hr
{
    margin: 1.875rem 0;

    border: none;
    border-bottom: 2px solid var(--ptf-color-black);
}

/* ADDRESS
-------------------------------------------- */
address
{
    font-size: 1.75rem;
    font-weight: 700;
    font-style: normal;

    margin: 0 0 1.5625rem;

    color: var(--ptf-accent-1);
}

/* BLOCKQUOTE
-------------------------------------------- */
blockquote
{
    font-size: 1.875rem;
    font-weight: 700;
    line-height: 1.6;

    position: relative;

    margin: 0 0 1.875rem;
    padding: 0;

    color: var(--ptf-color-black);
}
blockquote p
{
    margin-bottom: 0;
}

cite
{
    font-size: .875rem;
    font-style: normal;
    line-height: 1.42;

    display: block;

    margin: 1rem 0 0;

    text-transform: uppercase; 

    color: var(--ptf-color-3);
}

/* PREFORMATTED
-------------------------------------------- */
code,
kbd
{
    font-family: Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
    font-size: 87.5%;

    padding: .3125rem .5rem;

    color: var(--ptf-color-white);
    border-radius: 0; 
    background-color: var(--ptf-accent-1);
}

a &gt; code
{
    color: var(--ptf-color-white);
}

pre
{
    font-family: Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;

    clear: both;
    overflow: auto;

    max-width: 100%;
    margin: 0 0 2rem;
    padding: 2rem;

    white-space: pre-wrap;
    -moz-tab-size: 4;
      -o-tab-size: 4;
         tab-size: 4;

    color: var(--ptf-color-black);
    background-color: var(--ptf-color-4);
}
pre code
{
    color: var(--ptf-color-white);
}

/* FORM / INPUT / TEXTAREA / SELECT
-------------------------------------------- */
form
{
    max-width: 100%;
}

label
{
    font-size: 1.5rem;
    line-height: 1.5;

    position: relative;

    display: block;

    width: 100%;
    margin-bottom: .625rem;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; 

    color: var(--ptf-color-black);
}
@media only screen and (min-width: 992px)
{
    label::before
    {
        font-size: .875rem;

        position: absolute;
        top: calc(50% - .75em);
        left: -3.75rem;

        content: attr(data-number);

        color: var(--ptf-color-3);
    }
}

input[type=text],
input[type=date],
input[type=email],
input[type=password],
input[type=tel],
input[type=url],
input[type=search],
input[type=number],
input[type=file],
textarea,
select
{
    font-size: 1rem;

    display: block;

    width: 100%;
    margin: 0;
    padding: 0 0 .625rem 0;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 

    color: var(--ptf-color-black);
    border: none;
    border-bottom: 1px solid var(--ptf-color-14);
    border-radius: 0;
    outline: none;
    background-color: transparent;
    -webkit-box-shadow: none;
            box-shadow: none;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
input[type=text].is-large,
input[type=date].is-large,
input[type=email].is-large,
input[type=password].is-large,
input[type=tel].is-large,
input[type=url].is-large,
input[type=search].is-large,
input[type=number].is-large,
input[type=file].is-large,
textarea.is-large,
select.is-large
{
    font-size: 2.25rem;
}
input[type=text].style-2,
input[type=date].style-2,
input[type=email].style-2,
input[type=password].style-2,
input[type=tel].style-2,
input[type=url].style-2,
input[type=search].style-2,
input[type=number].style-2,
input[type=file].style-2,
textarea.style-2,
select.style-2
{
    font-size: .875rem;

    padding: .8125rem 1.4375rem;

    border: 1px solid var(--ptf-color-3); 
    background-color: var(--ptf-white-color);
}

select
{
    background-image: url('data:image/svg+xml;utf8,&lt;svg fill=\'%232d2d2d\' height=\'24\' viewBox=\'0 0 24 24\' width=\'24\' xmlns=\'http://www.w3.org/2000/svg\'&gt;&lt;path d=\'M7 10l5 5 5-5z\'/&gt;&lt;path d=\'M0 0h24v24H0z\' fill=\'none\'/&gt;&lt;/svg&gt;');
    background-repeat: no-repeat;
    background-position: right 0 bottom 50%;
    background-size: 18px 18px;
}
select.is-large
{
    background-image: url('data:image/svg+xml,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 64 64\'%3E%3Cpath d=\'M32 46.8c-1.2 0-2.4-.4-3.4-1.3L1.8 20.3c-.7-.7-.7-1.8-.1-2.5.7-.7 1.8-.7 2.5-.1L31 42.9c.5.5 1.4.5 2 0l26.8-25.2c.7-.7 1.8-.6 2.5.1s.6 1.8-.1 2.5L35.4 45.4c-1 .9-2.2 1.4-3.4 1.4z\'/%3E%3C/svg%3E');
    background-size: 30px 30px;
}

textarea
{
    width: 100%;
    max-width: 100%;

    -webkit-transition: height 0s;
            transition: height 0s;
}

button:focus,
input[type=submit]:focus
{
    outline: none;
}

input[type=text].placeholder,
input[type=date].placeholder,
input[type=email].placeholder,
input[type=password].placeholder,
input[type=tel].placeholder,
input[type=url].placeholder,
input[type=search].placeholder,
input[type=number].placeholder,
input[type=file].placeholder,
textarea.placeholder,
select.placeholder
{
    opacity: 1; 
    color: var(--ptf-color-3);
}

input[type=text]:-moz-placeholder,
input[type=date]:-moz-placeholder,
input[type=email]:-moz-placeholder,
input[type=password]:-moz-placeholder,
input[type=tel]:-moz-placeholder,
input[type=url]:-moz-placeholder,
input[type=search]:-moz-placeholder,
input[type=number]:-moz-placeholder,
input[type=file]:-moz-placeholder,
textarea:-moz-placeholder,
select:-moz-placeholder
{
    opacity: 1; 
    color: var(--ptf-color-3);
}

input[type=text]::-moz-placeholder,
input[type=date]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=password]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
input[type=url]::-moz-placeholder,
input[type=search]::-moz-placeholder,
input[type=number]::-moz-placeholder,
input[type=file]::-moz-placeholder,
textarea::-moz-placeholder,
select::-moz-placeholder
{
    opacity: 1; 
    color: var(--ptf-color-3);
}

input[type=text]:-ms-input-placeholder,
input[type=date]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
input[type=url]:-ms-input-placeholder,
input[type=search]:-ms-input-placeholder,
input[type=number]:-ms-input-placeholder,
input[type=file]:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder
{
    opacity: 1; 
    color: var(--ptf-color-3);
}

input[type=text]::-webkit-input-placeholder,
input[type=date]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
input[type=url]::-webkit-input-placeholder,
input[type=search]::-webkit-input-placeholder,
input[type=number]::-webkit-input-placeholder,
input[type=file]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
select::-webkit-input-placeholder
{
    opacity: 1; 
    color: var(--ptf-color-3);
}

input[type=text]:focus,
input[type=date]:focus,
input[type=email]:focus,
input[type=password]:focus,
input[type=tel]:focus,
input[type=url]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=file]:focus,
textarea:focus,
select:focus
{
    border-color: var(--ptf-color-black);
}
input[type=text]:focus.placeholder,
input[type=date]:focus.placeholder,
input[type=email]:focus.placeholder,
input[type=password]:focus.placeholder,
input[type=tel]:focus.placeholder,
input[type=url]:focus.placeholder,
input[type=search]:focus.placeholder,
input[type=number]:focus.placeholder,
input[type=file]:focus.placeholder,
textarea:focus.placeholder,
select:focus.placeholder
{
    opacity: 0;
}
input[type=text]:focus:-moz-placeholder,
input[type=date]:focus:-moz-placeholder,
input[type=email]:focus:-moz-placeholder,
input[type=password]:focus:-moz-placeholder,
input[type=tel]:focus:-moz-placeholder,
input[type=url]:focus:-moz-placeholder,
input[type=search]:focus:-moz-placeholder,
input[type=number]:focus:-moz-placeholder,
input[type=file]:focus:-moz-placeholder,
textarea:focus:-moz-placeholder,
select:focus:-moz-placeholder
{
    opacity: 0;
}
input[type=text]:focus::-moz-placeholder,
input[type=date]:focus::-moz-placeholder,
input[type=email]:focus::-moz-placeholder,
input[type=password]:focus::-moz-placeholder,
input[type=tel]:focus::-moz-placeholder,
input[type=url]:focus::-moz-placeholder,
input[type=search]:focus::-moz-placeholder,
input[type=number]:focus::-moz-placeholder,
input[type=file]:focus::-moz-placeholder,
textarea:focus::-moz-placeholder,
select:focus::-moz-placeholder
{
    opacity: 0;
}
input[type=text]:focus:-ms-input-placeholder,
input[type=date]:focus:-ms-input-placeholder,
input[type=email]:focus:-ms-input-placeholder,
input[type=password]:focus:-ms-input-placeholder,
input[type=tel]:focus:-ms-input-placeholder,
input[type=url]:focus:-ms-input-placeholder,
input[type=search]:focus:-ms-input-placeholder,
input[type=number]:focus:-ms-input-placeholder,
input[type=file]:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder,
select:focus:-ms-input-placeholder
{
    opacity: 0;
}
input[type=text]:focus::-webkit-input-placeholder,
input[type=date]:focus::-webkit-input-placeholder,
input[type=email]:focus::-webkit-input-placeholder,
input[type=password]:focus::-webkit-input-placeholder,
input[type=tel]:focus::-webkit-input-placeholder,
input[type=url]:focus::-webkit-input-placeholder,
input[type=search]:focus::-webkit-input-placeholder,
input[type=number]:focus::-webkit-input-placeholder,
input[type=file]:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder,
select:focus::-webkit-input-placeholder
{
    opacity: 0;
}

.ptf-checkbox
{
    font-size: .875rem;

    position: relative;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    padding-left: 2.625rem;

    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; 

    color: var(--ptf-color-black);

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-checkbox__checkmark
{
    position: absolute;
    top: 50%;
    left: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    width: 1.5625rem;
    height: 1.5625rem;

    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); 

    background-color: transparent;
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-color-3);
            box-shadow: inset 0 0 0 1px var(--ptf-color-3);

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-checkbox__checkmark::after
{
    font-family: var(--ptf-linear-icons-light);

    display: none;

    content: '\eb9d';

    color: var(--ptf-color-white);
}
.ptf-checkbox input[type=checkbox]:checked ~ .ptf-checkbox__checkmark
{
    background-color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
}
.ptf-checkbox input[type=checkbox]:checked ~ .ptf-checkbox__checkmark::after
{
    display: block;
}

.ptf-form-group
{
    position: relative;

    display: block;

    margin-bottom: 1.875rem;
}

.ptf-form-row
{
    display: grid;

    grid-gap: 1.875rem;
    grid-template-columns: repeat(1, 1fr);
}
.ptf-form-row.two-col
{
    grid-template-columns: repeat(2, 1fr);
}
@media only screen and (max-width: 767px)
{
    .ptf-form-row.two-col
    {
        grid-gap: 0;
        grid-template-columns: repeat(1, 1fr);
    }
}
.ptf-form-row.three-col
{
    grid-template-columns: repeat(3, 1fr);
}
@media only screen and (max-width: 767px)
{
    .ptf-form-row.three-col
    {
        grid-gap: 0;
        grid-template-columns: repeat(1, 1fr);
    }
}

/* DEFINITION LIST
-------------------------------------------- */
dl
{
    margin-bottom: 0;
}
dl dt
{
    font-size: 1.25rem;
    font-weight: 700;

    color: var(--ptf-color-black);
}
dl dd
{
    font-size: .9375rem;
    line-height: 1.6;
}

/* TABLE
-------------------------------------------- */
table
{
    width: 100%;
    max-width: 100%;
    margin: 0;

    border-collapse: collapse;
}
table td,
table th
{
    padding: .625rem 1rem;

    border: 1px solid;
    border-color: var(--ptf-color-14) !important;
}
table tr th,
table thead th
{
    font-weight: 700;

    color: var(--ptf-color-black);
}

/* 03. Layout */
/* LAYOUT: COMMENTS
-------------------------------------------- */
.ptf-page-comments
{
    margin-top: 5.625rem;
    padding: 5.625rem 0 0;

    border-top: 1px solid var(--ptf-color-14);
}

.ptf-page-comments__title
{
    margin-bottom: 3.125rem;
}

.ptf-page-comments__list + .ptf-page-comments__form
{
    margin-top: 5rem;
}

p.form-submit
{
    margin-top: 3.125rem;
}

.ptf-comments,
.ptf-comments ul.children
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}
.ptf-comments li.ptf-comment-item,
.ptf-comments ul.children li.ptf-comment-item
{
    padding: 3.125rem 0;

    border-top: 1px solid var(--ptf-color-14);
}
.ptf-comments li.ptf-comment-item:first-child,
.ptf-comments ul.children li.ptf-comment-item:first-child
{
    padding-top: 0;

    border-top: none;
}
.ptf-comments li.ptf-comment-item:last-child,
.ptf-comments ul.children li.ptf-comment-item:last-child
{
    padding-bottom: 0;
}

.ptf-comments ul.children
{
    margin-top: 3.125rem;
    padding-left: 5.625rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-comments ul.children
    {
        padding-left: 0;
    }
}
.ptf-comments ul.children li.ptf-comment-item:last-child
{
    padding-bottom: 0;
}

.ptf-comment-item__inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}
.ptf-comment-item__inner .ptf-comment-avatar
{
    display: block;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}
@media only screen and (max-width: 767px)
{
    .ptf-comment-item__inner .ptf-comment-avatar
    {
        display: none;
    }
}
.ptf-comment-item__inner .ptf-comment-avatar img
{
    display: block;
}
.children .ptf-comment-item__inner .ptf-comment-avatar
{
    width: 2.8125rem;
}
.ptf-comment-item__inner .ptf-comment-avatar + .ptf-comment-content
{
    padding-left: 1.25rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-comment-item__inner .ptf-comment-avatar + .ptf-comment-content
    {
        padding-left: 0;
    }
}
.ptf-comment-item__inner .ptf-comment-content
{
    width: 100%;
}
.ptf-comment-item__inner .ptf-comment-content .ptf-comment-header
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    margin-bottom: .625rem; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
            justify-content: space-between;
}
@media only screen and (max-width: 767px)
{
    .ptf-comment-item__inner .ptf-comment-content .ptf-comment-header
    {
        display: block;
    }
}
.ptf-comment-item__inner .ptf-comment-content .ptf-comment-header h5.ptf-comment-name
{
    font-size: 1.25rem;
}
.ptf-comment-item__inner .ptf-comment-content .ptf-comment-header .ptf-comment-metas
{
    font-size: .875rem; 

    text-transform: uppercase;

    color: var(--ptf-color-black);
}
@media only screen and (max-width: 767px)
{
    .ptf-comment-item__inner .ptf-comment-content .ptf-comment-header .ptf-comment-metas
    {
        margin-top: .3125rem;
    }
}
.ptf-comment-item__inner .ptf-comment-content .ptf-comment-text
{
    padding-right: 1.875rem;
}
.ptf-comment-item__inner .ptf-comment-content .ptf-comment-reply
{
    font-size: .75rem;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    margin-top: 1.5625rem;
    padding: .1875rem .75rem;

    text-transform: uppercase;

    color: var(--ptf-color-black);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-color-1);
            box-shadow: inset 0 0 0 1px var(--ptf-color-1);
}
.ptf-comment-item__inner .ptf-comment-content .ptf-comment-reply:hover
{
    color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
}

/* LAYOUT: FOOTER
-------------------------------------------- */
.ptf-footer
{
    position: relative;
}

/* SECTION: FOOTER STYLE 1
-------------------------------------------- */
.ptf-footer--style-1
{
    background-color: var(--ptf-color-9);
}
.ptf-footer--style-1 .ptf-footer__top
{
    padding-top: 9.375rem;
    padding-bottom: 2.5rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-footer--style-1 .ptf-footer__top
    {
        padding-top: 4.6875rem;
        padding-bottom: .625rem;
    }
}
.ptf-footer--style-1 .ptf-footer__top [class^=col]
{
    margin-bottom: 5rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-footer--style-1 .ptf-footer__top [class^=col]
    {
        margin-bottom: 3.75rem;
    }
}
.ptf-footer--style-1 .ptf-footer__top .ptf-footer-heading
{
    font-size: 2.625rem;
    font-weight: 700;
    line-height: 1.42;
}
@media only screen and (max-width: 767px)
{
    .ptf-footer--style-1 .ptf-footer__top .ptf-footer-heading
    {
        font-size: 2.25rem;
    }
}
.ptf-footer--style-1 .ptf-footer__top .ptf-widget + .ptf-widget
{
    margin-top: 4.375rem;
}
.ptf-footer--style-1 .ptf-footer__top .ptf-widget-title
{
    margin-bottom: 2.5rem;
}
.ptf-footer--style-1 .ptf-footer__top .ptf-footer-heading + .ptf-footer-heading
{
    margin-top: 5.3125rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-footer--style-1 .ptf-footer__top .ptf-footer-heading + .ptf-footer-heading
    {
        margin-top: 2.5rem;
    }
}
.ptf-footer--style-1 .ptf-footer__bottom
{
    padding-top: 4.0625rem;
    padding-bottom: 2.8125rem;

    border-top: 2px solid var(--ptf-color-black);
}
@media only screen and (max-width: 767px)
{
    .ptf-footer--style-1 .ptf-footer__bottom
    {
        padding-bottom: 1.875rem;
    }
}
.ptf-footer--style-1 .ptf-footer__bottom [class^=col]
{
    margin-bottom: 1.875rem;
}

/* SECTION: FOOTER STYLE 2
-------------------------------------------- */
.ptf-footer--style-2,
.ptf-footer--style-4,
.ptf-footer--style-5
{
    background-color: var(--ptf-color-white);
}
.ptf-footer--style-2 .ptf-footer__top,
.ptf-footer--style-4 .ptf-footer__top,
.ptf-footer--style-5 .ptf-footer__top
{
    padding-top: 7.5rem;
    padding-bottom: 5.625rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-footer--style-2 .ptf-footer__top,
    .ptf-footer--style-4 .ptf-footer__top,
    .ptf-footer--style-5 .ptf-footer__top
    {
        padding-top: 3.75rem;
    }
}
.ptf-footer--style-2 .ptf-footer__top [class^=col]:not(:last-of-type),
.ptf-footer--style-4 .ptf-footer__top [class^=col]:not(:last-of-type),
.ptf-footer--style-5 .ptf-footer__top [class^=col]:not(:last-of-type)
{
    margin-bottom: 2.8125rem;
}
.ptf-footer--style-2 .ptf-footer__top .ptf-widget-links,
.ptf-footer--style-4 .ptf-footer__top .ptf-widget-links,
.ptf-footer--style-5 .ptf-footer__top .ptf-widget-links
{
    -webkit-columns: 2;
       -moz-columns: 2;
            columns: 2;
}
.ptf-footer--style-2 .ptf-footer__top .ptf-widget-links ul li + li,
.ptf-footer--style-4 .ptf-footer__top .ptf-widget-links ul li + li,
.ptf-footer--style-5 .ptf-footer__top .ptf-widget-links ul li + li
{
    margin-top: .875rem;
}
.ptf-footer--style-2 .ptf-footer__bottom,
.ptf-footer--style-4 .ptf-footer__bottom,
.ptf-footer--style-5 .ptf-footer__bottom
{
    padding-bottom: 4.375rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-footer--style-2 .ptf-footer__bottom,
    .ptf-footer--style-4 .ptf-footer__bottom,
    .ptf-footer--style-5 .ptf-footer__bottom
    {
        padding-bottom: 1.875rem;
    }
}
.ptf-footer--style-2 .ptf-footer__bottom [class^=col],
.ptf-footer--style-4 .ptf-footer__bottom [class^=col],
.ptf-footer--style-5 .ptf-footer__bottom [class^=col]
{
    margin-bottom: 1.875rem;
}

/* SECTION: FOOTER STYLE 3
-------------------------------------------- */
.ptf-footer--style-3
{
    background-color: var(--ptf-color-16);
    /* background-image: url(../img/root/footer-symbol.png); */
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 410px 420px;
}
.ptf-footer--style-3 .ptf-footer__top
{
    padding-top: 8.125rem;
    padding-bottom: 5.625rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-footer--style-3 .ptf-footer__top
    {
        padding-top: 3.75rem;
    }
}
.ptf-footer--style-3 .ptf-footer__top [class^=col]:not(:last-of-type)
{
    margin-bottom: 2.8125rem;
}
.ptf-footer--style-3 .ptf-footer__top .ptf-widget-links
{
    -webkit-columns: 2;
       -moz-columns: 2;
            columns: 2;
}
.ptf-footer--style-3 .ptf-footer__top .ptf-widget-contacts
{
    max-width: 31.25rem;
}
.ptf-footer--style-3 .ptf-footer__top .ptf-widget-contacts ul
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}
.ptf-footer--style-3 .ptf-footer__top .ptf-widget-contacts ul li
{
    line-height: 1.875;

    display: grid;

    grid-template-columns: 130px 1fr;
}
.ptf-footer--style-3 .ptf-footer__top .ptf-widget-contacts ul li span
{
    font-size: .875rem;
    font-weight: 600;
    line-height: 2.2;

    text-transform: uppercase;
}
.ptf-footer--style-3 .ptf-footer__top .ptf-widget-contacts ul li + li
{
    margin-top: .9375rem;
}
.ptf-footer--style-3 .ptf-footer__bottom
{
    padding-top: 3.75rem;
    padding-bottom: 5rem;

    border-top: 2px solid var(--ptf-color-white);
}
@media only screen and (max-width: 767px)
{
    .ptf-footer--style-3 .ptf-footer__bottom
    {
        padding-bottom: 1.875rem;
    }
}
.ptf-footer--style-3 .ptf-footer__bottom [class^=col]
{
    margin-bottom: 1.875rem;
}

/* SECTION: FOOTER STYLE 4
-------------------------------------------- */
.ptf-footer--style-4
{
    background-color: var(--ptf-color-11);
}

/* SECTION: FOOTER STYLE 5
-------------------------------------------- */
.ptf-footer--style-5
{
    background-color: var(--ptf-color-12);
}

/* SECTION: FOOTER STYLE 6
-------------------------------------------- */
.ptf-footer--style-6
{
    background-color: var(--ptf-color-white);
}
.ptf-footer--style-6 .ptf-footer__top
{
    padding: 5rem 0 5rem;

    border-top: 1px solid var(--ptf-color-black);
}
.ptf-footer--style-6 .ptf-footer__top [class^=col]:not(:last-of-type)
{
    margin-bottom: 1.875rem;
}

/* SECTION: FOOTER STYLE 7
-------------------------------------------- */
.ptf-footer--style-7
{
    background-color: var(--ptf-color-11);
}
.ptf-footer--style-7 .ptf-footer__top
{
    padding: 2.5rem 0 3.75rem;

    border-top: 1px solid var(--ptf-color-black);
}
.ptf-footer--style-7 .ptf-footer__top [class^=col]:not(:last-of-type)
{
    margin-bottom: 1.875rem;
}
.ptf-footer--style-7 .ptf-footer__top .sep
{
    margin: 0 .8125rem;
}

/* SECTION: FOOTER LANDING
-------------------------------------------- */
.ptf-footer--landing
{
    color: var(--ptf-color-white);
    background-color: #282828;
    background-image: url(../img/root/intro/bubble-3.png);
    background-repeat: no-repeat;
    background-position: 50% 100%;
}
.ptf-footer--landing h2
{
    color: inherit;
}
.ptf-footer--landing .ptf-footer__price
{
    font-size: 13.125rem;
    font-weight: 800;
    line-height: 1; 

    position: relative;

    display: inline-block;
}
.ptf-footer--landing .ptf-footer__price span
{
    font-size: 3.75rem;
    font-weight: 700;

    position: absolute;
    top: .25em;
    right: 100%;

    vertical-align: top;
}

/* LAYOUT: GRID
-------------------------------------------- */
@media (min-width: 1580px)
{
    .container-xxl
    {
        max-width: 1550px;
    }
}

.ptf-main
{
    overflow: hidden;
}

.ptf-site-wrapper__inner
{
    position: relative;
    z-index: 1;

    background-color: var(--ptf-color-white);
}

/* LAYOUT: HEADER
-------------------------------------------- */
.ptf-header--style-1,
.ptf-header--style-3,
.ptf-header--style-4,
.ptf-header--style-2,
.ptf-header--style-3,
.ptf-header--style-4,
.ptf-header--style-5,
.ptf-header--style-6,
.ptf-header--style-7,
.ptf-header--style-8,
.ptf-header--empty,
.ptf-header--slide,
.ptf-header--landing
{
    position: absolute;
    z-index: 30; 
    top: 0;
    left: 0;

    width: 100%;

    color: var(--ptf-color-black);
}
.ptf-header--style-1.ptf-header--opaque,
.ptf-header--opaque.ptf-header--style-3,
.ptf-header--opaque.ptf-header--style-4,
.ptf-header--style-2.ptf-header--opaque,
.ptf-header--style-3.ptf-header--opaque,
.ptf-header--style-4.ptf-header--opaque,
.ptf-header--style-5.ptf-header--opaque,
.ptf-header--style-6.ptf-header--opaque,
.ptf-header--style-7.ptf-header--opaque,
.ptf-header--style-8.ptf-header--opaque,
.ptf-header--empty.ptf-header--opaque,
.ptf-header--slide.ptf-header--opaque,
.ptf-header--landing.ptf-header--opaque
{
    position: relative;
}

.ptf-header--style-5
{
    color: var(--ptf-color-white);
}

.ptf-navbar
{
    position: relative;
    z-index: 50; 

    -webkit-transition: background-color var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: background-color var(--ptf-transition-duration) var(--ptf-transition-easing);

    will-change: background-color;
}
.ptf-navbar .ptf-navbar-inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    min-height: var(--ptf-navbar-height);
}
.ptf-navbar.ptf-navbar--fixed
{
    position: fixed;
    top: 0;
    left: 0;

    width: 100%;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
}
.ptf-navbar.ptf-navbar--fixed.ptf-navbar--sticky
{
    -webkit-animation: ptf_fade_in_down var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
            animation: ptf_fade_in_down var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
}
.ptf-navbar.ptf-navbar--fixed.ptf-on-scroll-show
{
    -webkit-animation: ptf_fade_in_down var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
            animation: ptf_fade_in_down var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
}
.ptf-navbar.ptf-navbar--fixed.ptf-on-scroll-hide
{
    -webkit-animation: ptf_fade_out_up var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
            animation: ptf_fade_out_up var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
}
.ptf-navbar.ptf-navbar--transparent
{
    background-color: transparent;
}
.ptf-navbar,
.ptf-navbar.ptf-navbar--solid
{
    background-color: var(--ptf-color-white);
}
.ptf-header--style-5 .ptf-navbar,
.ptf-header--style-5 .ptf-navbar.ptf-navbar--solid
{
    background-color: var(--ptf-color-12);
}
.ptf-navbar.ptf-navbar--transparent-always
{
    background-color: transparent;
}
.ptf-navbar.ptf-navbar--white-text-on-top:not(.ptf-navbar--solid)
{
    color: var(--ptf-color-white);
}
.ptf-navbar.ptf-navbar--white-text-on-top:not(.ptf-navbar--solid) .ptf-navbar-logo img.black
{
    display: none;
}
.ptf-header--style-5 .ptf-navbar.ptf-navbar--white-text-on-top:not(.ptf-navbar--solid) .ptf-navbar-logo img.black
{
    display: block;
}
.ptf-navbar.ptf-navbar--white-text-on-top:not(.ptf-navbar--solid) .ptf-navbar-logo img.white
{
    display: block;
}
.ptf-header--style-5 .ptf-navbar.ptf-navbar--white-text-on-top:not(.ptf-navbar--solid) .ptf-navbar-logo img.white
{
    display: none;
}

.ptf-offcanvas-menu-icon
{
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;
}
.ptf-offcanvas-menu-icon:hover
{
    color: inherit;
}

.ptf-offcanvas-menu-icon,
.ptf-slide-menu-icon
{
    font-size: 1.875rem;
    line-height: 1;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    width: 1.625rem;
    height: 1.625rem;

    -webkit-transition: none;
            transition: none; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}

.ptf-slide-menu-icon .lnir-close
{
    display: none;
}

.ptf-slide-menu-icon.is-open .lnir-close
{
    display: block;
}

.ptf-slide-menu-icon.is-open .lnir-menu-alt-5
{
    display: none;
}

.ptf-language-switcher
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}

.ptf-navbar-search
{
    position: relative;
}
.ptf-navbar-search__wrapper
{
    position: absolute;
    top: 50%;
    right: 1.875rem;

    display: none;
    overflow: hidden;

    width: calc(100vw - 9.375rem);
    max-width: 28.75rem;

    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
}
@media only screen and (min-width: 992px)
{
    .ptf-navbar-search__wrapper
    {
        width: 25vw;
    }
}
.ptf-navbar-search__wrapper input[type=text]
{
    font-size: .875rem;
    line-height: 1;

    padding: .625rem 1rem;

    border: none; 
    background-color: var(--ptf-color-7);
}
.ptf-navbar-search__toggle
{
    font-size: 1.5rem;
    line-height: 1;

    cursor: pointer;
    -webkit-transition: none;
            transition: none;
}
.ptf-navbar-search__toggle .lnir-close
{
    display: none;
}
.ptf-navbar-search__toggle:hover
{
    color: inherit;
}
.ptf-navbar-search.is-open .ptf-navbar-search__wrapper,
.ptf-navbar-search.is-open .ptf-navbar-search__toggle .lnir-close
{
    display: block;
}
.ptf-navbar-search.is-open .ptf-navbar-search__toggle .lnir-search-alt
{
    display: none;
}

/* HEADER:
-------------------------------------------- */
/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-header--style-1 .ptf-navbar-inner,
.ptf-header--style-3 .ptf-navbar-inner,
.ptf-header--style-4 .ptf-navbar-inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}

.ptf-header--style-1 .ptf-navbar-logo,
.ptf-header--style-3 .ptf-navbar-logo,
.ptf-header--style-4 .ptf-navbar-logo,
.ptf-header--style-1 .ptf-nav,
.ptf-header--style-3 .ptf-nav,
.ptf-header--style-4 .ptf-nav
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}


.ptf-header--style-1 .ptf-nav,
.ptf-header--style-3 .ptf-nav,
.ptf-header--style-4 .ptf-nav
{
    margin-right: auto;
    margin-left: 8.75rem;
}
@media only screen and (max-width: 991px)
{
    .ptf-header--style-1 .ptf-nav,
    .ptf-header--style-3 .ptf-nav,
    .ptf-header--style-4 .ptf-nav
    {
        display: none;
    }
}

@media only screen and (max-width: 991px)
{
    .ptf-header--style-1 .ptf-navbar-logo,
    .ptf-header--style-3 .ptf-navbar-logo,
    .ptf-header--style-4 .ptf-navbar-logo
    {
        margin-right: auto;
    }
}

.ptf-header--style-1 .ptf-offcanvas-menu-icon,
.ptf-header--style-3 .ptf-offcanvas-menu-icon,
.ptf-header--style-4 .ptf-offcanvas-menu-icon
{
    margin-left: 2.5rem;
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-header--style-2 .ptf-navbar
{
    -webkit-box-shadow: inset 0 10px var(--ptf-accent-1);
            box-shadow: inset 0 10px var(--ptf-accent-1);
}

.ptf-header--style-2 .ptf-navbar-inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}

.ptf-header--style-2 .ptf-navbar-logo,
.ptf-header--style-2 .ptf-nav
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}

@media only screen and (max-width: 991px)
{
    .ptf-header--style-2 .ptf-navbar-logo
    {
        margin-right: auto;
    }
}

.ptf-header--style-2 .ptf-nav
{
    margin-right: 5rem;
    margin-left: auto;
}
@media only screen and (max-width: 991px)
{
    .ptf-header--style-2 .ptf-nav
    {
        display: none;
    }
}

.ptf-header--style-2 .ptf-offcanvas-menu-icon
{
    margin-left: 2.5rem;
}

/* SECTION: STYLE 3
-------------------------------------------- */
.ptf-header--style-3 .ptf-navbar-inner
{
    -webkit-box-shadow: inset 0 -2px var(--ptf-color-black);
            box-shadow: inset 0 -2px var(--ptf-color-black);
}

/* SECTION: STYLE 4
-------------------------------------------- */
.ptf-header--style-4 .ptf-nav
{
    margin-right: 5rem;
    margin-left: auto;
}

/* SECTION: STYLE 5
-------------------------------------------- */
.ptf-header--style-5 .ptf-navbar-inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}

.ptf-header--style-5 .ptf-navbar-logo,
.ptf-header--style-5 .ptf-nav
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}

.ptf-header--style-5 .ptf-nav,
.ptf-header--style-5 .ptf-offcanvas-menu-icon
{
    margin-left: auto;
}
@media only screen and (max-width: 991px)
{
    .ptf-header--style-5 .ptf-nav,
    .ptf-header--style-5 .ptf-offcanvas-menu-icon
    {
        display: none;
    }
}

.ptf-header--style-5 .ptf-offcanvas-menu-icon
{
    display: none;
}
@media only screen and (max-width: 991px)
{
    .ptf-header--style-5 .ptf-offcanvas-menu-icon
    {
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -ms-inline-flexbox;
        display:         inline-flex;
    }
}

/* SECTION: STYLE 6
-------------------------------------------- */
.ptf-header--style-6 .ptf-navbar-inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}

.ptf-header--style-6 .ptf-navbar-logo,
.ptf-header--style-6 .ptf-nav
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}

.ptf-header--style-6 .ptf-offcanvas-menu-icon
{
    margin-left: 6.875rem;
}

.ptf-header--style-6 .ptf-language-switcher
{
    margin-left: auto;
}

/* SECTION: STYLE 7
-------------------------------------------- */
.ptf-header--style-7 .ptf-navbar-inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    --ptf-navbar-height: 12.5rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}

.ptf-header--style-7 .ptf-navbar-logo
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
            justify-content: space-around;
    -webkit-box-flex: 1;
    -webkit-flex: auto;
        -ms-flex: auto;
            flex: auto;
}

.ptf-header--style-7 .ptf-nav,
.ptf-header--style-7 .ptf-offcanvas-menu-icon
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
}
@media only screen and (max-width: 991px)
{
    .ptf-header--style-7 .ptf-nav,
    .ptf-header--style-7 .ptf-offcanvas-menu-icon
    {
        display: none;
    }
}

.ptf-header--style-7 .ptf-offcanvas-menu-icon
{
    display: none;
}
@media only screen and (max-width: 991px)
{
    .ptf-header--style-7 .ptf-offcanvas-menu-icon
    {
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -ms-inline-flexbox;
        display:         inline-flex;
    }
}

.ptf-header--style-7 .ptf-navbar-socials
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
}
@media only screen and (max-width: 767px)
{
    .ptf-header--style-7 .ptf-navbar-socials a
    {
        display: none;
    }
}

/* SECTION: STYLE 8
-------------------------------------------- */
.ptf-header--style-8 .ptf-navbar-inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}

.ptf-header--style-8 .ptf-navbar-logo,
.ptf-header--style-8 .ptf-nav
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}

.ptf-header--style-8 .ptf-offcanvas-menu-icon
{
    margin-left: auto;
}

/* SECTION: EMPTY
-------------------------------------------- */
.ptf-header--empty .ptf-navbar-inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}

.ptf-header--empty .ptf-navbar-logo,
.ptf-header--empty .ptf-nav
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}

.ptf-header--empty .ptf-navbar-socials
{
    margin-left: auto;
}

/* SECTION: LANDING
-------------------------------------------- */
.ptf-header--landing .ptf-navbar-inner
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}

.ptf-header--landing .ptf-navbar-logo,
.ptf-header--landing .ptf-nav
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}

.ptf-header--landing .ptf-nav
{
    margin-right: auto;
    margin-left: 8.75rem;
}
@media only screen and (max-width: 991px)
{
    .ptf-header--landing .ptf-nav
    {
        display: none;
    }
}

.ptf-header--landing .ptf-btn
{
    margin-left: auto;
}

/* SECTION: NAVIGATION
-------------------------------------------- */
.ptf-nav--default
{
    min-height: var(--ptf-navbar-height);
}
.ptf-nav--default .sf-menu
{
    font-size: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}
.ptf-nav--default .sf-menu &gt; li
{
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;
    float: none;

    min-height: calc(100% - 1.5rem);
    padding: 0 1.5625rem; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-nav--default .sf-menu &gt; li:first-of-type
{
    padding-left: 0;
}
.ptf-nav--default .sf-menu &gt; li:last-of-type
{
    padding-right: 0;
}
.ptf-nav--default .sf-menu &gt; li &gt; a
{
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;

    text-transform: uppercase; 

    color: inherit;
}
.ptf-header--style-5 .ptf-nav--default .sf-menu &gt; li &gt; a
{
    font-weight: normal;

    text-transform: none; 

    color: var(--ptf-color-2);
}
.ptf-nav--default .sf-menu &gt; li &gt; a &gt; span
{
    position: relative;
}
.ptf-nav--default .sf-menu &gt; li &gt; a &gt; span::after
{
    position: absolute;
    bottom: -1rem;
    left: calc(50% - 2.5px);

    width: 5px;
    height: 5px;

    content: '';
    -webkit-transition: opacity var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: opacity var(--ptf-transition-duration) var(--ptf-transition-easing); 

    opacity: 0;
    border-radius: 50%;
    background-color: currentColor;
}
.ptf-header--style-5 .ptf-nav--default .sf-menu &gt; li &gt; a &gt; span::after
{
    display: none;
}
.ptf-nav--default .sf-menu &gt; li:hover &gt; a,
.ptf-nav--default .sf-menu &gt; li.sfHover &gt; a,
.ptf-nav--default .sf-menu &gt; li.current-menu-item &gt; a,
.ptf-nav--default .sf-menu &gt; li.current-menu-ancestor &gt; a
{
    color: var(--ptf-accent-1);
}
.ptf-header--style-5 .ptf-nav--default .sf-menu &gt; li:hover &gt; a,
.ptf-header--style-5
        .ptf-nav--default .sf-menu &gt; li.sfHover &gt; a,
.ptf-header--style-5
        .ptf-nav--default .sf-menu &gt; li.current-menu-item &gt; a,
.ptf-header--style-5
        .ptf-nav--default .sf-menu &gt; li.current-menu-ancestor &gt; a
{
    color: var(--ptf-color-white);
}
.ptf-nav--default .sf-menu &gt; li:hover &gt; a &gt; span::after,
.ptf-nav--default .sf-menu &gt; li.sfHover &gt; a &gt; span::after,
.ptf-nav--default .sf-menu &gt; li.current-menu-item &gt; a &gt; span::after,
.ptf-nav--default .sf-menu &gt; li.current-menu-ancestor &gt; a &gt; span::after
{
    opacity: 1;
}
.ptf-nav--default .sf-menu &gt; li.two-columns &gt; ul.sub-menu
{
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
}
.ptf-nav--default .sf-menu li.left ul.sub-menu
{
    margin-right: -1.5625rem;
    margin-left: 0;
}
.ptf-nav--default .sf-menu ul.sub-menu
{
    min-width: 18.125rem;
    margin-left: -1.5625rem;
    padding: 2rem 0;

    color: var(--ptf-color-black);
    background-color: var(--ptf-color-white);
}
.ptf-header--style-5 .ptf-nav--default .sf-menu ul.sub-menu
{
    color: var(--ptf-color-2);
    background-color: var(--ptf-color-16);
    -webkit-box-shadow: none;
            box-shadow: none;
}
.ptf-nav--default .sf-menu ul.sub-menu ul.sub-menu
{
    top: -2rem;

    margin-right: 0;
    margin-left: 0;
}
.ptf-nav--default .sf-menu ul.sub-menu li
{
    display: block;

    min-width: 13.75rem;
    padding: 0 2.5rem;
}
.ptf-nav--default .sf-menu ul.sub-menu li a
{
    font-size: 1rem;
    line-height: 1.875;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    padding: .3125rem 0;

    white-space: nowrap; 

    color: inherit;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
            justify-content: space-between;
}
.ptf-nav--default .sf-menu ul.sub-menu li:hover &gt; a,
.ptf-nav--default .sf-menu ul.sub-menu li.current-menu-item &gt; a,
.ptf-nav--default .sf-menu ul.sub-menu li.current-menu-ancestor &gt; a,
.ptf-nav--default .sf-menu ul.sub-menu li.sfHover &gt; a
{
    color: var(--ptf-accent-1);
}
.ptf-header--style-5 .ptf-nav--default .sf-menu ul.sub-menu li:hover &gt; a,
.ptf-header--style-5
          .ptf-nav--default .sf-menu ul.sub-menu li.current-menu-item &gt; a,
.ptf-header--style-5
          .ptf-nav--default .sf-menu ul.sub-menu li.current-menu-ancestor &gt; a,
.ptf-header--style-5
          .ptf-nav--default .sf-menu ul.sub-menu li.sfHover &gt; a
{
    color: var(--ptf-color-white);
}

/* HEADER: SLIDE
-------------------------------------------- */
.ptf-header--slide
{
    position: fixed;
    z-index: 80;
    top: 0;
    bottom: 0;
    left: 0;

    width: 5rem;
}
@media only screen and (min-width: 1200px)
{
    .ptf-header--slide
    {
        width: 6.25rem;
    }
}
@media (min-width: 1920px)
{
    .ptf-header--slide
    {
        width: 9.375rem;
    }
}
.ptf-header--slide .ptf-navbar
{
    height: 100%;
    padding: 0;
}
.ptf-header--slide .ptf-navbar-inner
{
            flex-direction: column;

    height: 100%;
    padding: 0;

    text-align: center;

    background-color: var(--ptf-color-19);
    -webkit-box-shadow: inset -1px 0 var(--ptf-color-14);
            box-shadow: inset -1px 0 var(--ptf-color-14); 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
            justify-content: space-between;
}
.ptf-header--slide .ptf-navbar-inner--top
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    padding-top: 1.25rem; 

    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
@media only screen and (min-width: 1200px)
{
    .ptf-header--slide .ptf-navbar-inner--top
    {
        padding-top: 2.5rem;
    }
}
@media (min-width: 1920px)
{
    .ptf-header--slide .ptf-navbar-inner--top
    {
        padding-top: 3.75rem;
    }
}
.ptf-header--slide .ptf-navbar-inner--center
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-header--slide .ptf-navbar-inner--bottom
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    padding-bottom: 1.25rem; 

    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
@media only screen and (min-width: 1200px)
{
    .ptf-header--slide .ptf-navbar-inner--bottom
    {
        padding-bottom: 2.5rem;
    }
}
@media (min-width: 1920px)
{
    .ptf-header--slide .ptf-navbar-inner--bottom
    {
        padding-bottom: 3.75rem;
    }
}
.ptf-header--slide .ptf-navbar-inner--bottom .ptf-navbar-socials
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column; 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
.ptf-header--slide .ptf-navbar-inner--bottom .ptf-navbar-socials a + a
{
    margin-top: .875rem;
    margin-left: 0 !important;
}

/* CONTENT AREA
-------------------------------------------- */
.ptf-is--header-slide body
{
    padding-left: 5rem;
}
@media only screen and (min-width: 1200px)
{
    .ptf-is--header-slide body
    {
        padding-left: 6.25rem;
    }
}
@media (min-width: 1920px)
{
    .ptf-is--header-slide body
    {
        padding-left: 9.375rem;
    }
}

/* MENU: OFFCANVAS MENU
-------------------------------------------- */
.ptf-offcanvas-menu
{
    position: fixed;
    z-index: 70;
    top: 0;
    right: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    overflow: auto; 
            flex-direction: column;

    width: 100%;
    max-width: 30rem;
    height: 100%;
    padding: 3.125rem 4.0625rem 3.125rem;

    -webkit-transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%);

    background-color: var(--ptf-color-white);

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
@media only screen and (max-width: 575px)
{
    .ptf-offcanvas-menu
    {
        padding: 1.875rem;
    }
}
.ptf-offcanvas-menu.is-open
{
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
}
.ptf-offcanvas-menu__header
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
            justify-content: space-between;
}
.ptf-offcanvas-menu__header .ptf-language-switcher
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}
.ptf-offcanvas-menu__header .ptf-language-switcher a
{
    font-size: .875rem; 

    text-transform: uppercase;

    color: var(--ptf-color-black);
}
.ptf-offcanvas-menu__header .ptf-language-switcher a:hover,
.ptf-offcanvas-menu__header .ptf-language-switcher a.is-active
{
    color: var(--ptf-accent-1);
}
.ptf-offcanvas-menu__header .ptf-language-switcher a.is-active
{
    font-weight: 700;
}
.ptf-offcanvas-menu__header .ptf-language-switcher a + a
{
    margin-left: 1.5rem;
}
.ptf-offcanvas-menu__header .ptf-offcanvas-menu-icon
{
    color: var(--ptf-color-black);
}
.ptf-offcanvas-menu__header .ptf-offcanvas-menu-icon:hover
{
    color: var(--ptf-accent-1);
}
.ptf-offcanvas-menu__navigation
{
    overflow-y: auto; 

    height: 100%;
    margin-top: 3.125rem;
    margin-bottom: 1.25rem;
    padding: .625rem 0;
}
.ptf-offcanvas-menu__footer
{
    margin-top: auto;
}
.ptf-offcanvas-menu__socials
{
    margin-top: 1.5625rem;
}
.ptf-offcanvas-menu__copyright
{
    font-size: .875rem; 

    color: var(--ptf-color-3);
}
.ptf-offcanvas-menu__copyright span
{
    color: var(--ptf-color-black);
}

/* SECTION: NAVIGATION
-------------------------------------------- */
/* MENU: SLIDE MENU
-------------------------------------------- */
.ptf-slide-menu
{
    position: fixed;
    z-index: 70;
    top: 0;
    left: 5rem;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    overflow: auto; 
            flex-direction: column;

    width: 100%;
    max-width: 22.5rem;
    height: 100%;
    padding: 3.125rem 4.0625rem 3.125rem;

    -webkit-transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%);

    background-color: var(--ptf-color-19);

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
@media only screen and (min-width: 1200px)
{
    .ptf-slide-menu
    {
        left: 6.25rem;
    }
}
@media only screen and (max-width: 575px)
{
    .ptf-slide-menu
    {
        padding: 1.875rem;
    }
}
@media (min-width: 1920px)
{
    .ptf-slide-menu
    {
        left: 9.375rem;
    }
}
.ptf-slide-menu.is-open
{
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
}
.ptf-slide-menu__navigation
{
    overflow-y: auto; 

    height: 100%;
    padding: 1.875rem 0;
}

/* SECTION: NAVIGATION
-------------------------------------------- */
/* LAYOUT: SIDEBAR
-------------------------------------------- */
.ptf-sidebar--right
{
    padding-left: 3.75rem;
}
@media only screen and (max-width: 1199px)
{
    .ptf-sidebar--right
    {
        margin-top: 7.5rem;
        padding-left: 0;
    }
}

.ptf-sidebar--left
{
    padding-right: 3.75rem;
}
@media only screen and (max-width: 1199px)
{
    .ptf-sidebar--left
    {
        margin-top: 7.5rem;
        padding-right: 0;
    }
}

/* WIDGET
-------------------------------------------- */
.ptf-widget-title
{
    margin-bottom: 1.5625rem;
}

.ptf-widget + .ptf-widget
{
    margin-top: 5rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-widget + .ptf-widget
    {
        margin-top: 2.5rem;
    }
}

/* WIDGET: SEARCH
-------------------------------------------- */
.ptf-widget-search .ptf-search-form
{
    position: relative;

    max-width: 30.625rem;
}
.ptf-widget-search .ptf-search-form input[type=text]
{
    padding-top: .625rem;

    border-color: var(--ptf-color-black);
}
.ptf-widget-search .ptf-search-form button
{
    font-size: 1.25rem;

    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

    padding: 0;

    cursor: pointer; 
    -webkit-transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);

    color: var(--ptf-color-black);
    border: none;
    background: none;
}
.ptf-widget-search .ptf-search-form button:hover
{
    color: var(--ptf-accent-1);
}

/* WIDGET: POPULAR POSTS
-------------------------------------------- */
.ptf-widget-popular-posts .ptf-popular-post
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    padding-bottom: 1rem; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-widget-popular-posts .ptf-popular-post__number
{
    font-size: 1.875rem;

    width: 2.5rem;

    -webkit-transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: color var(--ptf-transition-duration) var(--ptf-transition-easing); 

    color: var(--ptf-color-1);

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}
.ptf-widget-popular-posts .ptf-popular-post__content
{
    padding-left: 1.5625rem;

    border-left: 1px solid var(--ptf-color-6); 

    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
}
.ptf-widget-popular-posts .ptf-popular-post__content .cat
{
    font-size: .75rem; 

    text-transform: uppercase;

    color: var(--ptf-color-3);
}
.ptf-widget-popular-posts .ptf-popular-post__content h6
{
    font-size: 1.125rem;

    -webkit-transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
}
.ptf-widget-popular-posts .ptf-popular-post:hover .ptf-popular-post__number
{
    color: var(--ptf-color-black);
}
.ptf-widget-popular-posts .ptf-popular-post:hover .ptf-popular-post__content h6
{
    color: var(--ptf-accent-1);
}

.ptf-widget-popular-posts .ptf-popular-post + .ptf-popular-post
{
    padding-top: 1rem;

    border-top: 1px solid var(--ptf-color-6);
}

/* WIDGET: CATEGORIES
-------------------------------------------- */
.ptf-widget-categories ul
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}

.ptf-widget-categories li
{
    display: block;
}
.ptf-widget-categories li:not(:last-of-type)
{
    padding-bottom: .9375rem;
}
.ptf-widget-categories li a
{
    font-size: .875rem;
    font-weight: 700; 

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    text-transform: uppercase;

    color: var(--ptf-color-black);

    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
            justify-content: space-between;
}
.ptf-widget-categories li a span
{
    font-weight: normal;

    -webkit-transition: inherit;
            transition: inherit; 

    color: var(--ptf-color-3);
}
.ptf-widget-categories li a:hover
{
    color: var(--ptf-accent-1);
}
.ptf-widget-categories li a:hover span
{
    color: var(--ptf-accent-1);
}

.ptf-widget-categories li + li
{
    padding-top: .9375rem;

    border-top: 1px solid var(--ptf-color-6);
}

/* WIDGET: NEWSLETTER
-------------------------------------------- */
.ptf-widget-newsletter
{
    padding: 2.8125rem 2.8125rem 3.75rem;

    background-color: var(--ptf-color-15);
}
.ptf-widget-newsletter .ptf-widget-title
{
    margin-bottom: .3125rem;
}
.ptf-widget-newsletter form
{
    margin-top: 1.875rem;
}
.ptf-widget-newsletter form input[type=email]
{
    font-size: .875rem;

    padding-top: .8125rem;
    padding-bottom: .8125rem;

    background-color: var(--ptf-color-white);
}
.ptf-widget-newsletter form button
{
    font-size: 1rem; 

    margin-top: .9375rem;
    padding-top: 1.0625rem;
    padding-bottom: 1.0625rem;

    text-transform: uppercase;
}

/* WIDGET: LINKS
-------------------------------------------- */
.ptf-widget-links ul
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}
.ptf-widget-links ul li + li
{
    margin-top: 1.375rem;
}
.ptf-widget-links ul a
{
    font-size: .875rem;
    font-weight: 600; 

    text-transform: uppercase;
}
.ptf-widget-links ul a:hover
{
    color: var(--ptf-accent-1);
}

/* WIDGET: LINKS
-------------------------------------------- */
.ptf-widget-services-list ul
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}
.ptf-widget-services-list ul li
{
    padding-bottom: 1.125rem;
}
.ptf-widget-services-list ul li a
{
    font-size: 1.25rem; 

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    text-transform: uppercase;

    color: var(--ptf-color-black);

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-widget-services-list ul li a i
{
    font-size: 1.875rem;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    width: 3.75rem;
    height: 2.5rem;
    margin-right: 1.875rem;

    -webkit-transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: color var(--ptf-transition-duration) var(--ptf-transition-easing); 

    color: var(--ptf-color-3);
    border-right: 1px solid var(--ptf-color-6);

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}
.ptf-widget-services-list ul li a:hover
{
    font-weight: 700;
}
.ptf-widget-services-list ul li a:hover,
.ptf-widget-services-list ul li a:hover i
{
    color: var(--ptf-accent-1);
}
.ptf-widget-services-list ul li + li
{
    padding-top: 1.125rem;

    border-top: 1px solid var(--ptf-color-6);
}

/* WIDGET: LINKS
-------------------------------------------- */
.ptf-widget-faq .ptf-accordion
{
    margin-top: calc(1.125rem * -1);
}
.ptf-widget-faq .ptf-accordion dt
{
    position: relative;

    padding-top: 1.125rem;
    padding-right: 3.125rem;
    padding-bottom: 1.125rem;
}
.ptf-widget-faq .ptf-accordion dt::after
{
    font-family: var(--ptf-linear-icons-light);
    font-size: 1rem;

    position: absolute;
    top: calc(1.125rem + .25em);
    right: 0;

    content: '\ecbf';
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
}
.ptf-widget-faq .ptf-accordion dt.is-open
{
    color: var(--ptf-accent-1);
}
.ptf-widget-faq .ptf-accordion dt.is-open::after
{
    -webkit-transform: scaleY(-1);
        -ms-transform: scaleY(-1);
            transform: scaleY(-1);
}
.ptf-widget-faq .ptf-accordion dd
{
    padding-bottom: .9375rem;
}
.ptf-widget-faq .ptf-accordion dd + dt
{
    border-top: 1px solid var(--ptf-color-6);
}

/* 04. Pages */
/* PAGE: 404
-------------------------------------------- */
.ptf-page--404 p
{
    font-size: 1.5rem;
    line-height: 1.5; 

    max-width: 21.875rem;
}

.ptf-page--404 a
{
    font-size: 1.875rem;
    font-weight: 700; 

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    text-transform: uppercase;

    color: var(--ptf-color-black);
}
.ptf-page--404 a:hover
{
    -webkit-transform: translate(0, -2px);
        -ms-transform: translate(0, -2px);
            transform: translate(0, -2px); 

    color: var(--ptf-accent-1);
}

.ptf-page--404 img
{
    width: 38.9375rem;
}

/* PAGE: BLOG
-------------------------------------------- */
/* SECTION: POST
-------------------------------------------- */
.ptf-post
{
    position: relative;
}
.ptf-post__link
{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.ptf-post__meta span + span::before
{
    margin-right: .5rem;
    margin-left: .5rem; 

    content: '/';
}
.ptf-post__media
{
    position: relative;

    overflow: hidden;
}
.ptf-post__media img
{
    width: 100%;

    -webkit-transition: -webkit-transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), -webkit-filter var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), -webkit-filter var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), filter var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), filter var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), -webkit-filter var(--ptf-transition-duration) var(--ptf-transition-easing);

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    will-change: transform;
}
.ptf-post:hover .ptf-post__media img
{
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
}

/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-post--style-1
{
    --ptf-post-header-indent: 2.5rem;
}
.ptf-post--style-1 .ptf-post__header
{
    padding-top: var(--ptf-post-header-indent);
}
.ptf-post--style-1 .ptf-post__meta
{
    font-size: .875rem; 

    margin-bottom: .9375rem;

    text-transform: uppercase;

    color: var(--ptf-color-black);
}
.ptf-post--style-1 .ptf-post__meta span.cat
{
    font-weight: 700;
}
.ptf-post--style-1 .ptf-post__title
{
    line-height: 1.16;
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-post--style-2,
.ptf-post--style-4
{
    overflow: hidden;
}
.ptf-post--style-2 .ptf-post__media,
.ptf-post--style-4 .ptf-post__media
{
    position: relative;
}
@media only screen and (max-width: 991px)
{
    .ptf-post--style-2 .ptf-post__media__content,
    .ptf-post--style-4 .ptf-post__media__content
    {
        display: none;
    }
}
@media only screen and (min-width: 992px)
{
    .ptf-post--style-2 .ptf-post__media__content,
    .ptf-post--style-4 .ptf-post__media__content
    {
        position: absolute;
        z-index: 2; 
        right: 0;
        bottom: 0;
        left: 0;
    }
    .ptf-post--style-2 .ptf-post__media__content .ptf-post__meta,
    .ptf-post--style-4 .ptf-post__media__content .ptf-post__meta,
    .ptf-post--style-2 .ptf-post__media__content .ptf-post__title,
    .ptf-post--style-4 .ptf-post__media__content .ptf-post__title
    {
        color: var(--ptf-color-white);
    }
}
.ptf-post--style-2 .ptf-post__media__content,
.ptf-post--style-4 .ptf-post__media__content
{
    padding: 1.25rem 1.5rem;
}
@media (min-width: 1920px)
{
    .ptf-post--style-2 .ptf-post__media__content,
    .ptf-post--style-4 .ptf-post__media__content
    {
        padding: 2.8125rem;
    }
}
.ptf-post--style-2 .ptf-post__media::after,
.ptf-post--style-4 .ptf-post__media::after
{
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    content: '';

    background-color: rgba(0, 0, 0, .1);
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .5)), color-stop(55%, transparent));
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .5), transparent 55%);
    background-image:         linear-gradient(to top, rgba(0, 0, 0, .5), transparent 55%);
}
.ptf-post--style-2 .ptf-post__content,
.ptf-post--style-4 .ptf-post__content
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    width: 100%;
    padding: 1.25rem 1.5rem;

    -webkit-transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-duration);
            transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-duration);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-duration);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-duration), -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-duration); 

    border: solid 1px var(--ptf-color-black);
    border-top: none;
    background-color: var(--ptf-color-white);

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
@media only screen and (min-width: 992px)
{
    .ptf-post--style-2 .ptf-post__content,
    .ptf-post--style-4 .ptf-post__content
    {
        position: absolute;
        z-index: 3;
        top: 0;
        left: 0;

        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display:         flex;
                flex-direction: column;

        height: 100%;

        -webkit-transform: translateY(100%);
            -ms-transform: translateY(100%);
                transform: translateY(100%); 

        border-top: solid 1px var(--ptf-color-black);

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
    }
}
@media (min-width: 1920px)
{
    .ptf-post--style-2 .ptf-post__content,
    .ptf-post--style-4 .ptf-post__content
    {
        padding: 2.8125rem;
    }
}
.ptf-post--style-2 .ptf-post__meta,
.ptf-post--style-4 .ptf-post__meta
{
    font-size: .875rem; 

    margin-bottom: .9375rem;

    text-transform: uppercase;

    color: var(--ptf-color-black);
}
.ptf-post--style-2 .ptf-post__meta span.cat,
.ptf-post--style-4 .ptf-post__meta span.cat
{
    font-weight: 700;
}
.ptf-post--style-2 .ptf-post__title,
.ptf-post--style-4 .ptf-post__title
{
    line-height: 1.16;
}
@media (max-width: 1919px)
{
    .ptf-post--style-2 .ptf-post__title,
    .ptf-post--style-4 .ptf-post__title
    {
        font-size: 1.75rem;
    }
}
.ptf-post--style-2 .ptf-post__excerpt,
.ptf-post--style-4 .ptf-post__excerpt
{
    font-size: 1.125rem; 

    margin-top: 1.875rem;

    color: var(--ptf-color-black);
}
@media (max-width: 1919px)
{
    .ptf-post--style-2 .ptf-post__excerpt,
    .ptf-post--style-4 .ptf-post__excerpt
    {
        display: none;
    }
}
.ptf-post--style-2 .ptf-post__footer,
.ptf-post--style-4 .ptf-post__footer
{
    margin-top: 1.875rem;

    color: var(--ptf-color-black);
}
@media only screen and (min-width: 992px)
{
    .ptf-post--style-2 .ptf-post__footer,
    .ptf-post--style-4 .ptf-post__footer
    {
        margin-top: auto;
    }
}
.ptf-post--style-2 .ptf-post__footer .ptf-read-more-link,
.ptf-post--style-4 .ptf-post__footer .ptf-read-more-link
{
    font-size: .875rem;
    font-weight: 700; 

    text-transform: uppercase;
}
.ptf-post--style-2:hover .ptf-post__content,
.ptf-post--style-4:hover .ptf-post__content
{
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
}

/* SECTION: STYLE 3
-------------------------------------------- */
.ptf-post--style-3
{
    display: grid;

    grid-template-columns: 27.5rem 1fr;
    grid-gap: 4.375rem;
}
@media only screen and (max-width: 991px)
{
    .ptf-post--style-3
    {
        grid-gap: 2.1875rem;
    }
}
@media only screen and (max-width: 767px)
{
    .ptf-post--style-3
    {
        grid-template-columns: 1fr;
    }
}
.ptf-post--style-3 .ptf-post__content
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-post--style-3 .ptf-post__meta
{
    font-size: .875rem; 

    margin-bottom: 1.875rem;

    color: var(--ptf-color-3);
}
.ptf-post--style-3 .ptf-post__meta span
{
    display: block;
}
.ptf-post--style-3 .ptf-post__meta span::before
{
    display: none;
}
.ptf-post--style-3 .ptf-post__meta span.cat
{
    font-size: .75rem;
    font-weight: 700; 

    text-transform: uppercase;

    color: var(--ptf-color-black);
}
.ptf-post--style-3 .ptf-post__info
{
    margin-top: auto;
    padding-top: 5rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-post--style-3 .ptf-post__info
    {
        padding-top: 2.5rem;
    }
}
.ptf-post--style-3 .ptf-post__info a
{
    font-size: .875rem;
}
.ptf-post--style-3 .ptf-post__info a span
{
    color: var(--ptf-color-black);
}
.ptf-post--style-3 .ptf-post__info a i
{
    font-size: 1rem; 

    margin-right: .625rem;
}
.ptf-post--style-3 .ptf-post__info a + a
{
    margin-left: 3.125rem;
}

.grid-item:not(:last-of-type) .ptf-post--style-3
{
    padding-bottom: .9375rem;

    border-bottom: 1px solid var(--ptf-color-14);
}

/* SECTION: STYLE 4
-------------------------------------------- */
.ptf-post--style-4 .ptf-post__content
{
    border: none;
    background-color: var(--ptf-accent-1);
}

.ptf-post--style-4 .ptf-post__title,
.ptf-post--style-4 .ptf-post__footer
{
    color: var(--ptf-color-white);
}
.ptf-post--style-4 .ptf-post__title a:hover,
.ptf-post--style-4 .ptf-post__footer a:hover
{
    color: inherit;
}

/* PAGE: PORTFOLIO
-------------------------------------------- */
/* SECTION: WORK
-------------------------------------------- */
.ptf-work
{
    position: relative;
}
.ptf-work__link
{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.ptf-work__media
{
    position: relative;

    overflow: hidden;
}
.ptf-work__media img
{
    width: 100%;

    -webkit-transition: -webkit-transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), -webkit-filter var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), -webkit-filter var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), filter var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), filter var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), -webkit-filter var(--ptf-transition-duration) var(--ptf-transition-easing);

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    will-change: transform;
}
.ptf-work:hover .ptf-work__media img
{
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
}

/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-work--style-1 .ptf-work__meta,
.ptf-work--style-2 .ptf-work__meta,
.ptf-work--style-3 .ptf-work__meta
{
    padding-top: 2.5rem;
}

.ptf-work--style-1 .ptf-work__category,
.ptf-work--style-2 .ptf-work__category,
.ptf-work--style-3 .ptf-work__category
{
    font-size: .875rem; 

    margin-bottom: .625rem;
}

.ptf-work--style-1.ptf-work--large-title .ptf-work__title,
.ptf-work--large-title.ptf-work--style-2 .ptf-work__title,
.ptf-work--large-title.ptf-work--style-3 .ptf-work__title
{
    font-size: 2.25rem;
}

.ptf-work--style-1 .ptf-work__title a:hover,
.ptf-work--style-2 .ptf-work__title a:hover,
.ptf-work--style-3 .ptf-work__title a:hover
{
    text-decoration: underline;

    color: inherit;
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-work--style-2 .ptf-work__meta
{
    padding-top: 2.1875rem;
}

.ptf-work--style-2 .ptf-work__category
{
    margin-top: .3125rem;

    text-transform: uppercase;
}

/* SECTION: STYLE 3
-------------------------------------------- */
.ptf-work--style-3 .ptf-work__media img
{
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
}

.ptf-work--style-3 .ptf-work__meta
{
    padding-top: 2.8125rem;

    -webkit-transition: opacity var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: opacity var(--ptf-transition-duration) var(--ptf-transition-easing); 

    opacity: .45;
}

.ptf-work--style-3 .ptf-work__category
{
    font-size: 1rem; 

    text-transform: uppercase;
}

.ptf-work--style-3.ptf-work--large-title .ptf-work__title
{
    font-size: 3rem;
}

.ptf-work--style-3:hover .ptf-work__meta
{
    opacity: 1;
}

.ptf-work--style-3:hover .ptf-work__media img
{
    -webkit-filter: grayscale(0);
            filter: grayscale(0);
}

/* SECTION: STYLE 4
-------------------------------------------- */
.ptf-work--style-4
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    padding: 2.1875rem 0;

    background-color: var(--ptf-color-white);
    -webkit-box-shadow: inset 0 -1px var(--ptf-color-black);
            box-shadow: inset 0 -1px var(--ptf-color-black); 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
@media only screen and (max-width: 991px)
{
    .ptf-work--style-4
    {
        display: grid;

        grid-gap: .625rem;
    }
}
@media only screen and (min-width: 992px)
{
    .ptf-work--style-4 .ptf-work__date
    {
        margin-left: auto;
    }
}
.ptf-work--style-4 .ptf-work__category
{
    -webkit-flex-basis: 16.25rem;
    -ms-flex-preferred-size: 16.25rem;
            flex-basis: 16.25rem;
}
.ptf-work--style-4 .ptf-work__title
{
    font-size: 2.25rem;

    -webkit-transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
}
.ptf-work--style-4 .ptf-work__category,
.ptf-work--style-4 .ptf-work__date
{
    font-size: 1rem; 

    color: var(--ptf-color-3);
}
.ptf-work--style-4:hover .ptf-work__title
{
    color: var(--ptf-accent-1);
}

.grid-item:nth-child(2) .ptf-work--style-4
{
    padding-top: 0 !important;
}

.grid-item:last-of-type .ptf-work--style-4
{
    padding-bottom: 0 !important;

    -webkit-box-shadow: none;
            box-shadow: none;
}

/* SECTION: STYLE 5
-------------------------------------------- */
.ptf-work--style-5
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    padding: 2.1875rem 0;

    -webkit-box-shadow: inset 0 -1px var(--ptf-color-black);
            box-shadow: inset 0 -1px var(--ptf-color-black); 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
@media only screen and (max-width: 991px)
{
    .ptf-work--style-5
    {
        display: grid;

        grid-gap: .625rem;
    }
}
.ptf-work--style-5 .ptf-work__date
{
    font-size: 1rem; 

    color: var(--ptf-color-3);

    -webkit-flex-basis: 10.625rem;
    -ms-flex-preferred-size: 10.625rem;
            flex-basis: 10.625rem;
}
.ptf-work--style-5 .ptf-work__title
{
    font-size: 1.5rem;
    font-weight: normal;
}

.grid-item:nth-child(2) .ptf-work--style-5
{
    padding-top: 0 !important;
}

.grid-item:last-of-type .ptf-work--style-5
{
    padding-bottom: 0 !important;

    -webkit-box-shadow: none;
            box-shadow: none;
}

/* SECTION: STYLE 6
-------------------------------------------- */
.ptf-work--style-6 .ptf-work__meta
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    padding: 2.8125rem;

    -webkit-transition: opacity calc(var(--ptf-transition-duration) * 2) var(--ptf-transition-easing);
            transition: opacity calc(var(--ptf-transition-duration) * 2) var(--ptf-transition-easing); 

    opacity: 0;
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
            justify-content: flex-end;
}
@media (min-width: 1920px)
{
    .ptf-work--style-6 .ptf-work__meta
    {
        padding: 4.6875rem;
    }
}
.ptf-work--style-6 .ptf-work__meta svg
{
    font-size: 3.75rem;

    position: absolute;
    top: 2.8125rem;
    right: 2.8125rem;

    -webkit-transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-duration) var(--ptf-transition-easing);
}
@media (min-width: 1920px)
{
    .ptf-work--style-6 .ptf-work__meta svg
    {
        top: 4.6875rem;
        right: 4.6875rem;
    }
}

.ptf-work--style-6 .ptf-work__category
{
    margin-bottom: .625rem;

    text-transform: uppercase;
}

.ptf-work--style-6 .ptf-work__title
{
    font-size: 2.25rem; 

    color: inherit;
}
@media (min-width: 1920px)
{
    .ptf-work--style-6 .ptf-work__title
    {
        font-size: 3rem;
    }
}

.ptf-work--style-6:hover .ptf-work__meta
{
    opacity: 1;
}
.ptf-work--style-6:hover .ptf-work__meta svg
{
    -webkit-transform: translate3d(5px, -5px, 0);
            transform: translate3d(5px, -5px, 0);
}

/* PORTFOLIO: PAGINATION
-------------------------------------------- */
/* SECTION: PAGINATION
-------------------------------------------- */
.ptf-page-navigation
{
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    margin: 0;
    margin-top: -.625rem;
    margin-left: calc(-1 * 1.875rem);
    padding: 0;

    list-style-type: none;
}
.ptf-page-navigation li
{
    font-size: 1.125rem;
    font-weight: 700; 

    margin-top: .625rem;
    margin-left: 1.875rem;
    padding: 6px 2px;

    color: var(--ptf-color-black);
}
.ptf-page-navigation li.next
{
    padding-left: .625rem;
}
.ptf-page-navigation li.is-active
{
    color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 -2px var(--ptf-accent-1);
            box-shadow: inset 0 -2px var(--ptf-accent-1);
}

/* SECTION: LOAD MORE
-------------------------------------------- */
.ptf-load-more
{
    font-size: 1rem;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    width: 8.125rem;
    height: 8.125rem;

    text-transform: uppercase;

    color: var(--ptf-color-black);
    border-radius: 50%;
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-color-1);
            box-shadow: inset 0 0 0 1px var(--ptf-color-1); 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-load-more:hover
{
    -webkit-transform: translateY(-2px);
        -ms-transform: translateY(-2px);
            transform: translateY(-2px); 

    color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
}

/* PORTFOLIO: FILTERS
-------------------------------------------- */
.ptf-filters
{
    position: relative;
    z-index: 1;

    margin: 0;
    margin-top: -.625rem;
    margin-left: calc(-1 * 2.5rem);
    padding: 0;

    list-style-type: none;
}
.ptf-filters .filter-item
{
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    margin-top: .625rem;
    margin-left: 2.5rem;

    cursor: pointer; 
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
}
.ptf-filters .filter-item .filter-counter
{
    font-size: .75rem; 

    margin-left: .1875rem;
}

/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-filters--style-1
{
    font-size: 1.125rem; 

    color: var(--ptf-color-black);
}
.ptf-filters--style-1 .filter-item:hover,
.ptf-filters--style-1 .filter-item-active
{
    color: var(--ptf-accent-1);
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-filters--style-2
{
    font-size: 1rem;
    font-weight: 600; 

    text-transform: uppercase;

    color: var(--ptf-color-black);
}
.ptf-filters--style-2 .filter-item:hover,
.ptf-filters--style-2 .filter-item-active
{
    color: var(--ptf-accent-1);
}

/* SECTION: STYLE 3
-------------------------------------------- */
.ptf-filters--style-3
{
    font-size: 1.125rem; 

    margin-left: calc(-1 * .875rem);

    color: var(--ptf-color-3);
}
.ptf-filters--style-3 .filter-item
{
    margin-left: .875rem;
}
.ptf-filters--style-3 .filter-item:hover,
.ptf-filters--style-3 .filter-item-active
{
    color: var(--ptf-color-black);
}

/* SECTION: STYLE 4
-------------------------------------------- */
.ptf-filters--style-4
{
    font-size: 1rem; 

    margin-left: calc(-1 * 2.5rem);

    text-transform: uppercase;

    color: var(--ptf-color-3);
}
.ptf-filters--style-4 .filter-item
{
    margin-left: 2.5rem;
}
.ptf-filters--style-4 .filter-item:hover,
.ptf-filters--style-4 .filter-item-active
{
    color: var(--ptf-color-black);
}

/* PAGE: SINGLE POST
-------------------------------------------- */
.ptf-single-post__header
{
    padding: 10rem 0 6.25rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-single-post__header
    {
        padding: 5rem 0 3.125rem;
    }
}
.ptf-single-post__header--style-1
{
    text-align: center;
}
.ptf-single-post__header .ptf-single-post__meta
{
    margin-top: 2.5rem;
}

.ptf-single-post__meta
{
    font-size: .875rem; 

    text-transform: uppercase;

    color: var(--ptf-color-black);
}
.ptf-single-post__meta span.cat
{
    font-weight: 700;
}
.ptf-single-post__meta span + span::before
{
    margin-right: .5rem;
    margin-left: .5rem; 

    content: '/';
}

.ptf-single-post__media img
{
    width: 100%;
}

.ptf-single-post__wrapper
{
    padding-top: 5.625rem;
    padding-bottom: 10rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-single-post__wrapper
    {
        padding-top: 2.8125rem;
        padding-bottom: 5rem;
    }
}
@media only screen and (min-width: 1200px)
{
    .ptf-single-post__wrapper .alignwide
    {
        width: auto;
        margin-right: calc(calc(-25% - calc(var(--bs-gutter-x) / 2)) - calc(.75rem / 2));
        margin-left: calc(calc(-25% - calc(var(--bs-gutter-x) / 2)) - calc(.75rem / 2));
    }
}

.ptf-single-post__excerpt
{
    font-size: 1.875rem;
    font-weight: 700; 
    line-height: 1.6;

    margin-bottom: 3.75rem;
    padding-right: 5%;

    color: var(--ptf-color-black);
}
@media only screen and (max-width: 767px)
{
    .ptf-single-post__excerpt
    {
        margin-bottom: 1.875rem;
    }
}

.ptf-single-post__content
{
    font-size: 1.125rem;
}
.ptf-single-post__content ul
{
    padding-left: 1.875rem;
}

.ptf-single-post__info
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    margin-bottom: 5rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-single-post__info
    {
        margin-bottom: 2.5rem;
    }
}
.ptf-single-post__info a
{
    font-size: .875rem;
}
.ptf-single-post__info a span
{
    color: var(--ptf-color-black);
}
.ptf-single-post__info a i
{
    font-size: 1rem; 

    margin-right: .625rem;
}
.ptf-single-post__info a.report
{
    margin-left: auto;
}
@media only screen and (max-width: 767px)
{
    .ptf-single-post__info a.report
    {
        display: none;
    }
}
.ptf-single-post__info a + a
{
    margin-left: 3.125rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-single-post__info a + a
    {
        margin-left: 1.875rem;
    }
}

.ptf-single-post__footer
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    margin-top: 5.625rem;
    padding-bottom: 5.625rem; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
            justify-content: space-between;
}
@media only screen and (max-width: 767px)
{
    .ptf-single-post__footer
    {
        margin-top: 2.8125rem;
        padding-bottom: 2.8125rem;
    }
}
@media only screen and (max-width: 991px)
{
    .ptf-single-post__footer
    {
                flex-direction: column; 

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
    }
}
.ptf-single-post__footer .ptf-post-socials
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
@media only screen and (max-width: 991px)
{
    .ptf-single-post__footer .ptf-post-socials
    {
        margin-top: 1.875rem;
    }
}
.ptf-single-post__footer .ptf-post-socials span
{
    font-size: .875rem; 

    margin-right: 1.25rem;

    text-transform: uppercase;

    color: var(--ptf-color-black);
}
@media only screen and (max-width: 991px)
{
    .ptf-single-post__footer .ptf-post-socials span
    {
        display: none;
    }
}

/* 05. Partials */
/* PARTIAL: ABOUT AUTHOR
-------------------------------------------- */
.ptf-about-author
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    padding: 3.75rem 0 0;

    border-top: 1px solid var(--ptf-color-14);
}
.ptf-about-author__avatar
{
    max-width: 5rem; 

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}
@media only screen and (max-width: 991px)
{
    .ptf-about-author__avatar
    {
        display: none;
    }
}
.ptf-about-author__avatar img
{
    border-radius: 50%;
}
.ptf-about-author__content
{
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
}
.ptf-about-author .ptf-about-author__avatar + .ptf-about-author__content
{
    margin-left: 2.375rem;
}
@media only screen and (max-width: 991px)
{
    .ptf-about-author .ptf-about-author__avatar + .ptf-about-author__content
    {
        margin-left: 0;
    }
}
.ptf-about-author__header
{
    margin-bottom: 1.125rem;
}
.ptf-about-author__header h6
{
    font-size: 1.5rem;
}
.ptf-about-author__header span
{
    font-size: .75rem; 

    display: block;

    margin-top: .25rem;

    text-transform: uppercase;

    color: var(--ptf-color-3);
}
.ptf-about-author__text
{
    padding-right: 1.5625rem;
}
.ptf-about-author .ptf-social-icon
{
    margin-top: 1.875rem;
}

/* PARTIAL: CIRCLE LINK
-------------------------------------------- */
.ptf-circle-link
{
    font-size: 1.5rem;
    line-height: 1.25;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;
            flex-direction: column;

    width: 14.375rem;
    height: 14.375rem;
    padding-top: .625rem;
    padding-left: 4.0625rem;

    text-align: left;
    text-transform: uppercase;

    color: var(--ptf-color-black);
    border-radius: 50%;
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-color-14);
            box-shadow: inset 0 0 0 1px var(--ptf-color-14); 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-circle-link svg
{
    height: 2rem;
    margin-top: 1.25rem; 

    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
            align-self: flex-start;
}
.ptf-circle-link:hover
{
    -webkit-transform: translateY(-2px);
        -ms-transform: translateY(-2px);
            transform: translateY(-2px); 

    color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-circle-link--style-2
{
    font-family: var(--ptf-secondary-font);
    font-size: 3.75rem;
    line-height: 1;

    width: auto;
    height: auto;
    padding: 0;

    text-transform: none;

    -webkit-box-shadow: none;
            box-shadow: none;
}
.ptf-circle-link--style-2 svg
{
    height: 2.8125rem !important;
    margin-top: 2.1875rem !important;
}
.ptf-circle-link--style-2:hover
{
    -webkit-box-shadow: none;
            box-shadow: none;
}

/* PARTIAL: CUSTOM CURSOR
-------------------------------------------- */
.ptf-custom-cursor
{
    position: absolute;
    z-index: 100;

    pointer-events: none; 

    color: var(--ptf-color-black);
}
.ptf-custom-cursor.white
{
    color: var(--ptf-color-white);
}
.ptf-custom-cursor span
{
    font-size: .75rem;
    font-weight: 700;

    position: fixed;
    top: 0;
    left: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    visibility: hidden;

    width: 8.125rem;
    height: 8.125rem;

    -webkit-transition: -webkit-transform calc(var(--ptf-transition-duration) / 2);
            transition: -webkit-transform calc(var(--ptf-transition-duration) / 2);
            transition:         transform calc(var(--ptf-transition-duration) / 2);
            transition:         transform calc(var(--ptf-transition-duration) / 2), -webkit-transform calc(var(--ptf-transition-duration) / 2);
    -webkit-transform: translate3d(calc(var(--ptf-custom-cursor__x) - 4.0625rem), calc(var(--ptf-custom-cursor__y) - 4.0625rem), 0);
            transform: translate3d(calc(var(--ptf-custom-cursor__x) - 4.0625rem), calc(var(--ptf-custom-cursor__y) - 4.0625rem), 0); 
    text-align: center;
    text-transform: uppercase;

    opacity: 0;
    color: currentColor;
    border: 1px solid currentColor;
    border-radius: 50%;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-custom-cursor.is-visible span
{
    visibility: visible;

    -webkit-animation: ptf_blink_in var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
            animation: ptf_blink_in var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
}

/* PARTIAL: FILLED LINK
-------------------------------------------- */
.ptf-filled-link
{
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    -webkit-transition: background-position calc(var(--ptf-transition-duration) * 2) var(--ptf-transition-easing);
            transition: background-position calc(var(--ptf-transition-duration) * 2) var(--ptf-transition-easing);

    color: inherit;
    background-image: -webkit-gradient(linear, left top, right top, from(var(--ptf-accent-1)), color-stop(50%, var(--ptf-accent-1)), color-stop(50%, currentColor));
    background-image: -webkit-linear-gradient(left, var(--ptf-accent-1), var(--ptf-accent-1) 50%, currentColor 50%);
    background-image:         linear-gradient(to right, var(--ptf-accent-1), var(--ptf-accent-1) 50%, currentColor 50%);
    background-position: 100% 0;
    -webkit-background-clip: text;
            background-clip: text;
    background-size: 200% 200%;

    -webkit-text-fill-color: transparent;
}
.ptf-filled-link:hover
{
    color: inherit;
    background-position: 0 0;
}

/* PARTIAL: LINK WITH ARROW
-------------------------------------------- */
.ptf-link-with-arrow
{
    line-height: 1;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    --ptf-icon-indent: .625rem;
}
.ptf-link-with-arrow svg,
.ptf-link-with-arrow i
{
    margin-left: var(--ptf-icon-indent);

    -webkit-transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
}
.ptf-link-with-arrow:hover svg,
.ptf-link-with-arrow:hover i
{
    -webkit-transform: translateX(2px);
        -ms-transform: translateX(2px);
            transform: translateX(2px);
}

/* PARTIAL: MASK IMAGE
-------------------------------------------- */
.ptf-mask-image
{
    position: relative;
}
.ptf-mask-image img:not(:last-of-type)
{
    position: absolute;
    z-index: 1; 
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.ptf-mask-image img
{
    display: block;

    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
    -webkit-mask-image: var(--ptf-mask-image);
            mask-image: var(--ptf-mask-image);
    -webkit-mask-repeat: round;
            mask-repeat: round;
}

/* PARTIAL: POST NAVIGATION
-------------------------------------------- */
.ptf-post-navigation
{
    color: var(--ptf-color-black);
}
.ptf-post-navigation span
{
    display: block;

    margin-bottom: .9375rem;

    text-transform: uppercase;

    color: var(--ptf-color-3);
}

/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-post-navigation--style-1
{
    margin-top: 7.5rem;
    padding-top: 8.75rem;

    border-top: 1px solid var(--ptf-color-14);
}
@media only screen and (max-width: 767px)
{
    .ptf-post-navigation--style-1
    {
        margin-top: 3.75rem;
        padding-top: 4.375rem;
    }
}
.ptf-post-navigation--style-1 span
{
    font-size: 1.25rem;
    font-weight: 700;
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-post-navigation--style-2
{
    padding-top: 11.25rem;
    padding-bottom: 10rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-post-navigation--style-2
    {
        padding-top: 5.625rem;
        padding-bottom: 5rem;
    }
}
.ptf-post-navigation--style-2 span
{
    font-size: 1.125rem;
}

/* PARTIAL: RELATED POSTS
-------------------------------------------- */
.ptf-related-posts
{
    margin-top: 3.75rem;
    padding: 5.625rem 0 0;

    border-top: 1px solid var(--ptf-color-14);
}
.ptf-related-posts__title
{
    margin-bottom: 3.125rem;
}

/* PARTIAL: SITE OVERLAY
-------------------------------------------- */
.ptf-site-overlay
{
    position: fixed;
    z-index: 60;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;

    cursor: pointer; 

    background-color: var(--ptf-color-18);
}

/* PARTIAL: SITE PRELOADER
-------------------------------------------- */
.animsition,
.animsition-overlay
{
    position: static;
}

.animsition-bounce
{
    position: fixed;
    z-index: 9999;
    top: calc(50% - 25px);
    left: calc(50% - 25px);

    width: 3.125rem;
    height: 3.125rem;
}

.double-bounce-one,
.double-bounce-two
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    -webkit-animation: ptf_bounce_preloader 2s infinite ease-in-out;
            animation: ptf_bounce_preloader 2s infinite ease-in-out; 

    opacity: .6;
    border-radius: 50%;
    background-color: var(--ptf-accent-1);
}

.double-bounce-two
{
    -webkit-animation-delay: -1s;
            animation-delay: -1s;
}

/* PARTIAL: SOCIAL ICONS
-------------------------------------------- */
.ptf-social-icon
{
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
}
.ptf-social-icon:hover
{
    -webkit-transform: translate(0, -2px);
        -ms-transform: translate(0, -2px);
            transform: translate(0, -2px);
}

/* STYLE 1 (icon)
-------------------------------------------- */
.ptf-social-icon--style-1
{
    font-size: 1.25rem;
    line-height: 1; 

    color: inherit;
}
.ptf-social-icon--style-1 + .ptf-social-icon--style-1
{
    margin-left: 1.5625rem;
}
.ptf-social-icon--style-1:hover
{
    color: var(--ptf-accent-1);
}

/* STYLE 2 (icon)
-------------------------------------------- */
.ptf-social-icon--style-2
{
    font-size: .875rem;
    line-height: 1; 

    color: inherit;
}
.ptf-social-icon--style-2 + .ptf-social-icon--style-2
{
    margin-left: 1.25rem;
}
.ptf-social-icon--style-2:hover
{
    color: var(--ptf-accent-1);
}

/* STYLE 3 (icon)
-------------------------------------------- */
.ptf-social-icon--style-3
{
    font-size: 1rem;
    line-height: 1;

    width: 2.5rem;
    height: 2.5rem;

    color: var(--ptf-color-2);
    border-radius: 50%;
    -webkit-box-shadow: inset 0 0 1px var(--ptf-color-1);
            box-shadow: inset 0 0 1px var(--ptf-color-1); 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-social-icon--style-3 + .ptf-social-icon--style-3
{
    margin-left: 1.4375rem;
}
.ptf-social-icon--style-3:hover
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 1px var(--ptf-accent-1);
}

/* STYLE 4 (icon)
-------------------------------------------- */
.ptf-social-icon--style-4
{
    font-size: 1rem;
    line-height: 1;

    width: 1.875rem;
    height: 1.875rem;

    color: var(--ptf-color-white);
    border-radius: 50%;
    background-color: var(--ptf-accent-1); 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-social-icon--style-4 + .ptf-social-icon--style-4
{
    margin-left: .4375rem;
}
.ptf-social-icon--style-4:hover
{
    color: var(--ptf-color-white);
}
.ptf-social-icon--style-4.internet
{
    background-color: #1a55f8;
}
.ptf-social-icon--style-4.moddb
{
    background-color: #cc0300;
}
.ptf-social-icon--style-4.indiedb
{
    background-color: #77c628;
}
.ptf-social-icon--style-4.traxsource
{
    background-color: #40a0ff;
}
.ptf-social-icon--style-4.gamefor
{
    background-color: #506f82;
}
.ptf-social-icon--style-4.pixiv
{
    background-color: #049cff;
}
.ptf-social-icon--style-4.myanimelist
{
    background-color: #2e51a2;
}
.ptf-social-icon--style-4.blackberry
{
    background-color: #000;
}
.ptf-social-icon--style-4.wickr
{
    background-color: #f29100;
}
.ptf-social-icon--style-4.spip
{
    background-color: #e00d6f;
}
.ptf-social-icon--style-4.napster
{
    background-color: #000;
}
.ptf-social-icon--style-4.beatport
{
    background-color: #94d500;
}
.ptf-social-icon--style-4.hackerone
{
    background-color: #ec1075;
}
.ptf-social-icon--style-4.hackernews
{
    background-color: #ff6601;
}
.ptf-social-icon--style-4.smashwords
{
    background-color: #4181c3;
}
.ptf-social-icon--style-4.kobo
{
    background-color: #bf0000;
}
.ptf-social-icon--style-4.bookbub
{
    background-color: #e70005;
}
.ptf-social-icon--style-4.mailru
{
    background-color: #fda840;
}
.ptf-social-icon--style-4.gitlab
{
    background-color: #e65228;
}
.ptf-social-icon--style-4.instructables
{
    background-color: #f8b514;
}
.ptf-social-icon--style-4.portfolio
{
    background-color: #54afff;
}
.ptf-social-icon--style-4.codered
{
    background-color: #ff033b;
}
.ptf-social-icon--style-4.origin
{
    background-color: #f56c2e;
}
.ptf-social-icon--style-4.nextdoor
{
    background-color: #01b247;
}
.ptf-social-icon--style-4.udemy
{
    background-color: #17aa1c;
}
.ptf-social-icon--style-4.livemaster
{
    background-color: #e76d00;
}
.ptf-social-icon--style-4.crunchbase
{
    background-color: #0288d1;
}
.ptf-social-icon--style-4.homefy
{
    background-color: #7dcda3;
}
.ptf-social-icon--style-4.calendly
{
    background-color: #00a3fa;
}
.ptf-social-icon--style-4.realtor
{
    background-color: #d52228;
}
.ptf-social-icon--style-4.tidal
{
    background-color: #01ffff;
}
.ptf-social-icon--style-4.qobuz
{
    background-color: #298fbf;
}
.ptf-social-icon--style-4.natgeo
{
    background-color: #222;
}
.ptf-social-icon--style-4.mastodon
{
    background-color: #2986d6;
}
.ptf-social-icon--style-4.unsplash
{
    background-color: #000;
}
.ptf-social-icon--style-4.homeadvisor
{
    background-color: #ef8b1d;
}
.ptf-social-icon--style-4.angieslist
{
    background-color: #299f37;
}
.ptf-social-icon--style-4.codepen
{
    background-color: #000;
}
.ptf-social-icon--style-4.slack
{
    background-color: #4b6bc6;
}
.ptf-social-icon--style-4.openaigym
{
    background-color: #29a8b3;
}
.ptf-social-icon--style-4.logmein
{
    background-color: #45b6f3;
}
.ptf-social-icon--style-4.fiverr
{
    background-color: #0db62a;
}
.ptf-social-icon--style-4.gotomeeting
{
    background-color: #fd7a2b;
}
.ptf-social-icon--style-4.aliexpress
{
    background-color: #e92c00;
}
.ptf-social-icon--style-4.guru
{
    background-color: #4c81c0;
}
.ptf-social-icon--style-4.appstore
{
    background-color: #007aff;
}
.ptf-social-icon--style-4.homes
{
    background-color: #f7841b;
}
.ptf-social-icon--style-4.zoom
{
    background-color: #2d8cff;
}
.ptf-social-icon--style-4.alibaba
{
    background-color: #ff6a00;
}
.ptf-social-icon--style-4.craigslist
{
    background-color: #561a8b;
}
.ptf-social-icon--style-4.wix
{
    background-color: #0096ff;
}
.ptf-social-icon--style-4.redfin
{
    background-color: #c82022;
}
.ptf-social-icon--style-4.googlecalendar
{
    background-color: #3d81f6;
}
.ptf-social-icon--style-4.shopify
{
    background-color: #5c6ac4;
}
.ptf-social-icon--style-4.freelancer
{
    background-color: #0088ca;
}
.ptf-social-icon--style-4.seedrs
{
    background-color: #7fbb31;
}
.ptf-social-icon--style-4.bing
{
    background-color: #008485;
}
.ptf-social-icon--style-4.doodle
{
    background-color: #0064dc;
}
.ptf-social-icon--style-4.bonanza
{
    background-color: #ff4950;
}
.ptf-social-icon--style-4.squarespace
{
    background-color: #121212;
}
.ptf-social-icon--style-4.toptal
{
    background-color: #4c73aa;
}
.ptf-social-icon--style-4.gust
{
    background-color: #1e2e3e;
}
.ptf-social-icon--style-4.ask
{
    background-color: #cf0000;
}
.ptf-social-icon--style-4.trulia
{
    background-color: #20bf63;
}
.ptf-social-icon--style-4.loomly
{
    background-color: #00425f;
}
.ptf-social-icon--style-4.ghost
{
    background-color: #33393c;
}
.ptf-social-icon--style-4.upwork
{
    background-color: #5bbc2f;
}
.ptf-social-icon--style-4.fundable
{
    background-color: #1d181f;
}
.ptf-social-icon--style-4.booking
{
    background-color: #003580;
}
.ptf-social-icon--style-4.googlemaps
{
    background-color: #4285f4;
}
.ptf-social-icon--style-4.zillow
{
    background-color: #0074e4;
}
.ptf-social-icon--style-4.niconico
{
    background-color: #000;
}
.ptf-social-icon--style-4.toneden
{
    background-color: #777bf9;
}
.ptf-social-icon--style-4.augment
{
    background-color: #e71204;
}
.ptf-social-icon--style-4.bitbucket
{
    background-color: #243759;
}
.ptf-social-icon--style-4.fyuse
{
    background-color: #ff3143;
}
.ptf-social-icon--style-4.yt-gaming
{
    background-color: #e91d00;
}
.ptf-social-icon--style-4.sketchfab
{
    background-color: #00a5d6;
}
.ptf-social-icon--style-4.mobcrush
{
    background-color: #fe0;
}
.ptf-social-icon--style-4.microsoft
{
    background-color: #666;
}
.ptf-social-icon--style-4.pandora
{
    background-color: #224099;
}
.ptf-social-icon--style-4.messenger
{
    background-color: #0084ff;
}
.ptf-social-icon--style-4.gamewisp
{
    background-color: #f8a853;
}
.ptf-social-icon--style-4.bloglovin
{
    background-color: #000;
}
.ptf-social-icon--style-4.tunein
{
    background-color: #36b4a7;
}
.ptf-social-icon--style-4.gamejolt
{
    background-color: #191919;
}
.ptf-social-icon--style-4.trello
{
    background-color: #0079bf;
}
.ptf-social-icon--style-4.spreadshirt
{
    background-color: #00b2a6;
}
.ptf-social-icon--style-4.500px
{
    background-color: #58a9de;
}
.ptf-social-icon--style-4.8tracks
{
    background-color: #122c4b;
}
.ptf-social-icon--style-4.airbnb
{
    background-color: #ff5a5f;
}
.ptf-social-icon--style-4.alliance
{
    background-color: #144587;
}
.ptf-social-icon--style-4.amazon
{
    background-color: #f90;
}
.ptf-social-icon--style-4.amplement
{
    background-color: #0996c3;
}
.ptf-social-icon--style-4.android
{
    background-color: #8ec047;
}
.ptf-social-icon--style-4.angellist
{
    background-color: #000;
}
.ptf-social-icon--style-4.apple
{
    background-color: #b9bfc1;
}
.ptf-social-icon--style-4.appnet
{
    background-color: #494949;
}
.ptf-social-icon--style-4.baidu
{
    background-color: #2629d9;
}
.ptf-social-icon--style-4.bandcamp
{
    background-color: #619aa9;
}
.ptf-social-icon--style-4.battlenet
{
    background-color: #0096cd;
}
.ptf-social-icon--style-4.mixer
{
    background-color: #1fbaed;
}
.ptf-social-icon--style-4.bebee
{
    background-color: #f28f16;
}
.ptf-social-icon--style-4.bebo
{
    background-color: #ef1011;
}
.ptf-social-icon--style-4.behance
{
    background-color: #000;
}
.ptf-social-icon--style-4.blizzard
{
    background-color: #01b2f1;
}
.ptf-social-icon--style-4.blogger
{
    background-color: #ec661c;
}
.ptf-social-icon--style-4.buffer
{
    background-color: #000;
}
.ptf-social-icon--style-4.chrome
{
    background-color: #757575;
}
.ptf-social-icon--style-4.coderwall
{
    background-color: #3e8dcc;
}
.ptf-social-icon--style-4.curse
{
    background-color: #f26522;
}
.ptf-social-icon--style-4.dailymotion
{
    background-color: #004e72;
}
.ptf-social-icon--style-4.deezer
{
    background-color: #32323d;
}
.ptf-social-icon--style-4.delicious
{
    background-color: #020202;
}
.ptf-social-icon--style-4.deviantart
{
    background-color: #c5d200;
}
.ptf-social-icon--style-4.diablo
{
    background-color: #8b1209;
}
.ptf-social-icon--style-4.digg
{
    background-color: #1d1d1b;
}
.ptf-social-icon--style-4.discord
{
    background-color: #7289da;
}
.ptf-social-icon--style-4.disqus
{
    background-color: #2e9fff;
}
.ptf-social-icon--style-4.douban
{
    background-color: #3ca353;
}
.ptf-social-icon--style-4.draugiem
{
    background-color: #ffa32b;
}
.ptf-social-icon--style-4.dribbble
{
    background-color: #e84d88;
}
.ptf-social-icon--style-4.drupal
{
    background-color: #00598e;
}
.ptf-social-icon--style-4.ebay
{
    background-color: #333;
}
.ptf-social-icon--style-4.ello
{
    background-color: #000;
}
.ptf-social-icon--style-4.endomodo
{
    background-color: #86ad00;
}
.ptf-social-icon--style-4.envato
{
    background-color: #597c3a;
}
.ptf-social-icon--style-4.etsy
{
    background-color: #f56400;
}
.ptf-social-icon--style-4.facebook
{
    background-color: #3e5b98;
}
.ptf-social-icon--style-4.feedburner
{
    background-color: #fc0;
}
.ptf-social-icon--style-4.filmweb
{
    background-color: #ffc404;
}
.ptf-social-icon--style-4.firefox
{
    background-color: #484848;
}
.ptf-social-icon--style-4.flattr
{
    background-color: #f67c1a;
}
.ptf-social-icon--style-4.flickr
{
    background-color: #1e1e1b;
}
.ptf-social-icon--style-4.formulr
{
    background-color: #ff5a60;
}
.ptf-social-icon--style-4.forrst
{
    background-color: #5b9a68;
}
.ptf-social-icon--style-4.foursquare
{
    background-color: #f94877;
}
.ptf-social-icon--style-4.friendfeed
{
    background-color: #2f72c4;
}
.ptf-social-icon--style-4.github
{
    background-color: #221e1b;
}
.ptf-social-icon--style-4.goodreads
{
    background-color: #463020;
}
.ptf-social-icon--style-4.google
{
    background-color: #4285f4;
}
.ptf-social-icon--style-4.googlescholar
{
    background-color: #4285f4;
}
.ptf-social-icon--style-4.googlegroups
{
    background-color: #4f8ef5;
}
.ptf-social-icon--style-4.googlephotos
{
    background-color: #212121;
}
.ptf-social-icon--style-4.googleplus
{
    background-color: #dd4b39;
}
.ptf-social-icon--style-4.grooveshark
{
    background-color: #000;
}
.ptf-social-icon--style-4.hackerrank
{
    background-color: #2ec866;
}
.ptf-social-icon--style-4.hacker-news
{
    background-color: #f60;
}
.ptf-social-icon--style-4.hearthstone
{
    background-color: #ec9313;
}
.ptf-social-icon--style-4.hellocoton
{
    background-color: #d30d66;
}
.ptf-social-icon--style-4.heroes
{
    background-color: #2397f7;
}
.ptf-social-icon--style-4.smashcast
{
    background-color: #3498db;
}
.ptf-social-icon--style-4.horde
{
    background-color: #84121c;
}
.ptf-social-icon--style-4.houzz
{
    background-color: #7cc04b;
}
.ptf-social-icon--style-4.icq
{
    background-color: #7ebd00;
}
.ptf-social-icon--style-4.identica
{
    background-color: #000;
}
.ptf-social-icon--style-4.imdb
{
    background-color: #e8ba00;
}
.ptf-social-icon--style-4.instagram
{
    background-color: #c83b8b;
}
.ptf-social-icon--style-4.issuu
{
    background-color: #f26f61;
}
.ptf-social-icon--style-4.istock
{
    background-color: #000;
}
.ptf-social-icon--style-4.itunes
{
    background-color: #ff5e51;
}
.ptf-social-icon--style-4.keybase
{
    background-color: #ff7100;
}
.ptf-social-icon--style-4.lanyrd
{
    background-color: #3c80c9;
}
.ptf-social-icon--style-4.lastfm
{
    background-color: #d41316;
}
.ptf-social-icon--style-4.line
{
    background-color: #00b901;
}
.ptf-social-icon--style-4.linkedin
{
    background-color: #3371b7;
}
.ptf-social-icon--style-4.livejournal
{
    background-color: #09c;
}
.ptf-social-icon--style-4.lyft
{
    background-color: #ff00bf;
}
.ptf-social-icon--style-4.macos
{
    background-color: #000;
}
.ptf-social-icon--style-4.mail
{
    background-color: #f3894d;
}
.ptf-social-icon--style-4.medium
{
    background-color: #000;
}
.ptf-social-icon--style-4.meetup
{
    background-color: #e2373c;
}
.ptf-social-icon--style-4.mixcloud
{
    background-color: #000;
}
.ptf-social-icon--style-4.modelmayhem
{
    background-color: #000;
}
.ptf-social-icon--style-4.mumble
{
    background-color: #5ab5d1;
}
.ptf-social-icon--style-4.myspace
{
    background-color: #323232;
}
.ptf-social-icon--style-4.newsvine
{
    background-color: #075b2f;
}
.ptf-social-icon--style-4.nintendo
{
    background-color: #f58a33;
}
.ptf-social-icon--style-4.npm
{
    background-color: #c12127;
}
.ptf-social-icon--style-4.odnoklassniki
{
    background-color: #f48420;
}
.ptf-social-icon--style-4.openid
{
    background-color: #f78c40;
}
.ptf-social-icon--style-4.opera
{
    background-color: #ff1b2d;
}
.ptf-social-icon--style-4.outlook
{
    background-color: #0072c6;
}
.ptf-social-icon--style-4.overwatch
{
    background-color: #9e9e9e;
}
.ptf-social-icon--style-4.patreon
{
    background-color: #f96854;
}
.ptf-social-icon--style-4.paypal
{
    background-color: #009cde;
}
.ptf-social-icon--style-4.periscope
{
    background-color: #3aa4c6;
}
.ptf-social-icon--style-4.persona
{
    background-color: #e6753d;
}
.ptf-social-icon--style-4.pinterest
{
    background-color: #c92619;
}
.ptf-social-icon--style-4.play
{
    background-color: #000;
}
.ptf-social-icon--style-4.player
{
    background-color: #6e41bd;
}
.ptf-social-icon--style-4.playstation
{
    background-color: #000;
}
.ptf-social-icon--style-4.pocket
{
    background-color: #ed4055;
}
.ptf-social-icon--style-4.qq
{
    background-color: #4297d3;
}
.ptf-social-icon--style-4.quora
{
    background-color: #cb202d;
}
.ptf-social-icon--style-4.raidcall
{
    background-color: #073558;
}
.ptf-social-icon--style-4.ravelry
{
    background-color: #b6014c;
}
.ptf-social-icon--style-4.reddit
{
    background-color: #e74a1e;
}
.ptf-social-icon--style-4.renren
{
    background-color: #2266b0;
}
.ptf-social-icon--style-4.researchgate
{
    background-color: #0cb;
}
.ptf-social-icon--style-4.residentadvisor
{
    background-color: #b3be1b;
}
.ptf-social-icon--style-4.reverbnation
{
    background-color: #000;
}
.ptf-social-icon--style-4.rss
{
    background-color: #f26109;
}
.ptf-social-icon--style-4.sharethis
{
    background-color: #01bf01;
}
.ptf-social-icon--style-4.skype
{
    background-color: #28abe3;
}
.ptf-social-icon--style-4.slideshare
{
    background-color: #4ba3a6;
}
.ptf-social-icon--style-4.smugmug
{
    background-color: #acfd32;
}
.ptf-social-icon--style-4.snapchat
{
    background-color: #fffa37;
}
.ptf-social-icon--style-4.songkick
{
    background-color: #f80046;
}
.ptf-social-icon--style-4.soundcloud
{
    background-color: #fe3801;
}
.ptf-social-icon--style-4.spotify
{
    background-color: #7bb342;
}
.ptf-social-icon--style-4.stackexchange
{
    background-color: #2f2f2f;
}
.ptf-social-icon--style-4.stackoverflow
{
    background-color: #fd9827;
}
.ptf-social-icon--style-4.starcraft
{
    background-color: #002250;
}
.ptf-social-icon--style-4.stayfriends
{
    background-color: #f08a1c;
}
.ptf-social-icon--style-4.steam
{
    background-color: #171a21;
}
.ptf-social-icon--style-4.storehouse
{
    background-color: #25b0e6;
}
.ptf-social-icon--style-4.strava
{
    background-color: #fc4c02;
}
.ptf-social-icon--style-4.streamjar
{
    background-color: #503a60;
}
.ptf-social-icon--style-4.stumbleupon
{
    background-color: #e64011;
}
.ptf-social-icon--style-4.swarm
{
    background-color: #fc9d3c;
}
.ptf-social-icon--style-4.teamspeak
{
    background-color: #465674;
}
.ptf-social-icon--style-4.teamviewer
{
    background-color: #168ef4;
}
.ptf-social-icon--style-4.technorati
{
    background-color: #5cb030;
}
.ptf-social-icon--style-4.telegram
{
    background-color: #08c;
}
.ptf-social-icon--style-4.tripadvisor
{
    background-color: #4b7e37;
}
.ptf-social-icon--style-4.tripit
{
    background-color: #1982c3;
}
.ptf-social-icon--style-4.triplej
{
    background-color: #e53531;
}
.ptf-social-icon--style-4.tumblr
{
    background-color: #45556c;
}
.ptf-social-icon--style-4.twitch
{
    background-color: #6441a5;
}
.ptf-social-icon--style-4.twitter
{
    background-color: #0cf;
}
.ptf-social-icon--style-4.uber
{
    background-color: #000;
}
.ptf-social-icon--style-4.ventrilo
{
    background-color: #77808a;
}
.ptf-social-icon--style-4.viadeo
{
    background-color: #e4a000;
}
.ptf-social-icon--style-4.viber
{
    background-color: #7b519d;
}
.ptf-social-icon--style-4.viewbug
{
    background-color: #2b9fcf;
}
.ptf-social-icon--style-4.vimeo
{
    background-color: #51b5e7;
}
.ptf-social-icon--style-4.vine
{
    background-color: #00b389;
}
.ptf-social-icon--style-4.vkontakte
{
    background-color: #5a7fa6;
}
.ptf-social-icon--style-4.warcraft
{
    background-color: #1eb10a;
}
.ptf-social-icon--style-4.wechat
{
    background-color: #09b507;
}
.ptf-social-icon--style-4.weibo
{
    background-color: #e31c34;
}
.ptf-social-icon--style-4.whatsapp
{
    background-color: #20b038;
}
.ptf-social-icon--style-4.wikipedia
{
    background-color: #000;
}
.ptf-social-icon--style-4.windows
{
    background-color: #00bdf6;
}
.ptf-social-icon--style-4.wordpress
{
    background-color: #464646;
}
.ptf-social-icon--style-4.wykop
{
    background-color: #328efe;
}
.ptf-social-icon--style-4.xbox
{
    background-color: #92c83e;
}
.ptf-social-icon--style-4.xing
{
    background-color: #005a60;
}
.ptf-social-icon--style-4.yahoo
{
    background-color: #6e2a85;
}
.ptf-social-icon--style-4.yammer
{
    background-color: #1175c4;
}
.ptf-social-icon--style-4.yandex
{
    background-color: #f00;
}
.ptf-social-icon--style-4.yelp
{
    background-color: #c83218;
}
.ptf-social-icon--style-4.younow
{
    background-color: #61c03e;
}
.ptf-social-icon--style-4.youtube
{
    background-color: #e02a20;
}
.ptf-social-icon--style-4.zapier
{
    background-color: #ff4a00;
}
.ptf-social-icon--style-4.zerply
{
    background-color: #9dbc7a;
}
.ptf-social-icon--style-4.zomato
{
    background-color: #cb202d;
}
.ptf-social-icon--style-4.zynga
{
    background-color: #dc0606;
}

/* PARTIAL: STICKY COLUMN
-------------------------------------------- */
.sticky-column
{
    position: -webkit-sticky !important;
    position:         sticky !important;
    top: 3.75rem;

    -webkit-transition: top var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: top var(--ptf-transition-duration) var(--ptf-transition-easing);
}

.sticky-parent
{
    display: block !important;

    height: 100%;
}

/* PARTIAL: SUBMIT BUTTON
-------------------------------------------- */
.ptf-submit-button
{
    font-size: 3.75rem;
    font-weight: 700;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    padding: 0;

    cursor: pointer; 
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);

    color: var(--ptf-color-black);
    border: none;
    background: none;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-submit-button svg
{
    width: 1em;
    height: 1em;
    margin-top: .12em;
    margin-left: 2.5rem;

    -webkit-transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
}
.ptf-submit-button:hover
{
    color: var(--ptf-accent-1);
}
.ptf-submit-button:hover svg
{
    -webkit-transform: translateX(2px);
        -ms-transform: translateX(2px);
            transform: translateX(2px);
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-submit-button--style-2
{
    font-size: 1.5rem; 

    text-transform: uppercase;
}
.ptf-submit-button--style-2 svg
{
    margin-left: 1.25rem;
}

/* PARTIAL: TOOLTIP IMAGE
-------------------------------------------- */
.ptf-hover-reveal
{
    position: fixed;
    z-index: 90;
    top: 0;
    left: 0;

    width: 28.75rem;
    height: 18.75rem;

    pointer-events: none; 

    opacity: 0;
}
.ptf-hover-reveal__inner,
.ptf-hover-reveal__img
{
    position: relative;

    width: 100%;
    height: 100%;
}
.ptf-hover-reveal__inner
{
    overflow: hidden;
}
.ptf-hover-reveal__img
{
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

/* 06. Vendors */
/* VENDOR: AOS
-------------------------------------------- */
[data-aos=fade-up-sm]
{
    -webkit-transition-property: opacity, -webkit-transform;
            transition-property: opacity, -webkit-transform;
            transition-property: transform, opacity;
            transition-property: transform, opacity, -webkit-transform; 

    opacity: 0;
}
@media only screen and (min-width: 768px)
{
    [data-aos=fade-up-sm]
    {
        -webkit-transform: translateY(30px);
            -ms-transform: translateY(30px);
                transform: translateY(30px);
    }
    [data-aos=fade-up-sm].aos-animate
    {
        -webkit-transform: translateY(0);
            -ms-transform: translateY(0);
                transform: translateY(0);
    }
}
[data-aos=fade-up-sm].aos-animate
{
    opacity: 1;
}

/* VENDOR: FANCYBOX
-------------------------------------------- */
.fancybox-bg
{
    background-color: var(--ptf-color-18);
}

.fancybox-is-open .fancybox-bg
{
    opacity: 1;
}

.fancybox-loading
{
    border: 2px solid rgba(255, 255, 255, .2);
    border-top-color: var(--ptf-accent-1);
}

/* BUTTONS
-------------------------------------------- */
.fancybox-navigation .fancybox-button,
.fancybox-toolbar .fancybox-button,
.fancybox-content .fancybox-button
{
    font-size: 1.125rem;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    width: 2.8125rem;
    height: 2.8125rem;
    padding: 0;

    cursor: pointer; 
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);

    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.fancybox-navigation .fancybox-button:hover,
.fancybox-toolbar .fancybox-button:hover,
.fancybox-content .fancybox-button:hover
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-2);
}

.fancybox-navigation .fancybox-button--arrow_left,
.fancybox-toolbar .fancybox-button--arrow_left,
.fancybox-content .fancybox-button--arrow_left
{
    top: calc(50% - 1.375rem);
    left: 0;
}

.fancybox-navigation .fancybox-button--arrow_right,
.fancybox-toolbar .fancybox-button--arrow_right,
.fancybox-content .fancybox-button--arrow_right
{
    top: calc(50% - 1.375rem);
    right: 0;
}

.fancybox-navigation .fancybox-close-small,
.fancybox-toolbar .fancybox-close-small,
.fancybox-content .fancybox-close-small
{
    top: -1.25rem;
    right: -1.25rem;

    opacity: 1;
}

.fancybox-toolbar
{
    top: 0;
    right: 0;
}

.fancybox-navigation .fancybox-button--arrow_left:hover i
{
    -webkit-animation: ptf_animate_icon_left var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
            animation: ptf_animate_icon_left var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
}

.fancybox-navigation .fancybox-button--arrow_right:hover i
{
    -webkit-animation: ptf_animate_icon_right var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
            animation: ptf_animate_icon_right var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
}

/* VENDOR: ISOTOPE
-------------------------------------------- */
.ptf-isotope-grid
{
    margin-right: calc(-1 * calc(var(--ptf-gutter-x) / 2));
    margin-bottom: calc(-1 * var(--ptf-gutter-y));
    margin-left: calc(-1 * calc(var(--ptf-gutter-x) / 2));
}
.ptf-isotope-grid .grid-item,
.ptf-isotope-grid .grid-sizer
{
    float: left;
}
.ptf-isotope-grid .grid-sizer
{
    width: 0;
}
.ptf-isotope-grid .grid-item
{
    padding-right: calc(var(--ptf-gutter-x) / 2);
    padding-bottom: var(--ptf-gutter-y);
    padding-left: calc(var(--ptf-gutter-x) / 2);
}
.ptf-isotope-grid .grid-item.w-100
{
    width: 100% !important;
}
.ptf-isotope-grid[data-columns='1'] .grid-item,
.ptf-isotope-grid[data-columns='1'] .grid-sizer
{
    width: 100%;
}
.ptf-isotope-grid[data-columns='2'] .grid-item,
.ptf-isotope-grid[data-columns='2'] .grid-sizer
{
    width: 50%;
}
@media only screen and (max-width: 575px)
{
    .ptf-isotope-grid[data-columns='2'] .grid-item,
    .ptf-isotope-grid[data-columns='2'] .grid-sizer
    {
        width: 100%;
    }
}
.ptf-isotope-grid[data-columns='3'] .grid-item,
.ptf-isotope-grid[data-columns='3'] .grid-sizer
{
    width: calc(100% / 3);
}
@media only screen and (max-width: 991px)
{
    .ptf-isotope-grid[data-columns='3'] .grid-item,
    .ptf-isotope-grid[data-columns='3'] .grid-sizer
    {
        width: 50%;
    }
}
@media only screen and (max-width: 575px)
{
    .ptf-isotope-grid[data-columns='3'] .grid-item,
    .ptf-isotope-grid[data-columns='3'] .grid-sizer
    {
        width: 100%;
    }
}
.ptf-isotope-grid[data-columns='4'] .grid-item,
.ptf-isotope-grid[data-columns='4'] .grid-sizer
{
    width: 25%;
}
@media only screen and (max-width: 991px)
{
    .ptf-isotope-grid[data-columns='4'] .grid-item,
    .ptf-isotope-grid[data-columns='4'] .grid-sizer
    {
        width: 50%;
    }
}
@media only screen and (max-width: 575px)
{
    .ptf-isotope-grid[data-columns='4'] .grid-item,
    .ptf-isotope-grid[data-columns='4'] .grid-sizer
    {
        width: 100%;
    }
}

/* VENDOR: JARALLAX
-------------------------------------------- */
.jarallax
{
    position: relative;
    z-index: 0;
}

.jarallax &gt; .jarallax-img
{
    /* support for plugin https://github.com/bfred-it/object-fit-images */
    font-family: 'object-fit: cover;';

    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}

/* VENDOR: SWIPER
-------------------------------------------- */
/* SECTION: LAZYLOAD
-------------------------------------------- */
:root
{
    --swiper-theme-color: var(--ptf-color-black);
}

.swiper-lazy:not(.swiper-lazy-loaded)
{
    opacity: 0;
}

.ptf-main .swiper-slide figure
{
    line-height: unset;
}

.swiper-lazy-preloader
{
    border: 4px solid rgba(255, 255, 255, .2);
    border-top-color: var(--ptf-accent-1);
}
.swiper-lazy-preloader.swiper-lazy-preloader-white
{
    border: rgba(255, 255, 255, .2);
    border-top-color: var(--ptf-accent-1);
}
.swiper-lazy-preloader::after
{
    display: none !important;
}

/* SECTION: NAVIGATION
-------------------------------------------- */
.ptf-swiper-button-prev:hover i
{
    -webkit-animation: ptf_animate_icon_left var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
            animation: ptf_animate_icon_left var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
}

.ptf-swiper-button-next:hover i
{
    -webkit-animation: ptf_animate_icon_right var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
            animation: ptf_animate_icon_right var(--ptf-transition-duration) var(--ptf-transition-easing) forwards;
}

/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-swiper-button-prev--style-1,
.ptf-swiper-button-next--style-1
{
    font-size: 1.125rem;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    width: 2.8125rem;
    height: 2.8125rem;

    cursor: pointer; 
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);

    color: var(--ptf-color-3);
    border-radius: 0;
    outline: none;
    background-color: transparent;
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-color-3);
            box-shadow: inset 0 0 0 1px var(--ptf-color-3);

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-swiper-button-prev--style-1:not(.swiper-button-disabled):hover,
.ptf-swiper-button-next--style-1:not(.swiper-button-disabled):hover
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
}
.ptf-swiper-button-prev--style-1.swiper-button-disabled,
.ptf-swiper-button-next--style-1.swiper-button-disabled
{
    cursor: default;
}

.ptf-swiper-button-prev--style-1 + .ptf-swiper-button-next--style-1
{
    margin-left: .9375rem;
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-swiper-button-prev--style-2,
.ptf-swiper-button-next--style-2
{
    font-size: 3rem;

    position: absolute;
    top: 6.25rem;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    width: 3rem;
    height: 3rem;

    cursor: pointer; 
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);

    color: var(--ptf-color-3);
    border-radius: 0;
    outline: none;
    background-color: transparent;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-swiper-button-prev--style-2 i,
.ptf-swiper-button-next--style-2 i
{
    -webkit-animation: none !important;
            animation: none !important;
}
.ptf-swiper-button-prev--style-2:not(.swiper-button-disabled):hover,
.ptf-swiper-button-next--style-2:not(.swiper-button-disabled):hover
{
    color: var(--ptf-color-black);
}
.ptf-swiper-button-prev--style-2.swiper-button-disabled,
.ptf-swiper-button-next--style-2.swiper-button-disabled
{
    cursor: default;
}

.ptf-swiper-button-prev--style-2
{
    left: 0;
}

.ptf-swiper-button-next--style-2
{
    right: 0;
}

/* SECTION: STYLE 3
-------------------------------------------- */
.ptf-swiper-button-prev--style-3,
.ptf-swiper-button-next--style-3
{
    font-size: 2.25rem;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    cursor: pointer; 
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);

    color: var(--ptf-color-3);
    outline: none;
}
.ptf-swiper-button-prev--style-3 i,
.ptf-swiper-button-next--style-3 i
{
    -webkit-animation: none !important;
            animation: none !important;
}
.ptf-swiper-button-prev--style-3:not(.swiper-button-disabled):hover,
.ptf-swiper-button-next--style-3:not(.swiper-button-disabled):hover
{
    color: var(--ptf-color-black);
}
.ptf-swiper-button-prev--style-3.swiper-button-disabled,
.ptf-swiper-button-next--style-3.swiper-button-disabled
{
    cursor: default;
}

.ptf-swiper-button-prev--style-3 + .ptf-swiper-button-next--style-3
{
    margin-left: 2.1875rem;
}

/* SECTION: STYLE 4
-------------------------------------------- */
.ptf-swiper-button-prev--style-4,
.ptf-swiper-button-next--style-4
{
    font-size: 4.5rem;

    position: absolute;
    top: calc(50% - calc(4.5rem / 2));

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    width: 4.5rem;
    height: 4.5rem;

    cursor: pointer; 
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);

    color: var(--ptf-color-white);
    border-radius: 0;
    outline: none;
    background-color: transparent;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-swiper-button-prev--style-4 i,
.ptf-swiper-button-next--style-4 i
{
    -webkit-animation: none !important;
            animation: none !important;
}
.ptf-swiper-button-prev--style-4:not(.swiper-button-disabled):hover,
.ptf-swiper-button-next--style-4:not(.swiper-button-disabled):hover
{
    opacity: .5; 
    color: var(--ptf-color-white);
}
.ptf-swiper-button-prev--style-4.swiper-button-disabled,
.ptf-swiper-button-next--style-4.swiper-button-disabled
{
    cursor: default; 

    opacity: 0;
}

.ptf-swiper-button-prev--style-4
{
    left: 0;
}

.ptf-swiper-button-next--style-4
{
    right: 0;
}

/* SECTION: DOTS
-------------------------------------------- */
/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-swiper-pagination--style-1,
.ptf-swiper-pagination--style-2
{
    line-height: 0;
}
.ptf-swiper-pagination--style-1 .swiper-pagination-bullet,
.ptf-swiper-pagination--style-2 .swiper-pagination-bullet
{
    width: .5rem;
    height: .5rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 

    opacity: 1;
    border-radius: .5rem;
    outline: none;
    background-color: var(--ptf-color-1);
}
.ptf-swiper-pagination--style-1 .swiper-pagination-bullet:not(.swiper-pagination-bullet-active):hover,
.ptf-swiper-pagination--style-2 .swiper-pagination-bullet:not(.swiper-pagination-bullet-active):hover
{
    opacity: .8;
}
.ptf-swiper-pagination--style-1 .swiper-pagination-bullet-active,
.ptf-swiper-pagination--style-2 .swiper-pagination-bullet-active
{
    background-color: var(--ptf-color-black);
}
.ptf-swiper-pagination--style-1 .swiper-pagination-bullet + .swiper-pagination-bullet,
.ptf-swiper-pagination--style-2 .swiper-pagination-bullet + .swiper-pagination-bullet
{
    margin-left: 1.25rem;
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-swiper-pagination--style-2 .swiper-pagination-bullet
{
    background-color: var(--ptf-color-white);
}
.ptf-swiper-pagination--style-2 .swiper-pagination-bullet:not(.swiper-pagination-bullet-active):hover
{
    opacity: .8;
}
.ptf-swiper-pagination--style-2 .swiper-pagination-bullet-active
{
    width: 2.25rem;

    background-color: var(--ptf-accent-1);
}

/* SECTION: STYLE 3
-------------------------------------------- */
.ptf-swiper-pagination--style-3
{
    line-height: 0;
}
.ptf-swiper-pagination--style-3 .swiper-pagination-bullet
{
    position: relative;

    width: .5625rem;
    height: .5625rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 

    opacity: 1;
    border-radius: .5625rem;
    outline: none;
    background-color: var(--ptf-color-white);
}
.ptf-swiper-pagination--style-3 .swiper-pagination-bullet::before
{
    position: absolute;
    top: -.5625rem;
    right: -.5625rem;
    bottom: -.5625rem;
    left: -.5625rem;

    content: '';
    -webkit-transition: inherit;
            transition: inherit;
    -webkit-transform: scale(.8);
        -ms-transform: scale(.8);
            transform: scale(.8); 

    opacity: 0;
    border-radius: 50%;
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
}
.ptf-swiper-pagination--style-3 .swiper-pagination-bullet:not(.swiper-pagination-bullet-active):hover
{
    opacity: .8;
}
.ptf-swiper-pagination--style-3 .swiper-pagination-bullet-active
{
    background-color: var(--ptf-accent-1);
}
.ptf-swiper-pagination--style-3 .swiper-pagination-bullet-active::before
{
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1); 

    opacity: 1;
}
.ptf-swiper-pagination--style-3 .swiper-pagination-bullet + .swiper-pagination-bullet
{
    margin-left: 1.25rem;
}

/* SECTION: SCROLLBAR
-------------------------------------------- */
/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-swiper-scrollbar--style-1
{
    position: relative;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 1px;

    background-color: var(--ptf-color-14);
}
.ptf-swiper-scrollbar--style-1 .swiper-scrollbar-drag
{
    top: -1px;

    height: 3px;

    background-color: var(--ptf-accent-1);
}

/* SECTION: FRACTION
-------------------------------------------- */
.ptf-swiper-fraction
{
    font-size: 1.125rem;
    line-height: 1; 

    color: var(--ptf-color-white);
}
.ptf-swiper-fraction .sep
{
    margin: 0 .3125rem;
}

/* 07. Widgets */
/* WIDGET: ADVANTAGE BOX
-------------------------------------------- */
.ptf-advantage-box
{
    --ptf-image-height: 102px;
}

.ptf-advantage-box
{
    text-align: center;
}
.ptf-advantage-box__content
{
    padding: 3.4375rem .9375rem 2.8125rem;

    border-radius: 9.375rem;
    background-color: var(--ptf-color-8);
}
.ptf-advantage-box__image
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    height: 6.375rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);

    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
}
.ptf-advantage-box__image img
{
    width: auto;
    height: var(--ptf-image-height);
}
.ptf-advantage-box__value
{
    font-family: var(--ptf-secondary-font);
    font-size: 3rem;
    line-height: 1; 

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    margin-top: 2.1875rem;

    color: var(--ptf-color-black);
}
.ptf-advantage-box__value::after
{
    content: '%';
}
.ptf-advantage-box__title
{
    font-size: 1.125rem;
    font-weight: normal; 

    margin-top: 1.5625rem;

    color: var(--ptf-color-black);
}
.ptf-advantage-box:hover .ptf-advantage-box__image
{
    -webkit-animation: ptf_bounce calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing) forwards;
            animation: ptf_bounce calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing) forwards;

    -webkit-filter: none;
            filter: none;
}

/* WIDGET: APPROACH BOX
-------------------------------------------- */
.ptf-approach-box
{
    --ptf-subtitle-color: var(--ptf-color-black);
    --ptf-title-color: var(--ptf-color-black);
    --ptf-content-color: var(--ptf-color-black);
}

.ptf-approach-box
{
    padding-top: 3.75rem;

    border-top: 2px solid var(--ptf-color-black);
}
.ptf-approach-box__subtitle
{
    font-size: 1.25rem;
    font-weight: 700; 

    text-transform: uppercase;

    color: var(--ptf-subtitle-color);
}
.ptf-approach-box__title
{
    margin-top: .3125rem;

    color: var(--ptf-title-color);
}
.ptf-approach-box__content
{
    font-size: 1.125rem; 

    margin-top: 2.5rem;

    color: var(--ptf-content-color);
}

/* WIDGET: BUTTON
-------------------------------------------- */
.ptf-btn
{
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1;

    z-index: 1; 

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;
    overflow: hidden;

    padding: 1.4375rem 2.8125rem;

    cursor: pointer;
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
    white-space: nowrap;
    text-decoration: none;

    border: none;
    outline: 0;
    -webkit-box-shadow: none;
            box-shadow: none;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-btn:disabled,
.ptf-btn.disabled
{
    cursor: not-allowed; 
    pointer-events: none;
}
.ptf-btn--block
{
    width: 100%;
}
.ptf-btn:focus
{
    outline: none;
}
.ptf-btn:hover
{
    -webkit-transform: translate(0, -2px);
        -ms-transform: translate(0, -2px);
            transform: translate(0, -2px); 
    text-decoration: none;
}

/* BUTTON PRIMARY
-------------------------------------------- */
.ptf-btn.ptf-btn--primary
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
}
.ptf-btn.ptf-btn--primary:hover
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-2);
}
.ptf-btn.ptf-btn--primary.ptf-btn--inversed
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-2);
}
.ptf-btn.ptf-btn--primary.ptf-btn--inversed:hover
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-color-black);
}

/* BUTTON SECONDARY
-------------------------------------------- */
.ptf-btn.ptf-btn--secondary
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-color-black);
}
.ptf-btn.ptf-btn--secondary:hover
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
}
.ptf-btn.ptf-btn--secondary.ptf-btn--inversed
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
}
.ptf-btn.ptf-btn--secondary.ptf-btn--inversed:hover
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-color-black);
}

/* BUTTON SUCCESS
-------------------------------------------- */
.ptf-btn.ptf-btn--success
{
    font-size: 1.375rem;

    padding: 1.5625rem 2.8125rem;

    color: var(--ptf-color-white);
    border-radius: .375rem; 
    background-color: #7a9900;
}
.ptf-btn.ptf-btn--success:hover
{
    color: var(--ptf-color-white);
    background-color: #728f00;
}
.ptf-btn.ptf-btn--success.ptf-btn--inversed
{
    color: var(--ptf-color-white);
    background-color: #728f00;
}
.ptf-btn.ptf-btn--success.ptf-btn--inversed:hover
{
    color: var(--ptf-color-white);
    background-color: #7a9900;
}

/* BUTTON UNDERLINED
-------------------------------------------- */
.ptf-btn.ptf-btn--underlined
{
    font-size: 1rem;

    padding: .5625rem 0;

    color: var(--ptf-color-black);
    -webkit-box-shadow: inset 0 -2px currentColor;
            box-shadow: inset 0 -2px currentColor;
}
.ptf-btn.ptf-btn--underlined:hover
{
    color: var(--ptf-color-black);
}

/* WIDGET: CLIENTS LIST
-------------------------------------------- */
.ptf-clients-list
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    margin: 0;
    margin-top: -6.25rem;
    padding: 0;

    list-style-type: none; 

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}
@media only screen and (max-width: 767px)
{
    .ptf-clients-list
    {
        margin-top: -3.125rem;
    }
}
.ptf-clients-list__item
{
    margin-top: 6.25rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-clients-list__item
    {
        margin-top: 3.125rem;
    }
}
.ptf-clients-list__item img
{
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
}

.ptf-clients-list--start
{
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
            justify-content: flex-start;
}
.ptf-clients-list--start .ptf-clients-list__item
{
    text-align: left; 

    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
            align-self: flex-start;
}

.ptf-clients-list--center
{
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-clients-list--center .ptf-clients-list__item
{
    text-align: center; 

    -webkit-align-self: center;
    -ms-flex-item-align: center;
            align-self: center;
}

.ptf-clients-list[data-columns='5'] .ptf-clients-list__item
{
    width: 20%;
}
@media only screen and (max-width: 1199px)
{
    .ptf-clients-list[data-columns='5'] .ptf-clients-list__item
    {
        width: 25%;
    }
}
@media only screen and (max-width: 991px)
{
    .ptf-clients-list[data-columns='5'] .ptf-clients-list__item
    {
        width: 33.33%;
    }
}
@media only screen and (max-width: 575px)
{
    .ptf-clients-list[data-columns='5'] .ptf-clients-list__item
    {
        width: 50%;
    }
}

.ptf-clients-list[data-columns='6'] .ptf-clients-list__item
{
    width: 16.66%;
}
@media only screen and (max-width: 1199px)
{
    .ptf-clients-list[data-columns='6'] .ptf-clients-list__item
    {
        width: 25%;
    }
}
@media only screen and (max-width: 991px)
{
    .ptf-clients-list[data-columns='6'] .ptf-clients-list__item
    {
        width: 33.33%;
    }
}
@media only screen and (max-width: 575px)
{
    .ptf-clients-list[data-columns='6'] .ptf-clients-list__item
    {
        width: 50%;
    }
}

/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-clients-list--style-1 img
{
    -webkit-filter: grayscale(1);
            filter: grayscale(1);
}
.ptf-clients-list--style-1 img:hover
{
    -webkit-filter: none;
            filter: none;
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-clients-list--style-2 img
{
    opacity: .5;
}
.ptf-clients-list--style-2 img:hover
{
    opacity: 1;
}

/* WIDGET: COUNTODWN
-------------------------------------------- */
.ptf-countdown
{
    display: grid;

    grid-template-columns: repeat(7, 1fr);
    grid-gap: .625rem;
}
.ptf-countdown__item .digits
{
    font-size: 5rem;
    line-height: 1.2; 

    display: block;

    white-space: nowrap;

    color: var(--ptf-color-black);
}
@media only screen and (max-width: 1199px)
{
    .ptf-countdown__item .digits
    {
        font-size: 4rem;
    }
}
@media only screen and (max-width: 767px)
{
    .ptf-countdown__item .digits
    {
        font-size: 2.875rem;
    }
}
.ptf-countdown__item .label
{
    font-size: 1.125rem;
    line-height: 1.2; 

    color: var(--ptf-color-black);
}
.ptf-countdown__item .sep
{
    font-size: 1.875rem;
    font-weight: 700; 
    line-height: 5rem;

    text-align: center;

    color: var(--ptf-color-black);
}
@media only screen and (max-width: 1199px)
{
    .ptf-countdown__item .sep
    {
        font-size: 1.5rem;
        line-height: 4rem;
    }
}
@media only screen and (max-width: 767px)
{
    .ptf-countdown__item .sep
    {
        font-size: 1.25rem;
        line-height: 2.875rem;
    }
}

/* WIDGET: COUNTER UP
-------------------------------------------- */
.ptf-counter-up
{
    --ptf-value-font-family: var(--ptf-primary-font);
    --ptf-value-font-weight: 700;
    --ptf-value-color: var(--ptf-color-black);
    --ptf-title-color: var(--ptf-color-2);
}

.ptf-counter-up
{
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;
}
.ptf-counter-up .ptf-counter-up__value
{
    font-family: var(--ptf-value-font-family);
    font-weight: var(--ptf-value-font-weight);
    line-height: 1;
}
.ptf-counter-up .ptf-counter-up__value::before
{
    font-size: .5em;

    position: relative;
    top: -.15em;

    margin-right: .3125rem;

    content: attr(data-prefix);
    vertical-align: middle;
}
.ptf-counter-up .ptf-counter-up__value::after
{
    content: attr(data-suffix);
}
.ptf-counter-up .ptf-counter-up__title
{
    font-weight: normal;

    text-transform: uppercase; 

    color: var(--ptf-title-color);
}
.ptf-counter-up--style-1
{
            flex-direction: column; 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
@media (min-width: 1920px)
{
    .ptf-counter-up--style-1
    {
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -ms-inline-flexbox;
        display:         inline-flex;
                flex-direction: row; 

        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
                align-items: center;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
    }
    .ptf-counter-up--style-1 .ptf-counter-up__title
    {
        margin-top: 0 !important;
        margin-left: 1.875rem;

        -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
                flex-basis: 100%;
    }
}
.ptf-counter-up--style-1 .ptf-counter-up__value
{
    font-size: 3.75rem;

    color: var(--ptf-value-color);
}
.ptf-counter-up--style-1 .ptf-counter-up__title
{
    font-size: 1rem;
    line-height: 1.6;
}
.ptf-counter-up--style-1 .ptf-counter-up__title
{
    margin-top: .625rem;
}
.ptf-counter-up--style-2
{
            flex-direction: row; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
}
.ptf-counter-up--style-2 .ptf-counter-up__value
{
    font-size: 2.25rem;

    color: var(--ptf-value-color);
}
.ptf-counter-up--style-2 .ptf-counter-up__title
{
    font-size: .875rem;
    line-height: 1.42;

    margin-top: 0;
    margin-left: 1.875rem;

    text-align: left;

    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
}
.ptf-counter-up--style-3
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    padding-top: 2.1875rem;

    border-top: 2px solid var(--ptf-color-black); 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
.ptf-counter-up--style-3 .ptf-counter-up__title
{
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.875;
}
.ptf-counter-up--style-3 .ptf-counter-up__value
{
    font-size: 5rem;

    margin-top: 3.125rem;

    color: var(--ptf-value-color);
}

/* WIDGET: DEMO ITEM
-------------------------------------------- */
.ptf-demo-item
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
    overflow: hidden;
            flex-direction: column;

    border: 1px solid var(--ptf-color-14);
    border-radius: .625rem; 
    background-color: #efede7;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
.ptf-demo-item__title
{
    font-size: 1rem;

    width: 100%;
    margin-top: auto;
    padding: .9375rem 1.25rem;

    border-top: 1px solid var(--ptf-color-14); 
    background-color: var(--ptf-color-white);
}
.ptf-demo-item__title-soon
{
    font-size: .9375rem;

    color: var(--ptf-color-3);
}
.ptf-demo-item--effect
{
    -webkit-transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
}
.ptf-demo-item--effect:hover
{
    -webkit-transform: translateY(-5px);
        -ms-transform: translateY(-5px);
            transform: translateY(-5px);
}

/* WIDGET: DIVIDER
-------------------------------------------- */
.ptf-divider
{
    --ptf-height: 2px;
    --ptf-color: var(--ptf-color-black);
}

.ptf-divider
{
    display: block;
    clear: both; 

    height: var(--ptf-height);

    background-color: var(--ptf-color);
}

/* WIDGET: FAQ
-------------------------------------------- */
.ptf-faq
{
    display: grid;

    padding-bottom: 6.25rem;

    border-bottom: 1px solid var(--ptf-color-14);

    grid-template-columns: 21.5625rem 1fr;
}
@media only screen and (max-width: 991px)
{
    .ptf-faq
    {
        grid-template-columns: 1fr;
        grid-gap: 1.25rem;
    }
}
.ptf-faq__category h3
{
    line-height: 1.33;
}
@media only screen and (min-width: 992px)
{
    .ptf-faq__question h6
    {
        max-width: 22.5rem;
    }
}
.ptf-faq__item
{
    display: grid;

    padding-top: .625rem;

    grid-template-columns: repeat(2, 1fr);
}
@media only screen and (max-width: 991px)
{
    .ptf-faq__item
    {
        grid-template-columns: 1fr;
        grid-gap: 1rem;
    }
}
.ptf-faq .ptf-faq__item + .ptf-faq__item
{
    margin-top: 3.125rem;
}
@media only screen and (max-width: 991px)
{
    .ptf-faq .ptf-faq__item + .ptf-faq__item
    {
        margin-top: 1.875rem;
    }
}

/* WIDGET: GALLERY
-------------------------------------------- */
.ptf-gallery
{
    display: grid;
    overflow: unset !important;

    grid-template-columns: repeat(2, 1fr);
    grid-gap: 1.875rem;
}
@media only screen and (max-width: 575px)
{
    .ptf-gallery
    {
        grid-template-columns: 1fr;
    }
}
.ptf-gallery__item
{
    overflow: unset !important;
}

/* WIDGET: Instagram Feed
-------------------------------------------- */
.ptf-instagram-feed
{
    display: grid;

    margin: 0;
    padding: 0;

    list-style-type: none;

    grid-template-columns: repeat(5, 1fr);
    grid-gap: .625rem;
}
.ptf-instagram-feed a
{
    position: relative;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
}
.ptf-instagram-feed a::before
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    content: '';
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 

    opacity: 0;
    background-color: var(--ptf-color-14);
}
.ptf-instagram-feed a::after
{
    font-family: var(--ptf-linear-icons-light);
    font-size: 3rem;

    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    content: '\ed9f';
    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
    -webkit-transform: scale(.8);
        -ms-transform: scale(.8);
            transform: scale(.8); 

    opacity: 0;
    color: var(--ptf-color-white);

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
@media only screen and (max-width: 991px)
{
    .ptf-instagram-feed a::after
    {
        font-size: 2rem;
    }
}
@media only screen and (max-width: 767px)
{
    .ptf-instagram-feed a::after
    {
        font-size: 1.5rem;
    }
}
.ptf-instagram-feed a:hover::before
{
    opacity: 1;
}
.ptf-instagram-feed a:hover::after
{
    -webkit-transition-delay: 150ms;
            transition-delay: 150ms;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1); 

    opacity: 1;
}

/* WIDGET: NEWS SLIDER
-------------------------------------------- */
.ptf-news-slider .ptf-slider-controls
{
    position: absolute;
    z-index: 2; 
    right: 4.6875rem;
    bottom: 4.375rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-news-slider .ptf-slider-controls
    {
        display: none;
    }
}

.ptf-news-slide
{
    position: relative;
}
.ptf-news-slide__media
{
    height: 47.5rem;
}
@media only screen and (max-width: 991px)
{
    .ptf-news-slide__media
    {
        height: 34.375rem;
    }
}
.ptf-news-slide__media img
{
    /* support for plugin https://github.com/bfred-it/object-fit-images */
    font-family: 'object-fit: cover;';

    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}
.ptf-news-slide__media::after
{
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    content: '';

    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .5)), color-stop(55%, transparent));
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .5), transparent 55%);
    background-image:         linear-gradient(to top, rgba(0, 0, 0, .5), transparent 55%);
}
.ptf-news-slide__content
{
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;

    max-width: 54.0625rem;
    padding: 0 2.5rem 3.75rem 4.6875rem;

    -webkit-transition: opacity var(--ptf-transition-duration) 1000ms var(--ptf-transition-easing);
            transition: opacity var(--ptf-transition-duration) 1000ms var(--ptf-transition-easing); 

    opacity: 0;
}
@media only screen and (max-width: 991px)
{
    .ptf-news-slide__content
    {
        padding: 0 2.5rem 2.5rem 2.5rem;
    }
}
.swiper-slide-active .ptf-news-slide__content
{
    -webkit-transition-delay: 500ms;
            transition-delay: 500ms; 

    opacity: 1;
}
.ptf-news-slide__meta
{
    font-size: .875rem; 

    margin-bottom: .9375rem;

    text-transform: uppercase;

    color: var(--ptf-color-white);
}
.ptf-news-slide__meta span.cat
{
    font-weight: 700;
}
.ptf-news-slide__meta span + span::before
{
    margin-right: .5rem;
    margin-left: .5rem; 

    content: '/';
}
.ptf-news-slide__title
{
    font-size: 3rem;
    line-height: 1.16; 

    color: var(--ptf-color-white);
}
@media only screen and (max-width: 991px)
{
    .ptf-news-slide__title
    {
        font-size: 2.25rem;
    }
}
.ptf-news-slide__excerpt
{
    margin-top: 1.5625rem;

    color: var(--ptf-color-1);
}

/* WIDGET: PARTNER BOX
-------------------------------------------- */
.ptf-partner-box
{
    --ptf-hover-background: var(--ptf-color-7);
    --ptf-image-height: 85px;
}

.ptf-partner-box
{
    padding: 3.125rem .9375rem 2.5rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 
    text-align: center;

    background-color: var(--ptf-color-7);
}
.ptf-partner-box__image
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    height: 5.3125rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
}
.ptf-partner-box__image img
{
    width: auto;
    height: var(--ptf-image-height);
}
.ptf-partner-box__title
{
    font-size: 1rem;
    font-weight: 700;

    margin-top: 2.1875rem;

    -webkit-transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: color var(--ptf-transition-duration) var(--ptf-transition-easing); 
    text-transform: uppercase;

    color: var(--ptf-color-3);
}
.ptf-partner-box:hover
{
    background-color: var(--ptf-hover-background);
}
.ptf-partner-box:hover .ptf-partner-box__image
{
    -webkit-animation: ptf_bounce calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing) forwards;
            animation: ptf_bounce calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing) forwards;

    -webkit-filter: none;
            filter: none;
}
.ptf-partner-box:hover .ptf-partner-box__title
{
    color: var(--ptf-color-black);
}

/* WIDGET: PHONE BLOCK
-------------------------------------------- */
.ptf-phone-block
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    color: var(--ptf-color-black); 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-phone-block__icon
{
    font-size: 1.125rem;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    width: 2.8125rem;
    height: 2.8125rem;
    margin-right: 1.25rem;

    color: var(--ptf-color-white);
    border-radius: 50%;
    background-color: var(--ptf-accent-1); 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-phone-block__caption
{
    font-size: .875rem;
    font-weight: 700; 
    line-height: 1.4;

    margin-right: 2.8125rem;

    text-transform: uppercase;

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}
.ptf-phone-block__phone
{
    font-size: 1.75rem;
    font-weight: 700; 

    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
}

/* WIDGET: PRICING TABLE
-------------------------------------------- */
.ptf-pricing-table
{
    position: relative;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    padding: 2.8125rem 3.125rem 4rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 

    background-color: var(--ptf-color-white);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-color-black);
            box-shadow: inset 0 0 0 1px var(--ptf-color-black);

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
.ptf-pricing-table .badge
{
    font-size: .875rem;

    position: absolute;
    top: 2.5rem;
    right: 3.125rem;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    padding: .3125rem .625rem;

    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-2); 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-pricing-table__title
{
    font-size: .875rem;
    font-weight: normal;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 
    text-transform: uppercase;

    color: var(--ptf-color-3);
}
.ptf-pricing-table__price
{
    font-size: 3.75rem;
    font-weight: 600;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    margin-top: 2.5rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 

    color: var(--ptf-accent-3);

    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}
.ptf-pricing-table__price .currency
{
    font-size: 1.875rem;
    font-weight: normal; 
    line-height: 1;
}
.ptf-pricing-table__price .price
{
    line-height: .8;
}
.ptf-pricing-table__price .period
{
    font-size: 1.125rem;
    font-weight: normal;

    -webkit-transition: inherit;
            transition: inherit; 

    color: var(--ptf-color-black);

    -webkit-align-self: flex-end;
    -ms-flex-item-align: end;
            align-self: flex-end;
}
.ptf-pricing-table__description
{
    font-size: .875rem;

    margin-top: 1.75rem;
    padding-bottom: 1.875rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 

    color: var(--ptf-color-2);
    border-bottom: 1px solid var(--ptf-color-black);
}
.ptf-pricing-table__content
{
    margin-top: 2.8125rem;
}
.ptf-pricing-table__content ul
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}
.ptf-pricing-table__content ul li
{
    font-size: 1rem;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: row;

    padding-bottom: .875rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 
    text-transform: uppercase;

    color: var(--ptf-color-black);

    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
}
.ptf-pricing-table__content ul li:last-of-type
{
    padding-bottom: 0;
}
.ptf-pricing-table__content ul li + li
{
    padding-top: .875rem;

    border-top: 1px solid var(--ptf-color-black);
}
.ptf-pricing-table__action
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    margin-top: 3.75rem; 

    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
            align-items: flex-end;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
}
.ptf-pricing-table:hover
{
    background-color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
}
.ptf-pricing-table:hover .ptf-pricing-table__title,
.ptf-pricing-table:hover .ptf-pricing-table__price,
.ptf-pricing-table:hover .ptf-pricing-table__price .period
{
    color: var(--ptf-color-white);
}
.ptf-pricing-table:hover .ptf-pricing-table__description,
.ptf-pricing-table:hover .ptf-pricing-table__content ul li
{
    color: var(--ptf-color-white);
    border-color: var(--ptf-color-white);
}
.ptf-pricing-table:hover .ptf-btn:not(:hover)
{
    color: var(--ptf-color-black);
    background-color: var(--ptf-color-white);
}

/* WIDGET: PROCESS STEPS
-------------------------------------------- */
.ptf-process-steps
{
    margin: 0;
    padding: 0;

    list-style-type: none;

    --ptf-border-width: 1px;
    --ptf-border-color: var(--ptf-color-6);
}

.ptf-process-item
{
    padding-bottom: 3.4375rem;
    padding-left: 6.25rem; 

    counter-increment: process;
}
.ptf-process-item::before
{
    font-size: 5rem;
    font-weight: 300; 
    line-height: .75;

    position: absolute;
    left: 0;

    content: counter(process);

    color: var(--ptf-color-1);
}
.ptf-process-item__title
{
    font-size: 1.25rem; 

    text-transform: uppercase;
}
.ptf-process-item__text
{
    font-size: 1.125rem; 

    display: block;

    margin-top: .9375rem;
}

.ptf-process-item + .ptf-process-item
{
    padding-top: 3.75rem;

    border-top-width: var(--ptf-border-width);
    border-top-style: solid;
    border-top-color: var(--ptf-border-color);
}

/* WIDGET: REWARDS LIST
-------------------------------------------- */
.ptf-rewards-list
{
    margin: 0;
    padding: 0;

    list-style-type: none;

    --ptf-border-width: 1px;
    --ptf-border-color: var(--ptf-color-6);
}

.ptf-rewards-item
{
    display: grid;

    padding: 4.0625rem 0;

    border-top-width: var(--ptf-border-width);
    border-top-style: solid;
    border-top-color: var(--ptf-border-color);

    grid-template-columns: 20% 20% 1fr;
}
@media only screen and (max-width: 991px)
{
    .ptf-rewards-item
    {
        grid-template-columns: 20% 30% 1fr;
    }
}
@media only screen and (max-width: 767px)
{
    .ptf-rewards-item
    {
        grid-template-columns: 1fr;
        grid-gap: 1.875rem;
    }
}
.ptf-rewards-list--small .ptf-rewards-item
{
    padding: 3.125rem 0;

    grid-template-columns: 100px 28% 1fr;
}
@media only screen and (max-width: 991px)
{
    .ptf-rewards-list--small .ptf-rewards-item
    {
        grid-template-columns: 20% 30% 1fr;
    }
}
@media only screen and (max-width: 767px)
{
    .ptf-rewards-list--small .ptf-rewards-item
    {
        grid-template-columns: 1fr;
        grid-gap: 1.875rem;
    }
}
.ptf-rewards-item:first-of-type
{
    padding-top: 0 !important;

    border: none;
}
.ptf-rewards-item:last-of-type
{
    padding-bottom: 0 !important;
}
.ptf-rewards-item__date
{
    font-size: 1rem;
    line-height: 1; 

    margin-bottom: 1rem;

    color: var(--ptf-color-3);
}
.ptf-rewards-item__content
{
    display: grid;

    grid-gap: 1.875rem;
}

.ptf-rewards-project
{
    display: grid;

    grid-template-columns: 80% 20%;
}
@media only screen and (max-width: 1199px)
{
    .ptf-rewards-project
    {
        grid-template-columns: 1fr;
    }
}
.ptf-rewards-project__content h5
{
    font-size: 1.875rem; 

    margin: 0;
}
@media only screen and (max-width: 991px)
{
    .ptf-rewards-list--large .ptf-rewards-project__content h5
    {
        font-size: 1.5rem;
    }
}
.ptf-rewards-list--small .ptf-rewards-project__content h5
{
    font-size: 1.5rem;
}
.ptf-rewards-project__content span
{
    display: block;
}
.ptf-rewards-list--small .ptf-rewards-project__content span
{
    font-size: 1.125rem; 

    margin-top: .3125rem;
}
.ptf-rewards-project__link
{
    padding-top: .625rem;

    color: var(--ptf-color-black);
}
@media only screen and (min-width: 992px)
{
    .ptf-rewards-project__link
    {
        text-align: right;
    }
}
@media only screen and (max-width: 1199px)
{
    .ptf-rewards-project__link
    {
        display: none;
    }
}
.ptf-rewards-list--small .ptf-rewards-project__link
{
    color: var(--ptf-color-2);
}

/* WIDGET: SERVICE BOX
-------------------------------------------- */
.ptf-service-box
{
    position: relative;

    display: grid;

    padding: 3.125rem;

    -webkit-transition: background-color var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: background-color var(--ptf-transition-duration) var(--ptf-transition-easing);

    border-top: 2px solid var(--ptf-color-black);

    grid-template-columns: 7.5rem 18.75rem 1fr 8.75rem;
}
@media only screen and (max-width: 1199px)
{
    .ptf-service-box
    {
        grid-template-columns: 7.5rem 1fr 1fr;
    }
}
@media only screen and (max-width: 991px)
{
    .ptf-service-box
    {
        grid-template-columns: 1fr;
        grid-gap: 1rem;
    }
}
.ptf-service-box__link
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.ptf-service-box__icon
{
    font-size: 3.75rem;
    line-height: 1.1; 

    color: var(--ptf-accent-1);
}
.ptf-service-box__title
{
    font-size: 1.5rem;
    line-height: 1.5; 

    text-transform: uppercase;
}
.ptf-service-box__arrow
{
    font-size: 2.25rem;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 
    text-align: right;

    color: var(--ptf-color-black);
}
@media only screen and (max-width: 1199px)
{
    .ptf-service-box__arrow
    {
        display: none;
    }
}
.ptf-service-box:hover
{
    background-color: var(--ptf-color-7);
}
.ptf-service-box:hover .ptf-service-box__arrow
{
    -webkit-transform: translateX(2px);
        -ms-transform: translateX(2px);
            transform: translateX(2px); 

    color: var(--ptf-accent-1);
}

/* WIDGET: SERVICES LIST
-------------------------------------------- */
.ptf-services-list
{
    --ptf-font-family: var(--ptf-secondary-font);
    --ptf-font-weight: normal;
}

.ptf-services-list
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}
.ptf-services-list li
{
    font-family: var(--ptf-font-family);
    font-weight: var(--ptf-font-weight);
}

/* SECTION: STYLE 1
-------------------------------------------- */
.ptf-services-list--style-1 li
{
    font-size: 3.75rem;
    line-height: 1.3; 

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    color: var(--ptf-color-3);
}
@media only screen and (min-width: 1200px)
{
    .ptf-services-list--style-1 li
    {
        font-size: 5rem;
    }
}
.ptf-services-list--style-1 li a
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
            align-items: flex-start;
}
.ptf-services-list--style-1 li span
{
    font-size: 1rem;
}
@media only screen and (min-width: 1200px)
{
    .ptf-services-list--style-1 li span
    {
        font-size: 1.875rem;
    }
}
.ptf-services-list--style-1 li.sep
{
    font-family: var(--ptf-primary-font);
    font-weight: 300;

    margin: 0 .75rem 0 .9375rem;

    opacity: .5;
}
.ptf-services-list--style-1 li.sep:last-of-type
{
    display: none;
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-services-list--style-2 li
{
    font-size: 1.875rem;
    line-height: 1.6; 

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    color: var(--ptf-color-black);
}

/* SECTION: STYLE 3
-------------------------------------------- */
.ptf-services-list--style-3
{
    -webkit-columns: 3;
       -moz-columns: 3;
            columns: 3;
}
.ptf-services-list--style-3 li
{
    font-size: 1rem;
    font-weight: 600; 
    line-height: 2;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    color: var(--ptf-color-black);
}
.ptf-services-list--style-3 li a:hover
{
    color: var(--ptf-color-3);
}

/* SECTION: STYLE 4
-------------------------------------------- */
.ptf-services-list--style-4 li
{
    font-size: 3rem;
    line-height: 1.5; 

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    color: var(--ptf-color-3);
}
.ptf-services-list--style-4 li a:hover
{
    color: var(--ptf-color-white);
}

/* SECTION: STYLE 5
-------------------------------------------- */
.ptf-services-list--style-5 li
{
    font-size: 1.25rem;
    line-height: 2; 

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    color: var(--ptf-color-black);
}
.ptf-services-list--style-5 li a:hover
{
    -webkit-transform: translateX(1rem);
        -ms-transform: translateX(1rem);
            transform: translateX(1rem); 

    color: var(--ptf-accent-1);
}

/* WIDGET: SHOWCASE 1
-------------------------------------------- */
.ptf-showcase-1
{
    position: relative;

    height: 100vh;
    min-height: 34.375rem;
}
.ptf-showcase-1 .section
{
    position: absolute;
    top: 0;
    left: 0;

    overflow-y: auto; 

    min-height: 100vh;
    padding: 0;

    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.ptf-showcase-1 .ptf-showcase-item
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    width: 100%;
    height: 100%;
    padding: 25vh 0 5rem; 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
.ptf-showcase-1 .ptf-showcase-item__header
{
    margin-bottom: 2.5rem;
}
@media only screen and (min-width: 1200px)
{
    .ptf-showcase-1 .ptf-showcase-item__title
    {
        font-size: 5rem;
        line-height: 1;
    }
}
@media (min-width: 1920px)
{
    .ptf-showcase-1 .ptf-showcase-item__title
    {
        font-size: 6.25rem;
        line-height: 1;
    }
}
.ptf-showcase-1 .ptf-showcase-item__category
{
    font-size: 1.875rem;
    font-weight: 600; 
    line-height: 2;

    margin-top: 6.25rem;

    color: var(--ptf-color-black);
}
@media only screen and (max-width: 767px)
{
    .ptf-showcase-1 .ptf-showcase-item__category
    {
        margin-top: 3.125rem;
    }
}
.ptf-showcase-1 .ptf-showcase-item__footer
{
    font-size: 1.125rem; 

    max-width: 35rem;
    margin-top: auto;
}
.ptf-showcase-1 section.dark .ptf-showcase-item__title,
.ptf-showcase-1 section.dark .ptf-showcase-item__category
{
    color: var(--ptf-color-white);
}

/* SECTION: FIXED FOOTER
-------------------------------------------- */
.ptf-showcase-fixed-footer--inner,
.ptf-showcase-fixed-footer--outer
{
    position: fixed;
    z-index: 10;
    right: 0;
    bottom: 5rem;
    left: 0;

    display: none;

    -webkit-transition: opacity var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: opacity var(--ptf-transition-duration) var(--ptf-transition-easing);
    pointer-events: none; 

    opacity: 0;
    color: var(--ptf-color-black);
}
.ptf-showcase-fixed-footer--inner.active,
.active.ptf-showcase-fixed-footer--outer
{
    opacity: 1;
}
.ptf-showcase-fixed-footer--inner.dark,
.dark.ptf-showcase-fixed-footer--outer
{
    color: var(--ptf-color-white);
}
.ptf-showcase-fixed-footer--inner .all,
.ptf-showcase-fixed-footer--outer .all
{
    font-size: 1.125rem;
    font-weight: 600;

    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    text-transform: uppercase;
    pointer-events: auto; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-showcase-fixed-footer--inner .all svg,
.ptf-showcase-fixed-footer--outer .all svg
{
    font-size: 2.625rem;

    height: 1em;
    margin-left: 2.1875rem;

    -webkit-transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         transform var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-transform var(--ptf-transition-duration) var(--ptf-transition-easing);
}
.ptf-showcase-fixed-footer--inner .all:hover,
.ptf-showcase-fixed-footer--outer .all:hover
{
    color: inherit;
}
.ptf-showcase-fixed-footer--inner .all:hover svg,
.ptf-showcase-fixed-footer--outer .all:hover svg
{
    -webkit-transform: translateX(2px);
        -ms-transform: translateX(2px);
            transform: translateX(2px);
}
@media (min-width: 1920px) and (min-height: 1080px)
{
    .ptf-showcase-fixed-footer--inner,
    .ptf-showcase-fixed-footer--outer
    {
        display: block;
    }
}

.ptf-showcase-fixed-footer--outer .socials
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    pointer-events: auto; 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
.ptf-showcase-fixed-footer--outer .socials a + a
{
    margin-top: .875rem;
    margin-left: 0 !important;
}

.ptf-showcase-fixed-footer--outer.dark .socials a:not(:hover)
{
    color: inherit;
}

.ptf-showcase-fixed-footer--outer .copyright
{
    font-size: .875rem;

    text-align: right;
    text-transform: uppercase;
    pointer-events: auto;
}

/* WIDGET: SHOWCASE 2
-------------------------------------------- */
.ptf-showcase-2
{
    position: relative;
}
.ptf-showcase-2 .sticky-column
{
    top: 0;
}
.ptf-showcase-2 .ptf-showcase-info-wrapper
{
    min-height: 100vh;
    padding: 2.8125rem;

    background-color: var(--ptf-color-white);
}
@media (min-width: 1920px)
{
    .ptf-showcase-2 .ptf-showcase-info-wrapper
    {
        padding: 4.375rem 4.375rem 5.625rem;
    }
}
.ptf-showcase-2 .ptf-showcase-info .swiper-slide
{
    height: auto;
}
.ptf-showcase-2 .ptf-showcase-info__item
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    height: 100%; 

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
}
.ptf-showcase-2 .ptf-showcase-info__image
{
    position: relative;

    padding-top: 100%;
}
.ptf-showcase-2 .ptf-showcase-info__image img
{
    position: absolute;
    top: 0;
    right: 0;

    width: 100%;
    height: 100%;

    -o-object-fit: cover;
       object-fit: cover;
}
.ptf-showcase-2 .ptf-showcase-info__meta
{
    display: grid;

    margin-top: 3.75rem;
    margin-bottom: 5rem;

    grid-gap: 1.5625rem;
    grid-template-columns: repeat(2, 1fr);
}
@media only screen and (max-width: 767px)
{
    .ptf-showcase-2 .ptf-showcase-info__meta
    {
        grid-template-columns: 1fr;
    }
}
.ptf-showcase-2 .ptf-showcase-info__title
{
    font-size: .75rem; 

    margin-bottom: .9375rem;

    text-transform: uppercase;

    color: var(--ptf-color-3);
}
.ptf-showcase-2 .ptf-showcase-info__text
{
    font-size: 1.5rem; 

    color: var(--ptf-color-black);
}
.ptf-showcase-2 .ptf-showcase-info__content
{
    font-size: 1.125rem; 

    margin-top: auto;
}
.ptf-showcase-2 .ptf-showcase-list
{
    margin: 0;
    padding: 7.5rem 10%;

    list-style-type: none;
}
@media only screen and (max-width: 767px)
{
    .ptf-showcase-2 .ptf-showcase-list
    {
        padding: 3.75rem 10%;
    }
}
.ptf-showcase-2 .ptf-showcase-list .ptf-showcase-list__item
{
    -webkit-transition: opacity var(--ptf-transition-easing) var(--ptf-transition-duration);
            transition: opacity var(--ptf-transition-easing) var(--ptf-transition-duration); 

    opacity: .25;
}
.ptf-showcase-2 .ptf-showcase-list .ptf-showcase-list__item:hover,
.ptf-showcase-2 .ptf-showcase-list .ptf-showcase-list__item.is-active
{
    opacity: 1;
}
.ptf-showcase-2 .ptf-showcase-list .ptf-showcase-list__item + .ptf-showcase-list__item
{
    margin-top: 5rem;
}
.ptf-showcase-2 .ptf-showcase-list .ptf-showcase-list__title
{
    font-size: 3.25rem;
}
@media only screen and (max-width: 767px)
{
    .ptf-showcase-2 .ptf-showcase-list .ptf-showcase-list__title
    {
        font-size: 2.875rem;
    }
}
.ptf-showcase-2 .ptf-showcase-list .ptf-showcase-list__title a:hover
{
    color: inherit;
}
@media (min-width: 1920px)
{
    .ptf-showcase-2 .ptf-showcase-list .ptf-showcase-list__title
    {
        font-size: 4.5rem;
    }
}
.ptf-showcase-2 .ptf-showcase-list .ptf-showcase-list__date
{
    font-size: 1.125rem; 

    margin-top: .625rem;
}

/* WIDGET: SHOWCASE 3
-------------------------------------------- */
.ptf-showcase-3
{
    position: relative;

    background-color: var(--ptf-color-black);
}
.ptf-showcase-3 .ptf-swiper-button-prev--style-4,
.ptf-showcase-3 .ptf-swiper-button-next--style-4
{
    z-index: 2;

    display: none;
}
@media (min-width: 1920px)
{
    .ptf-showcase-3 .ptf-swiper-button-prev--style-4,
    .ptf-showcase-3 .ptf-swiper-button-next--style-4
    {
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -ms-inline-flexbox;
        display:         inline-flex;
    }
}
.ptf-showcase-3 .ptf-swiper-fraction
{
    position: absolute;
    z-index: 2; 
    bottom: 1.875rem;
    left: .9375rem;
}
@media only screen and (min-width: 992px)
{
    .ptf-showcase-3 .ptf-swiper-fraction
    {
        bottom: 3.75rem;
        left: 4.375rem;
    }
}
.ptf-showcase-3 .ptf-swiper-pagination
{
    position: absolute;
    z-index: 2;
    right: .9375rem;
    bottom: 1.875rem;
    left: auto;

    width: auto;
}
@media only screen and (min-width: 992px)
{
    .ptf-showcase-3 .ptf-swiper-pagination
    {
        right: 4.375rem;
        bottom: 3.75rem;
    }
}
.ptf-showcase-3 .ptf-swiper-button-prev--style-4
{
    left: .9375rem;
}
@media only screen and (min-width: 992px)
{
    .ptf-showcase-3 .ptf-swiper-button-prev--style-4
    {
        left: 4.375rem;
    }
}
.ptf-showcase-3 .ptf-swiper-button-next--style-4
{
    right: .9375rem;
}
@media only screen and (min-width: 992px)
{
    .ptf-showcase-3 .ptf-swiper-button-next--style-4
    {
        right: 4.375rem;
    }
}
.ptf-showcase-3 .swiper-slide
{
    overflow: hidden;
}
.ptf-showcase-3 .ptf-showcase-image
{
    position: absolute;
    z-index: 1;

    width: 100%;
    height: 100%;

    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.ptf-showcase-3 .ptf-showcase-slide
{
    position: relative;
    z-index: 2;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    min-height: 100vh;
    padding: 18.75rem 0; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

/* WIDGET: SIMPLE IMAGE
-------------------------------------------- */
.ptf-simple-image
{
    position: relative;

    overflow: hidden;
}
.ptf-simple-image img
{
    -webkit-transition: -webkit-transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing);
            transition: -webkit-transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing);
            transition:         transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing);
            transition:         transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing), -webkit-transform calc(var(--ptf-transition-duration) * 3) var(--ptf-transition-easing);

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    will-change: transform;
}
.ptf-simple-image:hover img
{
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
}

.ptf-simple-image-caption
{
    font-size: .875rem; 

    margin-top: 2.5rem;

    text-align: center;

    color: var(--ptf-color-3);
}
@media only screen and (max-width: 767px)
{
    .ptf-simple-image-caption
    {
        margin-top: 1.25rem;
    }
}
.ptf-simple-image-caption a
{
    color: var(--ptf-color-black);
}
.ptf-simple-image-caption a:hover
{
    text-decoration: underline;
}

/* WIDGET: SKILL BOX
-------------------------------------------- */
.ptf-skill-box
{
    --ptf-image-height: 85px;
}

.ptf-skill-box
{
    position: relative;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing); 

    background-color: var(--ptf-color-white);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-color-1);
            box-shadow: inset 0 0 0 1px var(--ptf-color-1);
}
.ptf-skill-box::before
{
    display: block;

    padding-top: 100%; 

    content: '';
}
.ptf-skill-box__content
{
    position: absolute;
    top: 0;
    left: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    width: 100%;
    height: 100%; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-skill-box__image
{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    height: 5.3125rem; 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-skill-box__image img
{
    width: auto;
    height: var(--ptf-image-height);
}
.ptf-skill-box__title
{
    font-size: 1.125rem;
    font-weight: normal; 

    margin-top: 1.5625rem;
}
.ptf-skill-box:hover
{
    -webkit-box-shadow: inset 0 0 0 2px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 2px var(--ptf-accent-1);
}

/* WIDGET: SPACER
-------------------------------------------- */
.ptf-spacer
{
    display: block;
    clear: both; 

    height: var(--ptf-xxl);
}
@media only screen and (max-width: 1199px)
{
    .ptf-spacer
    {
        height: var(--ptf-xl, var(--ptf-xxl));
    }
}
@media only screen and (max-width: 991px)
{
    .ptf-spacer
    {
        height: var(--ptf-lg, var(--ptf-xl, var(--ptf-xxl)));
    }
}
@media only screen and (max-width: 767px)
{
    .ptf-spacer
    {
        height: var(--ptf-md, var(--ptf-lg, var(--ptf-xl, var(--ptf-xxl))));
    }
}
@media only screen and (max-width: 575px)
{
    .ptf-spacer
    {
        height: var(--ptf-sm, var(--ptf-md, var(--ptf-lg, var(--ptf-xl, var(--ptf-xxl)))));
    }
}

/* WIDGET: SUBSCRIBE FORM
-------------------------------------------- */
.ptf-subscribe-form
{
    display: block;
}
.ptf-subscribe-form .ptf-form-group
{
    margin: 0;
}
.ptf-subscribe-form input[type=email]
{
    padding: .625rem 0 .625rem 2.625rem;
}
.ptf-subscribe-form i
{
    font-size: 1.375rem; 

    position: absolute;
    top: -.2em;
    bottom: 0;
    left: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    color: var(--ptf-color-black);

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-subscribe-form button
{
    font-size: 1rem;
    font-weight: 700;

    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    padding: 0;

    cursor: pointer; 
    -webkit-transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: color var(--ptf-transition-duration) var(--ptf-transition-easing);
    text-transform: uppercase;

    color: var(--ptf-color-black);
    border: none;
    background: none;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-subscribe-form button:hover
{
    color: var(--ptf-accent-1);
}

/* SECTION: LARGE
-------------------------------------------- */
.ptf-subscribe-form--large input[type=email]
{
    font-size: 1.125rem; 

    padding: 1.5625rem 0 1.5625rem 3.875rem;
}

.ptf-subscribe-form--large i
{
    font-size: 1.875rem; 

    top: -.1em;
}

/* WIDGET: TEAM MEMBER
-------------------------------------------- */
.ptf-team-member
{
    --ptf-avatar-border-color: var(--ptf-color-3);
    --ptf-avatar-border-color-hover: var(--ptf-accent-1);
    --ptf-avatar-background: transparent;
}

.ptf-team-member
{
    width: 100%;
}
.ptf-team-member .ptf-team-member__avatar
{
    position: relative;

    background-color: var(--ptf-avatar-background);
}
.ptf-team-member .ptf-team-member__avatar .shadow-effect
{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    -webkit-transition: -webkit-box-shadow var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: -webkit-box-shadow var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         box-shadow var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition:         box-shadow var(--ptf-transition-duration) var(--ptf-transition-easing), -webkit-box-shadow var(--ptf-transition-duration) var(--ptf-transition-easing);
    pointer-events: none; 

    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-avatar-border-color);
            box-shadow: inset 0 0 0 1px var(--ptf-avatar-border-color);
}
.ptf-team-member .ptf-team-member__avatar img
{
    display: block;

    width: 100%;
    height: 100%;

    -webkit-transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);
            transition: all var(--ptf-transition-duration) var(--ptf-transition-easing);

    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: top;
       object-position: top;
    -o-object-fit: cover;
       object-fit: cover;
}
.ptf-team-member .ptf-team-member__avatar + .ptf-team-member__content
{
    padding-top: 1.5rem;
}
.ptf-team-member .ptf-team-member__name
{
    font-size: 1.25rem;
}
.ptf-team-member .ptf-team-member__name a:hover
{
    text-decoration: underline;

    color: inherit;
}
.ptf-team-member .ptf-team-member__function
{
    font-size: .875rem; 

    color: var(--ptf-color-2);
}
.ptf-team-member:hover .ptf-team-member__avatar .shadow-effect
{
    -webkit-box-shadow: inset 0 0 0 2px var(--ptf-avatar-border-color-hover);
            box-shadow: inset 0 0 0 2px var(--ptf-avatar-border-color-hover);
}

.ptf-team-member--has-effect .ptf-team-member__avatar img
{
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%);
}

.ptf-team-member--has-effect:hover .ptf-team-member__avatar img
{
    -webkit-filter: grayscale(0);
            filter: grayscale(0);
}

.ptf-team-member-grid
{
    display: grid;

    grid-template-columns: repeat(5, 1fr);
    grid-gap: 3.75rem;
}
@media only screen and (max-width: 991px)
{
    .ptf-team-member-grid
    {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media only screen and (max-width: 767px)
{
    .ptf-team-member-grid
    {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media only screen and (max-width: 575px)
{
    .ptf-team-member-grid
    {
        grid-template-columns: repeat(2, 1fr);
    }
}
.ptf-team-member-grid--4-columns
{
    grid-template-columns: repeat(4, 1fr);
}

/* WIDGET: TESTIMONIAL
-------------------------------------------- */
.ptf-testimonial
{
    --ptf-text-align: center;
    --ptf-info-color: var(--ptf-color-3);
    --ptf-info-span-color: var(--ptf-color-2);
    --ptf-content-color: var(--ptf-color-black);
    --ptf-author-color: var(--ptf-color-black);
}

.ptf-testimonial
{
    text-align: var(--ptf-text-align);
}
.ptf-testimonial__content
{
    font-family: var(--ptf-secondary-font);
    font-size: 3rem;
    line-height: 1.375; 

    color: var(--ptf-content-color);
}
@media only screen and (max-width: 991px)
{
    .ptf-testimonial__content
    {
        font-size: 2.25rem;
    }
}
.ptf-testimonial__content a
{
    color: #09f;
}
.ptf-testimonial__meta
{
    margin-top: 5rem;
}
.ptf-testimonial__author
{
    font-size: 1.5rem; 

    color: var(--ptf-author-color);
}
.ptf-testimonial__info
{
    font-size: .875rem; 

    margin-top: .625rem;

    color: var(--ptf-info-color);
}
.ptf-testimonial__info span
{
    color: var(--ptf-info-span-color);
}
.ptf-testimonial__info a
{
    color: #09f;
}
.ptf-testimonial__info a:hover
{
    text-decoration: underline;
}

/* SECTION: STYLE 2
-------------------------------------------- */
.ptf-testimonial--style-2 .ptf-testimonial__content
{
    font-family: var(--ptf-primary-font);
    font-weight: 700; 
    line-height: 1.33;
}

.ptf-testimonial--style-2 .ptf-testimonial__meta
{
    margin-top: 4.6875rem;
}

.ptf-testimonial--style-2 .ptf-testimonial__info
{
    margin-top: .3125rem;
}

/* SECTION: STYLE 3
-------------------------------------------- */
.ptf-testimonial--style-3 .ptf-testimonial__content
{
    font-family: var(--ptf-primary-font);
    font-weight: normal; 
    line-height: 1.5;
}

.ptf-testimonial--style-3 .ptf-testimonial__meta
{
    margin-top: 4.0625rem;
}

.ptf-testimonial--style-3 .ptf-testimonial__author
{
    font-size: 1.5rem;
    font-weight: normal;
}

/* SECTION: STYLE 4
-------------------------------------------- */
.ptf-testimonial--style-4 .ptf-testimonial__content
{
    font-family: var(--ptf-primary-font);
    font-size: 2.25rem;
    line-height: 1.55;
}

.ptf-testimonial--style-4 .ptf-testimonial__meta
{
    margin-top: 4.6875rem;
}

.ptf-testimonial--style-4 .ptf-testimonial__info
{
    margin-top: .3125rem;
}

/* WIDGET: TIMELINE
-------------------------------------------- */
.ptf-timeline
{
    display: block;
}
.ptf-timeline__year
{
    font-size: .875rem; 

    margin-bottom: 3.4375rem;

    text-transform: uppercase;

    color: var(--ptf-color-3);
}
.ptf-timeline__list
{
    margin: 0;
    padding: 0;

    list-style-type: none;
}
.ptf-timeline__list li + li
{
    margin-top: 2.1875rem;
}
.ptf-timeline__title
{
    font-family: var(--ptf-secondary-font);
    font-weight: normal;
}

/* WIDGET: TWITTER REVIEW
-------------------------------------------- */
.ptf-twitter-review
{
    padding-top: 3.75rem;

    border-top: 2px solid var(--ptf-color-black);
}
.ptf-twitter-review__header
{
    position: relative;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-twitter-review__avatar
{
    margin-right: 1.25rem; 

    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
            flex-shrink: 0;
}
.ptf-twitter-review__avatar img
{
    border-radius: 50%;
}
.ptf-twitter-review__meta
{
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
}
.ptf-twitter-review__meta a:hover
{
    color: #0cf;
}
.ptf-twitter-review__icon
{
    font-size: 2.25rem;
    line-height: 1; 

    position: absolute;
    top: .625rem;
    right: .9375rem;

    color: #0cf;
}
.ptf-twitter-review__author
{
    font-size: 1.25rem;
    font-weight: 600;
}
.ptf-twitter-review__info
{
    font-size: .9375rem; 

    color: var(--ptf-color-3);
}
.ptf-twitter-review__content
{
    font-size: 1.625rem;
    line-height: 1.5; 

    margin-top: 2.8125rem;
    padding-right: 1.875rem;

    color: var(--ptf-color-black);
}
.ptf-twitter-review__content a
{
    color: #0cf;
}
.ptf-twitter-review__content a:hover
{
    text-decoration: underline;
}

/* SECTION: STYLE 2
-------------------------------------------- */
@media only screen and (min-width: 992px)
{
    .ptf-twitter-review--style-2
    {
        padding-right: 15%;
        padding-left: 15%;
    }
}

.ptf-twitter-review--style-2 .ptf-twitter-review__author
{
    font-weight: 700;
}

.ptf-twitter-review--style-2 .ptf-twitter-review__content
{
    font-size: 1.75rem;
}

/* SECTION: STYLE 3
-------------------------------------------- */
.ptf-twitter-review--style-3
{
    padding: 2.8125rem;

    border: 1px solid var(--ptf-color-14);
}
@media only screen and (min-width: 992px)
{
    .ptf-twitter-review--style-3
    {
        padding-top: 5.625rem;
        padding-right: 15%;
        padding-bottom: 6.25rem;
        padding-left: 15%;
    }
}
.ptf-twitter-review--style-3 .ptf-twitter-review__author
{
    font-weight: 700;
}
.ptf-twitter-review--style-3 .ptf-twitter-review__content
{
    font-size: 1.625rem;
}

/* WIDGET: VIDEO BUTTON
-------------------------------------------- */
.ptf-video-button
{
    --ptf-title-color: var(--ptf-color-black);
}

.ptf-video-button
{
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display:         inline-flex;

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
}
.ptf-video-button a
{
    font-size: 1.5rem;
    line-height: 1;

    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display:         flex;

    width: 4rem;
    height: 4rem;
    margin-right: 1rem;
    padding-left: .2em;

    color: var(--ptf-title-color);
    border-radius: 50%;
    background-color: transparent;
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-title-color);
            box-shadow: inset 0 0 0 1px var(--ptf-title-color); 

    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
}
.ptf-video-button a:hover
{
    color: var(--ptf-color-white);
    background-color: var(--ptf-accent-1);
    -webkit-box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
            box-shadow: inset 0 0 0 1px var(--ptf-accent-1);
}
.ptf-video-button__title
{
    font-size: .875rem;
    font-weight: 700; 

    text-transform: uppercase;

    color: var(--ptf-title-color);
}
</pre></body></html>