/*
Theme Name: Bootstrap 5 Basic Theme
Theme URI: https://example.com/
Author: Your Name
Description: A basic responsive WordPress theme using Bootstrap 5.
Version: 1.0
License: GPLv2 or later
Text Domain: bootstrap5-basic-theme
*/

@font-face {
    font-family: 'Obodo';
    src: url('./assets/fonts/obodo.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

body {
    padding-top: 44px;
    font-family: 'Montserrat', sans-serif;
}
h1{
    font-size:1.7em;
}
h2{
    font-size:1.2em;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Obodo', sans-serif;
    text-transform: uppercase;
    line-height: 1.5 !important;
}
.text-justify{	
    text-align: justify !important;
}
.text-rio{
	color: #11B339 !important;
}
.wp-theme-bootstrap5-basic-theme #iubenda-cs-banner .iubenda-cs-opt-group button.iubenda-cs-reject-btn,
.wp-theme-bootstrap5-basic-theme #iubenda-cs-banner .iubenda-cs-opt-group button.iubenda-cs-accept-btn, 
.wp-theme-bootstrap5-basic-theme #iubenda-cs-banner .iubenda-cs-opt-group button.iubenda-cs-btn-primary, 
.wp-theme-bootstrap5-basic-theme #iubenda-iframe #iubFooterBtnContainer button{
	 background-color: #11B339 !important;
}
.bg-rio{
	background-color: #11B339;
}
.btn-rio{
    --bs-btn-color: #fff;
    --bs-btn-bg: #11B339;
    --bs-btn-border-color: #11B339;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #11B339;
    --bs-btn-hover-border-color: #11B339;
    --bs-btn-focus-shadow-rgb: 60, 153, 110;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #11B339;
    --bs-btn-active-border-color: #11B339;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #11B339;
    --bs-btn-disabled-border-color: #11B339;
}
.btn, a.wp-block-button__link {
    transition: filter 0.2s ease-in-out;
}

.btn:hover, a.wp-block-button__link:hover {
    filter: brightness(0.9);
}
.background-title-rio {
  position: relative;
  background-size: cover;
  background-position: center;
  min-height: 230px;
  text-align: center;
  color:#fff;
}
.background-title-rio.rio-page-title-box h1 {
    padding-top: 1em;
}

.background-title-rio::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.8);
}

.background-title-rio > * {
  position: relative;
}
body .is-layout-flex {
    justify-content: center;
}
:where(.wp-block-columns.has-background) {
    padding: 1em;
}
.mark, mark{
	padding:0;
}
.logged-in.admin-bar .navbar.fixed-top{
	top:32px;
}
/* Conteneur rond noir */
.custom-toggler {
    border: none;             /* supprime la bordure par défaut */
    background-color: #000;   /* rond noir */
    border-radius: 50%;       /* forme circulaire */
    width: 50px;              /* largeur */
    height: 50px;             /* hauteur */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

/* Hamburger blanc à l’intérieur */
.custom-toggler .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba%28255,255,255,1%29' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
    width: 24px;
    height: 24px;
}
.custom-toggler:not(.collapsed) .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='%23ffffff' stroke-width='2' stroke-linecap='round' d='M6 6L24 24M24 6L6 24'/%3E%3C/svg%3E");
	width: 24px;
    height: 24px;
}

.rio-tarifs-section-1{
  position: relative;
  background-image: url("../../uploads/2026/02/drone-plelarun-scaled.jpg");
  background-size: cover;
  background-position: center;
}
.rio-tarifs-section-1::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.8);
}

.rio-tarifs-section-1 h2{
    position: relative;
    font-size:1.5em; 
}
.rio-tarifs-section-1 p{
    position: relative;
}


.contact-header {
  position: relative;
  background-image: url("../../uploads/2026/02/drone-plelarun-scaled.jpg");
  background-size: cover;
  background-position: center;
}

