/*------------------------------------------------------------------
ver 1.3

[Table of contents]
1. Global CSS
          1.1 Global Header Logo/Menu CSS
          1.2. Global Section CSS
2. Home Section CSS
3. Services Section CSS
4. Portfolio Section CSS
5. Inspire Section CSS
6. About Section CSS
7. News Section CSS
8. Pricing Section CSS
9. Skills Section CSS
10. Team Section CSS
11. Clients Section CSS
12. Contact Section CSS
13. Milestones Section CSS
14. Footer CSS
15. Responsive CSS
-------------------------------------------------------------------*/


@import url("css/clear.css");
@import url("css/font-awesome.min.css");
@import url("css/sm-clean.css");
@import url("css/slick.css");
@import url("css/prettyPhoto.css");
@import url("css/owl.carousel.min.css");
@import url("css/owl.theme.default.min.css");
@import url("css/common.css");


/* ===================================
    1. Global CSS
====================================== */

html {
    overflow-x: clip;
}

body {
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
    line-height: 27px;
    font-weight: 200;
    color: #fff;
    background-color: #16231c;
    overflow-x: clip;
}

body a {
    text-decoration: none;
    color: #e79f3d;
    transition: color .2s ease;
}

body a:hover {
    color: #e79f3d;
}

body p, 
body pre {
    margin-bottom: 13px;
}

.site-wrapper img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
}

.doc-loader {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 99999;
    background-color: #ead8d4;
    transition: transform .8s cubic-bezier(.65, 0, .35, 1);
}

.doc-loader.swipe-up {
    transform: translateY(-100%);
}

.doc-loader img {
    width: 64px;
    height: 64px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#preloader-logo {
    width: 320px;
    height: auto;
    max-width: 70%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: preloader-logo-in 1s ease both;
}

@keyframes preloader-logo-in {
    0%   { opacity: 0; transform: translate(-50%, -44%); }
    100% { opacity: 1; transform: translate(-50%, -50%); }
}

.content-1170 {
    width: 1170px;    
}

.content-960 {
    width: 960px;    
}

.content-740 {
    width: 740px;
}

.pagination-holder {
    margin: 60px 0;
}

.section-wrapper {
    position: relative;
    padding: 75px 0;
}


/* ===================================
    1.1 Global Header Logo/Menu CSS
====================================== */

.header-holder {
    z-index: 99 !important;
    background-color: #000000;
    width: 100% !important;
    top: 0;
    position: fixed;
    -webkit-transform: translateZ(0);
}

.sticky-wrapper {
    height: 77px !important;
}

.admin-bar .header-holder {
    top: 32px !important;
}

.menu-wrapper {
    width: 98%;
    max-width: 1450px;
    min-height: 77px;
}

.header-logo {
    line-height: 0;
    font-size: 0;
    float: left;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 120px;
}

.header-logo img {
    max-height: 54px;
    width: auto;
    display: block;
}

.menu-holder {
    float: right;
    max-width: 80%;
    margin-right: 100px;
}

.toggle-holder {
    display: none;
    right: 10px;
    z-index: 1;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

#toggle:hover {
    cursor: pointer;
}

#toggle div {
    height: 3px;
    margin-bottom: 6px;
    background-color: #ffffff;
    width: 22px;
}

#toggle .second-menu-line {
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;    
    -webkit-transform: translate3d(10px,0,0);
    transform: translate3d(10px,0,0);
}

#toggle:hover .second-menu-line {
    -webkit-transform: translate3d(0,0,0) !important;
    transform: translate3d(0,0,0) !important;
}

#toggle.on .second-menu-line {
    -webkit-transform: translate3d(-10px,0,0);
    transform: translate3d(-10px,0,0);
}

.is-touch #toggle .second-menu-line {    
    -webkit-transform: translate3d(10px,0,0) !important;
    transform: translate3d(10px,0,0) !important;
}

.is-touch #toggle.on .second-menu-line {
    -webkit-transform: translate3d(-10px,0,0) !important;
    transform: translate3d(-10px,0,0) !important;
}

#toggle .third-menu-line {        
    margin-bottom: 5px;
}

#header-main-menu {
    display: inline-block;
}

.sm-clean .has-submenu {
    padding-right: 35px !important;
}

body .site-wrapper .sm-clean a {
    cursor: pointer;
    color: #ffffff;
}

.sm-clean a span.sub-arrow {
    right: 3px;
}

.sm-clean a.highlighted {
    padding: 15px;
}

.sm-clean a, 
.sm-clean a:hover, 
.sm-clean a:focus, 
.sm-clean a:active {
    font-size: 14px;
    font-weight: 400;
    transition: color .3s ease, background-color .3s ease;
    padding: 15px;
}

