/* Hosting Template Hero & Feature Styles
   Extracted from style.css + main-color-3.css
   Only includes rules for #header, .header-*, .vc-*, .octagon, #feature, .feature-* */

/* Base */
#hosting-template {
    font-family: Roboto, Helvetica, Arial, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #fff;
}
#hosting-template *,
#hosting-template *:before,
#hosting-template *:after {
    box-sizing: border-box;
}

/* Grid (Bootstrap 3 style) */
#hosting-template .container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
}
@media (min-width: 768px) {
    #hosting-template .container { width: 750px; }
}
@media (min-width: 992px) {
    #hosting-template .container { width: 970px; }
}
@media (min-width: 1200px) {
    #hosting-template .container { width: 1170px; }
}
#hosting-template .row {
    margin-left: -15px;
    margin-right: -15px;
}
#hosting-template .row:before,
#hosting-template .row:after {
    content: " ";
    display: table;
}
#hosting-template .row:after {
    clear: both;
}
#hosting-template .col-md-3,
#hosting-template .col-md-6 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
    float: left;
}
@media (min-width: 992px) {
    #hosting-template .col-md-3 { width: 25%; }
    #hosting-template .col-md-6 { width: 50%; }
}
@media (max-width: 991px) {
    #hosting-template .col-md-3,
    #hosting-template .col-md-6 { width: 100%; }
}
#hosting-template .img-responsive {
    display: block;
    max-width: 100%;
    height: auto;
}
@media (max-width: 767px) {
    #hosting-template .hidden-xs { display: none !important; }
}
@media (min-width: 768px) and (max-width: 991px) {
    #hosting-template .hidden-sm { display: none !important; }
}

/* Vertical Center */
#hosting-template .vc-parent {
    width: 100%;
    height: 100%;
    display: table;
}
#hosting-template .vc-child {
    display: table-cell;
    vertical-align: middle;
}

/* Section Title */
#hosting-template .section-title {
    position: relative;
    margin-top: 90px;
    margin-bottom: 80px;
    color: #303030;
    font-size: 32px;
    font-weight: 500;
    line-height: 32px;
    text-align: center;
    text-transform: uppercase;
}
#hosting-template .section-title:before {
    content: " ";
    background-color: rgb(var(--primary_color));
    position: absolute;
    height: 2px;
    width: 50px;
    left: 50%;
    bottom: -15px;
    transform: translateX(-50%);
}
#hosting-template .section-title span {
    display: block;
    color: #888989;
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
}

/* ===== HEADER / HERO ===== */
#hosting-template #header,
#hosting-template #header .container,
#hosting-template #header .header-item,
#hosting-template #header .owl-item,
#hosting-template #header .owl-wrapper,
#hosting-template #header .owl-wrapper-outer,
#hosting-template #header .row,
#hosting-template #header .row > div {
    height: 100%;
}
#hosting-template #header {
    height: 550px;
    width: 100%;
    z-index: 0;
    position: relative;
}
#hosting-template .header-item {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    z-index: 0;
    color: #fff;
    overflow: hidden;
}
#hosting-template .header-item:before {
    content: " ";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-color: rgba(34,34,34,.8);
    z-index: -1;
}
#hosting-template .header-item h2 {
    display: inline-block;
    padding: 0 20px;
    border-left: 5px solid rgb(var(--primary_color));
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    text-transform: uppercase;
    color: #fff;
}
#hosting-template .header-item h2 span {
    color: #adadad;
}
#hosting-template .header-item .header-content p {
    padding: 0 20px;
    border-left: 5px solid #fff;
    color: #fff;
    font-size: 16px;
    line-height: 22px;
    font-weight: 300;
}
#hosting-template .header-content {
    margin-top: 80px;
}
#hosting-template .header-content ul {
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
}
#hosting-template .header-content ul li {
    position: relative;
    padding-left: 20px;
    float: left;
    width: 50%;
    color: #fff;
    font-weight: 300;
    font-size: 14px;
    line-height: 28px;
}
#hosting-template .header-content ul li:before {
    content: " ";
    position: absolute;
    top: 7px;
    left: 0;
    width: 8px;
    height: 8px;
    border: 2px solid rgb(var(--primary_color));
    border-radius: 50%;
}

/* Header Read More Button */
#hosting-template .header-item a.read-more {
    min-width: 130px;
    height: auto;
    margin-top: 20px;
    padding: 8px 20px;
    color: #fff;
    background-color: rgb(var(--primary_color));
    display: inline-block;
    text-transform: uppercase;
    font-weight: 500;
    text-decoration: none;
    border-radius: 2px;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
}

/* Header Image */
#hosting-template .header-img {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
}
#hosting-template .vc-child .header-img {
    margin-top: 90px;
}
#hosting-template .header-img img.img-responsive {
    width: 100%;
}