.contact-header::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: black; /* couleur de l’overlay */
  opacity: 0.5; /* opacité de l’image */
}
.rio-page-title-box{
	padding:3em 0 0;
} 
.rio-page-title-box h1{
	color: #11B339;
} 
ul {
    list-style: none; /* supprime les bullets classiques */
    padding-left: 0;  /* pas de padding gauche par défaut */
}

ul li {
    position: relative;
    padding-left: 2rem; /* espace pour le cercle */
    margin-bottom: 0.5rem;
}

/* cercle vert avec check */
ul.green-check li::before {
    content: '✔';                /* symbole check */
    position: absolute;
    left: 7px;
    top: 4px;
    width: 1rem;
    height: 1rem;
    background-color: #11B339;   /* vert Bootstrap */
    color: #fff;                 /* check blanc */
    border-radius: 50%;          /* rond */
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6rem;
    line-height: 0.8rem;
}
ul.black-dots {
    list-style: disc;
    color: #000000; 
    padding-left: 1em;
    padding-top: 1em;
} 
ul.red-dots {
    list-style: disc;
    color: #ff0000; 
    padding-left: 1em;
    padding-top: 1em;
} 
ul.red-dots li, ul.black-dots li{
    padding-left: 0rem;
} 

.top-bloc-hp {
    position: relative;
    background-image: url('../../uploads/2026/02/Logo-Animation-IO-1_1-1.gif');
    background-size: contain;
    background-repeat: no-repeat;
}

/* overlay semi-transparent pour rendre le GIF moins apparent */
.top-bloc-hp::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8); /* noir transparent 40% */
  z-index: 0;
}

/* texte au-dessus du GIF */
.top-bloc-hp * {
  position: relative;
  z-index: 1;
}

.top-bloc-hp::after {
    content: "";
    position: absolute;
	bottom: 115px;
    right: 45px;
    width: 380px;
    height: 185px;
    background-image: url('./assets/img/bracelet-3_web.webp');
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;
}
.home .top-bloc-hp::after {
	bottom: 15px;
}
.btn-plus{
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: #fff;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2em;
    color: #000;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    transition: all 0.2s ease;
}
.btn-hp-cashless {
	top: -10em;
    left: 24em;
}
.btn-hp-chrono {
 	top: -7em;
    left: 10em;
}
.btn-hp-cashless p, .btn-hp-chrono p{
	left: 4em;
    position: absolute;
    width: max-content;
    font-weight: bold;
}
.btn-plus:hover {
  transform: scale(1.1);
}

.border-rio {
    --bs-border-opacity: 1;
    border-color: #11B339 !important;
}
#menu-main-menu li.menu-item-has-children{
	width:50%;
}
#menu-main-menu .menu-item a{
	color: #11B339;
    font-family: 'Obodo', sans-serif;
    text-transform: uppercase;
    line-height: 1.5 !important;
    text-decoration:none;
}
#menu-main-menu .sub-menu {
	color: #FFF;
    text-decoration:none; 
    text-transform: none;
    font-family: 'Montserrat', sans-serif;
    margin-top: 1em;
    list-style: disc;
    color: #11B339; 
    padding-left: 1em;
}
#menu-main-menu ul.sub-menu li::marker {
    font-size: 1.5rem; /* taille des puces */
}
#menu-main-menu ul.sub-menu li{
	padding-left:0;
}
#menu-main-menu .sub-menu .menu-item a{
	color: #FFF;
    text-decoration:none; 
    text-transform: none;
    font-family: 'Montserrat', sans-serif;
}
.form-check-input {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2311B339'/%3e%3c/svg%3e") !important;;
}

hr.rio-separator {
    border-top: 5px solid;
    opacity:1;    
	margin-bottom:32px;
	background-color: #11B339;
}
hr.rio-separator::before {
  	content: "";
	position: absolute;
	left: 50%;
	width: 20px;
	margin-top: -2px;
	height: 20px;
	background-color: #11B339;
	transform: translateY(-50%) rotate(45deg);
}
div.wpforms-container-full .wpforms-field-label{
	color:#fff !important;
    font-family: 'Montserrat', sans-serif;
    font-weight:normal;
}
.wpforms-container input.wpforms-field-medium{
	max-width:100%;
}