.sm-clean ul a, 
.sm-clean ul a:hover, 
.sm-clean ul a:focus, 
.sm-clean ul a:active {    
    font-size: 13px;
    line-height: 15px;
    padding: 10px;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.sm-clean {
    background-color: transparent;        
    padding: 15px 0;
}

body .sm-clean a:hover,
body .main-menu.sm-clean .sub-menu li a:hover,
body .sm-clean li.active a,
body .sm-clean li.current-page-ancestor > a,
body .sm-clean li.current_page_ancestor > a,
body .sm-clean li.current_page_item > a {
    color: #e79f3d !important;
}

.sm-clean li {
    margin-right: 10px;
}

.sm-clean li:last-child {
    margin-right: 0;
}

.sm-clean ul {
    background-color: #16231c;
}

.sm-clean a.has-submenu {
    padding-right: 24px;
}

.sub-menu a, 
.children a {
    padding-left: 15px !important;
}

.sub-menu .sub-menu, 
.children .children {
    padding-top: 8px;
}

.sub-menu .sub-menu a, 
.children .children a, 
.sub-menu .sub-menu a:hover, 
.children .children a:hover {
    padding-top: 10px !important;
}

@media (min-width: 925px) {

    .sm-clean ul a span.sub-arrow {
        margin-top: 0;
    }
    .sm-clean ul {
        padding: 8px 0;
    }
}

@media (max-width: 925px) {

    .sm-clean ul {
        background-color: #fff;
    }
}

.sm-clean > li:last-child > a, 
.sm-clean > li:last-child > *:not(ul) a, 
.sm-clean > li:last-child > ul, 
.sm-clean > li:last-child > ul > li:last-child > a, 
.sm-clean > li:last-child > ul > li:last-child > *:not(ul) a, 
.sm-clean > li:last-child > ul > li:last-child > ul, 
.sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > a, 
.sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, 
.sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul, 
.sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, 
.sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, 
.sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul, 
.sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, 
.sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, 
.sm-clean > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul {
    border-radius: 5px;
}


/* ===================================
    1.2. Global Section CSS
====================================== */

.section {
    background-color: #16231c;
    overflow: hidden;
}

.section h2.entry-title,
.page-template-default.page .section h1.entry-title {
    font-family: 'Poppins', serif;
    font-size: 60px;
    line-height: 70px;
    text-align: center;
    margin-bottom: 30px;
    padding-bottom: 0;
    font-weight: 100;
    word-break: break-word;
}

.page .page-content {
    background-color: #fff;
    padding: 75px;    
}

.sticky-spacer {
    position: static !important;
}

.section-title-holder {
    width: 270px;
    position: relative;
    color: #fff;
    word-break: normal;
    overflow-wrap: break-word;
    padding-top: 50px;
}

.section-content-holder {
    width: 690px;
    margin-top: 50px;
}

.no-padding .section-content-holder {
    margin-top: 0;
    width: 810px;
}

.no-padding .section-content-holder.float-right {
    float: left;
    margin-left: 88px;
}

.no-padding .section-content-holder.float-left {
    float: right;
    margin-right: 90px;
}

@media screen and (min-width: 1025px) {

    .no-padding .section-wrapper {
        padding: 0;
    }

    .no-padding .section-title-holder {
        padding-top: 125px;
        padding-bottom: 75px;
    }

}

.section.page-split h2.entry-title {
    text-align: left;
    padding-top: 0;
    font-size: 56px;
    line-height: 64px;
}

.section .page-desc {
    text-align: center;
    font-size: 22px;
    line-height: 35px;
    margin-bottom: 60px;
    word-break: break-word;
}

.section.page-split:not(#about) .section-title-holder .page-desc {
    display: none !important;
}

#about .info-text {
    margin-bottom: 14px;
}

.about-body {
    font-size: 17px;
    line-height: 31px;
}

#about .section-title-holder .page-desc {
    display: block;
    text-align: left;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 38px;
    color: #e79f3d;
    margin-bottom: 0;
}

.section.page-split .section-title-holder h2.entry-title {
    transition: transform .4s ease-out, opacity .4s ease-out, color .3s ease;
}

.section.page-split .section-title-holder h2.entry-title:hover {
    color: #e79f3d;
}

/* Headings swipe in horizontally instead of the default rise-up */
.section-title-holder h2.entry-title.animate {
    transform: translateX(90px);
}

.section-title-holder.float-right h2.entry-title.animate {
    transform: translateX(-90px);
}

.section-title-holder h2.entry-title.animate.show-it {
    transform: translateX(0);
}

.full-width {
    padding: 50px 0;
}

.section.full-screen {
    min-height: calc(100vh - 77px);    
    display: flex;
    padding: 0;
}

.section.full-screen .section-wrapper {
    margin: auto;
    padding: 0;
    min-width: 0;
    max-width: 100%;
}

.bg-holder {
    float: none !important;
}

.bg-holder.float-left .split-color {
    position: absolute;
    top: 0;
    transform: translateX(-104%);
    left: 405px;
    z-index: 0;
    width: 100%;
    height: 100%;
}

.bg-holder.float-right .split-color {
    position: absolute;
    top: 0;
    transform: translateX(100%);
    right: 360px;
    z-index: 0;
    width: 100%;
    height: 100%;
    background-color: #a83942;
}


/* ===================================
    2. Home Section CSS
====================================== */

#home {
    /* background-image: url(images/hero_main.jpg); */
    background-color: #000000;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

#home img[alt=""] {
    animation: hello-in 0.8s cubic-bezier(.34,1.56,.64,1) both;
    transform-origin: center bottom;
}

@keyframes hello-in {
    0%   { opacity: 0; transform: translateY(30px) rotate(-8deg) scale(0.7); }
    100% { opacity: 1; transform: translateY(0) rotate(-4deg) scale(1); }
}

.big-text {
    font-family: 'Poppins', sans-serif;
    font-size: 28px;
    line-height: 38px;
    font-weight: 400;
    min-height: 38px;
}

.typewriter-caret {
    display: inline-block;
    width: 2px;
    height: 1em;
    background-color: #e79f3d;
    margin-left: 4px;
    vertical-align: text-bottom;
    animation: caret-blink .8s step-end infinite;
}

@keyframes caret-blink {
    0%, 100% { opacity: 1; }
    50%      { opacity: 0; }
}


/* ===================================
    3. Services Section CSS
====================================== */

#services {
    background-color: #255c45;
}

#services .split-color {
    background-color: #1e4a37;
}

.service-holder {
    margin: 25px 0;
}

.service-holder:after {
    content: "";
    display: block;
    clear: both;    
}

.service-img {
    float: left;
    width: 30%;
    max-width: 90px;
}

.service-txt {
    float: left;
    margin-left: 25px;
    text-align: left;
    line-height: 25px;
    width: calc(70% - 25px);
}

.service-txt h4 {
    font-size: 19px;
    padding-bottom: 10px;
    padding-top: 0;
    color: #fff;
    font-weight: 600;
}

#services .service-txt {
    float: none;
    width: 100%;
    margin-left: 0;
}

#services .service-holder {
    transition: transform .3s ease;
}

#services .service-icon {
    margin-bottom: 20px;
    position: relative;
    display: block;
}