/* Header Badges */
#hosting-template .header--badge {
    position: absolute;
    text-align: center;
    z-index: 2;
    width: 168px;
    height: 168px;
    display: flex;
    align-items: center;
    justify-content: center;
    clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
}
#hosting-template .header--badge-1 {
    top: 20%;
    left: 0;
    color: #fff;
    background-color: rgb(var(--primary_color));
}
#hosting-template .header--badge-2 {
    top: 50%;
    left: 25%;
    color: #303030;
    background-color: #fff;
}
#hosting-template .header--badge p {
    padding: 0;
    border: 0;
    color: inherit;
    font-size: 16px;
    line-height: 16px;
    font-weight: 300;
    margin: 0;
    text-align: center;
}
#hosting-template .header--badge span {
    display: block;
    font-size: 34px;
    line-height: 38px;
    font-weight: 500;
}

/* Owl Carousel Controls */
#hosting-template .header-items .owl-controls {
    position: absolute;
    bottom: 30px;
    right: 0;
    width: 100%;
    text-align: center;
}
#hosting-template .header-items .owl-pagination {
    display: inline-block;
    overflow: hidden;
}
#hosting-template .header-items .owl-page {
    width: 8px;
    height: 8px;
    float: left;
    margin: 1px 5px;
    border: 1px solid #fff;
    border-radius: 50%;
    transition: .25s;
    outline: 0;
    cursor: pointer;
}
#hosting-template .header-items .owl-page.active {
    width: 10px;
    height: 10px;
    margin-top: -.5px;
    margin-left: 4.5px;
    background-color: #fff;
}

/* Animations */
#hosting-template .owl-fadeInDown,
#hosting-template .owl-fadeInUp {
    visibility: hidden;
}
#hosting-template .owl-item.active .owl-fadeInDown {
    animation: fadeInDown 1s linear 0s;
    visibility: visible;
}
#hosting-template .owl-item.active .owl-fadeInUp {
    animation: fadeInUp 1s linear 0s;
    visibility: visible;
}
#hosting-template .owl-item.active .animate-2x {
    animation-duration: .55s;
}

/* ===== FEATURE SECTION ===== */
#hosting-template #feature {
    padding-top: 0;
    padding-bottom: 100px;
    margin-top: -1px;
    background-color: #fff;
}
#hosting-template .feature-item {
    margin: 40px 0 -30px;
    padding-bottom: 30px;
    transition: box-shadow .25s ease-in-out;
}
#hosting-template .feature-item:hover {
    box-shadow: 0 9px 46px 8px rgba(0,0,0,.14), 0 11px 15px -7px rgba(0,0,0,.12), 0 24px 38px 3px rgba(0,0,0,.2);
}
#hosting-template .feature-item .content {
    position: relative;
}
#hosting-template .feature-item .content:before {
    content: " ";
    position: absolute;
    top: 0;
    right: -15px;
    width: 1px;
    height: 100%;
    background: rgba(0,0,0,.09);
}
#hosting-template .feature-item:last-child .content:before {
    display: none;
}
#hosting-template .feature-item .icon {
    background-color: #f5f5f5;
    width: 100px;
    height: 100px;
    margin: -50px auto 0;
    padding-left: 10px;
    border: 10px solid #fff;
    border-radius: 50%;
    transition: background-color .25s ease-in;
}
#hosting-template .feature-item:hover .icon {
    background-color: rgb(var(--primary_color));
    border-width: 0;
    padding: 20px;
}
#hosting-template .feature-item .icon i.fa {
    display: table-cell;
    vertical-align: middle;
    width: 60px;
    height: 60px;
    margin: 0 auto;
    font-size: 30px;
    color: rgb(var(--primary_color));
    border-radius: 50%;
    text-align: center;
    transition: .25s ease-in;
}
#hosting-template .feature-item:hover .icon i.fa {
    color: #fff;
    font-size: 40px;
}
#hosting-template .feature-item .heading {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 24px;
    font-weight: 500;
    text-align: center;
    text-transform: uppercase;
    color: #303030;
}
#hosting-template .feature-item .desc {
    text-align: center;
    margin: 0 0 20px;
    color: #737373;
    font-size: 14px;
    line-height: 22px;
    font-weight: 300;
}
#hosting-template .feature-item .read-more-btn {
    text-align: center;
}
#hosting-template .feature-item .read-more-btn a {
    padding: 5px 20px;
    height: auto;
    color: #fff;
    background-color: rgb(var(--primary_color)) !important;
    display: inline-block;
    text-transform: uppercase;
    font-weight: 500;
    text-decoration: none;
    font-size: 14px;
    border-radius: 2px;
    line-height: 20px;
}

/* Responsive */
@media screen and (max-width: 991px) {
    #hosting-template .feature-item .content:before {
        display: none;
    }
    #hosting-template .feature-item {
        margin-bottom: 70px;
    }
    #hosting-template .feature-item:last-child {
        margin-bottom: 0;
    }
}
@media screen and (max-width: 480px) {
    #hosting-template .header-content ul li {
        width: 100%;
    }
}
@media screen and (max-width: 320px) {
    #hosting-template .header-content {
        margin-top: 50px;
    }
    #hosting-template .header-item h2 {
        font-size: 21px;
        line-height: 25px;
    }
}

