
html,  body { padding: 0; margin: 0; }


/**  Page  **/

.ols__page * { box-sizing: border-box; }
.ols__page a:hover,
.ols__page a:focus { text-decoration: none !important; outline: none; }



/**  commun  **/


.ols__page { position: relative; top:0; left:0; overflow: hidden; width:100%; z-index: 1; color:#000; font-family: "Lato", Helvetica, Arial, sans-serif; }

br.ols__if_desktop { display:block; }
br.ols__if_mobile { display:none; }



.ols__left { width: 200px; }
.ols__right { width: calc(100% - 200px); }

.ols__overlay { position:absolute; top:0; left:0; right:0; bottom:0; background:rgba(0,0,0,0.4); z-index: 100; display: none; }

.ols__extra { display: none; }


/**  header  **/


.ols__header { position: relative; left:0; top:0; display: flex; height: 60px; }

.ols__header_content { position: relative; top:0; left:0; width: 90%; text-align: center; margin: 0px auto 0 auto;  display: block; }
.ols__header_title { font-size: 24px; line-height: 34px; padding-top: 100px; padding-bottom: 20px; }
.ols__header_text { font-size: 18px; line-height: 26px; }


/**  main  **/

.ols__main { position: relative; margin:0 auto; width:100%; display: flex; min-height: calc(100vh - 60px); }

.ols__main .ols__left { background:#434343; }
.ols__main .ols__right { background:#f4f4f4; }



/**  content  **/

.ols__content { margin: 30px 50px 30px 32px; max-width: 900px; }
.ols__content-title { font-size: 16px; line-height: 20px; border-bottom: solid 1px #000000; text-transform: uppercase; padding-bottom: 6px; margin-bottom: 20px; }



/**  item  **/

.ols__content-item { position: relative; left:0; top:0; padding-left: 25px; padding-bottom: 25px; padding-right: 15px; margin-bottom: 20px;  }

.ols__content-item-inside:before,.ols__content-item-inside:after { content:""; display: table; }
.ols__content-item-inside:after { clear:both; }
.ols__content-item-inside { padding-bottom: 15px; }

.ols__content-item-number { position: absolute; top:0; left:-25px; font-size: 16px; line-height: 20px; }
.ols__content-item-arrow { float: left; display:inline-block; border:solid 1px #000; width:25px; height:25px; background: url(images/arrow.svg) center center no-repeat; background-size: 14px auto; border-radius: 50%; margin-top: -4px; }
.ols__content-item-arrow { display: none; }
.ols__content-item-title { float: left; font-size: 16px; line-height: 20px; text-transform: uppercase; padding-right: 10px; }
.ols__content-item-label { float: left; font-size: 16px; line-height: 20px; clear: both; min-width: 175px; }

.ols__content-item-btn { cursor:pointer; display:inline-block; margin-right:15px; text-transform:uppercase; color:#000; border: solid 1px #000; font-size: 12px; line-height: 28px; height: 28px; min-width: 83px; text-align: center; padding: 0 15px;  }
.ols__content-item-btn:last-child { margin-right:0px; }
.ols__content-item-btn:hover { color:#fff; background: #000; }

.ols__content-item-btn-black { color:#fff; background: #000; }
.ols__content-item-btn-black:hover { color:#000; background: #fff; }

.ols__content-item-close { position: absolute; top:-1px; right:-1px; width: 20px; height: 20px; background: url(images/bt_close.svg) left top no-repeat; background-size: 100% auto; display: none; cursor: pointer; }

.ols__content-item-handler { position: relative; top:0; left:0; }

.ols__content-item-panel { position: relative; top:0; left:0; }
.ols__content-item-panel-body { padding-bottom: 0px; }
.ols__content-item-list { padding-bottom: 15px; }

.ols__content-item-switch { position: absolute; right:0; top:0; }

.ols__content-item-action { position:relative; left:0; top:0; padding-top: 15px; text-align: right; }

.ols__content-item-field:before,.ols__content-item-field:after { content: ""; display: table; }
.ols__content-item-field:after { clear: both; }
.ols__content-item-field-label { float:left; width: 175px; font-size:16px; line-height: 30px; }
.ols__content-item-field-label-2 { float:left; width: auto; font-size:16px; line-height: 30px; padding-right: 16px; }

.ols__content-item-field-input { float:left; width: calc(100% - 235px); border:solid 1px #000; height: 28px; font-size:15px; line-height: 28px; padding: 0 10px; }
.ols__content-item-field-input-small { width: 140px }
/*
.ols__content-item-field-textarea { float:left; width: calc(100% - 235px); border:solid 1px #000; height: 28px; font-size:15px; line-height: 20px; padding: 5px 10px; min-height: 150px }
*/
.ols__content-item-field-textarea { float:left; width: 100%; height: 28px; font-size:15px; line-height: 20px; padding: 5px 10px; min-height: 150px }
.ols__content-item-field-cta { float:left; font-size:15px; line-height: 20px; margin: 6px 0 0; }

.ols__content-item-field-price { float:left; font-size:15px; line-height: 20px; margin: 6px 0 0; }
.ols__content-item-field-radio-label { float:left; font-size:15px; line-height: 20px; padding: 4px 20px 0 8px; }
.ols__content-item-field-extra-label { float:left; font-size:15px; line-height: 28px; padding: 0 10px; }
.ols__content-item-field-extra-link { float:left; font-size:15px; line-height: 28px; padding: 0 10px; text-decoration: underline; cursor: pointer; }
.ols__content-item-field-extra-link:hover { text-decoration: none; }
.ols__content-item-field-select {float: left; position:relative; top:0; left:0; display:block;  }
.ols__content-item-field-select:after{ content:""; pointer-events:none; position:absolute; top:11px; right:7px; width:0; height:0; border-left: transparent 5px solid; border-right: transparent 5px solid; border-top: #000 6px solid; }
.ols__content-item-field-select select { display:block; font-size: 16px; line-height: 24px; width: 140px; border: solid 1px #000; -moz-appearance: none; -webkit-appearance: none; appearance: none; padding: 0 3px; }

.ols__content-item-field-input-small:disabled,
.ols__content-item-field-input:disabled { background: #f9f9f9; border-color: #999; }

.ols__content-item-hr { border-bottom: 1px solid #999; }

.ols__content-item-bloc-close,
.ols__content-item-bloc-handler { color:#999; font-size:12px; margin-left: 175px; text-decoration: underline; cursor: pointer; margin-top:4px; }
.ols__content-item-bloc-close:hover,
.ols__content-item-bloc-handler:hover { text-decoration: none; }

.ols__content-item-hr,
.ols__content-item-bloc,
.ols__content-item-bloc-handler,
.ols__content-item-bloc-close,
.ols__content-item-description,
.ols__content-item-duration,
.ols__content-item-cta,
.ols__content-item-cta_select,
.ols__content-item-cta-type,
.ols__content-item-cta-target,
.ols__content-item-price,
.ols__content-item-price-type,
.ols__content-item-price-extra { display: none; }

.ols__content-item-edit { padding-top: 10px; }

.ols__logo { padding-left: 32px; font-size: 20px; line-height: 60px; font-family: 'ABChanelPBSemiBoldM', Lato, sans-serif; }
.ols__header-title { padding-left: 32px; font-size: 20px; line-height: 60px; font-weight: 400; text-transform: uppercase; }

.ols__logo-child { position: relative; left:0; top:0; text-transform: uppercase; font-size: 14px; line-height: 18px; padding: 2px 0;  }


.ols__content-item-list-edit { padding-top: 20px; }
.ols__content-item-list-edit:before,.ols__content-item-list-edit:after { content: ""; display: table; }
.ols__content-item-list-edit:after { clear: both; }

.ols__content-item-list-edit-label { float:left; width: 175px; font-size:16px; line-height: 30px; }
.ols__content-item-list-edit-content { float: left; width: calc(100% - 210px); }

.ols__content-item-list-edit-child:before,.ols__content-item-list-edit-child:after { content:""; display: table; }
.ols__content-item-list-edit-child:after { clear:both; }
.ols__content-item-list-edit-child { position: relative; left:0; top:0; padding-bottom: 15px; }
.ols__content-item-list-edit-child-title { float: left; display: block; text-transform: uppercase; font-size: 14px; line-height: 30px; padding-left: 15px;   }
.ols__content-item-list-edit-child-switch { float: left; display: block; position: relative; left:0; top:0; }
.ols__content-item-list-edit-child-handler { float: left; display: block; position: relative; top:0; left:0; margin-top: 4px; cursor: grab; }

.ols__content-item.ols__active {  }
.ols__content-item.ols__active:before { content:""; position:absolute; top:-15px; left:-15px; right:-15px; bottom:0; background: #fff; display: block; border:solid 1px #d2d2d2; }
.ols__content-item.ols__active .ols__content-item-label,
.ols__content-item.ols__active .ols__content-item-arrow,
.ols__content-item.ols__active .ols__content-item-panel-action,
.ols__content-item.ols__active .ols__content-item-switch,
.ols__content-item.ols__active .ols__content-item-list,
.ols__content-item.ols__active .ols__logo,
.ols__content-item.ols__active [data-edit-id] { display: none; }
.ols__content-item.ols__active .ols__content-item-bloc-handler{ display: inline-block; }
.ols__content-item.ols__active .ols__content-item-close { display: block; }

.ols__handler { width: 20px; height: 20px; background: url(images/bt_handler.svg) left top no-repeat; background-size: 100% auto; margin-right: 15px; }

.ols__ghost-class { background: #f1f1f1; }

.ols__switch { width: 58px; height: 30px; }
.ols__switch label { width: 100%; height: 100%; position: relative; display: block; background: #a5a39d; border-radius: 40px; }
.ols__switch label:after { content: ""; position: absolute; z-index: -1; top: -8px; right: -8px; bottom: -8px; left: -8px; background: #ababab; }
.ols__switch label i {
  display: block;
  height: 26px;
  width: 26px;
  border-radius: 50%;
  position: absolute;
  z-index: 2;
  right: 52%;
  top: 2px;
  background: #fff;
}

.ols__switch label i:before {
  content: "off";
  text-transform: uppercase;
  font-style: normal;
  font-weight: bold;
  color: #fff;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 10px;
  line-height: 26px;
  position: absolute;
  top: 50%;
  margin-top: -12px;
  right: -100%;
  width: 100%;
  text-align: center; 
}

.ols__switch input {
  top: 0; 
  right: 0; 
  bottom: 0; 
  left: 0;
  opacity: 0;
  z-index: 100;
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.ols__switch input:checked ~ label { background: #36b50a; }
.ols__switch input:checked ~ label i { right: 2px; }
.ols__switch input:checked ~ label i:before { content: "on"; right: 100%; color: #fff; }



/**  aside  **/

.ols__aside { margin: 20px 32px; color: #fff; }

.ols__aside-header { position: relative; top:0; right: 0; }
.ols__aside-label { font-size: 12px; line-height: 15px; color: #d7d7d7; padding-bottom: 2px; }
.ols__aside-location { font-size: 18px; line-height: 20px; padding-bottom: 15px; }
.ols__aside-donwload { position: absolute; top:0; right: 0; padding-top: 10px; }
.ols__aside-donwload-hitarea { display: none; }
.ols__aside-donwload.ols__enabled .ols__aside-donwload-hitarea { display: block; cursor: pointer; }
.ols__aside-donwload.ols__enabled .ols__aside-donwload-hitarea:hover { opacity: 0.8 }


.ols__aside-link { padding-top: 8px; cursor:pointer; position: relative; top:0; left:0;}
.ols__aside-link-text { padding-left: 18px; }
.ols__aside-link:hover .ols__aside-link-text { text-decoration: underline; }

.ols__aside-link-text:after{ content:""; position:absolute; top:11px; left:7px; width:0; height:0; border-top: transparent 4.5px solid; border-bottom: transparent 4.5px solid; border-left: #fff 6px solid; }
.ols__aside-link-text:before{ content:""; position:absolute; top:15px; left:0; width:7px; height:1px; background: #fff; }

.ols__aside-link-format { text-transform: uppercase; }

.ols__aside-cta { font-size: 18px; line-height: 20px; background: #999; border-radius: 2px; padding: 4px 4px; }
.ols__aside-cta:before, .ols__aside-cta:after { content: ""; display: table; }
.ols__aside-cta:after { clear: both; }
.ols__aside-cta-format { float: left; background: #fff; color: #000; text-align: center; text-transform: uppercase; width: 30px; height: 30px; font-size: 10px; line-height: 30px; font-weight: 700; }
.ols__aside-cta-label { float: left; color: #d1d1d1; font-size: 16px; line-height: 30px; text-align: center; text-transform: uppercase; font-weight: 700; width: calc(100% - 36px); }
.ols__aside-cta.ols__enabled { background: #36b50a; cursor:pointer; }
.ols__aside-cta.ols__enabled .ols__aside-cta-label { color: #fff; }



/**  menu  **/

.ols__page .ols__aside-menus { visibility: hidden; }
.ols__page.ols__initialised .ols__aside-menus { visibility: visible; }

.ols__aside-menus { padding-top: 40px; }
.ols__aside-menus ul { padding: 0 0 0 15px; margin: 0; }
.ols__aside-menu { padding-bottom: 25px; }

.ols__aside-menu-link { cursor:pointer; margin-top: 3px; }
.ols__aside-menu-link:hover { opacity: 0.8 }






/** popin **/

.ols__popin { position: fixed; top: 0; width: 100vw; height: 100vh; display: none; z-index: 10200; }

.ols__popin-layout { position: absolute; width: 100%; height: 100%; background: rgba(0,0,0,0.6); display: block; }
.ols__popin-body { position: relative; width:100%; max-width: 620px; margin: 0 auto; background: #fff; color:#000; }

.ols__popin-close { position: absolute; top:10px; right:10px; width:20px; height:20px; background: url(images/bt_close.svg) left top no-repeat; background-size: 100% auto; display: block; cursor: pointer; z-index: 2; }

.ols__popin-inside { position: relative; width:100%; max-height: calc(92vh - 60px); overflow-y: scroll; overflow-x:hidden; z-index: 1; }

.ols__popin-content { position: relative; width:90%; margin:0 auto; padding: 50px 0; }

.ols__popin .ols__popin-content-title { font-size: 25px; line-height: 27px; text-transform: uppercase; padding-top: 20px; text-align: center; padding: 20px 0; }
.ols__popin .ols__popin-content-title:after { content: ""; background: #000; height: 1px; width: 40px; display: block; margin: 20px auto; }

.ols__popin .ols__popin-content-body { text-align: center; } 

.ols__popin .ols__popin-content-form :before, .ols__popin .ols__popin-content-form :after { content: ""; display: table; }
.ols__popin .ols__popin-content-form :after { clear: both; }
.ols__popin .ols__popin-content-form { padding-bottom: 50px; display: inline-block; }

.ols__popin .ols__popin-content-form-select { float: left; position:relative; top:0; left:0; display:block; }
.ols__popin .ols__popin-content-form-select:after{ content:""; pointer-events:none; position:absolute; top:11px; right:7px; width:0; height:0; border-left: transparent 5px solid; border-right: transparent 5px solid; border-top: #000 6px solid; }
.ols__popin .ols__popin-content-form-select select { display:block; font-size: 16px; line-height: 24px; width: 130px; border: solid 1px #000; -moz-appearance: none; -webkit-appearance: none; appearance: none; padding: 0 3px; }

.ols__popin .ols__popin-content-form-submit { float: left; cursor:pointer; display:block; margin-left:15px; text-transform:uppercase; color:#000; background: #fff; border: solid 1px #000; font-size: 12px; line-height: 27px; height: 28px; text-align: center; padding: 0 15px;  }
.ols__popin .ols__popin-content-form-submit:hover { color:#fff; background: #000; }

.ols__popin .ols__popin-content-bottom { display: block; text-align: center; }
.ols__popin .ols__popin-content-top { display: block; text-align: center; text-transform: uppercase; font-size: 16px; line-height: 23px; padding-bottom: 20px; }

.ols__popin .ols__popin-content-link { position:relative; top:0; left:0; font-size: 14px; line-height: 16px; font-weight: 700; cursor: pointer; display: inline-block; padding-left: 18px; }
.ols__popin .ols__popin-content-link:hover { text-decoration: underline; }
.ols__popin .ols__popin-content-link:after{ content:""; position:absolute; top:2px; left:7px; width:0; height:0; border-top: transparent 4.5px solid; border-bottom: transparent 4.5px solid; border-left: #000 6px solid; }
.ols__popin .ols__popin-content-link:before{ content:""; position:absolute; top:6.75px; left:0; width:7px; height:1px; background: #000; }

.ols__popin .ols__popin-content-text { font-size: 14px; line-height: 16px; padding-bottom: 10px; }
.ols__popin .ols__popin-content-text a { color: #000; text-decoration: underline; cursor: pointer; }
.ols__popin .ols__popin-content-text a:hover { text-decoration: none; }