#services .service-icon img {
    width: 52px;
    height: 52px;
    object-fit: contain;
    transition: transform .3s ease;
}

/* Strategy: arrow repeatedly flies in and hits the target; board stays still */
#services .icon-strategy svg {
    overflow: visible;
}

#services .strategy-arrow {
    animation: arrow-hit 2.4s ease-out infinite;
}

@keyframes arrow-hit {
    0%   { transform: translate(34px, -34px); opacity: 0; }
    28%  { transform: translate(0, 0); opacity: 1; }
    34%  { transform: translate(2px, -2px); }
    40%  { transform: translate(0, 0); }
    78%  { transform: translate(0, 0); opacity: 1; }
    92%  { opacity: 0; }
    100% { transform: translate(34px, -34px); opacity: 0; }
}

/* Production: film reels spin, camera body stays still */
#services .icon-production svg {
    overflow: visible;
}

#services .icon-production .reel {
    transform-box: fill-box;
    transform-origin: center;
    animation: reel-spin 1.8s linear infinite;
}

@keyframes reel-spin {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

/* Marketing: megaphone pumps while sound rings ripple out */
#services .icon-marketing img {
    animation: mega-pump .9s ease-in-out infinite;
}

@keyframes mega-pump {
    0%, 100% { transform: scale(1); }
    50%      { transform: scale(1.12) rotate(-4deg); }
}

#services .icon-marketing:before,
#services .icon-marketing:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 52px;
    height: 52px;
    margin: -26px 0 0 -26px;
    border: 2px solid #e79f3d;
    border-radius: 50%;
    opacity: 0;
    pointer-events: none;
}

#services .icon-marketing:before {
    animation: sound-ring 1.2s ease-out infinite;
}

#services .icon-marketing:after {
    animation: sound-ring 1.2s ease-out .6s infinite;
}

@keyframes sound-ring {
    0%   { transform: scale(.5); opacity: .8; }
    100% { transform: scale(1.6); opacity: 0; }
}

#services .service-holder:hover {
    transform: translateY(-8px);
}

#services .service-txt h4 {
    position: relative;
    display: inline-block;
    transition: color .3s ease;
}

#services .service-txt h4:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 4px;
    height: 2px;
    width: 0;
    background-color: #e79f3d;
    transition: width .35s ease;
}

#services .service-holder:hover .service-txt h4 {
    color: #e79f3d;
}

#services .service-holder:hover .service-txt h4:after {
    width: 100%;
}

#services .service-txt {
    text-align: center;
}

#services .service-desc {
    display: inline-block;
    text-align: left;
    margin-top: 8px;
    list-style: disc;
    padding-left: 18px;
    margin-bottom: 0;
}

#services .service-desc li {
    padding: 4px 0;
    font-size: 16px;
    line-height: 26px;
    white-space: nowrap;
    opacity: 0;
    transform-origin: top center;
    transform: translateY(-16px) rotate(-6deg);
}

#services .service-desc li {
    transition: opacity .5s cubic-bezier(.22,1,.36,1), transform .5s cubic-bezier(.34,1.56,.64,1);
}

/* reveal top-to-bottom while scrolling down */
#services .one_third.show-it .service-desc li {
    opacity: 1;
    transform: translateY(0) rotate(0);
}

#services .one_third.show-it .service-desc li:nth-child(1) { transition-delay: .3s; }
#services .one_third.show-it .service-desc li:nth-child(2) { transition-delay: .9s; }
#services .one_third.show-it .service-desc li:nth-child(3) { transition-delay: 1.5s; }

/* hide bottom-to-top while scrolling back up */
#services .one_third:not(.show-it) .service-desc li:nth-child(1) { transition-delay: .4s; }
#services .one_third:not(.show-it) .service-desc li:nth-child(2) { transition-delay: .2s; }
#services .one_third:not(.show-it) .service-desc li:nth-child(3) { transition-delay: 0s; }

@keyframes hang-in {
    0%   { opacity: 0; transform: translateY(-16px) rotate(-6deg); }
    45%  { opacity: 1; transform: translateY(3px) rotate(4deg); }
    65%  { transform: translateY(-2px) rotate(-2deg); }
    82%  { transform: translateY(1px) rotate(1deg); }
    100% { opacity: 1; transform: translateY(0) rotate(0deg); }
}


/* ===================================
    4. Portfolio Section CSS
====================================== */

#portfolio {
    background-color: #e79f3d;
}

#portfolio .split-color {
    background-color: #c9862f;
}

#portfolio-wrapper {
    position: relative;
}

/* horizontal track: 2 rows flowing left-to-right, panned by page scroll */
#portfolio-grid {
    display: grid;
    grid-auto-flow: column dense;
    grid-template-rows: repeat(2, max(280px, calc(50vh - 150px)));
    grid-auto-columns: 420px;
    gap: 14px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 12px;
    scrollbar-width: none;
}

#portfolio-grid::-webkit-scrollbar {
    display: none;
}

/* the page-scroll-driven pin needs sticky to work inside the section */
#portfolio.section {
    overflow: visible;
}

#portfolio .section-wrapper {
    position: sticky;
    top: 77px;
    padding-top: 45px;
}

/* desktop: let the container and grid stretch so the track fills the
   space instead of sitting in a narrow fixed-width box with a big empty
   gap on the right */
@media screen and (min-width: 1025px) {

    #portfolio .section-wrapper.content-1170 {
        width: 92%;
        max-width: 1600px;
    }

    #portfolio .section-content-holder {
        width: calc(100% - 340px);
    }

}

.grid-item {
    font-size: 0;
    line-height: 0;
    overflow: hidden;
    scroll-snap-align: start;
    position: relative;
}

/* masonry-like rhythm: hero tile + repeating mix of tall, wide and single tiles */
.grid-item.p_one {
    grid-row: span 2;
    grid-column: span 2;
}

.grid-item.p_one_half:nth-child(6n+4) {
    grid-row: span 2;
}

.grid-item.p_one_half:nth-child(12n+7) {
    grid-column: span 2;
}

