/*!
Theme Name: Bang Nuisibles
Theme URI: http://www.simplydesign.ch/
Author: Simply Design
Author URI: http://www.simplydesign.ch/
Description: Le thème WordPress bang-nuisibles est un thème réalisé sur mesure par l'agence web Simply Design pour le projet Bang Nuisibles à Genève.
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: 
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Bang Nuisibles is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
    - Normalize
    - Box sizing
# Base
    - Typography
    - Elements
    - Links
    - Forms
## Layouts
# Components
    - Navigation
    - Posts and pages
    - Comments
    - Widgets
    - Media
    - Captions
    - Galleries
# plugins
    - Jetpack infinite scroll
# Utilities
    - Accessibility
    - Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
     ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */


@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap');

body {
    font-family: "Roboto Condensed", sans-serif;
    font-weight: 300;
    font-size: 21px;
    color: #000;
}

p {
    font-weight: 300;
    font-size: 21px;
}

.p-lg {
    font-weight: 300;
    font-size: 27px;
    font-family: "Roboto Condensed", sans-serif;
    text-transform: none;
}

.p-md {
    font-weight: 300;
    font-size: 22px;
}

h1,
.h1 {
    font-family: "Roboto Condensed", sans-serif;
    font-weight: 500;
    font-size: 44px;
    line-height: 1.1;
}


h2 {
    font-family: "Roboto Condensed", sans-serif;
    font-weight: 400;
    font-size: 35px;
    color: #0A1A30;
}

h3 {
    font-size: 36px;
    font-weight: 300;
    margin-bottom: 20px;
}

.space {
    height: 100px;
}

.spaceSm {
    height: 50px;
}

.rounded {
    border-radius: 30px !important;
}

.img-90 {
    width: 90%;
}

.img-100 {
    width: 100%;
}

.img-120 {
    width: 120%;
}

.max-container {
    max-width: 1630px;
    margin: auto;
    border-radius: 10px;
    overflow: hidden;
}

.col-reverse .row {
    flex-direction: row-reverse;
}

.col-reverse .col-md-5 {
    justify-content: flex-end;
    display: flex;
}

a.custom-logo-link {
    display: block;
    max-width: 300px;
    margin: auto;
}

a.custom-logo-link img {
    max-width: 100%;
    height: auto;
}

.content-padding {
    padding-bottom: 100px;
    padding-top: 100px;
}

.content-padding-lg {
    padding-bottom: 130px;
    padding-top: 130px;
}

header.header {
    padding-top: 15px;
    padding-bottom: 15px;
}

ul.nav {
    justify-content: flex-end;
    align-items: center;
}

ul.nav li a {
    color: #000;
    text-decoration: none;
    display: flex;
    align-items: center;
    font-weight: 400;
}

ul.nav li a:hover,
ul.nav li.current-menu-item a {
    color: #D32C0D;
}

ul.nav li.menu-item {
    position: relative;
    padding: 10px 15px;
    font-size: 18px;
}

ul.nav li ul {
    position: absolute;
    margin: 0px;
    padding: 0px;
    top: 48px;
    width: 210px;
    display: none;
    list-style: none;
    background-color: #fff;
    left: 0;
}

ul.nav li:hover ul {
    display: block;
}

ul.nav li.menu-item ul li {
    padding: 10px 15px;
    font-size: 16px;
}

ul.nav li.menu-item-has-children>a:after {
    content: '';
    width: 8px;
    height: 8px;
    display: flex;
    border-left: 2px solid;
    border-bottom: 2px solid;
    border-color: #000000;
    transform: rotate(-45deg);
    margin-left: 15px;
    margin-top: -2px;
}

ul.nav li.mbtn a {
    background-color: #D32C0D;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    padding: 10px 20px;
    border-radius: 8px;
}

ul.nav li.mbtn a:hover {
    background-color: #000;
}

ul.nav li.mbtn a:before {
    content: '';
    background-image: url('https://www.sitedemo.ch/wp-content/uploads/2025/08/phone.svg');
    width: 25px;
    height: 25px;
}




.font-light {
    font-weight: 300;
}

.brandBg {
    background-color: #fbeae7;
}

.banner {
    background-color: #fbeae7;
}

.banner p {
    margin-top: 20px;
    margin-bottom: 20px;
}

.btn {
    border: 1px solid #D32C0C;
    font-size: 20px;
    font-weight: 600;
    padding: 10px 20px;
    border-radius: 8px;
    color: #D32C0C;
}

.btn+.btn {
    margin-left: 15px;
}

.btn:hover {
    color: #D32C0C;
    background-color: #fff;
    border-color: #fff;
    box-shadow: 0px 0px 10px;
}

