/*
* Fonts
* ----------------------------------------
*/

/* @font-face {
    font-family: 'Glyphicons Halflings';
    src: url(../fonts/bootstrap/glyphicons-halflings-regular.eot);
    src: url(../fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix) format("embedded-opentype"),
        url(../fonts/bootstrap/glyphicons-halflings-regular.woff2) format("woff2"),
        url(../fonts/bootstrap/glyphicons-halflings-regular.woff) format("woff"),
        url(../fonts/bootstrap/glyphicons-halflings-regular.ttf) format("truetype"),
        url(../fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format("svg")
} */
@font-face {
    font-family: 'ss_dingsregular';
    src: url(../fonts/ss-dingsregular/ss-dingsregular.eot?yyrozr);
    src: url(../fonts/ss-dingsregular/ss-dingsregular.eot?yyrozr#iefix) format("embedded-opentype"),
        url(../fonts/ss-dingsregular/ss-dingsregular.ttf?yyrozr) format("truetype"),
        url(../fonts/ss-dingsregular/ss-dingsregular.woff?yyrozr) format("woff"),
        url(../fonts/ss-dingsregular/ss-dingsregular.svg?yyrozr#ss_dingsregular) format("svg");
    font-weight: 400;
    font-style: normal
}
@font-face {
    font-family: 'freightText';
    src: url(../fonts/freight-medium/freight-text-medium.eot?#iefix);
    src: url(../fonts/freight-medium/freight-text-medium.eot?#iefix) format("eot"),
        url(../fonts/freight-medium/freight-text-medium.woff2) format("woff2"),
        url(../fonts/freight-medium/freight-text-medium.woff) format("woff"),
        url(../fonts/freight-medium/freight-text-medium.ttf) format("truetype");
    font-weight: 400;
    font-style: normal
}
@font-face {
    font-family: 'freightText-Bold';
    src: url(../fonts/freight-bold/freight-text-bold.otf) format("otf"),
        url(../fonts/freight-bold/freight-text-bold.woff2) format("woff2"),
        url(../fonts/freight-bold/freight-text-bold.woff) format("woff");
    font-weight: normal;
    font-style: normal
}
@font-face {
    font-family: 'Gotham';
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/gotham/Gotham-Book.otf)
}
@font-face {
    font-family: 'Gotham-Medium';
    font-style: normal;
    font-weight: 500;
    src: url(../fonts/gotham/Gotham-Medium.otf)
}

/*
* Layout
* ----------------------------------------
*/

.view {
    position: relative;
}

.view .admin-placeholder {
    padding: 2rem 3rem;
    background-color: #efefef;
}

.abs-full {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.h-full {
    height: 100%;
}
.w-full {
    width: 100%;
}
.hw-full {
    height: 100%;
    width: 100%;
}

ul.ns, ol.ns {
    list-style: none;
    padding: 0;
    margin: 0;
}
ul.ns li, ol.ns li {
    padding: 0;
    margin: 0;
}

a.ns {
    text-decoration: none;
}

@media (min-width: 992px)
{
    .cont-narrow {
        max-width: 55rem;
        margin: 0 auto;
    }
}

/*
 * Media display
 * ----------------------------------------
 */

@media (max-width: 991px)
{
    body:not(.wp-admin) .hide-mobile {
        display: none !important;
    }
}
@media (min-width: 992px)
{
    body:not(.wp-admin) .hide-desktop, 
    body:not(.wp-admin) .hs-hide-desktop {
        display: none !important;
    }
}

/*
* Responsive images
* ----------------------------------------
*/
.img-resp-cont {
    position: relative;
}
.img-resp-cont img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.img-resp-cont.img-cover img {
    object-fit: cover;
}
.img-resp-cont.img-contain img {
    object-fit: contain;
}

/*
* Responsive rectangles
* ----------------------------------------
*/

.square {
    width: 50%;
}
.square:after {
    content: "";
    display: block;
    padding-bottom: 100%;
}

.rect-90-100 {
    width: 100%;
}
.rect-90-100:before {
    content: "";
    display: block;
    padding-bottom: 110%;
}

.rect-120-100 {
    width: 100%;
}
.rect-120-100:before {
    content: "";
    display: block;
    padding-bottom: 83%;
}

.rect-150-100 {
    width: 100%;
}
.rect-150-100:before {
    content: "";
    display: block;
    padding-bottom: 67%;
}

.rect-180-100 {
    width: 100%;
}
.rect-180-100:before {
    content: "";
    display: block;
    padding-bottom: 56%;
}

.rect-200-100 {
    width: 100%;
}
.rect-200-100:before {
    content: "";
    display: block;
    padding-bottom: 50%;
}

.rect-300-100 {
    width: 100%;
}
.rect-300-100:before {
    content: "";
    display: block;
    padding-bottom: 33%;
}

.rect-240-100 {
    width: 100%;
}
.rect-240-100:before {
    content: "";
    display: block;
    padding-bottom: 42%;
}

/*
* Gutenberg blocks
* ----------------------------------------
*/

.site-main > .wp-bootstrap-blocks-container {
    padding-top: 4.2857rem;
}
.site-main > .wp-bootstrap-blocks-container:not(.mb-0) {
    margin-bottom: 5.5rem !important;
}

.site-main > .wp-block-group {
    padding-left: 2rem;
    padding-right: 2rem;
}
.site-main > .wp-block-group.has-background {
    padding-top: 5.5rem;
    padding-bottom: 5.5rem;
}

.site-main .wp-block-image {
    margin: 0;
}
.site-main .wp-block-image img {
    max-width: 100%;
    height: auto;
}

/*
* Images
* ----------------------------------------
*/

.bg-img-contain {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}
.bg-img-cover {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.img-fluid {
    max-width: 100%;
    height: auto;
    /* object-fit: cover; */
}

/*
* Bg colors
* ----------------------------------------
*/

.bg-grey {
    background-color: #eaeaea;
}
.bg-grey-2 {
    background-color: #d8dfe2;
}
.bg-grey-3 {
    background-color: #f6f7f8;
}
.bg-grey-4 {
    background-color: #f2f2f2;
}
.bg-grey-5 {
    background-color: #f7f7f7;
}
.bg-grey-6 {
    background-color: #f6f6f6;
}
.bg-dark-grey {
    background-color: #ebebeb;
}
.bg-dark-blue {
    background-color: #29303c;
}
.bg-light-blue {
    background-color: #f1f5fd;
}
.bg-6 {
    background-color: #313745;
}
.bg-7 {
    background-color: #2a2f3c;
}
.bg-8 {
    background-color: #2e3442;
}

/*
* Text
* ----------------------------------------
*/

.tw-bold, strong {
    /* font-family: "muli-semibold", sans-serif; */
    font-family: "Gotham-Medium", sans-serif;
}
.ta-center {
    text-align: center !important;
}
.ta-right {
    text-align: right !important;
}

/*
* Text color
* ----------------------------------------
*/

.tc-grey-1 {
    color: #969696 !important;
}
.tc-grey-2 {
    color: #4c4c4c !important;
}
.tc-blue-1 {
    color: #568ba4 !important;
}

/*
* Buttons
* ----------------------------------------
*/

.btn-t {
    padding: 0.643rem 1.7857rem;
    font-size: 0.857rem;
    text-decoration: none !important;
    border-radius: 0;
    border: none;
    letter-spacing: -.01em;
    text-align: center;
    cursor: pointer;
    text-transform: uppercase;
    display: inline-block;
    font-family: Gotham;
    font-style: normal;
    background-color: transparent;
    border: 1px solid transparent;
}
.btn-t.btn-small {
    min-width: 12.5rem;
}
.btn-t.btn-large {
    min-width: 12.5rem;
}
.btn-t.btn-full-w {
    display: block;
    width: 100%;
}

.btn-t.btn-dark-blue {
    background-color: #29303c;
    border-color: #29303c;
    color: #ffffff;
}
.btn-t.btn-light-blue {
    background-color: #76aac4;
    border-color: #76aac4;
    color: #ffffff;
    font-weight: 700;
}
.btn-t.btn-soft-grey {
    background-color: #d4d4d4;
    border-color: #d4d4d4;
    color: #3f4346;
}
.btn-t.btn-black {
    background-color: #29303c;
    border-color: #29303c;
    color: #ffffff;
    font-weight: 700;
}
.btn-t.btn-white {
    background-color: transparent;
    border-color: #ffffff;
    color: #ffffff;
    font-weight: 700;
}
body:not(.wp-admin) .btn-t.btn-white-text {
    border-color: #4e535d;
    color: #ffffff;
}

@media (min-width: 992px)
{
    .btn-t.btn-small {
        min-width: 12.5rem;
    }
    .btn-t.btn-large {
        min-width: 17.86rem;
    }
}

/*
* Icons
* ----------------------------------------
*/

.icon-before:before {
    display: inline-block;
    vertical-align: middle;
    font-family: ss_dingsregular;
    font-style: normal;
}
.icon-after:after {
    display: inline-block;
    vertical-align: middle;
    font-family: ss_dingsregular;
    font-style: normal;
}

.icon-before-abs {
    position: relative;
}
.icon-before-abs:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    font-family: ss_dingsregular;
    font-style: normal;
}
.icon-after-abs {
    position: relative;
}
.icon-after-abs:after {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    font-family: ss_dingsregular;
    font-style: normal;
}

/*
* Forms
* ----------------------------------------
*/

/* form.wpcf7-form .form-block,  */
body.wp-admin .edit-post-visual-editor form .form-block, 
body:not(.wp-admin) form .form-block {
    margin: 0 0 2.357rem;
}
/* form.wpcf7-form .form-block-sm,  */
body.wp-admin .edit-post-visual-editor form .form-block-sm, 
body:not(.wp-admin) form .form-block-sm {
    margin: 0 0 1.43rem;
}
/* form.wpcf7-form .block-submit,  */
body.wp-admin .edit-post-visual-editor form .block-submit, 
body:not(.wp-admin) form .block-submit {
    padding-top: 1rem;
    text-align: center;
}
/* form.wpcf7-form label,  */
body.wp-admin .edit-post-visual-editor form label, 
body:not(.wp-admin) form label {
    display: block;
}
/* form.wpcf7-form label.inline-label,  */
body.wp-admin .edit-post-visual-editor form label.inline-label, 
body:not(.wp-admin) form label.inline-label {
    display: inline-block;
    padding: 0;
    margin: 0;
}

/* form.wpcf7-form input[type="text"],
form.wpcf7-form input[type="number"],
form.wpcf7-form input[type="email"],
form.wpcf7-form input[type="tel"], 
form.wpcf7-form select, 
form.wpcf7-form textarea,  */
body.wp-admin .edit-post-visual-editor form input[type="text"],
body.wp-admin .edit-post-visual-editor form input[type="number"],
body.wp-admin .edit-post-visual-editor form input[type="email"],
body.wp-admin .edit-post-visual-editor form input[type="tel"], 
body.wp-admin .edit-post-visual-editor form select, 
body.wp-admin .edit-post-visual-editor form textarea,
body:not(.wp-admin) form input[type="text"],
body:not(.wp-admin) form input[type="number"],
body:not(.wp-admin) form input[type="email"],
body:not(.wp-admin) form input[type="tel"], 
body:not(.wp-admin) form select, 
body:not(.wp-admin) form textarea {

    width: 100%;
    padding: 0.7143rem;
    border: none;
    border-radius: 0;
    background-color: #ffffff;
    font-family: Gotham;
    font-size: 1rem;
    color: #969696;
    border: 1px solid #d0d0d0;
}
/* form.wpcf7-form input[type="checkbox"],
form.wpcf7-form input[type="radio"],  */
body.wp-admin .edit-post-visual-editor form input[type="checkbox"],
body.wp-admin .edit-post-visual-editor form input[type="radio"],
body:not(.wp-admin) form input[type="checkbox"],
body:not(.wp-admin) form input[type="radio"] {
    vertical-align: middle;
    margin: 0 0.5rem 0 0;
}
/* form.wpcf7-form textarea,  */
body.wp-admin .edit-post-visual-editor form textarea, 
body:not(.wp-admin) form textarea {
    min-height: 16rem;
    resize: vertical;
}

form .input-clear {
    position: relative;
}
form .input-clear .clear-btn {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.93em;
    cursor: pointer;
}
form .input-clear.clear-on .clear-btn {
    display: block;
}
form .input-clear .clear-btn:before {
    display: block;
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f00d";
    font-size: inherit;
    line-height: 1em;
}

/*
* CF7 Forms
* ----------------------------------------
*/

form.wpcf7-form > p {
    padding: 0;
    margin: 0;
}
form.wpcf7-form > p > br {
    display: none;
}
form.wpcf7-form label {
    display: block;
    padding: 0;
    margin: 0 0 1rem;
}
form.wpcf7-form span.wpcf7-form-control-wrap,
form.wpcf7-form span.wpcf7-form-control-wrap span.wpcf7-form-control,
form.wpcf7-form span.wpcf7-form-control-wrap span.wpcf7-form-control span.wpcf7-list-item {
    display: block;
    margin: 0;
    padding: 0;
}
form.wpcf7-form span.wpcf7-form-control-wrap span.wpcf7-form-control span.wpcf7-list-item span.wpcf7-list-item-label {
    display: inline-block;
    vertical-align: middle;
}

form.wpcf7-form span.wpcf7-form-control-wrap.acceptance {
    display: inline-block;
}

form.wpcf7-form span.wpcf7-form-control-wrap.accept-terms {
    display: inline-block;
    vertical-align: middle;
}

form.wpcf7-form .wpcf7-not-valid {
    background-color: #fff2f2 !important;
}
form.wpcf7-form span.wpcf7-form-control-wrap span.wpcf7-not-valid-tip {
    display: none;
}
form.wpcf7-form .ajax-loader {
    display: none;
}
form.wpcf7-form .wpcf7-spinner {
    display: none;
}
form.wpcf7-form.submitting .wpcf7-spinner {
    display: block;
    margin: 1rem auto;
}
form.wpcf7-form .wpcf7-response-output {
    padding: 0.85rem 1rem;
    margin: 0;
}

/*
* Google map
* ----------------------------------------
*/

.gm-style .gm-style-iw-c, 
.gm-style .gm-style-iw-d {
    padding: 0;
    border-radius: 0;
}
.gm-style .gm-style-iw-d {
    overflow: auto !important;
}

/* Service image position */
.service-image.right .img-resp-cont.img-cover img {
	object-position: right;
}

.service-image.left .img-resp-cont.img-cover img {
	object-position: left;
}