/* arrows only show on phones, where there is no scroll-driven pan */
.track-arrow {
    display: none;
}

.grid-item a.item-link {
    display: block;
    position: relative;
    height: 100%;
}

.grid-item img {
    width: 100% !important;
    height: 100%;
    object-fit: cover;
    display: block;    
    filter: grayscale(100%);
    transition: filter 0.4s ease-in-out;
}

.grid-item a.item-link:hover img {
    filter: grayscale(0%);
}

.grid-item .entry-holder {
    text-align: center;
    background-color: #fff;
    padding: 50px 20px;
}

.grid-item a.item-link:after {
    content: "";
    display: block;
    position: absolute;
    width: 60px;
    height: 60px;
    background-image: url('images/play_btn.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    left: 50%;
    top: 48%;
    transform: translate(-50%, -50%) scale(0.8);
    opacity: 0;
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), top 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease-in-out;
    z-index: 2;
    filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.4));
}

.portfolio-text-holder {
    color: white;
    position: absolute;
    top: 76%;
    left: 50%;
    display: inline-block;
    z-index: 1;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: transform 0.3s ease, top 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease-in-out;
    text-align: center;
    width: 90%;
}

.portfolio-title {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 0;
    font-weight: 700;
    color: #fff;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);
}

.portfolio-desc {
    font-size: 14px;
    line-height: 22px;
    color: #fff;
    letter-spacing: 2px;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}

.grid-item a.item-link:hover:after {
    opacity: 1;
    top: 42%;
    transform: translate(-50%, -50%) scale(1);
}

.grid-item a.item-link.no-link {
    cursor: default;
}

.grid-item a.item-link.no-link:after {
    display: none;
}

.grid-item a.item-link:hover .portfolio-text-holder {
    opacity: 1;
    top: 72%;
}


.more-posts-portfolio-holder {
    min-height: 1px;
    margin-top: 20px;
    margin-bottom: 0;
    text-align: right !important;
}

#portfolio .section-wrapper {
    padding-bottom: 30px;
}

.view-more-portfolio {
    display: inline-block;
    color: #fff;
    background-color: #255c45;
    padding: 9px 26px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: opacity .2s ease;
}

.view-more-portfolio:hover {
    opacity: .8;
    color: #fff;
}

.no-padding .more-posts-portfolio-holder {
    margin-bottom: 0;
}

.more-posts-portfolio-holder img {
    width: 70px !important;
    height: 70px !important;
}

.more-posts-portfolio-holder.hide {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    cursor: default;
}

.more-posts-portfolio {
    color: #fff;
    background-color: #000000;
    padding: 17px 6px 17px 14px;
    display: block;
    transition: all .3s ease;
}

.more-posts-portfolio {
    cursor: pointer;   
}

.portfolio-load-content-holder {
    opacity: 0;
    transform: translateY(70px);
    transition: all .5s ease;
    width: 690px;
    max-width: 100%;
}

.section-content-holder.float-right .portfolio-load-content-holder {
    margin-right: 0;
    margin-left: auto;    
}

.section-content-holder.float-left .portfolio-load-content-holder {
    margin-right: auto;
    margin-left: 0;    
}

.portfolio-load-content-holder.show {
    transform: translateY(0);
    opacity: 1;
}

.portfolio-load-content-holder.show.viceversa {
    opacity: 0;
    transform: translateY(70px);
}

.section.no-padding .portfolio-content-wrapper {
    margin: 75px 0;
}    

.portfolio-content-wrapper {
    display: none;
}

.portfolio-content-wrapper.show {
    display: block;
}

#portfolio-grid {
    transition: all .5s ease;
    opacity: 1;
    transform: translateY(0px);
}

#portfolio-grid.hide {
    opacity: 0;
    transform: translateY(70px);    
}

.grid-item a.item-link.animate-plus:after, 
.ajax-portfolio.animate-plus .portfolio-text-holder {
    opacity: 1;
}

.portfolio-item-wrapper {
    width: 690px;
    margin-top: 100px;
    margin-bottom: 50px;
    max-width: 95%;
}


/* ===================================
    5. Inspire Section CSS
====================================== */

#inspire {
    background-image: url(images/bg_sec.jpg);
    background-color: #16231c;
    background-position: left top;
    background-repeat: repeat;
    background-size: cover;
}


/* ===================================
    6. About Section CSS
====================================== */

#about {
    background-color: #c0414c;
}

#about .split-color {
    background-color: #a83942;
}


.pfs-orbit {
    position: relative;
    display: inline-block;
}

.pfs-gap {
    position: relative;
}

.pfs-plane {
    position: absolute;
    width: 150px;
    height: 150px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.pfs-plane svg {
    display: block;
    width: 100%;
    height: 100%;
}

.about-quote {
    font-size: 24px;
    line-height: 36px;
    font-weight: 600;
    margin-bottom: 40px;
}

.about-quote .quote-author {
    display: block;
    font-weight: 200;
    font-size: 15px;
    letter-spacing: 1px;
    margin-top: 8px;
}


/* ===================================
    7. News Section CSS
====================================== */

#news {
    background-color: #16231c;
}

#news .split-color {
    background-color: #1c2c22;
}

.blog-holder-scode {
    margin-top: -30px;
}

.blog-holder-scode article:nth-of-type(2n) {
    margin-right: 0;
}

.blog-item-holder-scode {
    margin: 30px 0;
    width: 45%;
    display: inline-block;
    margin-right: 8%;
    vertical-align: text-top;
}

.blog-item-holder-scode .excerpt {
    margin-top: 20px;
}

.blog-item-holder-scode h4 {
    padding: 0;
    max-width: 930px;
    margin: 0 auto;
}

.blog-item-holder-scode h4 a {
    color: #fff;
    font-size: 22px;
    line-height: 30px;
    font-weight: 600;
    transition: all .2s ease;
}

.blog-item-holder-scode h4 a:hover {
    color: #fff;
    opacity: 0.5;
}