.btn:after {
    content: '';
    background-image: url(https://www.sitedemo.ch/wp-content/uploads/2025/08/Vector.svg);
    width: 30px;
    height: 30px;
    display: inline-block;
    background-position: center;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-left: 10px;
}

.btn-primary {
    background-color: #fff;
}

.btn-primary:hover {
    background-color: #fff3f1;
}

.site-footer {
    background-color: #1A1A1A;
    padding: 30px 0px;
    color: #fff;
    margin-bottom: 30px;
    border-radius: 10px;
}


.site-footer ul.nav {
    justify-content: flex-start;
}

.site-footer ul.nav li.menu-item {
    padding: 0px;
    margin-right: 10px;
    margin-right: 40px;
}

.site-footer ul.nav li.menu-item a {
    color: #fff;
    text-transform: none;
    font-size: 16px;
}

.site-footer ul.nav li.menu-item a:hover {
    text-decoration: underline;
}

.Copyright {
    font-size: 14px;
}

.site-footer #primary-menu {
    padding-bottom: 15px;
    margin-bottom: 10px;
    border-bottom: 1px solid #ffffff1a;
}

.socialLinks {
    display: flex;
    list-style: none;
    margin: 0px;
    padding: 0px;
    justify-content: end;
}



.socialLinks li {
    margin-left: 15px;
}



.queAccordian .accordion {
    max-width: 1000px;
    margin: auto;
    margin-top: 40px;
}

.accordion-button {
    font-size: 30px;
    font-weight: 300;
}

.accordion-item {
    border-left: 0px;
    border-right: 0px;
}

.accordion-button:not(.collapsed) {
    font-weight: 500;
    color: #D32C0D;
    background-color: transparent;
}

.accordion-body {
    font-size: 18px;
    font-weight: 400;
}

.accordion-button:focus {
    box-shadow: none;
}

.accordion-button::after {
    background-image: url(https://www.sitedemo.ch/wp-content/uploads/2025/08/tabler-icon-circle-plus.svg);
    width: 30px;
    height: 30px;
    background-size: contain;
}

.accordion-button:not(.collapsed)::after {
    background-image: url(https://www.sitedemo.ch/wp-content/uploads/2025/08/tabler-icon-circle-minus.svg);
}

.gradientBg {
    background-image: url(https://www.sitedemo.ch/wp-content/uploads/2025/08/bgg.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 100px;
    padding-bottom: 100px;
    text-align: center;
    color: #fff;
}

.gradientBg h2 {
    color: #fff;
    max-width: 600px;
    margin: auto;
}

.gradientBg p {
    font-size: 30px;
    max-width: 800px;
    margin: 30px auto;
}

.servicesBlock {
    list-style: none;
    display: flex;
    justify-content: space-between;
    margin: 0px;
    padding: 0px 15px;
}

.servicesBlock li {
    width: 19%;
    border: 2px solid #e4e4e4;
    border-radius: 10px;
    padding: 20px;
}

.servicesBlock li h3 {
    font-size: 20px;
    font-weight: 500;
    margin: 10px 0px;
}

.servicesBlock li p {
    font-size: 16px;
    margin: 0px;
    font-weight: 400;
    min-height: 75px;
}

.servicesBlock li a:after {
    content: '';
    background-image: url(https://www.sitedemo.ch/wp-content/uploads/2025/08/Vector.svg);
    width: 30px;
    height: 30px;
    display: inline-block;
    background-position: center;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-left: 10px;
}

.servicesBlock li a {
    font-size: 18px;
    color: #D32C0C;
    text-decoration: none;
    font-weight: 500;
}

.servicesBlock li a:hover {
    text-decoration: underline;
}

.servicesBlock li img {
    margin-bottom: 20px;
    height: 150px;
}

.infoBox {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0px 0px 10px rgb(0 0 0 / 14%);
    padding: 15px;
    margin-bottom: 15px;
    margin-top: 15px;
}

.infoBox img {
    width: 100%;
    height: auto;
}

.infoBox h3 {
    margin: 12px 0px;
    font-size: 20px;
    font-weight: 500;
}

.infoBox p {
    font-size: 16px;
    font-weight: 400;
    margin: 0px;
    min-height: 50px;
}

.step {
    position: relative;
    padding-left: 60px;
    max-width: 320px;
    margin-top: 25px;
}

.step b {
    font-size: 96px;
    font-weight: 900;
    color: #D32C0D;
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1;
}

.step h3 {
    font-size: 20px;
    font-weight: 500;
    margin: 0px;
}

.step p {
    font-size: 16px;
    font-weight: 400;
    margin: 0px;
}

.methode {
    position: relative;
}

.methode:after {
    content: '';
    background-image: url(https://www.sitedemo.ch/wp-content/uploads/2025/08/arrow.svg);
    position: absolute;
    top: 60px;
    right: 30px;
    width: 150px;
    height: 34px;
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
}

.noArrow .col-md-4:last-child .methode:after {
    display: none;
}

.image-style {
    height: 500px;
    border-radius: 50px;
    object-fit: cover;
}


/* blog css */

.post-thumbnail {
    display: block;
}

.post-thumbnail img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    border-radius: 20px;
}

.entry-header {
    padding: 15px;
}

.entry-header a {
    color: #000;
    text-decoration: none;
}

.entry-header a:hover {
    color: #000;
}

h2.entry-title {
    line-height: 1;
    font-size: 30px;
    margin-bottom: 20px;
}

.entry-content {
    padding: 0px 15px;
}

footer.entry-footer {
    display: none;
}

.entry-meta {
    margin-bottom: 15px;
    font-weight: 400;
}

.entry-meta a {
    color: #d32c0d;
}

.nav-links {
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
}

.nav-links a {
    color: #d32c0d;
}

.gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)),
.gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)),
.gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn))>button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)),
.gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)),
.gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit], [type=button], [type=reset]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)),
.gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit], [type=button], [type=reset]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)),
.gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
    background-color: #D32C0D !important;
    color: #fff !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    line-height: 1.4 !important;
}

