@charset "UTF-8";
/*
CSS Document
*/
@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;1,600&family=Raleway:ital,wght@0,300;0,400;0,600;1,300;1,600&display=swap');
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --text-dark: rgb(23, 26, 28);
  --primary: #007bdd;
  --secondary: #6c7583;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #f78e0c;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #322c2f;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
html, html > body {
  min-height: calc(var(--owvh, 1vh) * 100);
  max-width: 100vw;
}
body, #adminblock_content {
  font-family: var(--font-family-sans-serif);
  font-size: .95rem !important;
  line-height: 1.6;
  color: var(--text-dark);
  background-color: var(--light);
}
body.Pip {
  background: transparent;
}
body:not(.body_admin):not(.Pip), #__adminblock_content {
  padding: 3.8rem 0 1rem 0;
}
body .langname_in_langs span {
  display: none !important;
}
body:not(.langsmenu_inlangs) .langname_in_langs span.langname_usrlang,
body.langsmenu_inlangs .langname_in_langs span.langname_inlang {
  display: block !important;
}
body#cssed-home {
  padding-top: 2.8rem;
}
#full_page {
  min-height: calc(var(--owvh, 1vh) * 100);
  position: relative;
  background-color: _var(--light);
}
a {
  text-decoration: underline;
  cursor: pointer !important;
  color: var(--dark);
}
.hidden {
  display: none;
}
main {
  padding-bottom: 200px;
}
i:not(.bi) {
  opacity: 0.6;
  font-size: 85%;
}
h1 {
  margin-bottom: 0.5rem;
  line-height: 1;
  font-size: 1.9rem;
}
h2, .h2 {
  font-size: 1.2rem;
  line-height: 1.5;
}
.h4, h4 {
  font-size: calc(1.1rem + 0rem);
}
.tab-pane > .h4, .tab-pane > h4 {
  margin-bottom: 1rem;
}
body:not(.body_admin):not(.Pip) #header {
  position: absolute;
  width: 100%;
  top: -4rem;
  height: 2.4rem;
}
#footer {
  bottom: unset;
  width: 100%;
  min-height: 3.5rem;
  position: relative;
  background-image: linear-gradient(to bottom, transparent 0%, #e5e5e5 35%, #ddd 100%);
  top: 100%;
}
#footer footer {
  background: #f7f7f899;
  box-shadow: -0.6rem 0px 200px 0.6rem #9998aa, 0px 3px 8px -2px #393847;
  margin: 2.2rem 0 1rem 0;
  padding: .8rem 0 0;
  min-height: 2rem;
  position: relative;
  width: 100%;
}
#footer p {
  margin-bottom: .4rem;
}
#ow {
  position: absolute;
  top: 0;
}
.on_input .fixed-top {
  z-index: 0;
  position: relative;
}
.container {
  transition: width 0.4s ease-in;
}
.btn {
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, outline-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.nav-link {
  color: unset;
}
#header_logo {
  width: 60px;
  margin-right: 0 !important;
  display: flex;
  align-items: flex-start;
  position: relative;
  float: left;
}
#header_logo > a#logo {
  position: relative;
  width: 55px;
  display: block;
  float: left;
  height: 55px;
  margin: 0px 5px 0 0px;
}
#header_logo > a#logo > svg {
  width: 55px;
  margin: .5rem 0px 0 0px;
  float: left;
  position: absolute;
}
.disabled-link {
  pointer-events: none;
  /*
  Empêche les clics de souris
  */
  cursor: default;
  /*
  Change le curseur en flèche standard
  */
  text-decoration: none;
  /*
  Supprime le soulignement
  */
}
#header_logo h1 {
  float: left;
  margin-top: -6px;
  font-size: 1.1rem;
  color: var(--secondary);
  padding-top: 0;
  white-space: normal;
  max-width: 8rem;
  line-height: 0.865;
  display: flex;
  align-items: flex-end;
  height: 40px;
  padding-right: 34px;
  transition: margin-top 250ms ease-in;
  margin-bottom: 0;
  display: none;
}
#header_logo h1 span {
  display: block;
  margin-bottom: 1px;
}
#header_logo + .navbar-toggler {
  right: 12px;
  position: absolute;
  height: 38px;
  width: 38px;
  padding-right: 0px;
  padding-left: 4px;
  top: 3px;
  background: var(--bs-white);
  border-radius: 0.6rem;
  border: 1px solid var(--bs-gray-400);
  color: var(--bs-secondary);
}
#header_logo + .navbar-toggler i {
  font-size: 1.75rem;
}
#header_logo + .navbar-toggler:focus {
  box-shadow: none;
}
#section {
  min-height: calc((var(--owvh, 1vh) * 100) - 100px);
}
svg .fg {
  fill: var(--secondary) !important;
}
.navbar > .container {
  padding: 0;
}
.hidden {
  display: none !important;
}
.line-through {
  text-decoration: line-through;
}
.mode_email #usr_login,
.mode_pseudo #cntc_email {
  display: none !important;
}
#cntc_email_labelverif,
#cntc_email_ex + label, 
#usr_login + label {
  position: relative;
  margin: 0rem 0 0.6rem 18px;
}
#user_login.email_step #pwdtry, #user_login:not(.email_step) #cntc_email, #user_login:not(.email_step) #usr_login {
  display: none;
}
#user_login.email_step #cntc_email, #user_login.usr_login #cntc_email, #user_login:not(.email_step) #pwdtry {
  display: block;
}
#app_services_ctn {
  position: fixed;
  z-index: 200;
  top: 0;
  background: #333d;
  height: calc(var(--owvh, 1vh) * 100);
}
#app_services {
  background: rgba(248,249,250, 0.75);
  border: 2px solid var(--bs-white);
  border-radius: 0.6rem;
  margin: 2.1rem -22px 0px -22px;
  padding: 1rem 1.4rem 2rem;
  box-shadow: 0px 7px 0.6rem 3px var(--bs-gray-900);
  width: calc(100% + 44px);
  position: relative;
  overflow-y: auto;
  height: calc((var(--owvh, 1vh) * 100) - (var(--owvh, 1vh) * 15) - 7rem);
  max-height: calc((var(--owvh, 1vh) * 100) - (var(--owvh, 1vh) * 15) - 7rem);
  transition: height 0.4s 0s ease-in, margin-top 0.4s 0s ease-in, margin-bottom 0.4s 0s ease-in;
}
#app_services .close_ctn {
  position: absolute;
  right: .8rem;
  margin-top: 0;
}
#app_services .btn-close.close {
  top: _85px;
  position: fixed;
  transition: top 0.4s 0.8s ease-in;
  background-color: var(--bs-white);
  padding: 6px;
  border-radius: 50%;
  z-index: 2;
  outline: 2px var(--bs-white) solid;
  border: 1.5px #333 solid;
  margin-left: -24px;
  margin-top: -.8rem;
}
#app_services.d-none .btn-close.close {
  top: -40px;
  transition: top 0.4s 0s ease-in;
}
#ow_app_ctn {
  margin-top: 0px;
  transition: max-height 0.4s 0s ease-in, margin-top 0.4s 0s ease-in;
  min-height: calc(var(--owvh, 1vh) * 100);
}
#ow_app_ctn.d-none {
  display: block !important;
  max-height: 0px !important;
  margin-top: 40px;
  transition: max-height 0.4s 0.4s ease-in, margin-top 0.4s 0.4s ease-in;
}
#app_services.d-none {
  display: _block !important;
  max-height: 0px !important;
  margin-top: _-80px;
  margin-bottom: 32px;
  transition: max-height 0.4s 0.4s ease-in, margin-top 0.4s 0.4s ease-in, margin-bottom 0.4s 0.4s ease-in;
}
body.Accueil-Ad h1 {
  margin-top: 1rem;
  margin-bottom: 1.25rem;
  font-size: 0.8rem;
  font-weight: normal;
  color: var(--gray-dark);
  text-shadow: none;
}
#header .navbar > .container {
  display: block;
  position: relative;
}
#logo_qrc img {
  max-width: 200px;
  margin: 1.4rem 0 0.8rem;
  box-shadow: 0px 1px 3px 1px var(--gray);
  border-radius: 20px;
}
p.alert-success,
div.alert-success {
  padding: 5px 0.6rem;
  text-align: center;
}
body.Accueil-Contact h3 {
  display: none;
}
body.Accueil-Contact input,
body.Accueil-Contact textarea {
  margin-bottom: 0.5rem;
}
.form-control::placeholder {
  color: rgba(0,0,0,0.40);
}
small {
  display: block;
  word-wrap: normal;
  font-size: 70%;
}
h1 small, h1 .small, .h1 small, .h1 .small {
  font-size: 60%;
  margin-top: 1rem;
}
h1 small {
  text-shadow: none;
  color: var(--primary);
}
textarea {
  min-height: 90px;
}
.navbar.fixed-top {
  background-color: var(--light);
  padding: 0;
  border-bottom: 2px var(--white) solid;
  height: 44px;
  max-width: 100vw;
}
.navbar.navbar-expand-lg.fixed-top > div.container {
  position: relative;
}
.image_myface::before {
  content: "";
  display: block;
  margin-left: calc(100% - 170px);
  width: 140px;
  height: 115px;
  background-image: url(/ow_images/my_face.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  margin: 0.5rem 0 0.5rem;
}
.Accueil-Contact #section form {
  margin-top: 2rem;
}
.autocompletefield_box {
  position: relative;
}
.autocomplete_list {
  position: absolute;
  left: 0px;
  border: solid 1px var(--bs-gray-400);
  background: #fff;
  width: calc(100% - 0px);
  display: none;
  z-index: 2;
  margin: 2px 0 30px 0;
  top: 36px;
  padding: 0.6rem 24px 38px 35px;
  max-height: calc(var(--owvh, 1vh) * 60);
  overflow-y: auto;
  box-shadow: 2px 0px 20px 2px gray;
}
.autocomplete_list li {
  padding-left: 1rem;
  min-height: 30px;
}
.autocomplete_field:hover + .autocomplete_list, 
.autocomplete_field:focus + .autocomplete_list, 
.autocomplete_list:hover {
  display: block;
}
.autocomplete_list a {
  color: #333;
  width: 100%;
  display: block;
  font-size: 18px;
  padding: 0 55px 0 0;
  margin: 0.6rem 0;
}
.autocomplete_list a span {
  float: left;
  padding: 0 0 0 0.6rem;
}
.autocomplete_list a.active {
  color: #93c123;
  font-weight: bold;
}
#captcha_answer {
  text-align: center;
}
#captcha_contact_infos {
  text-align: left;
  background: var(--white);
  padding: 20px 0 20px;
  margin: 2rem 0 2.4rem 0;
  border-radius: 20px;
  box-shadow: 0px 1px 3px 1px var(--gray);
}
#captcha_contact_infos img {
  width: 80px;
  max-width: calc(100% + 0px);
  margin: -5px 0px 0 -70px;
  position: absolute;
}
#captcha_contact_infos p {
  padding: 0 20px 0 0;
}
#contact_direct_ctn {
  text-align: center;
  width: calc(100% - 30px);
  margin: 0 auto;
}
#contact_direct_ctn span {
  white-space: nowrap;
}
#contact_direct_ctn a {
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center 5px;
  background-size: 60px 60px;
  padding: 70px 0 0.6rem;
  text-align: center;
  width: 90px;
  border-radius: 5px;
  transition: background-color 0.4s ease-in, color 0.6s ease-in;
  margin-top: 0.6rem;
}
#contact_direct_ctn a:hover {
  background-color: var(--gray);
  color: var(--white);
}
#contact_skype {
  background-image: url("/ow_images/icons_phone/Skype.png");
  background-position: center 8px !important;
  background-size: 54px 54px !important;
}
#contact_whatsapp {
  background-image: url("/ow_images/icons_phone/Whatsapp.png");
  margin-left: 2px;
}
#contact_messenger {
  background-image: url("/ow_images/icons_phone/Messenger.png");
  background-size: 53px 53px !important;
  background-position: center 7px !important;
}
/*
#ow_recentcustomers_ctn {
    width: calc(100% + 8px);
    height: 220px;
    overflow: hidden;
    overflow-x: auto;
    margin: -200px 0 30px -8px;
}
#ow_recentcustomers_ctn::before {
    content: "";
    position: fixed;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    margin: calc((var(--owvh, 1vh) * 100) - 34px) 0 0 0;
    background-image: url(/ow_images/owapps_logo_2021_light_03.png);
	background-color: #f1f1f4;
	background-size: 68px;
	background-repeat: no-repeat;
	background-position: 15px 4px;
	box-shadow: -1px 0px 20px 2px #86888A;
	transition: background-color 0.6s linear, background-position-y 0.6s linear, box-shadow 0.6s linear;	
}
*/
div#adminblock_content #ow_recentcustomers_ctn::before {
  display: none;
}
body.footer_near #ow_recentcustomers_ctn::before {
  background-color: #f3f3f700;
  background-position-y: 0;
  box-shadow: 0px 0px 0px 0px transparent;
}
body.footer_in #ow_recentcustomers_ctn::before {
  top: unset;
  position: absolute;
  margin: -72px 0 0 0;
}
#ow_recentcustomers_ctn img {
  height: 20.6rem;
}
#header_navbar_ctn {
  position: relative;
  width: 100%;
  z-index: 100;
}
#header_navbar {
  position: absolute;
  width: calc(100% - 0px);
  margin-top: 0;
  background: linear-gradient(to right, rgba(0,0,0,0), var(--bs-gray-400) 80%, var(--bs-gray-400));
  height: 3px;
  display: block;
  top: 2.65rem;
  border-bottom: #fff 2px solid;
  z-index: 20;
}
#header_navbar.collapse:not(.show), #header_navbar.collapsing {
  display: block;
}
#header ul.navbar-nav {
  width: auto;
  height: auto;
  flex-direction: row;
  justify-content: end;
  margin-top: -39px;
  position: absolute;
  right: 0px;
  top: 0;
  transition: height 250ms ease-out, margin 250ms ease-out;
}
#header ul.navbar-nav li {
  list-style-type: none;
}
#header ul.navbar-nav > li {
  display: block;
  min-width: 48px;
  height: auto;
  height: 40px;
  text-align: center;
  padding: 7px 0 0;
  border-radius: 0.6rem 0.6rem 0 0;
  white-space: nowrap;
  width: auto;
  margin: 0 0 0 2px;
  border: 1px solid var(--bs-gray-400);
  background: var(--white);
  overflow: _hidden;
}
#header ul.navbar-nav li.active {
  border-bottom-color: var(--white);
  overflow: visible;
}
#header ul.navbar-nav li#app_mode_ctn {
  padding: 0 5px;
  width: auto;
}
#header ul.navbar-nav > li * {
  white-space: normal;
}
#header ul.navbar-nav > li:hover {
  color: var(--primary);
}
#header .navbar-nav > li > a > i {
  height: 46.5px;
}
#lg_btn {
  margin: -2px 7px 0;
  z-index: 100002;
  position: absolute;
}
.nav-item.dropdown.show {
  height: 40px;
  background: var(--white);
  border-bottom-color: var(--white);
}
#header_navbar #langs_menu_header > .dropdown-menu {
  box-shadow: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  background: none;
  z-index: 100001;
  position: absolute;
}
#langs_menu_ctn {
  width: 360px;
  max-width: calc(100vw - 15px);
  margin: 0 -2px 0 -304px;
  border-radius: 0 0 4px 4px;
  position: absolute;
  box-shadow: 0px 0px 0.6rem 2px #0003;
  border: #bbb 1px solid;
  border-radius: 0.25rem 0.25rem 0.25rem 0.25rem;
  padding: .5rem 0.5rem 1rem;
  background: #fff;
}
#langs_menu_ctn ul.all {
  display: _none;
}
#langs_menu_ctn ul {
  padding: 0 0.6rem 2px 0.6rem;
  height: auto;
  max-height: calc((var(--owvh, 1vh) * 100) - 65px);
  overflow: auto;
  position: relative;
}
#langs_menu_ctn > ul {
  display: _none;
}
#langs_menu_ctn ul.all:not(.ow_translations) {
  padding-top: 80px;
}
#langs_menu_ctn ul li {
  text-align: left;
  background: var(--bs-gray-100);
  padding: 3px 0.6rem 4px 0.6rem;
  margin: 2px 3px 2px 0px;
  border-radius: 5px;
  min-height: 40px !important;
  height: auto;
  position: relative;
  float: left;
  border: 1px transparent solid;
}
div:not(#langs_menu) #langs_menu_ctn > ul li {
  display: _none;
}
#langs_menu_ctn > ul li.on {
  display: block;
}
#langs_menu_ctn ul li.currencies {
  position: unset;
}
#langs_menu_ctn ul li > .flag + span + div {
  text-align: right;
  width: calc(100% + 0.6rem);
  float: none;
  white-space: normal;
  margin: 38px 0px 5px 0px;
  clear: both;
}
#langs_menu_ctn ul li div a.dropdown-item.flag {
  margin-right: 13px;
}
#langs_menu_ctn ul li div a.dropdown-item.flag:hover {
  margin-right: 14px;
}
#langs_menu_ctn ul li .bi.bi-plus-square,
li.all .bi.bi-plus-square-fill {
  display: none;
}
#langs_menu_ctn ul li.all .bi.bi-plus-square {
  display: block;
}
#langs_menu_ctn ul li > .flag:first-child + span > button {
  position: absolute;
  right: 16px;
  font-size: 1.2rem;
  padding: 0;
  margin: -2px 0 0;
  border: none;
  background-repeat: no-repeat;
  color: var(--text-dark);
}
#translangs_menus .btn {
  background: var(--white);
}
#langs_menu_ctn ul li.unused,
#langs_menu_ctn ul li > .flag + span + div {
  display: none;
}
#langs_menu_ctn ul.all li.unused {
  display: block;
}
#langs_menu_ctn ul li.all > .flag + span + div {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
}
#langs_menu_ctn ul li:not(.currency):hover,
#langs_menu_ctn ul li.selected {
  background: var(--white);
  border: 1px solid var(--bs-secondary);
  border-radius: 5px;
}
#langs_menu_ctn ul li.lg_btns {
  float: _none;
  margin: 2px 0 2px 2px;
  width: auto;
  text-align: center;
  padding: 3px 0px 4px 0px;
  order: 1 !important;
}
/*
#langs_menu_ctn ul li.lg_btns {
  display: flex;
  flex-wrap: wrap;
  background: var(--white);
  width: 298px;
  max-width: calc(100% - 30px);
  border-radius: 0;
  border: none;
  padding: 7px 5px 8px 0.6rem;
  z-index: 12;
  top: 52px;
  height: fit-content;
  margin: -0.6rem 0 0 -20px;
  text-align: left;
  align-items: start;
  justify-content: flex-start;
  position: fixed;
}
*/
#langs_menu_ctn ul li.currency {
  margin-top: 15px;
  padding-top: 8px;
}
#langs_menu_ctn ul li.currency a {
  text-align: center;
  margin: 0 5px 0 0;
}
#langs_menu_ctn ul li a:hover,
#langs_menu_ctn ul li a.selected {
  outline-color: var(--text-dark);
  outline-width: 3px;
  box-sizing: content-box;
}
#langs_menu_ctn ul li.disabled {
  display: none;
}
#langs_menu_ctn ul li.lang_to {
  opacity: 0.2;
}
#langs_menu_ctn ul li.selected,
#langs_menu_ctn ul li.disabled.selected {
  display: block;
}
ul.all li span.lg_all_span.all,
ul li span.lg_all_span.verified {
  display: none;
}
ul.all li span.lg_all_span.verified {
  display: block;
}
#langs_menu_ctn > ul a.ow_translations {
  display: none;
  margin-bottom: 5px;
}
#langs_menu_ctn > ul a.ow_translations i.bi.bi-check {
  display: none;
}
#langs_menu_ctn > ul.all a.ow_translations {
  display: block;
}
#langs_menu_ctn > ul.all.ow_translations a.ow_translations i.bi.bi-check {
  display: block;
  float: left;
}
#langs_menu_ctn > ul.all.ow_translations a.lg_chooser {
  display: none;
}
/*
ow_langs_list|langs_menu_ctn|langs_menu_header
*/
#langs_menu_ctn ul li.currency a:hover, 
#langs_menu_ctn ul li.currency a.selected {
  width: 83px;
  height: 40px;
  margin-top: -2px;
  margin-right: 2px;
}
#langs_menu_ctn ul li  a.dropdown-item.flag[disabled] {
  opacity: 50%;
}
#langs_menu_ctn ul li.selected > a.dropdown-item.flag[disabled]:first-child {
  opacity: 100%;
}
#header .glyphicon {
  font-size: 26px;
  margin-top: -0.6rem;
  color: var(--gray);
  text-decoration: none;
}
li.currency a {
  width: 30%;
  padding: 0;
  display: inline-block;
  border: 1px solid white;
  box-shadow: 0 1px 4px 0px #999;
}
li.currency a img {
  width: 77px;
}
#ok_slider_home_ctn {
  position: relative;
  z-index: 0;
}
.share_btns {
  overflow-x: auto;
  padding-bottom: .5rem;
}
#app_pages_ctn .posts_ctn {
  margin: -35px -25px 50px;
}
#app_pages_ctn .posts_ctn #contentTabsContent {
  border: none !important;
  padding: 1rem 1.25rem !important;
}
#app_pages_ctn .posts_ctn > p {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
#app_pages_ctn .posts_ctn #contentTabs > li:nth-child(1) button {
  margin-left: 0;
  padding-left: 1.25rem;
}
#app_pages_ctn .posts_ctn #contentTabs > li:nth-last-child(1) button {
  margin-right: 0;
  padding-right: 1.35rem;
}
ul#ow_skills {
  margin: 0;
  padding: 0 0 0 15px;
}
ul#ow_skills li {
  margin: 6px 0;
  padding: 0;
}
.ow_skillsform {
  margin: 0.6rem 0;
}
.ow_skillsform span {
  display: inline-block;
  margin: 0.3rem 1rem 0.3rem 0;
}
.ow_skillsform span label {
  margin: 0 0 0 5px;
}
#ow_skills li a strong {
  color: var(--dark);
}
input[type="radio"], input[type="checkbox"] {
  margin: 0 0.5rem 0 0;
  transform: scale(1.3);
  transform-origin: bottom left;
}
.user_referral_link_ctn {
  display: inline-block;
  border: 1px solid #ccc;
  padding: 0.1rem .5rem 0.2rem 1rem;
  border-radius: .2rem;
  margin-bottom: -.8rem;
}
.user_referral_link_ctn a i.bi {
  margin: -.1rem .5rem -.2rem -.5rem;
}
#user_referral_link {
  white-space: nowrap;
}
#ow_message_ctn {
  position: fixed;
  min-width: 100vw;
  height: calc(var(--owvh, 1vh) * 100);
  background: #6669;
  top: 0;
  left: 0;
  z-index: 1000000;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: calc(var(--owvh, 1vh) * 15);
}
#ow_message_box {
  width: 600px;
  background: #fff;
  margin: 0 auto;
  padding: 2rem 1.5rem 2.5rem;
  box-shadow: 0px 0px .4rem 2px #333;
  max-width: calc(100vw - 4rem);
  position: relative;
}
#ow_message_close_btn {
  right: 1rem;
  position: absolute;
  top: 0.8rem;
}
#ow_message {
  font-size: 125%;
}
.alert-warning #ow_message, 
.alert-success #ow_message, 
.alert-danger #ow_message, 
.alert-info #ow_message, 
.alert-secondary #ow_message, 
.alert-primary #ow_message, 