.blog-item-holder-scode .cat-links ul {
    list-style: none;
    padding: 0;    
}

.blog-item-holder-scode .cat-links ul li {
    display: inline-block;
}

.blog-item-holder-scode .cat-links ul li a:after {
    content: ",";    
    padding-right: 5px;
}

.blog-item-holder-scode .cat-links ul li:last-child a:after {
    display: none

}

.blog-item-holder-scode .cat-links ul a {
    text-transform: uppercase;
    color: #fff;
    transition: all .2s ease;
}

.blog-item-holder-scode .cat-links ul li a:hover {
    opacity: 0.5;
}

.blog-item-holder-scode .entry-date.published, 
.blog-item-holder-scode .cat-links {
    display: inline-block;
    font-size: 14px;    
    margin-top: -10px;
}

.blog-item-holder-scode .entry-date.published:after {   
    content: "\2022";
    display: inline-block;
    margin: 0 7px 0 10px;
}

.blog-holder-scode .more-posts-link {
    vertical-align: text-bottom;
    display: inline-block;
    background: #864eff;
    border-radius: 5px;
    width: 255px;
    height: 90px;
}

.blog-holder-scode .more-posts-link a {
    display: block;
    text-align: center;
}

.blog-holder-scode .more-posts-link img {
    transition: transform .3s ease;
    width: 60px;
    height: 60px;
    margin-top: 15px;
}

.blog-holder-scode .more-posts-link:hover img {
    transform: translateX(10px);
}


/* ===================================
    8. Pricing Section CSS
====================================== */

#pricing {
    background-color: #16231c;
    display: none;
}

.pricing-table {
    text-align: center;
    padding-bottom: 20px;
    overflow: hidden;
    color: #969696;
    background-color: #0f1712;
    margin-top: 30px;
    max-width: 330px;
    margin-left: auto;
    margin-right: auto;
}

.pricing-table-title {
    background-color: #e79f3d;
    color: #fff;
    font-size: 24px;
    padding: 40px 0;
    margin-bottom: 25px;
}

.pricing-table-price {
    font-size: 60px;
    line-height: 100%;
    color: #ffffff;
}

.pricing-table ul {
    padding: 0;
    list-style: none;
    margin-top: 25px;
}

.pricing-table ul li {
    padding: 10px 0;
}

.pricing-table-content-holder {
    padding: 0 10%;
    margin-bottom: 40px;
}

.pricing-button {
    display: inline-block;
    color: #fff !important;
    border: 2px solid;
    text-align: left;
    padding-bottom: 17px;
    padding-top: 17px;
    padding-left: 50px;
    padding-right: 50px;
    cursor: pointer;
    vertical-align: middle;
    text-decoration: none;
    transition: all .2s linear;
    margin-bottom: 17px;
    border-radius: 5px;
    font-size: 16px;
    font-weight: 700;
}

.pricing-button:hover {
    opacity: 0.5;
}


.pricing-orange {
    background-color: #e79f3d;
}

.pricing-red {
    background-color: #c0414c;
}

.pricing-green {
    background-color: #255c45;
}


/* ===================================
    9. Skills Section CSS
====================================== */

#skills {
    background-color: #255c45;
}

#skills .split-color {
    background-color: #1e4a37;
}

.skills-holder {
    position: relative;
    margin: 40px 0;
}

.skill-holder {
    margin-bottom: 30px;
}

.skill-holder:after {
    clear: both;
    display: block;
    content: "";
}

.skill-percent {
    font-size: 48px;
    line-height: 100%;
    font-weight: 100;
    width: 100px;
    display: inline-block;    
    vertical-align: text-top;
}

.skill {
    width: 100%;
    height: 3px;
    background-color: rgba(202, 202, 202, 0.3);
    margin-bottom: 30px;
}

.skill-text {
    display: inline-block;
    width: calc(100% - 145px);
    margin-right: 0;
    float: right;
    vertical-align: text-top;
}

.skill-fill {
    width: 100%;
    height: 10px;
    background-color: #fff;
}

.skill-text span {
    font-size: 22px;
    line-height: 35px;
}


/* ===================================
    10. Team Section CSS
====================================== */

#team {
    background-color: #c0414c;
}

#team .split-color {
    background-color: #a83942;
}

.member-item-wrapper {    
    width: 690px;    
    margin-top: 100px;
    margin-bottom: 50px;
    max-width: 95%;
}

.section.no-padding .member-content-wrapper {
    margin: 75px 0;    
}

.info-text {    
    font-size: 30px;
    line-height: 35px;
    margin-bottom: 40px;
    font-weight: 100;
}

#team-holder {
    position: relative;
    margin-bottom: 50px;
}

.section.no-padding #team-holder {
    margin-bottom: 0;
}

.member-holder-wrapper {
    list-style: none;
    padding: 0;
    margin: 0;
}

.member-holder-wrapper li.one_third:nth-child(3n), 
.member-holder-wrapper li.one_half:nth-child(2n), 
.member-holder-wrapper li.one_fourth:nth-child(4n) {
    margin-right: 0;
}