.contactInfo img {
    border-radius: 30px;
}

.contactInfo a {
    color: #D32C0D;
}

.contactInfo .gform-theme--foundation .gfield .ginput_password,
.contactInfo .gform-theme--foundation .gfield input,
.contactInfo .gform-theme--foundation .gfield select,
.contactInfo .gform-theme--foundation .gfield textarea.large {
    padding: 22px;
    border-radius: 15px
}

.contactInfo .gform-theme--foundation .gfield textarea.large {
    min-block-size: 8rem;
}

.link {
    color: #D32C0D;
}

.entry-date.published+.updated {
    display: none;
}

.menuToggle {
    display: none;
}


@media (max-width: 1024px) {
    .content-padding-lg {
        padding-bottom: 80px;
        padding-top: 80px;
    }

    .btn+.btn {
        margin: 0px;
        margin-top: 15px;
    }

    .servicesBlock {
        flex-wrap: wrap;
    }

    .servicesBlock li {
        width: 49%;
        margin-bottom: 20px;
    }

    .methode:after {
        right: -10px;
    }
}

@media (max-width: 768px) {
    .menuToggle {
        display: block;
        width: 40px;
        height: 30px;
        cursor: pointer;
    }

    .menuHead {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .menuHead a.custom-logo-link {
        max-width: 200px;
        display: inline-block;
        margin: 0px;
    }

    .menuToggle {
        border-top: 1px solid #000;
        border-bottom: 1px solid #000;
    }

    .menuToggle hr {
        margin: 14px 0px;
        opacity: 1;
    }

    .header #primary-menu {
        position: absolute;
        top: 85px;
        left: 0;
        width: 100%;
        background-color: #fff;
        flex-direction: column;
        align-items: flex-start;
        padding: 20px;
        display: none;
    }

    .menuHead {
        width: 100%;
    }

    h1,
    .h1 {
        font-size: 36px;
    }

    .methode:after {
        right: -30px;
        width: 100px;
    }
    .step b{
            font-size: 70px;
    }
    ul.nav li ul{
        position: initial;
    }
    h2{
        font-size: 32px;
    }
}


@media (max-width: 767px) {
    .content-padding-lg {
        padding-bottom: 50px;
        padding-top: 50px;
    }

    .btn+.btn {
        margin: 0px;
        margin-top: 20px;
    }

    .content-padding {
        padding-bottom: 50px;
        padding-top: 50px;
    }

    .servicesBlock {
        flex-wrap: wrap;
    }

    .servicesBlock li {
        width: 100%;
        margin-bottom: 20px;
      padding: 30px;
    }
	.servicesBlock li p{
		    min-height: initial;
	}

    .servicesBlock li img {
        height: 90px;
    }

    .servicesBlock li a {
        font-size: 16px;
    }

    .servicesBlock li a:after {
        width: 15px;
        height: 15px;
        margin-left: 5px;
    }

    h2 {
        font-size: 30px;
    }

    .spaceSm {
        height: 20px;
    }

    .methode:after {
        transform: rotate(90deg);
        left: -45px;
        right: initial;
        top: 310px;
    }

    .methode {
        padding-left: 70px;
        margin-bottom: 20px;
        margin-top: 20px;
    }

    .accordion-button {
        font-size: 24px;
    }

    .site-footer #primary-menu {
        display: none;
    }

    .Copyright {
        text-align: center;
        display: block;
        margin-top: 15px;
        padding: 15px;
    }

    .socialLinks {
        justify-content: center;
        margin-top: 20px;
    }

    .site-footer #primary-menu+.row {
        flex-direction: column-reverse;
    }

    ul.nav li ul {
        position: initial;
    }

    .image-style {
        height: 350px;
        border-radius: 20px;
        margin-bottom: 20px;
    }

    .gradientBg p {
        font-size: 20px;
    }

    article.post.type-post.status-publish {
        margin-bottom: 40px;
    }

    .entry-meta {
        margin-bottom: 0;
    }

    h1,
    .h1 {
        font-size: 36px;
    }

}