.alert-warning #ow_message a , 
.alert-success #ow_message a , 
.alert-danger #ow_message a , 
.alert-info #ow_message a , 
.alert-secondary #ow_message a , 
.alert-primary #ow_message a {
  color: _var(--light);
}
label.btn + input + button.btn {
  margin-left: 0.2rem;
}
i.bi {
  font-size: 18px;
  margin: -3px 0;
  display: block;
  float: inline-start;
}
.bi.bi-translate {
  font-size: 1.75rem;
}
.bi.bi-chevron-bar-expand {
  font-size: 1.6rem;
  margin-top: -0.05rem;
}
i.bi.bi-mic, i.bi.bi-mic-fill {
  font-size: 1.7rem;
  margin: -0.6rem 0 0 -.2rem;
}
.bi.bi-plus.close {
  transform: rotate(45deg) scale(1.6) translate(2px,-5px);
  height: 20px;
}
label:not(.btn) {
  margin: 0.5rem 0;
}
.price_title.h2 {
  font-size: 18px;
}
.price_title.h2::first-letter {
  font-size: 14px;
  transform: scale(0.5);
}
#captcha_contact_if {
  margin: 2rem 0 2.4rem;
}
.log_in_links {
  width: 100%;
  padding: 9px 0.6rem;
}
body.C-Accueil-Accueil .log_in_links {
  padding: 20px 0.6rem;
}
.log_in_links > a {
  display: inline-block;
  margin: 0 5px;
}
#register_form h4 {
  margin-top: 1rem;
}
#usr_ok_legalrules + label {
  display: inline;
}
#captcha_contact_infos + p {
  margin-top: 40px;
}
#owio_tabsContent > div {
  padding: 15px 15px 30px;
  margin-bottom: 30px;
  border: 1px solid #dee2e6;
  background: #fff;
}
input {
  max-width: 100%;
}
.upload-container {
  position: relative;
}
.upload-container input {
  border: 1px solid #92b0b3;
  background: #f1f1f1;
  outline: 2px dashed #92b0b3;
  outline-offset: -0.6rem;
  padding: 100px 0px 100px 250px;
  text-align: center !important;
  width: 500px;
}
.upload-container input:hover {
  background: #ddd;
}
.upload-container:before {
  position: absolute;
  bottom: 50px;
  left: 245px;
  content: " (or) Drag and Drop files here. ";
  color: #3f8188;
  font-weight: 900;
}
.upload-btn {
  margin-left: 300px;
  padding: 7px 20px;
}
#uploadFilesProgressBar_ctn {
  position: absolute;
  top: 90px;
  left: 0px;
  height: 40px;
  width: calc(100% - 30px);
  margin: 0 15px;
  padding: 0;
  background: #fff;
  border: #2781e9 1px solid;
}
#uploadFilesProgressBar {
  height: 38px;
  width: 0%;
  background: #2781e9;
  margin: 0;
  padding: 2px 0.6rem;
  background: #2781e9;
}
#uploadFilesProgressBar_infos {
  position: absolute;
  top: 2px;
  height: 24px;
  width: 100%;
  margin: 0;
  z-index: 1;
  text-align: center;
}
#uploadFilesProgressBar_infos > div {
  display: inline-block;
  background: #2781e9;
  border: #fff 1px solid;
  border-radius: 5px;
  width: auto;
  color: #fff;
  margin: 2px auto;
  padding: 2px 0.6rem;
}
#uploadFilesProgressBar_span, #uploadFilesProgressBar_label {
  color: #fff;
}
#usr_btn {
  padding: 0 0.5rem 0 0.5rem;
  margin-top: -0.6rem;
}
#usr_btn i.logged {
  color: var(--primary) !important;
}
#usr_btn::after {
  display: none;
}
#usr_btn:hover i {
  opacity: 1;
}
#user_account i.bi {
  font-size: 265%;
  color: var(--secondary);
  z-index: 12;
  position: relative;
  top: -8px;
  margin-right: -6px;
  margin-left: -2px;
}
.bi.bi-person-fill.login {
  opacity: .5;
}
.a_fullscreen > i.bi {
  font-size: 1.5rem;
  display: block;
  margin: 0 0 0 .37rem;
}
/*
#user_login > .email_step,
*/
#user_login.email_step .pwd_step {
  display: none;
}
#user_login.email_step .email_step {
  display: inline-block;
}
.login_actions input {
  text-align: center;
  width: 100%;
  margin-top: 0.6rem;
}
#user_login .email_step > span.pwd_step {
  right: 20px;
  position: absolute;
  top: 20px;
}
.login_actions input {
  text-align: center;
  width: 100%;
  margin-top: 0.6rem;
}
#user_login > input {
  width: auto;
  max-width: unset;
  min-width: unset;
}
#user_account > button {
  font-size: 150%;
  margin-left: 0.6rem;
  padding: 0 7px;
  z-index: 11;
  position: absolute;
  right: 0;
  background: var(--bs-white);
  height: 41px;
}
#user_account #user_logged,
body.user_logged #user_account #user_login,
#user_account i.logged, 
body.user_logged #user_account i.login {
  display: none;
}
body.user_logged #user_account #user_logged,
body.user_logged #user_account i.logged {
  display: unset;
}
#user_infos {
  z-index: 10;
  position: absolute;
  left: -258px;
  background: #fff;
  padding: 20px;
  text-align: left;
  box-shadow: 0px 0px 0.6rem 2px #0004;
  width: 360px;
  max-width: calc(100vw - 15px);
  top: 36px;
}
#ow_langs_search_ctn {
  margin: 0 auto;
  width: 340px;
  height: 100%;
  min-height: _0.6rem;
  max-width: calc(100% - 0.6rem);
}
#header_navbar .dropdown-menu {
  box-shadow: 0px 0px 0.6rem 2px #0003;
  border: #bbb 1px solid;
  border-radius: 0.25rem 0.25rem 0.25rem 0.25rem;
  z-index: 1;
}
#header_navbar .navbar-nav #mode_selector_dropdown.dropdown-menu {
  position: absolute;
  margin: -0.15rem -6rem;
  min-width: 15rem;
}
ul#cssed_header_nav.navbar-nav {
  position: relative;
  right: unset;
  justify-content: center;
  margin-left: -80px;
}
ul#cssed_header_nav.navbar-nav > li {
  border: none !important;
  background: none !important;
}
#mode_selector_dropdown.dropdown-menu ul {
  margin: 0;
  padding: 0.5rem 0;
}
#user_account.opened > button.btn {
  border-radius: 0.25rem 0.25rem 0 0;
  border-bottom: none;
}
#user_account.opened #user_infos {
  display: block;
}
.price.resubscribe {
  text-decoration: line-through;
}
.ko_decimal {
  display: none;
}
.error_display.alert-warning {
  padding: 5px 0.6rem;
  border-radius: 0.6rem;
  text-align: center;
}
.details_orgn_form .addresses_orgn_form, .details_orgn_form .phones_orgn_form {
  display: none;
}
.details_orgn_form.addresses_orgn_form .addresses_orgn_form,
.details_orgn_form.phones_orgn_form .phones_orgn_form {
  display: block;
}
.btn-delete,
.btn-add {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: .25em .25em;
  color: #000;
  background: none;
  border: 0;
  border-radius: .25rem;
  opacity: 1;
  position: absolute;
  right: 12px;
  top: 15px;
}
.btn-delete:hover, 
.btn-add:hover {
  color: #000;
  text-decoration: none;
  opacity: .75;
}
#detailsTab {
  justify-content: center;
  z-index: 1;
  position: relative;
  float: left;
  border-bottom: 0px transparent solid;
}
#detailsTabContent > div {
  background: var(--bs-white);
  padding: 20px 15px;
  border: var(--bs-gray-300) 1px solid;
  border-radius: 0 0 0.6rem 0.6rem;
  position: relative;
}
#detailsTab_h4 {
  margin: 0;
  padding: 0 20px 0 0;
  line-height: 2.1rem;
  display: block;
  display: none !important;
  float: left;
}
#detailsTabContent {
  clear: both;
}
#emails_ctn {
  position: relative;
}
.nav-tabs .nav-link:not(.active) {
  text-decoration: underline;
}
#lg_btn.dropdown-toggle::after {
  display: none;
}
/*
.tab-content > .active {
  border-top: 1px solid #ddd;
  padding-top: 0.6rem;
}
*/
.nav-tabs .nav-link {
  /*
  margin-bottom: -2px;
  */
  background: var(--bs-white);
  border: 1px solid #f1f0f3;
  border-radius: .25rem;
}
.nav-tabs .nav-link.active {
  margin-bottom: -1px;
  border-radius: .25rem .25rem 0 0;
}
#nav-tab-args > .nav-link.active {
  background: var(--bs-white);
}
#nav-tab-argsContent > div {
  border: 1px solid #dee2e6;
  border-top: none;
  border-radius: 0 0 0.6rem 0.6rem;
  padding: 25px 15px;
  background: var(--bs-white);
}
.btn-default:hover {
  box-shadow: 1px 2px 6px 1px #0004;
}
#header_navbar > ul > li a.nav-link.show::after {
  content: " ";
  position: absolute;
  height: 0.6rem;
  border: none;
  width: calc(100% + .8rem);
  left: -.675rem;
  top: 1.6rem;
  display: block;
  z-index: 11;
  background: var(--white);
  margin: 0 0 0 0.25rem;
}
#header_navbar a#usr_btn.nav-link.show::after {
  width: calc(100% - 0.5px);
  left: -3.5px;
  height: 15px;
}
.ow_sizer_ctn {
  max-width: 100%;
  overflow-y: hidden;
  overflow-x: auto;
}
.ow_sizer_list {
  float: left;
}
.ow_sizer_go {
  display: none;
}
.ow_sizer_list.go_left .ow_sizer_go.left,
.ow_sizer_list.go_right .ow_sizer_go.right {
  display: block;
}
#ow_langsform {
  margin-bottom: .5rem;
}
#ow_langsform select {
  width: auto;
  display: inline-block;
  white-space: nowrap;
}
.user_lang.form_ctn {
  margin-bottom: .5rem;
}
.user_lang.form_ctn > div, .user_lang.form_ctn > div > span {
  display: inline-block;
}
.user_lang.form_ctn > div > span.flag_code {
  display: none;
}
.user_lang.form_ctn > div.user_lang.flag .flag img {
  width: 50px;
  height: 30px;
  border: 2px solid var(--light);
  border-radius: .3rem;
  outline: 1px solid var(--bs-gray-400);
  margin-right: .5rem;
}
.user_lang.form_ctn .btn-delete {
  display: block;
  float: right;
  position: relative;
  margin: -.85rem 1rem 0;
}
label > input[type="checkbox"] + span {
  margin: -.15rem 0 0 .3rem;
  display: block;
  float: right;
}
#register_form .btn-outline-success {
  color: var(--gray-dark);
}
#register_form h2 small {
  display: none;
}
h4.user_identity {
  display: none;
}
.form_field_row span.ow_field_display {
  margin-top: .5rem;
  display: inline-block;
}
.user_not_logged, 
body:not(.user_logged) .user_logged {
  display: none !important;
}
body.user_logged .user_logged,
body:not(.user_logged) .user_not_logged {
  display: block !important;
}
#tryemail {
  margin-top: .2rem;
}
#payment_calc_and_go_ifr {
  position: absolute;
  width: 50px;
  height: 20px;
  opacity: 0;
}
#payment_calc_and_go_ifr.on {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: calc(var(--owvh, 1vh) * 100);
  margin: 0;
  padding: 0;
  z-index: 1000;
  opacity: 1;
}
#nav-tabContent > .tab-pane {
  background: white;
  padding: 1.5rem 1rem;
  border: 1px solid #eee;
  border-top: none;
}
body.ow_tos #app_services .display_page:not(#app_terms_ctn) {
  display: none;
}
#share_btns {
  display: block;
  height: 4rem;
  max-width: 100%;
  overflow: hidden;
  overflow-x: hidden;
  overflow-x: auto;
}
.social-share-container {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  margin-top: 15px;
}
.social-btn {
  display: inline-flex;
  align-items: center;
  padding: 8px 16px;
  color: #fff;
  text-decoration: none;
  border-radius: 5px;
  font-size: 14px;
  font-family: sans-serif;
  transition: opacity 0.2s ease;
}
.social-btn:hover {
  opacity: 0.8;
}
.social-btn .icon {
  margin-right: 8px;
  font-size: 1.2em;
}
.product_btn_ctn {
  position: relative;
}
.product_btn_ctn .currency_changer {
  position: absolute;
  bottom: -1rem;
  right: 1.5rem;
}
#terms_acceptation + label {
  display: inline;
}
#cntc_email_0_code {
  display: none;
}
#owwh_grp_ctn {
  width: 100vw;
  height: calc(var(--owvh, 1vh) * 100);
  max-width: 100vw;
  max-height: calc(var(--owvh, 1vh) * 100);
  position: fixed;
  top: 0;
  left: 0;
  margin: 0;
  z-index: 10000;
  padding: 10px;
  background: #fffc;
  overflow-y: auto;
  text-align: center;
}
#owwh_grp {
  min-width: 300px;
  width: 800px;
  height: fit-content;
  margin: 0;
  padding: 0;
  background: #fff;
  box-shadow: #4444 0px 2px 10px 1px;
  min-height: calc(100% - 20px);
  max-width: 100%;
}
/*
Pour les écrans plus petits, on cache le texte et garde juste l'icône si besoin
*/
@media (max-width: 600px) {
  .social-btn .name {
    display: none;
  }
  .social-btn .icon {
    margin-right: 0;
  }
}
@media (orientation: landscape) {
}
@media (orientation: portrait) {
}
@media (max-width:379px) {
  #user_infos {
    left: calc(-100vw + 7.3rem);
  }
  #langs_menu_ctn {
    margin-left: calc(-100vw + 4.2rem);
    margin-top: ___-40px;
  }
}
@media (max-width:479px) {
  #contact_direct_ctn > span:first-child {
    width: 100%;
    display: block;
    text-align: left;
    padding-left: calc((100% * 4 / 12) + 0.6rem);
  }
}
@media (max-width:767px) {
  .owio_image_infos {
    font-size: 70%;
  }
  .owio_image_infos .h5 {
    font-size: 1rem;
  }
  .nav-item.selected {
    order: 100;
  }
  /*
  body.scrolled #header ul.navbar-nav {
  	overflow:hidden;
  	height:0px;
  }
  */
  .nav-item #lg_btn.show {
    margin: ___0px 0 0 15px;
  }
  #header_logo.menu-mode > h1 {
    margin-top: -80px;
  }
  #header_navbar.collapsing > ul.navbar-nav {
    overflow: hidden !important;
  }
  #header_navbar.collapse:not(.show), 
	#header_navbar.collapse.show, 
	#header_navbar.collapsing {
    height: 3px !important;
    max-height: 3px !important;
    min-height: 3px !important;
  }
  #header_navbar.collapsing {
    overflow: visible;
    transition: unset;
  }
  #header_navbar.collapse:not(.show) > ul.navbar-nav {
    margin-top: 0;
    height: 0;
    overflow: hidden !important;
  }
  #header .navbar > .container {
    height: 2.85rem;
  }
  #app_services {
    height: calc((var(--owvh, 1vh) * 100) - (var(--owvh, 1vh) * 15) - 3rem);
    max-height: calc((var(--owvh, 1vh) * 100) - (var(--owvh, 1vh) * 15) - 3rem);
  }
  #app_terms_ctn {
    padding-right: 1rem;
  }
}
@media (max-width:991px) {
  #header_navbar {
    margin-top: .6rem;
  }
}
@media (min-width:576px) {
  #header_logo h1 {
    margin-top: .2rem;
    font-size: 1.2rem;
    max-width: calc(100% - 60px);
    display: inline-flex;
  }
  h2, .h2 {
    font-size: 1.5rem;
  }
  #captcha_contact
    _infos img {
    width: 90px;
    margin: -5px 0px 0 -85px;
  }
}
@media (min-width:768px) {
  body, #adminblock_content {
    font-size: 1rem;
  }
  body:not(.home):not(.body_admin):not(.Pip), #__adminblock_content {
    padding-top: 60px;
  }
  h1 {
    font-size: 2rem;
  }
  h2, .h2 {
    font-size: 1.6rem;
  }
  h1 span, 
	h2 span, 
	small span {
    display: inline;
  }
  #header_logo h1 {
    font-size: 1.4rem;
  }
  select.form-select.h1 {
    font-size: 1.4rem;
  }
  .h4, h4 {
    font-size: calc(1.275rem + .3vw);
  }
  .image_myface::before {
    margin-left: calc(100% - 130px);
  }
  #contact_direct_ctn {
    width: calc(100% - 80px);
    margin: 0;
  }
  #captcha_contact_infos img {
    width: 110px;
    max-width: calc(100% + 0px);
    margin: -5px 0px 0 -115px;
  }
  .ko_decimal {
    display: inherit;
  }
  #header ul.navbar-nav > li {
    border-radius: 0.6rem 0.6rem 0 0;
  }
  #langs_menu_ctn {
    margin: 0px -5px 0 -255px;
    border-radius: 4px 0 4px 4px;
  }
  #langs_menu_ctn ul {
    padding: 0 0.6rem 2px 20px;
  }
  #langs_menu_ctn ul.all:not(.ow_translations) {
    padding-bottom: 0.6rem;
    padding-top: 0.6rem;
  }
  #header ul.navbar-nav {
    right: 0;
  }
  /*
  #langs_menu_ctn ul li.lg_btns {
    bottom: -0.6rem;
    top: unset;
    padding: 0.6rem 5px 6px 0.6rem;
    position: sticky;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin: 15px 5px 15px -20px;
    min-width: calc(100% + 20px);
  }
  */
  #detailsTab {
    justify-content: flex-start;
  }
  #ow_message_ctn {
    margin: 0 auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
  .register_login_pa {
    float: right;
    margin-top: -2.18rem;
  }
  #app_services {
    padding: 1rem 4.2rem 2rem;
  }
}
@media (min-width:992px) {
  #header.home {
    top: -1.9rem;
  }
  body:not(.body_admin):not(.Pip) #header {
    top: -4rem;
  }
  #header_logo {
    float: unset;
  }
  #header_logo h1 {
    margin-top: 1rem;
    font-size: 1.6rem;
  }
  select.form-select.h1 {
    font-size: 1.6rem;
  }
  #header_logo > a#logo {
    margin-bottom: 0px;
    margin-top: 0px;
  }
  #header_logo > a#logo > svg {
  }
  #logo_qrc img {
    max-width: 260px;
  }
  h2, .h2 {
    font-size: 1.8rem;
  }
  #user_account > button {
    height: 48px;
  }
  #user_infos {
    top: 36px;
  }
  #captcha_contact_infos img {
    width: 150px;
    margin: -0.6rem 0px 0 -110px;
  }
  #captcha_contact_infos div > div + div p {
    padding-left: 53px;
  }
  #ow_recentcustomers_ctn {
    margin: 0;
    padding: 15px 0 0;
  }
  body.footer_in #ow_recentcustomers_ctn::before {
    margin: -72px 0 0 0;
  }
  body.footer_in #ow_recentcustomers_ctn p {
    margin: -25.5px 0 0 85px;
  }
  div#adminblock_content #ow_recentcustomers_ctn {
    margin: 0px 0 30px 0;
    height: auto;
  }
  div#adminblock_content #ow_recentcustomers_ctn::before,
	div#adminblock_content #ow_recentcustomers_ctn p {
    margin: 0;
  }
  #navbarResponsive {
    margin-top: 42px;
  }
  #lg_btn {
    margin: -2px -1px 0;
  }
  #header_navbar {
    top: -0.8rem;
    top: 0rem;
  }
  /*
  #header_navbar > ul > li > a.nav-link.show::after {
    width: calc(100% + 12px);
    left: -2px;
  }
  */
  #header_navbar > ul > li > a.nav-link.show::after {
    width: calc(100% - 3px);
    left: -3px;
  }
  #langs_menu_ctn {
    margin: 0 0 0 -308px;
    border-radius: 4px;
  }
  /*
  #langs_menu_ctn ul li.lg_btns {
  	bottom: -0.6rem;
  	top:unset;
  	padding: 0.6rem 5px 6px 0.6rem;
  	position:absolute;
  	align-items: center;
  	justify-content: center;
  	text-align: center;
  	margin: 15px 5px 15px -20px;
  	min-width: calc(100% + 0px);
  }	
  #owio_analizer_title h1 {
  	margin: 0.6rem 0 0 calc(var(--owvh, 1vh) * 15);
  }
  */
  #app_services {
    margin-top: 3rem;
  }
}
/*
///////////////////////////////////
// FORMS
*/
.row.form_field_row {
  padding: .4rem 0 .6rem;
  margin-bottom: .1rem;
}
.form_field_row .form-control {
  margin-bottom: .2rem;
}
#cntc_officialphotos_ctn, #cntc_photos_ctn {
  position: relative;
}
.forms_ctn.photos_ctn {
  background: #fff4;
  border-radius: 5px;
  padding: 4px 140px 4px 0;
  display: flex;
  flex-wrap: wrap;
  overflow: visible;
  align-items: flex-start;
  align-items: stretch;
  min-height: 115px;
  max-width: 100%;
  width: auto;
  position: relative;
}
.forms_ctn.photos_ctn > div.photo_ctn {
  margin: 0 .2rem .4rem;
  width: auto;
  flex: 0 0 auto;
  display: flex;
  max-width: calc(100vh - 6rem);
  max-width: calc((var(--owvh, 1vh) * 100) - 6rem);
}
.forms_ctn.photos_ctn > div.photo_ctn.filled:not(.closed) {
  width: _100%;
}
.photo_ctn .dropbox + .display_img_infos {
  display: none;
}
.photo_ctn.filled .dropbox + .display_img_infos {
  display: block;
}
.image_input_label {
  width: 100%;
}
.image_input_label > span {
  position: absolute;
  width: 100%;
  z-index: 1;
  top: 0;
  left: 0;
  padding: .5rem;
  text-decoration: underline;
}
.error_display.alert-warning {
  padding: 5px 10px;
  border-radius: 10px;
  text-align: center;
}
.details_orgn_form .addresses_orgn_form, .details_orgn_form .phones_orgn_form {
  display: none;
}
.details_orgn_form.addresses_orgn_form .addresses_orgn_form,
.details_orgn_form.phones_orgn_form .phones_orgn_form {
  display: block;
}
.forms_ctn > .form_ctn {
  position: relative;
  margin-bottom: 0.25rem;
}
.form_ctn_btns {
  position: absolute;
  right: 0;
}
.forms_ctn > .photo_ctn {
  background: #fff4;
  border-radius: 5px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.btn-delete, .btn-add {
  box-sizing: content-box;
  width: 2.1em;
  height: 2.4em;
  padding: .25em .25em;
  color: #000;
  background: var(--bs-gray-400);
  border: 0;
  border-radius: .25rem;
  opacity: 1;
  float: right;
  margin: 0 0 0 0.12rem;
}
.btn-delete:hover, 
.btn-add:hover {
  color: #000;
  text-decoration: none;
  opacity: .75;
}
.forms_ctn > .form_ctn > .form_ctn_btns > .btn-add,
.forms_ctn > .form_ctn > .form_ctn_btns > .btn-delete {
  display: none;
}
.forms_ctn > .form_ctn:not(.photo_ctn):last-child > .form_ctn_btns > .btn-add,
.forms_ctn > .form_ctn.photo_ctn.filled:last-child > .form_ctn_btns > .btn-add,
.forms_ctn > .form_ctn.filled > .form_ctn_btns > .btn-delete {
  display: block;
}
.forms_ctn > .form_ctn.filled:last-child:first-child > .form_ctn_btns > .btn-delete {
  display: none;
}
.photo_ctn.form_ctn.filled {
  background: var(--bs-gray-200);
  border-radius: .5rem;
}
.photo_ctn.form_ctn.photo_ctn:not(.filled) {
  padding: 3px 3px 0;
  position: sticky;
  right: -127px;
  background: var(--bs-gray-400);
  box-shadow: 1px 1px 3px .5px #0008;
  width: 120px;
  top: 2px;
}
.photo_ctn.form_ctn:not(.filled) > .photo_infos,
.photo_ctn.form_ctn:not(.filled) img,
.photo_ctn.form_ctn.filled .image_input_label,
.photo_ctn.form_ctn.filled .dropbox,
.photo_ctn.form_ctn .form_ctn_btns,
 .dropbox > .image_input_label input[type="file"] {
  display: none;
}
.photo_ctn.form_ctn:not(.filled) > .photo_input {
  width: 100%;
}
.photo_infos .dropdown button {
  font-size: 1.3rem;
  margin: 0rem 0;
  padding: 0 .2rem;
  line-height: 1.35;
}
.photo_ctn.form_ctn img {
  max-width: 100%;
  max-height: 80px;
  width: auto;
}
.photo_ctn.form_ctn:not(.closed) .display_img_infos,
.forms_ctn > .photo_ctn.form_ctn .btn-delete,
.photo_ctn.form_ctn.closed > .photo_infos {
  display: none !important;
}
.photo_ctn.form_ctn .file_label {
  width: calc(100% - 65px);
  float: left;
  margin-right: 5px;
}
.photo_ctn.form_ctn .file_label + .dropdown {
  float: left;
}
.photo_ctn.form_ctn .document_details {
  clear: both;
  max-width: 300px;
}
.document_detail.document_informations > span {
  display: block;
}
.photo_input, .photo_infos, .form_ctn_btns {
  display: inline-block;
  padding: 0 10px;
}
ul.dropdown-menu button.close {
  margin: 0 15px;
  width: calc(100% - 30px);
}
.photo_input {
  position: relative;
  width: 140px;
  text-align: center;
  height: 100%;
}
.photo_input .rcrop_img_menu {
  height: 100%;
  width: 100%;
}
.display_img_infos {
  position: absolute;
  top: -5px;
  right: 7px;
  background: #fff;
  border-radius: 6px;
  border: none;
  width: 30px;
  height: 30px;
  text-align: center;
  padding: 4px 6px;
  color: var(--bs-secondary);
}
.form_ctn.filled .photo_input.loading::after {
  content: " ";
  width: calc(100% - 24px);
  height: calc(100% - 4px);
  background: #fff9;
  position: absolute;
  top: 2px;
  left: 12px;
  display: block;
}
.dropbox {
  width: 100%;
  min-height: 88px;
  background-color: #FFF8;
  border: 5px dashed var(--bs-gray-600);
  padding: 10px 20px;
}
.photo_input .dropbox {
  width: calc(100% + 12px);
  border: none;
  outline: 4px dashed var(--bs-gray-600);
  padding: 10px 20px;
  margin: 6px -6px 6px -6px;
  border-radius: 5px;
}
.document_validity input, .document_validity label {
  width: auto;
  display: inline-block;
}
#detailsTab {
  justify-content: center;
  z-index: 1;
  position: relative;
  float: left;
  border-bottom: 0px transparent solid;
}
#detailsTabContent > div {
  background: var(--bs-white);
  padding: 20px 15px;
  border: var(--bs-gray-300) 1px solid;
  border-radius: 0 0 10px 10px;
  position: relative;
}
#detailsTab_h4 {
  margin: 0;
  padding: 0 20px 0 0;
  line-height: 2.1rem;
  display: block;
  float: left;
}
#detailsTabContent {
  clear: both;
}
#emails_ctn {
  position: relative;
}
.login_forms .lf_ctn {
  display: none;
}
.login_forms.sesam .lf_ctn.sesam,
.login_forms.register .lf_ctn.register,
.login_forms.login .lf_ctn.login,
.login_forms.login .lf_ctn.login #user_infos {
  display: block;
}
.lf_ctn #user_infos {
  background: #eee;
  border: none;
  width: calc(100% - 3rem);
  margin: 0 -3%;
  padding: .5rem 3%;
}
@media (orientation: landscape) and (max-width:767px) {
  .forms_ctn.photos_ctn {
    margin-top: -0.7rem;
  }
}
@media (min-width:768px) {
  .forms_ctn.photos_ctn > div.photo_ctn.filled:not('.closed') {
    width: _50%;
  }
  .forms_ctn.photos_ctn > div.photo_ctn {
    max-width: 380px;
  }
}
/*
// END FORMS
///////////////////////////////////
*/
@media (orientation: landscape) and (max-width:767px) {
}
@media (orientation: portrait) and (max-width:767px) {
  #only_invited #email_ctn_ > div {
    margin: 0 25%;
  }
}
@media (min-width:768px) {
}
@media (min-width:992px) {
}
/*
============================================================
  CSS_EDITOR HOMEPAGE - STRUCTURAL BASE (28/10/2026)
  All layout + variable-driven rules for the cssed-home sales
  page live here (scoped: inert on every other page). The files
  in ow_designs/css_editor_demos/ are pure SKINS (variables +
  flavor) that replace each other - see Demo/JScripts/CSS_editor.js.
  Default skin below = "institutional" values.
  ============================================================ 
*/
/*
Full-bleed home: the look's .container would clamp the sales page
*/
body.Home-Welcome #app_main_ctn > .container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
body.Home-Welcome #app_main_ctn > .container > section {
  padding-left: 0;
  padding-right: 0;
}
body {
  /*
  --- PALETTE (default = institutional) ---
  */
  --fond: #F7F9FC;
  --encre: #0A2540;
  --tuile-jaune: #FFFFFF;
  --tuile-corail: #0B5FFF;
  --tuile-violet: #0B5FFF;
  --tuile-menthe: #00B8A9;
  --tuile-ciel: #FFFFFF;
  --tuile-rose: #FFFFFF;
  --carte: #FFFFFF;
  /*
  --- TYPOGRAPHY ---
  */
  --font-titre: Georgia, 'Times New Roman', serif;
  --font-texte: 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  --font-code: 'JetBrains Mono', monospace;
  /*
  --- SHAPES ---
  */
  --radius-tuile: 14px;
  --radius-bouton: 8px;
  --bordure: 1px solid #E3E9F2;
  --ombre: 0 2px 6px #0A25400D, 0 12px 32px #0A254012;
  /*
  --- RHYTHM ---
  */
  --espace-section: clamp(4rem, 9vw, 8rem);
  --largeur-max: 1200px;
  background: var(--fond);
  color: var(--encre);
  font-family: var(--font-texte);
  overflow-x: hidden;
}
::selection {
  background: var(--tuile-violet);
  color: #fff;
}
/*
============ NAV ============
*/
.cssed-nav {
  position: sticky;
  top: 106px;
  z-index: 50;
  max-width: var(--largeur-max);
  margin: 26px auto 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 24px;
  background: #FFFFFFE6;
  backdrop-filter: blur(12px);
  border: var(--bordure);
  border-radius: var(--radius-bouton);
  box-shadow: var(--ombre);
}
#header .cssed-nav {
  padding: 0px 24px 12px;
}
#header .cssed-nav > .container {
  margin: 0;
  min-width: 100%;
}
.cssed-logo {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: 1.15rem;
  letter-spacing: -0.5px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.cssed-logo .cssed-point {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--encre);
  box-shadow: 18px 0 0 var(--encre), 36px 0 0 var(--encre);
  margin-right: 36px;
}
.cssed-nav-links {
  display: flex;
  gap: 28px;
  font-weight: 500;
}
.cssed-nav-links a {
  color: var(--encre);
  text-decoration: none;
  position: relative;
}
.cssed-nav-links a:hover {
  text-decoration: underline var(--tuile-corail) 2px;
  text-underline-offset: 5px;
}
.cssed-btn {
  font-family: var(--font-texte);
  font-weight: 700;
  border: var(--bordure);
  border-radius: var(--radius-bouton);
  padding: 12px 26px;
  background: var(--tuile-jaune);
  color: var(--encre);
  cursor: pointer;
  box-shadow: var(--ombre);
  transition: transform .12s ease, box-shadow .12s ease;
  text-decoration: none;
  display: inline-block;
}
.cssed-btn:hover {
  transform: translate(-2px,-2px);
}
.cssed-btn:active {
  transform: translate(1px,1px);
}
.cssed-btn--inverse {
  background: var(--encre);
  color: var(--fond);
}
.cssed-btn--violet {
  background: var(--tuile-violet);
  color: #fff;
}
/*
============ HERO ============
*/
.cssed-hero {
  max-width: var(--largeur-max);
  margin: 0 auto;
  padding: clamp(3rem, 3vh,6rem) 24px var(--espace-section);
  text-align: center;
  position: relative;
}
.cssed-hero .cssed-surtitle {
  display: inline-block;
  font-family: var(--font-code);
  font-size: .85rem;
  background: var(--tuile-menthe);
  border: var(--bordure);
  border-radius: var(--radius-bouton);
  padding: 8px 18px;
  box-shadow: var(--ombre);
}
.cssed-hero h1 {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: clamp(2.6rem, 8vw, 6.2rem);
  line-height: 1.02;
  letter-spacing: -0.02em;
  margin: 28px 0;
}
.cssed-hero h1 .cssed-w-coral {
  color: var(--tuile-corail);
}
.cssed-hero h1 .cssed-w-violet {
  color: var(--tuile-violet);
}
.cssed-hero h1 .cssed-w-underline {
  text-decoration: underline var(--tuile-menthe) 5px;
  text-underline-offset: 12px;
}
.cssed-hero p.cssed-subtitle {
  font-size: clamp(1.05rem, 2vw, 1.35rem);
  max-width: 640px;
  margin: 0 auto 36px;
  line-height: 1.55;
}
.cssed-hero-cta {
  display: flex;
  gap: 18px;
  justify-content: center;
  flex-wrap: wrap;
}
.cssed-small-note {
  margin-top: 16px;
  font-size: .85rem;
  opacity: .65;
  font-family: var(--font-code);
}
.cssed-tagline {
  font-family: var(--font-titre);
  font-weight: 600;
  font-size: clamp(1.15rem, 2.4vw, 1.6rem);
  margin: 0 auto 14px;
  max-width: 900px;
  color: var(--tuile-corail);
}
/*
Floating stickers
*/
.cssed-sticker {
  position: absolute;
  font-family: var(--font-titre);
  font-weight: 600;
  font-size: .8rem;
  padding: 10px 16px;
  border: var(--bordure);
  border-radius: var(--radius-bouton);
  box-shadow: var(--ombre);
  white-space: nowrap;
}
.cssed-sticker--code {
  top: 14%;
  left: 2%;
  background: var(--tuile-ciel);
  font-family: var(--font-code);
}
.cssed-sticker--couleur {
  top: 32%;
  right: 1%;
  background: var(--tuile-rose);
}
.cssed-sticker--temps {
  bottom: 10%;
  left: 4%;
  background: var(--tuile-jaune);
}
.cssed-sticker--zero {
  bottom: 22%;
  right: 3%;
  background: var(--tuile-violet);
  color: #fff;
}
/*
============ MARQUEE ============
*/
.cssed-marquee {
  background: var(--encre);
  color: var(--fond);
  font-family: var(--font-titre);
  font-weight: 600;
  font-size: 1.05rem;
  padding: 14px 0;
  overflow: hidden;
  white-space: nowrap;
  margin: 1rem 0 var(--espace-section);
}
.cssed-marquee span {
  display: inline-block;
  padding: 0 2.2rem;
}
.cssed-marquee .cssed-dot {
  color: var(--tuile-jaune);
}
/*
============ SECTIONS ============
*/
.cssed-section {
  max-width: var(--largeur-max);
  margin: 0 auto;
  padding: 0 24px var(--espace-section);
}
.cssed-section-title {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: clamp(1.9rem, 5vw, 3.4rem);
  letter-spacing: -0.02em;
  margin-bottom: 12px;
}
.cssed-section-sub {
  font-size: 1.1rem;
  opacity: .75;
  max-width: 560px;
  margin-bottom: 44px;
}
/*
============ BENTO GRID ============
*/
.cssed-bento {
  display: grid;
  gap: 22px;
  grid-template-columns: repeat(4, 1fr);
  grid-template-areas: "a a b c" "a a d d" "e f d d" "g g h h" "i i j j";
}
.cssed-tile {
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  box-shadow: var(--ombre);
  padding: 28px;
  overflow: hidden;
  position: relative;
  transition: transform .18s ease;
}
.cssed-tile:hover {
  transform: translateY(-4px);
}
.cssed-tile h3 {
  font-family: var(--font-titre);
  font-weight: 600;
  font-size: 1.15rem;
  margin-bottom: 10px;
}
.cssed-tile p {
  font-size: .98rem;
  line-height: 1.5;
  opacity: .85;
}
.cssed-tile--a {
  grid-area: a;
  background: var(--tuile-jaune);
}
.cssed-tile--b {
  grid-area: b;
  background: var(--tuile-corail);
  color: #fff;
}
.cssed-tile--c {
  grid-area: c;
  background: var(--tuile-menthe);
}
.cssed-tile--d {
  grid-area: d;
  background: var(--tuile-violet);
  color: #fff;
}
.cssed-tile--e {
  grid-area: e;
  background: var(--carte);
}
.cssed-tile--f {
  grid-area: f;
  background: var(--tuile-ciel);
}
.cssed-tile--g {
  grid-area: g;
  background: var(--tuile-rose);
}
.cssed-tile--h {
  grid-area: h;
  background: var(--encre);
  color: var(--fond);
}
.cssed-tile--i {
  grid-area: i;
  background: var(--tuile-ciel);
}
.cssed-tile--j {
  grid-area: j;
  background: var(--tuile-menthe);
}
.cssed-tile--a h3 {
  font-size: 1.6rem;
}
.cssed-tile .cssed-big-number {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: 3.2rem;
  display: block;
  line-height: 1;
  margin-bottom: 12px;
}
.cssed-mini-code {
  font-family: var(--font-code);
  font-size: .82rem;
  background: #00000022;
  border-radius: 14px;
  padding: 14px 16px;
  margin-top: 16px;
  line-height: 1.6;
}
.cssed-tile--d .cssed-mini-code {
  background: #00000045;
}
.cssed-mini-code .cssed-sel {
  color: var(--tuile-jaune);
}
.cssed-mini-code .cssed-prop {
  color: var(--tuile-menthe);
}
.cssed-mini-code .cssed-val {
  color: var(--tuile-rose);
}
.cssed-bullets {
  list-style: none;
  margin-top: 14px;
}
.cssed-bullets li {
  padding: 5px 0 5px 28px;
  position: relative;
  font-size: .95rem;
}
.cssed-bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--encre);
  border: 2.5px solid var(--fond);
}
.cssed-tile--b .cssed-bullets li::before, .cssed-tile--d .cssed-bullets li::before {
  background: var(--fond);
  border-color: inherit;
}
.cssed-platform-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
.cssed-platform-badge {
  font-family: var(--font-code);
  font-size: .78rem;
  border: 2.5px solid currentColor;
  border-radius: var(--radius-bouton);
  padding: 6px 14px;
}
/*
============ 3-STEP WORKFLOW ============
*/
.cssed-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.cssed-step {
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  box-shadow: var(--ombre);
  background: var(--tuile-jaune);
  padding: 28px;
  position: relative;
  transition: transform .18s ease;
}
.cssed-step:nth-child(2) {
  background: var(--tuile-menthe);
}
.cssed-step:nth-child(3) {
  background: var(--tuile-rose);
}
.cssed-step:hover {
  transform: translateY(-4px);
}
.cssed-step-num {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: 2.4rem;
  line-height: 1;
  display: block;
  margin-bottom: 12px;
}
.cssed-step h3 {
  font-family: var(--font-titre);
  font-weight: 600;
  font-size: 1.15rem;
  margin-bottom: 10px;
}
.cssed-step p {
  font-size: .98rem;
  line-height: 1.5;
  opacity: .85;
}
/*
============ UNDER THE HOOD + AI (2 cards) ============
*/
.cssed-hood-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}
.cssed-hood-card {
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  box-shadow: var(--ombre);
  background: var(--tuile-violet);
  color: #fff;
  padding: 28px;
  transition: transform .18s ease;
}
.cssed-hood-card:nth-child(2) {
  background: var(--encre);
  color: var(--fond);
}
.cssed-hood-card:hover {
  transform: translateY(-4px);
}
.cssed-hood-card h3 {
  font-family: var(--font-titre);
  font-weight: 600;
  font-size: 1.15rem;
  margin-bottom: 10px;
}
.cssed-hood-card p {
  font-size: .98rem;
  line-height: 1.6;
  opacity: .9;
}
.cssed-hood-card .cssed-bullets li::before {
  background: var(--fond);
  border-color: transparent;
}
/*
============ LAUNCH BADGE (no countdown - honesty, 28/10) ============
*/
.cssed-launch {
  display: inline-block;
  margin-bottom: 18px;
  font-family: var(--font-code);
  font-weight: 700;
  font-size: .85rem;
  border: var(--bordure);
  border-radius: var(--radius-bouton);
  background: var(--tuile-corail);
  color: #fff;
  padding: 8px 20px;
  box-shadow: var(--ombre);
}
/*
============ LIVE DEMO BAND ============
*/
.cssed-demo-band {
  background: var(--encre);
  color: var(--fond);
  padding: var(--espace-section) 24px;
}
.cssed-demo-inner {
  max-width: var(--largeur-max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 48px;
  align-items: center;
}
.cssed-demo-inner h2 {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: clamp(1.8rem, 4.5vw, 3rem);
  line-height: 1.1;
  margin-bottom: 20px;
}
.cssed-demo-inner h2 .cssed-w-coral {
  color: var(--tuile-corail);
}
.cssed-demo-inner p {
  opacity: .8;
  line-height: 1.6;
  margin-bottom: 26px;
}
.cssed-editor-window {
  background: #26262E;
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  box-shadow: var(--ombre);
  overflow: hidden;
}
.cssed-window-bar {
  display: flex;
  gap: 8px;
  padding: 14px 18px;
  border-bottom: 2px solid #3A3A44;
}
.cssed-window-bar span {
  width: 13px;
  height: 13px;
  border-radius: 50%;
}
.cssed-window-bar span:nth-child(1) {
  background: var(--tuile-corail);
}
.cssed-window-bar span:nth-child(2) {
  background: var(--tuile-jaune);
}
.cssed-window-bar span:nth-child(3) {
  background: var(--tuile-menthe);
}
.cssed-window-code {
  font-family: var(--font-code);
  font-size: .88rem;
  padding: 22px;
  line-height: 1.8;
  color: #D8D8E0;
  min-height: 260px;
}
.cssed-window-code .cssed-line-num {
  opacity: .3;
  margin-right: 14px;
}
.cssed-window-code .cssed-sel {
  color: var(--tuile-ciel);
}
.cssed-window-code .cssed-prop {
  color: var(--tuile-menthe);
}
.cssed-window-code .cssed-val {
  color: var(--tuile-rose);
}
.cssed-window-code .cssed-comment {
  color: #6B6B78;
  font-style: italic;
}
/*
============ PRICING ============
*/
.cssed-price-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
  align-items: stretch;
}
.cssed-price-card {
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  box-shadow: var(--ombre);
  padding: 34px 30px;
  background: var(--carte);
  display: flex;
  flex-direction: column;
  position: relative;
  transition: transform .18s ease;
}
.cssed-price-card:hover {
  transform: translateY(-8px);
}
.cssed-price-card--vedette {
  background: var(--tuile-violet);
  color: #fff;
  transform: scale(1.04);
}
.cssed-price-card--vedette:hover {
  transform: scale(1.04) translateY(-8px);
}
.cssed-featured-tag {
  position: absolute;
  top: -18px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--tuile-jaune);
  color: var(--encre);
  font-family: var(--font-titre);
  font-weight: 600;
  font-size: .8rem;
  border: var(--bordure);
  border-radius: var(--radius-bouton);
  padding: 7px 20px;
  box-shadow: var(--ombre);
  white-space: nowrap;
}
.cssed-plan-name {
  font-family: var(--font-titre);
  font-weight: 600;
  font-size: 1.1rem;
  margin-bottom: 6px;
}
.cssed-price {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: 2.8rem;
  line-height: 1;
  margin: 14px 0 4px;
}
.cssed-price small {
  font-size: .9rem;
  font-weight: 400;
  opacity: .7;
}
.cssed-price-old {
  font-size: .45em;
  font-weight: 500;
  opacity: .55;
  margin-right: 10px;
}
.cssed-plan-desc {
  font-size: .92rem;
  opacity: .75;
  margin-bottom: 22px;
}
.cssed-price-card .cssed-bullets {
  flex: 1;
  margin-bottom: 26px;
}
.cssed-price-card .cssed-bullets li {
  padding-top: 6px;
  padding-bottom: 6px;
}
.cssed-price-card .cssed-btn {
  text-align: center;
  width: 100%;
}
.cssed-price-card--vedette .cssed-btn {
  background: var(--tuile-jaune);
  color: var(--encre);
}
/*
============ TESTIMONIALS (unused since 21/10, kept for the demo) ============
*/
.cssed-testimonials {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 24px;
}
.cssed-testimonial {
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  background: var(--carte);
  box-shadow: var(--ombre);
  padding: 26px;
}
.cssed-testimonial blockquote {
  font-size: .98rem;
  line-height: 1.55;
  margin-bottom: 18px;
}
.cssed-testimonial .cssed-author {
  display: flex;
  align-items: center;
  gap: 12px;
}
.cssed-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: var(--bordure);
}
.cssed-testimonial .cssed-name {
  font-weight: 700;
  font-size: .92rem;
}
.cssed-testimonial .cssed-role {
  font-size: .8rem;
  opacity: .6;
  font-family: var(--font-code);
}
/*
============ COMPARISON TABLE ============
*/
.cssed-compare-wrap {
  overflow-x: auto;
}
.cssed-compare {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  box-shadow: var(--ombre);
  overflow: hidden;
  background: var(--carte);
  font-size: .95rem;
}
.cssed-compare th, .cssed-compare td {
  padding: 14px 18px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid #00000018;
}
.cssed-compare thead th {
  font-family: var(--font-titre);
  font-weight: 700;
  font-size: .95rem;
  background: var(--encre);
  color: var(--fond);
}
.cssed-compare tbody th {
  font-weight: 700;
  width: 24%;
}
.cssed-compare tbody td:first-of-type {
  background: var(--tuile-menthe);
  font-weight: 600;
}
.cssed-compare tbody tr:last-child th,
.cssed-compare tbody tr:last-child td {
  border-bottom: none;
}
/*
============ FAQ (details/summary: server-rendered, crawlable) ============
*/
.cssed-faq {
  max-width: 900px;
  margin: 0 auto;
}
.cssed-faq-item {
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  box-shadow: var(--ombre);
  background: var(--carte);
  padding: 20px 26px;
  margin-bottom: 16px;
}
.cssed-faq-item summary {
  font-family: var(--font-titre);
  font-weight: 600;
  font-size: 1.05rem;
  cursor: pointer;
  list-style: none;
  position: relative;
  padding-right: 34px;
}
.cssed-faq-item summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--font-code);
  font-weight: 700;
  font-size: 1.3rem;
}
.cssed-faq-item[open] summary::after {
  content: "-";
}
.cssed-faq-item summary::-webkit-details-marker {
  display: none;
}
.cssed-faq-item p {
  margin-top: 14px;
  font-size: .98rem;
  line-height: 1.6;
  opacity: .85;
}
/*
============ REAL SCREENSHOTS ============
*/
.cssed-shot {
  display: block;
  width: 100%;
  height: auto;
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  box-shadow: var(--ombre);
  background: var(--carte);
}
.cssed-shots {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
/*
============ FINAL CTA / PLATFORM PICKER / FOOTER ============
*/
.cssed-final {
  max-width: var(--largeur-max);
  margin: 0 auto var(--espace-section);
  padding: 0 24px;
}
.cssed-final-card {
  background: var(--tuile-corail);
  color: #fff;
  border: var(--bordure);
  border-radius: calc(var(--radius-tuile) + 10px);
  box-shadow: var(--ombre);
  text-align: center;
  padding: clamp(3rem, 7vw, 5.5rem) 24px;
}
.cssed-final-card h2 {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: clamp(2rem, 6vw, 4rem);
  line-height: 1.05;
  margin-bottom: 18px;
}
.cssed-final-card p {
  opacity: .9;
  font-size: 1.1rem;
  margin-bottom: 32px;
}
.cssed-plats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin: 0 auto 26px;
  text-align: left;
}
.cssed-plat {
  background: var(--fond, #fff);
  color: var(--encre);
  border: var(--bordure);
  border-radius: var(--radius-tuile);
  box-shadow: var(--ombre);
  padding: 22px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.cssed-plat-name {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: 1.05rem;
}
.cssed-plat-desc {
  font-size: .86rem;
  opacity: .75;
  margin: 0;
  flex: 1;
}
.cssed-plat .cssed-btn {
  text-align: center;
  font-size: .88rem;
  padding: 10px 14px;
}
.cssed-plat .cssed-btn:disabled {
  opacity: .45;
  cursor: not-allowed;
}
.cssed-plat--soon {
  opacity: .75;
}
.cssed-final-card .cssed-small-note {
  font-size: .78rem;
  opacity: .7;
  margin: 0;
  font-family: var(--font-code);
}
.cssed-footer {
  border-top: var(--bordure);
  padding: 28px 24px;
  text-align: center;
  font-family: var(--font-code);
  font-size: .82rem;
  opacity: .7;
}
.cssed-footer .cssed-logo-footer {
  font-family: var(--font-titre);
  font-weight: 900;
  font-size: 1rem;
  opacity: 1;
  margin-bottom: 6px;
}
/*
============ RESPONSIVE ============
*/
@media (max-width: 980px) {
  .cssed-bento {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "a a" "b c" "d d" "e f" "g h" "i i" "j j";
  }
  .cssed-demo-inner {
    grid-template-columns: 1fr;
  }
  .cssed-steps, .cssed-hood-grid {
    grid-template-columns: 1fr;
  }
  .cssed-price-grid, .cssed-testimonials {
    grid-template-columns: 1fr;
  }
  .cssed-price-card--vedette {
    transform: none;
  }
  .cssed-price-card--vedette:hover {
    transform: translateY(-8px);
  }
  .cssed-sticker {
    display: none;
  }
  .cssed-nav-links {
    display: none;
  }
  .cssed-plats {
    grid-template-columns: 1fr 1fr;
  }
  .cssed-shots {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 560px) {
  .cssed-bento {
    grid-template-columns: 1fr;
    grid-template-areas: "a" "b" "c" "d" "e" "f" "g" "h" "i" "j";
  }
  .cssed-plats {
    grid-template-columns: 1fr;
  }
}