html { scroll-behavior: smooth; }


/* ==========================================================================
 * Global
========================================================================== */

html { height: 100%; scroll-behavior: smooth; }
body {
    font-size: 1rem;
    line-height: 29px;
    font-weight: 300;
    font-family: 'proxima-nova', Helvetica, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a { color: #000; text-decoration: none }
a:hover, a:focus { color: #00fc1b !important; text-decoration: none; transition: 0.2s; }


h1 { font-weight: 700; font-size: 9rem; line-height: 9rem; margin: 0 0 30px; }
h2 { font-weight: 700; margin-bottom: 30px; font-size: 31px; }
h3 { font-weight: 700; font-size: 27px; }
h4 { font-weight: 700; font-size: 23px; margin-bottom: 5px; }

.mobile { display: none; }

.bg-yellow { background: #00fc1b; }


/* ==========================================================================
 * Header
========================================================================== */

.navbar-brand img { width: 110px; }

.navbar {
    z-index: 99999;
    margin: auto;
    padding: 0 15px 0 30px;
    width: 100%;
}

.nav-link { display: inline-block; color: #111; font-weight: 400; }
.navbar a:hover,
.dropdown-item.active,
.dropdown-item:active,
.navbar-nav .nav-link.active,
.navbar-nav .show>.nav-link { color: #000; background: none; }

#menu-menu .nav-link { padding: 10px 15px; }

.dropdown-menu, .navbar-collapse {
    border: 0;
    padding: 0;
    min-width: 250px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    left: 0;
}
.dropdown:hover .dropdown-menu { display: block; }
.dropdown-menu {
    padding-top: 18px;
    background: #fff;
    padding: 15px 0 0;
    text-transform: uppercase;
    box-shadow: 0px 19px 3px 0 #c7c7c7;
}
.dropdown-menu li:hover { color: #bf9f4b !important; }
.dropdown-item, .dropdown-item.active { color: #004a87; font-weight: 700; border-bottom: 1px solid #ebebeb; }
.navbar-expand-md .navbar-nav .dropdown-menu { min-width: 250px; padding: 0; }


/* ==========================================================================
 * Head
========================================================================== */

.page-head { width: 100%; position: relative; overflow: hidden; }
.page-head img { width: 100%; margin-top: 180px;  }
.page-head .container { position: relative; z-index: 9; }
.page-head h1 { margin-top: 30vh; }


/* ==========================================================================
 * Buttons
========================================================================== */

.btn, .wp-block-button__link, .frm_button_submit {
    padding: 5px 20px !important;
    text-transform: uppercase;
    transition: 0.6s;
    font-size: .9rem !important;
    border-radius: 0 !important;
    font-weight: 700 !important;
}
.btn:hover { transition: 0.6s; }
.btn-primary, .frm_button_submit { color: #000; background: #00fc1b !important; border: 0 !important; }
.btn-primary:hover { background: #fff; color: #b18200; }
.btn-default, .wp-block-button__link {
    background: #00fc1b;
    color: #000;
    font-size: 15px;
}
.btn-default:hover, .wp-block-button__link:hover { border-color: #2a3951; color: #2a3951 !important;  }
.btn-primary:after, .btn-default:after, .wp-block-button__link:after {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-left: 60px;
    vertical-align: -.125em;
    background: currentColor;
    -webkit-mask: var(--rz-pijl) center / contain no-repeat;
    mask: var(--rz-pijl) center / contain no-repeat;
}
.btn-primary:hover:after, .btn-default:hover:after, .wp-block-button__link:hover:after { margin-left: 70px; transition: 1s; }


/* ==========================================================================
 * Main
========================================================================== */

.wp-image img { width: 100%; -o-object-fit: cover; object-fit: cover; }

.item { margin-bottom: 30px; background: #fff; }
.item img {
    width: 100%;
    height: 250px;
    display: inline-block;
    object-fit: cover;
}
.item h3 {
    overflow: hidden;
    min-height: 63px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.item-text { padding: 30px; } 
.item-text p { 
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}


/* ==========================================================================
 * Cards
========================================================================== */

.card { border: 0; border-radius: 0; }

.box {
    margin-bottom: 15px;
    border: 1px solid #111;
    padding: 30px;
}
.box i { float: left; width: 110px; }


/* ==========================================================================
 * Blocks
========================================================================== */

.block { padding: 90px 0; }
.block-footer img { width: 100%;  }


/* ==========================================================================
 * Forms
========================================================================== */

.form-control { padding: 15px; margin-bottom: 15px; border-radius: 0; }


/* ==========================================================================
 * Footer
========================================================================== */

footer { padding: 0 30px; }
footer a:hover { color: #2a3951 !important; }
footer ul { list-style: none; padding: 0; margin: 0; }
footer h2 { 
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.copyright { font-size: 13px; padding: 15px; }


/* ==========================================================================
 * Responsive
========================================================================== */

@media screen and (min-width: 1023px) {
    .navbar-toggler { display: none; }
}

@media screen and (max-width: 720px) {
    .page-head, .layer { height: 100vh; padding-bottom: 0; }
    .page-head h1 { font-size: 31px !important; margin-top: 10vh; }

    h1 { font-size: 38px; overflow: hidden; }

    .block { padding: 30px 0; }
    
    .btn-primary { margin-bottom: 15px; }

    .navbar { height: 82px; }
    .navbar-brand img { width: 60px; }
    .breadcrumb { font-size: 14px; }

    .item { padding: 15px; background: #fff; }
    .navbar-collapse { display: block; position: fixed; padding: 0 15px 15px 0; top: 82px; background: #fff; width: 100%; }
    
    .item h3 { min-height: auto; }
}
