/** VARIABLES **/
:root {
    --white: #f5f5f5;
    --black: #1d1d1d;
    --dark-gray: #2b2b2b;

    --orange: #f16e3d;
    --blueviolet: #736cf3;
    --green: #62d157;
}

/** CUSTOM CLASSES **/
html, body {
    padding: 0;
    margin: 0;
    font-family: 'Catamaran', sans-serif;
    scroll-behavior: smooth;
}

section,
div.resize-section {
    max-width: 1400px;
    margin: 50px auto;
    padding: 15px;
    scroll-margin-top: 135px;
}

p {
    margin-bottom: 0;
}

a:hover {
    color: var(--black);
}

body {
    background: var(--white);
}

.color-orange {
    color: var(--orange);
}

.color-blueviolet {
    color: var(--blueviolet);
}

.color-green {
    color: var(--green);
}

/** HEADER **/
header {
    margin-bottom: 40px;
}

.header-fixed-nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    background: var(--white);
    z-index: 10000;
}

.header-title {
    width: 100%;
    padding: 15px 10px;
    box-shadow: 0 0 6px var(--black);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 2rem;
    font-family: 'Aboreto', cursive;
}

nav {
    padding: 15px 0 10px 0;
    box-shadow: 0 4px 6px -4px var(--black);
    text-align: center;
}

nav ul {
    display: inline-block;
    width: 100%;
}

nav ul li {
    margin: 0 15px;
}

nav ul li a {
    color: var(--black);
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500;
    display: inline-block;
    position: relative;
    padding: 4px;
}

nav ul li a:after {    
    background: none repeat scroll 0 0 transparent;
    bottom: 0;
    content: "";
    display: block;
    height: 2px;
    left: 50%;
    position: absolute;
    transition: width 0.2s ease 0s, left 0.2s ease 0s;
    width: 0;
}

nav ul li a:after {
    background: var(--black);
}

nav ul li a:hover:after { 
    width: 100%; 
    left: 0; 
}

.main-title {
    margin-bottom: 25px;
    display: inline-block;
}

.main-title h1,
.main-title h2 {
    font-size: 5rem;
    font-family: 'Aboreto', cursive;
}

.main-title h2 {
    font-size: 1.5rem;
    font-weight: bold;
    float: right;
    padding-right: 8px;
}

.header-image {
    width: 100%;
    height: 100vh;
    background: radial-gradient(circle, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%), center/cover url(../img/main_bg.png) no-repeat;
}


/** ABOUT **/
.presentation {
    margin-bottom: 80px;
    padding-left: 15px;
    border-left: 3px solid var(--orange);
}

.presentation.end {
    padding-left: inherit;
    border-left: inherit;
    text-align: end;
    padding-right: 30px;
    border-right: 3px solid var(--blueviolet);
}

.presentation p {
    font-size: 1.2rem;
    font-weight: 500;
}

.presentation:nth-child(4) {
    border-left: 3px solid var(--green);
}

.subtitle {
    font-family: 'Poppins', cursive;
    font-weight: 700;
    margin-bottom: 16px;
}

.statistics,
.trustedBy {
    background: white;
    padding: 25px 0;
}

.statistics p,
.trustedBy p {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 1.1rem;
    color: darkgray;
}

.statistics .statNumbers {
    font-family: 'Poppins', sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--orange);
}

.trustedBy {
    text-align: center;
    padding-bottom: 50px;
}

.trustedBy p {
    margin-bottom: 40px;
}

.trustedBy div li {
    max-width: 200px;
    margin: 0 auto;
}

/** SERVICES **/
#services, #contact, #recentServices {
    min-height: 80vh;
}

#services {
    background: var(--dark-gray);
    max-width: inherit;
    margin: 0;
    color: var(--white);
    min-height: 100vh;
}

.services-choices ul {
    display: inline-block;
}

.services-choices li a {
    display: block;
    padding: 24px 0;
    border-radius: 50%;
    cursor: pointer;
    background: var(--white);
}

.services-choices li a i {
    color: var(--dark-gray);
}

.service {
    position: relative;
}

#service-one {
    display: block;
    opacity: 1;

    transition: opacity .6s;
}

#service-two,
#service-three {
    display: none;
    opacity: 0;

    transition: opacity .6s;
}

/** FOOTER **/
footer {
    background: var(--black);
    color: var(--white);
    font-family: 'Poppins', sans-serif;
}

footer p {
    text-align: center;
    padding: 80px 0;
}

@media screen and (max-width: 991px) {
    .presentation.end {
        text-align: start;
        padding-right: 0;
        border-right: none;
        padding-left: 15px;
        border-left: 3px solid var(--blueviolet);
    }
}