.member-info-holder {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.member-name {
    font-size: 18px;
    text-align: center;
    font-weight: 700;
    line-height: 30px;
    color: #fff;
    margin-bottom: 0;
}

.member-position {
    font-size: 14px;
    letter-spacing: 2px;
    text-align: center;
    margin-left: -2px;
    color: #fff;
    line-height: 100%;
}

.team-load-content-holder {
    opacity: 0;
    transform: translateY(70px);
    transition: all .5s ease;
    width: 690px;
    max-width: 100%;
}

.section-content-holder.float-right .team-load-content-holder {
    margin-right: 0;
    margin-left: auto;    
}

.section-content-holder.float-left .team-load-content-holder {
    margin-right: auto;
    margin-left: 0;    
}

.team-load-content-holder.show {
    transform: translateY(0);
    opacity: 1;
}

.team-load-content-holder.show.viceversa {
    opacity: 0;
    transform: translateY(70px);
}

.member-holder {
    transition: all .5s ease;
    opacity: 1;
    transform: translateY(0px);
    text-align: center;
}

.member-holder.one_half {
    margin: 0;
    width: 50%;
}

.member-holder.one_third {
    margin: 0;
    width: calc(100% / 3);
}

.member-holder.one_fourth {
    margin: 0;
    width: calc(100% / 4);
}

.member-holder img.attachment-post-thumbnail {
    width: 100%;
    height: 100%;
    display: block;
}

.member-holder.hide {
    opacity: 0;
    transform: translateY(70px);    
}

.member-content-wrapper {
    display: none;
}

.member-content-wrapper.show {
    display: block;
}

.close-icon {
    background-image: url(images/close-left-arrow.png);
    background-repeat: no-repeat;
    width: 70px;
    height: 70px;
    display: inline-block;
    background-color: rgba(191, 191, 191, 0.22);
    border-radius: 5px;
    margin-bottom: 20px;
    background-size: 70px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.close-icon:hover {
    background-position: -5px 0;
}

.member-mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000;
    opacity: 0;
    transition: opacity .3s ease;
}

.member-mask:hover {
    opacity: 1;
}

.member-mask.animate-plus {
    opacity: 1;
}

.member-holder a.img-link {
    position: relative;
    display: block;
    line-height: 0;
    font-size: 0;
    overflow: hidden;
}


/* ===================================
    11. Clients Section CSS
====================================== */

#clients {
    background-color: #ead8d4;
}

#clients .split-color {
    background-color: #dfc9c3;
}

#clients .section-title-holder {
    color: #fff;
}

.clients-logo-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: center;
    justify-items: center;
    row-gap: 50px;
    column-gap: 30px;
    width: 100%;
    padding: 10px 0 40px;
}

.clients-logo-row img {
    max-width: 140px;
    max-height: 64px;
    width: auto;
    height: auto;
    object-fit: contain;
    opacity: 0.75;
    filter: brightness(0);
    transition: opacity .2s ease;
}

.clients-logo-row img:hover {
    opacity: 1;
}

/* this logo is a solid dark badge with white text baked in;
   brightness(0) would turn the whole badge to one black block */
.clients-logo-row img[alt="EasyCloud"] {
    filter: none;
    opacity: 1;
}

/* wide aspect ratio hits the width cap before the height cap,
   so it renders shorter than the other logos; widen its cap to match */
.clients-logo-row img[alt="Critical River"] {
    max-width: 190px;
}

@media screen and (max-width: 767px) {
    .clients-logo-row {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* ===================================
    12. Contact Section CSS
====================================== */

#contact {
    background-color: #e79f3d;
}

#contact .split-color {
    background-color: #c9862f;
}

.contact-form {
    max-width: 100%;
    margin: 0 auto;
    font-size: 22px;
    color: #000;
}
.contact-form p {
    margin-bottom: 0 !important;
}

.contact-form input[type=text], 
.contact-form input[type=email], 
.contact-form textarea {
    border: 0;
    font-size: 16px;
    padding: 5px 0;
    width: 100%;
    line-height: 25px;
    color: #fff;
    font-weight: 400;
    margin-bottom: 35px;
    text-indent: 10px;
    background-color: transparent;
    border-bottom: 1px solid;
}

.contact-form textarea {
    height: 150px;
}

.contact-form input[type=text]::-webkit-input-placeholder, 
.contact-form input[type=email]::-webkit-input-placeholder, 
.contact-form textarea::-webkit-input-placeholder {
    font-family: 'Poppins', sans-serif;
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
}

.contact-form input[type=text]::-moz-placeholder, 
.contact-form input[type=email]::-moz-placeholder, 
.contact-form textarea::-moz-placeholder {
    font-family: 'Poppins', sans-serif;
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
    opacity: 1;
}

.contact-form input[type=text]:-ms-input-placeholder, 
.contact-form input[type=email]:-ms-input-placeholder, 
.contact-form textarea:-ms-input-placeholder {
    font-family: 'Poppins', sans-serif;
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
}

.contact-form input[type=text]:-moz-placeholder, 
.contact-form input[type=email]:-moz-placeholder, 
.contact-form textarea:-moz-placeholder {
    font-family: 'Poppins', sans-serif;
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
    opacity: 1;
}

.contact-form input[name="your-name"] {
    margin-top: 0;    
}

.contact-submit-holder {
    position: relative;
    margin-bottom: 25px;
}

.contact-form input[type=submit] {
    display: block;
    border: 1px solid;
    text-align: center;
    cursor: pointer;
    margin-bottom: 25px;
    vertical-align: middle;
    text-decoration: none;
    background: transparent;
    font-family: 'Poppins', sans-serif;
    color: #fff;
    background-color: transparent;
    padding-bottom: 17px;
    padding-top: 17px;
    transition: all .2s linear;
    font-size: 16px;
    font-weight: 700;
    width: 100%;
}

.contact-form input[type=submit]:hover {
    opacity: 0.5;
}


/* ===================================
    13. Milestones Section CSS
====================================== */

#milestones {
    background-color: #000;
}

ul.milestones-holder {
    padding: 0;
    margin: 20px 0 0 0;
    list-style: none;
    text-align: center;
}

li.milestone {
    display: inline-block;
    position: relative;
    margin: 0 50px;
}

li.milestone:before {
    content: "/";
    display: inline-block;
    position: absolute;
    right: -55px;
    font-size: 55px;
    top: 0;
    line-height: 100%;
    font-weight: 100;
    transform: rotate(27deg);
    color: #969696;
}

li.milestone:last-child:before {
    display: none;
}

p.milestone-num {
    font-size: 65px;
    line-height: 100%;
    font-weight: 700;
    position: relative;
    display: inline-block;
}

p.milestone-text {
    font-size: 22px;
    line-height: 30px;
    color: #969696;
    max-width: 190px;
    margin: 0 auto;
}

p.milestone-num:before {
    content: "";
    position: absolute;
    top: -15px;
    left: 0;
    width: 100%;
    height: 8px;
    background-color: #fff;
}