.comparison-table {
    border-collapse: collapse;
}

.comparison-table th {
    font-size: 1.4rem;
    font-weight: 600;
}

.comparison-table .check {
    color: #11B339;
    font-size: 1.8rem;
    font-weight: bold;
}

.comparison-table .cross {
    color: #dc3545;
    font-size: 1.8rem;
    font-weight: bold;
}

.comparison-table td,
.comparison-table th {
    vertical-align: middle;
}

.comparison-table tbody tr td:first-child {
    font-weight: 500;
}

.yt-video-box .wp-block-embed iframe {
    width: 100% !important;
    min-height: 450px !important;
}

div.wpforms-container-full .wpforms-confirmation-container-full, div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
    background: #11B339;
    border: 1px solid #11B339;
    box-sizing: border-box;
}
div.wpforms-container-full .wpforms-confirmation-container-full p, div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) p {
    color: #fff;
}

@media (min-width: 992px) { /* desktop uniquement */
  .comparison-table .col-activation {
    min-width: 250px;
  }
  .comparison-table .col-actor {
     white-space: nowrap;      /* empêche le retour à la ligne */
    word-break: normal;       /* évite la casse des mots */
    overflow-wrap: normal;    /* empêche la coupure automatique */
  }
}

@media (max-width: 1199px) {
	.btn-hp-cashless {
		top: -10em;
	    left: 20em;
	}
	.btn-hp-chrono {
	 	top: -7em;
	    left: 7em;
	}
}

@media (max-width: 992px) {
	.btn-hp-cashless {
		top: -10em;
	    left: 13em;
	}
	.btn-hp-chrono {
	 	top: -7em;
	    left: 2em;
	}
	
  .top-bloc-hp::after{
	  display: none;
  } 
  #menu-main-menu{
  	flex-direction: column !important;
  }
  #menu-main-menu li.menu-item-has-children{
		width:100%;
  }

    /* Active le scroll horizontal */
    .table-responsive {
        overflow-x: auto;
    }

    /* Force une largeur minimale pour déclencher le scroll */
    .comparison-table {
        min-width: 800px;
    }

    /* Sticky première colonne */
    .comparison-table th:first-child,
    .comparison-table td:first-child {
        position: sticky;
        left: 0;
        background: #fff; /* important */
        z-index: 2;
    }

    /* Header au-dessus */
    .comparison-table thead th:first-child {
        z-index: 3;
    }
    
    /* Largeur fixe première colonne */
    .comparison-table th:first-child,
    .comparison-table td[rowspan] {
        width: 220px;
        min-width: 220px;
    }

    /* Sticky uniquement sur les cellules avec rowspan */
    .comparison-table td[rowspan],
    .comparison-table th:first-child {
        position: sticky;
        left: 0;
        background: #fff;
        z-index: 3;
        vertical-align: top;
    }

    /* Petit effet premium pour séparer */
    .comparison-table td[rowspan]::after,
    .comparison-table th:first-child::after {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        width: 8px;
        height: 100%;
        background: linear-gradient(to right, rgba(0,0,0,0.05), transparent);
    }
}

@media (max-width: 768px) {
	.btn-hp-cashless {
		top: -10em;
	    left: 20em;
	}
	.btn-hp-chrono {
	 	top: -7em;
	    left: 7em;
	}
    .comparison-table th {
        font-size: 1rem;
    }
    .comparison-table td {
        font-size: 0.9rem;
    }
}



@media (max-width: 455px) {
	.btn-hp-cashless p, .btn-hp-chrono p {
	    left: -1em;
	    text-align: center;
	    top: 3em;
    }
    .btn-hp-chrono p {
	    left: -2em;
    }
}
@media (max-width: 400px) {
    .btn-hp-cashless {
        left: 15em;
    }
    .btn-hp-chrono {
        left: 1.2em;
    }
}