/* ===================================
    14. Footer CSS
====================================== */

footer ul {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}

.footer {
    font-size: 16px;
    line-height: 30px;
    padding-top: 80px;
    padding-bottom: 40px;
    clear: both;
    color: #fff;
    text-align: left;
    background-color: #e79f3d;
}

.footer-headline {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 42px;
    line-height: 52px;
    text-align: center;
    color: #fff;
    margin-bottom: 70px;
}

.footer-underline {
    border-bottom: 2px solid rgba(255, 255, 255, 0.7);
    padding-bottom: 4px;
}

.footer-connect {
    max-width: 640px;
}

.footer-connect p {
    margin-bottom: 10px;
}

.footer-connect strong {
    font-family: 'Poppins', serif;
    font-weight: 400;
}

.site-wrapper .footer .footer-connect a,
.site-wrapper .footer .footer-connect a:hover {
    color: #fff;
    font-weight: 700;
}

.lets-connect-btn {
    display: inline-block;
    background-color: #255c45;
    color: #fff !important;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 16px;
    padding: 10px 28px;
    margin-top: 14px;
    transition: opacity .2s ease;
}

.lets-connect-btn:hover {
    opacity: .85;
}

.footer .copyright-holder {
    text-align: center;
    margin-top: 60px;
    font-size: 13px;
    opacity: .8;
}

.footer-content {
    padding-top: 35px;
    width: 900px;
    padding-bottom: 35px;
}

.footer-mail {
    font-size: 46px;
    margin-bottom: 35px;
    line-height: 100%;
    font-weight: 700;
}

.footer-number {
    font-size: 24px;
    margin-bottom: 100px;
}

.footer-info {
    font-size: 18px;
    line-height: 24px;
    color: #969696;
    margin-bottom: 50px;
}

.social-holder {
    margin-bottom: 35px;
}

.social-holder a {
    font-size: 28px;
    margin-right: 25px;
}

.social-holder a:last-of-type {
    margin: 0;
}

.site-wrapper .footer a {
    color: #fff;
}

.site-wrapper .footer a:hover {
    color: #e79f3d;
}


/* ===================================
    15. Responsive CSS
====================================== */


@media screen and (max-width: 1600px) { 

    .content-1170, 
    .content-960, 
    .content-740 {
        max-width: 95%;
    }               

}

@media screen and (max-width: 1270px) {

    li.milestone {
        margin: 0 25px;
    }  

    li.milestone:before {
        display: none;
    }

}

@media screen and (max-width: 1024px) {   

    .sm-clean li {
        margin-right: 8px;
    }

    .sm-clean a, 
    .sm-clean a:hover, 
    .sm-clean a:focus, 
    .sm-clean a:active, 
    .sm-clean a.highlighted {
        padding: 15px 8px;
    }

    .footer-content {
        width: 100%;
        padding: 0 22px;
        box-sizing: border-box;
    }

    .footer-headline {
        font-size: clamp(17px, 5.6vw, 30px);
        line-height: 1.45;
        margin-bottom: 45px;
        white-space: nowrap;
    }

    .footer-headline br {
        display: block;
    }

    .bg-holder {
        display: none;
    }    

    .section-title-holder {
        float: none !important;
        display: block;
        position: relative !important;
        width: auto !important;
        top: 0 !important;
        padding-top: 0;
    }

    .section-title-holder .entry-title br,
    .section.page-split .section-title-holder .page-desc br {
        display: none;
    }

    .section h2.entry-title {
        margin-bottom: 25px !important;
    }

    /* no horizontal swipe-in on stacked mobile titles — prevents offset/overlap */
    .section-title-holder h2.entry-title.animate,
    .section-title-holder.float-right h2.entry-title.animate,
    .section-title-holder h2.entry-title.animate.show-it {
        transform: none;
    }

    .section.page-split h2.entry-title {
        text-align: center;
        max-width: 100%;
    }

    .section.page-split .section-title-holder .page-desc {
        display: block;
        margin-top: 20px;
    }    

    .sticky-spacer {
        height: auto !important;
        width: auto !important;
        position: relative !important;
    }    

    .section-content-holder {   
        width: 100% !important;
        margin-top: 75px;
        float: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }  

    .info-text {
        margin-bottom: 20px;
    }

    .info-text br {
        display: none;
    }  

    .portfolio-load-content-holder.show, 
    .team-load-content-holder.show {
        margin-left: auto !important;
        margin-right: auto !important;
    }   

    #team-holder {
        margin-bottom: 75px;
    }

    .full-width {
        padding: 30px 0;
    }

    .section-wrapper {    
        padding: 75px 0 15px 0;
    }

    .full-width .section-wrapper {
        padding-top: 50px;
    }

    .blog-holder-scode {
        margin-bottom: 25px;        
    }

    ul.milestones-holder {
        margin-bottom: 30px;
    }

}

@media screen and (max-width: 1020px) {   

    #header-main-menu {
        padding-bottom: 70px;
    }

    .menu-wrapper {
        width: 95%;
    }

    .main-menu ul {
        width: 12em;
    }        

    .toggle-holder {
        display: block;
    }

    .sm-clean li {
        margin: 0 auto !important;
        border: 0;
    }

    .sm-clean a.has-submenu {
        display: inline-block;
    }

    .menu-holder {
        position: fixed;
        text-align: center;
        background-color: #16231c;
        right: -100%;
        top: 77px;
        transition: right .3s ease, visibility 0s linear .3s;
        height: 100%;
        width: 300px;
        overflow: auto;
        max-width: 100%;
        visibility: hidden;
        margin-right: 0;
    }

    .menu-holder.show {
        visibility: visible;
        transition: right .3s ease;
    }

    .header-holder {
        -webkit-transform: none;
    }

    .menu-holder.show {
        right: 0;
    }

    .sm-clean ul ul a, 
    .sm-clean ul ul a:hover, 
    .sm-clean ul ul a:focus, 
    .sm-clean ul ul a:active {
        border: none;
    }

    .sm-clean a span.sub-arrow {
        background: transparent;
    }

    .sm-clean a, 
    .sm-clean a:hover, 
    .sm-clean a:focus, 
    .sm-clean a:active, 
    .sm-clean a.highlighted {
        padding: 10px 18px 10px 18px;
        padding-left: 10px !important;
        margin-bottom: 5px;
    }     

    .wait-01s, 
    .wait-02s, 
    .wait-03s, 
    .wait-04s, 
    .wait-05s, 
    .wait-06s, 
    .wait-07s, 
    .wait-08s, 
    .wait-09s, 
    .wait-10s, 
    .wait-11s, 
    .wait-12s, 
    .wait-13s, 
    .wait-14s, 
    .wait-15s {
        -webkit-transition-delay: 0s;
        transition-delay: 0s;
    }    

    .section-wrapper {
        padding: 40px 0 0 0;
    }   

    .full-width {
        padding: 0;
    }       

    .section h2.entry-title, 
    .page-template-default.page .section h1.entry-title {
        font-size: 50px;
        line-height: 50px;
    }

    .section-content-holder {
        margin-top: 35px;
    }       

    .big-text br {
        display: none;
    }

    li.milestone {
        width: 40%;
        margin: 30px 0;
    }

    .section.page-split h2.entry-title {        
        font-size: 50px;
        line-height: 50px;
    }

}

@media screen and (max-width: 767px) {

    #services .service-holder {
        margin: 20px 0;
    }

    /* stack icon / heading / bullets vertically, centered */
    #services .service-txt h4 {
        display: block;
    }

    #services .service-txt h4:after {
        display: none;
    }

    #services .service-desc {
        display: block;
        width: fit-content;
        margin: 8px auto 0;
    }

    #services .one_third {
        margin-bottom: 10px;
    }

    .section.page-split .section-title-holder {
        text-align: center;
    }

    .section.page-split h2.entry-title {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }

    .section-top-image {
        display: none;
    }

    .info-text {
        text-align: center;
    }

    .content-1170,
    .content-960,
    .content-740 {
        width: 100% !important;
        max-width: calc(100% - 44px) !important;
    }

    .section-wrapper,
    .content-wrapper {
        max-width: 100%;
    }

    .header-logo img {
        max-width: 140px;
        width: auto !important;
        height: auto !important;
    }

    #home img[alt=""] {
        max-width: 220px;
    }

    .one_half,
    .one_third, 
    .one_fourth, 
    .two_third, 
    .three_fourth {
        width: 100% !important;
        float: none;
        margin-right: 0;
        margin-left: 0;
    }    

    .footer-mail {
        font-size: 30px;
    }

    .site-content {
        overflow: hidden;
    }    

    .section.page-split h2.entry-title {
        max-width: 90%;
        font-size: 40px;
        line-height: 40px;
    }

    .section.page-split .section-title-holder .page-desc {
        margin-bottom: 30px;
    }

    .big-text {
        font-size: 27px;
        line-height: 35px;
        text-align: center;
    }    

    .big-text br {
        display: none;
    }

    .section.full-screen .section-wrapper {
        transform: none;
    }

    .big-text {
        font-size: 30px;
        line-height: 35px;
    }

    a.button {
        padding-left: 35px;
        padding-right: 35px;
        font-size: 15px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    /* phones: no pin, native horizontal swipe instead */
    #portfolio-grid {
        grid-template-rows: repeat(1, max(380px, 55vh));
        grid-auto-columns: 84vw;
        scroll-snap-type: x proximity;
    }

    #portfolio .section-wrapper {
        position: relative;
        top: auto;
    }

    .grid-item.p_one,
    .grid-item.p_one_half:nth-child(6n+4),
    .grid-item.p_one_half:nth-child(12n+7) {
        grid-row: auto;
        grid-column: auto;
    }

    .track-arrow {
        display: block;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 5;
        width: 42px;
        height: 42px;
        border: none;
        border-radius: 50%;
        background-color: #255c45;
        color: #fff;
        font-size: 15px;
        line-height: 42px;
        text-align: center;
        cursor: pointer;
        box-shadow: 0 4px 12px rgba(0, 0, 0, .25);
        transition: opacity .2s ease;
    }

    .track-arrow[disabled] {
        opacity: .3;
        pointer-events: none;
    }

    .track-prev {
        left: 4px;
    }

    .track-next {
        right: 4px;
    }

    .info-text {
        font-size: 20px;
        line-height: 30px;
        margin-bottom: 20px;
    }  

    .blog-item-holder-scode {
        display: block;
        width: 100%;
        margin: 45px 0;
    } 

    .text-slider-wrapper {
        width: 100%;
    }

    .image-slider-wrapper {
        margin-bottom: 20px;
    }

    #team-holder {
        margin-bottom: 50px;
    }

    .section-wrapper {
        padding: 55px 0 20px 0
    }   

    .section.full-screen {
        min-height: auto;
        display: block;
        padding: 30px;
    }

    #home.section.full-screen {
        min-height: calc(100vh - 135px);
        display: flex;
    }

    .full-width {
        padding: 0 0 20px 0;
    }

    .copyright-holder {
        max-width: 90%;
        margin: 0 auto;
        line-height: 25px;
    }

}

@media screen and (max-width: 650px) {          

    .text-slider-wrapper .text-slide {
        font-size: 16px;
        line-height: 32px;
    }

    li.milestone {
        display: block;
        width: 100%;
        margin-bottom: 50px;
    }

    .milestones-holder li:last-child {
        margin-bottom: 0;    
    }

    p.milestone-num {
        font-size: 40px;
    }

    p.milestone-text {
        font-size: 16px;
        line-height: 120%;
        max-width: 95%;
    }

    p.milestone-text br {
        display: none;
    }

    .skill-text {
        width: calc(100% - 110px);
    }    

}

@media screen and (max-width: 400px) {     

    .footer-mail {
        font-size: 20px;
    }

}