:root {
  --color-primary: #dc5166;
  --color-secondary: #78a0ac; }

body {
  overflow-x: hidden; }

@media screen and (max-width: 767px) {
  .sidebar-offcanvas {
    position: relative;
    -webkit-transition: position .25s ease-out;
    transition: position .25s ease-out; }

  .sidebar-offcanvas {
    right: -100%; }

  .sidebar-offcanvas.active {
    right: 0%;
    display: block; }

  .sidebar-offcanvas {
    position: absolute;
    z-index: 2;
    top: 0;
    width: 100%;
    height: 100%;
    display: none; } }
html {
  overflow-x: hidden; }

.highlighted {
  margin: 15px 0 5px 0; }

.main-container {
  padding-top: 3rem;
  padding-bottom: 3rem; }
  .main-container ul:not(.nav-tabs) {
    list-style-type: none;
    padding-left: 4px; }
    .main-container ul:not(.nav-tabs) > li {
      padding-left: 1rem;
      margin: .5rem 0;
      position: relative; }
      .main-container ul:not(.nav-tabs) > li::before {
        position: absolute;
        display: inline-block;
        width: 4px;
        height: 4px;
        left: 0;
        top: .6rem;
        vertical-align: middle;
        content: '';
        border-radius: 50%; }
      .main-container ul:not(.nav-tabs) > li.text-align-center::before {
        display: none; }
  .main-container .btn {
    margin-top: 15px;
    margin-bottom: 15px; }
    .main-container .btn.link-cta {
      border: 2px solid #dc5166;
      background: transparent;
      padding: calc(1.371rem - 2px) 4rem calc(1.371rem - 2px) 4rem;
      color: #dc5166; }
      .main-container .btn.link-cta:hover {
        background: #dc5166;
        color: #ffffff; }
  .main-container .btn-show {
    margin-top: 0;
    margin-bottom: 0; }
  .main-container .back-to-list {
    margin-bottom: 20px; }
    .main-container .back-to-list a {
      text-transform: uppercase; }
  .main-container ol {
    margin-left: 2rem;
    list-style-type: none; }
  .main-container ol > li {
    counter-increment: count-me; }
  .main-container ol > li::before {
    position: relative;
    max-width: 0;
    max-height: 0;
    content: counter(count-me) ". "; }
  .main-container .highlighted-bloc {
    padding: 20px 20px 20px 20px;
    margin: 20px 0 20px 0;
    display: inline-block;
    line-height: 1em;
    background-color: #f1f1f1; }
    .main-container .highlighted-bloc h3 {
      letter-spacing: 0.3em; }
    .main-container .highlighted-bloc > :first-child {
      margin-top: 0; }
    .main-container .highlighted-bloc > :last-child {
      margin-bottom: 0; }
  .main-container .countdown-container {
    text-align: center; }
    .main-container .countdown-container .countdown-text {
      display: block;
      font-weight: bold; }
  .main-container .menu-children li {
    display: block;
    float: none; }
    .main-container .menu-children li a {
      padding-top: 0;
      padding-bottom: 0; }

.hero {
  padding: 2rem 0;
  text-align: center;
  background: #fcfcfc;
  border-bottom: 1px #f1f1f1 solid; }

/* ------------------
 * 
 *  CTA
 ------------------- */
.block_billetterie,
#block-sloganbilleterie,
#block-cta {
  background-size: cover;
  min-height: 340px;
  color: #fff;
  padding: 4rem 0;
  text-align: center; }
  .block_billetterie .btn,
  #block-sloganbilleterie .btn,
  #block-cta .btn {
    margin-top: 1rem;
    margin-bottom: 1rem; }
  .block_billetterie .check-list,
  #block-sloganbilleterie .check-list,
  #block-cta .check-list {
    font-weight: 700; }
  @media (min-width: 768px) {
    .block_billetterie .block_billetterie .btn,
    .block_billetterie #block-sloganbilleterie .btn,
    .block_billetterie #block-cta .btn,
    #block-sloganbilleterie .block_billetterie .btn,
    #block-sloganbilleterie #block-sloganbilleterie .btn,
    #block-sloganbilleterie #block-cta .btn,
    #block-cta .block_billetterie .btn,
    #block-cta #block-sloganbilleterie .btn,
    #block-cta #block-cta .btn {
      margin-top: 1rem; } }

#block-solarxpo-block-billetterie h1,
#block-solarxpo-block-billetterie .h1 {
  text-shadow: 0 0 9px #ddd; }

/* ------------------
 * 
 *  Infos pratiques
 ------------------- */
.infos__content {
  border-left: 1px solid #aaaaaa;
  background: #fcfcfc;
  -webkit-box-shadow: -2px 3px 2px rgba(0, 0, 0, 0.05);
          box-shadow: -2px 3px 2px rgba(0, 0, 0, 0.05);
  padding: 2rem;
  margin-bottom: 2rem; }

.infos__img {
  /*position: absolute !important;
  top: 100px;
  z-index:-1;*/
  display: none;
  z-index: 1;
  position: relative; }

.infos__text {
  z-index: 2;
  position: relative; }

@media (min-width: 992px) {
  .page-infos-pratiques .region-content article .btn-primary,
  .infos-container .btn-primary {
    width: 70%; }

  .infos__text {
    position: absolute !important;
    top: 0px; }

  .infos__img {
    display: block;
    margin-top: 100px; }

  .floating_right .infos__text {
    position: relative !important;
    margin-bottom: 6rem; }
  .floating_right .infos__img {
    position: absolute !important;
    bottom: 0; } }
/* ------------------
 * 
 *  Billetterie
 ------------------- */
.row {
  position: relative; }

.floating-panel {
  background: #fcfcfc;
  -webkit-box-shadow: -2px 3px 2px rgba(0, 0, 0, 0.05);
          box-shadow: -2px 3px 2px rgba(0, 0, 0, 0.05);
  padding-top: .5rem;
  padding-bottom: .5rem;
  text-align: center; }
  .floating-panel h2 {
    color: #dc5166; }

.floating-panel + .col-md-6 .img-responsive {
  display: none; }

.main-container ul.check-list,
.check-list {
  margin: 0;
  padding: 0;
  list-style: none; }
  .main-container ul.check-list > li::before,
  .check-list > li::before {
    width: 1rem;
    height: 1rem;
    margin-top: -5px;
    margin-right: .5rem;
    font-family: FontAwesome;
    content: '\f00c';
    border-radius: 50%;
    background: none; }

@media (min-width: 992px) {
  .floating-panel {
    position: absolute;
    z-index: 2;
    top: 2.7%;
    text-align: left;
    padding: 3rem;
    border-left: 1px solid #aaaaaa; }

  .floating-panel + .col-md-6 .img-responsive {
    display: block; } }
/* ------------------
 * 
 *  Contact
 ------------------- */
.contact-header {
  margin-bottom: 3rem; }
  .contact-header h3 {
    line-height: 1.5rem; }
    .contact-header h3.light {
      font-weight: 500; }

.contact-links {
  margin-top: 1rem;
  margin-bottom: 2rem;
  padding: 3rem 0 4rem;
  background: #fcfcfc;
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1); }
  .contact-links .col-md-4 {
    text-align: center;
    padding-top: 15px;
    padding-bottom: 15px; }
    .contact-links .col-md-4 img {
      margin: 0 auto;
      margin-bottom: 1rem; }
    .contact-links .col-md-4 address {
      display: inline-block;
      margin: 0 auto;
      text-align: left; }

.contact-label {
  display: inline-block;
  margin: 0 auto;
  margin-bottom: .5rem;
  padding: .3rem .5rem;
  font-weight: 600;
  text-transform: uppercase;
  color: #ffffff;
  background: #dc5166; }

/* ------------------
 * 
 *  Programme
 ------------------- */
.event__element {
  position: relative;
  display: block;
  min-height: 130px;
  margin-bottom: 2rem;
  padding: 1rem 2rem 2rem 2rem;
  color: #2f2e2e;
  background: #fcfcfc;
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1); }
  .event__element span {
    color: #78a0ac; }
  .event__element::before {
    position: absolute;
    top: 0;
    left: 2px;
    width: 1px;
    height: 100%;
    content: '';
    background: #aaaaaa; }
  .event__element:hover {
    text-decoration: none; }
    .event__element:hover .expo__name {
      color: #dc5166; }
    .event__element:hover::before {
      left: 0;
      width: 3px;
      background: #dc5166; }
.event__time {
  font-weight: 700; }

/* ------------------
 * 
 *  Galerie
 ------------------- */
@media (min-width: 1024px) {
  .page-node-type-gallery-videos article .field--type-video-embed-field .field--item {
    width: 50%;
    float: left; } }
.page-node-type-gallery-photos article .field--type-text-with-summary {
  margin-bottom: 2rem; }

article.gallery-photos .field__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: calc(-0.5* var(--bs-gutter-x));
  margin-left: calc(-0.5* var(--bs-gutter-x)); }
  article.gallery-photos .field__items > * {
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x)* 0.5);
    padding-left: calc(var(--bs-gutter-x)* 0.5);
    margin-top: var(--bs-gutter-y); }
  @media (min-width: 768px) {
    article.gallery-photos .field__items .field__item {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      width: 33.33333333%; } }
  @media (min-width: 992px) {
    article.gallery-photos .field__items .field__item {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      width: 25%; } }

/*
article.gallery-photos .field--name-field-images ,
.page-node-type-gallery-photos article .field--name-field-images {
  clear:both;
  .field--item {
    width: 100%;
	//height: 35vh;
    float: left;
	  text-align: center;
    a {
		
		img {
			display: inline-block;
		}
	  background: none !important;
	  overflow: hidden;
	  display: inline-block;
      padding: 0;
      margin: 0;
      position: relative;
      &::after {
        position: absolute;
        content:'';
        font-family: FontAwesome;
        display: block;
         font-size: 28px;
         color: #fff;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(17, 17, 17, 0.25);
        transition: all 200ms cubic-bezier(.4, .0, .2, 1);
      }
      &:hover {
        &::after {
          padding: 0;
          content: '\f065';
          line-height: 230px;
          font-size: 35px;
          color: #fff;
          text-align: center;
          margin: 0;
          width: 100%;
          height: 100%;
          background-color: rgba(17, 17, 17, 0.05);
          transition: all 200ms cubic-bezier(.4, .0, .2, 1);
        }
      }
    }
  }
  @media (min-width: 768px) {
		.field--item {
    		width: 50%;
			height: 23.3vh;
		}
	}
  
  @media (min-width:992px) {
  	  clear:both;
      .field--item {
        width: 100%;
        //height: 35vh;
        float: left;
        a {
          img {
            display: block;
          }
                display: block;
              width: 100%;
              height: 100%;
          background: inherit !important;
          background-position: center center;
          background-repeat: no-repeat;
          background-size: unset;		  
        }
      }
    .field--item {
      width: 25%;
      height: 16vh;
    }
  }
  @media (min-width:1200px) {
    .field--item {
        width: 25%;
      height: 23.8vh;
    }
  } 


}
*/
#related-products {
  border-top: 1px solid #ababab;
  padding-top: 10px;
  margin-top: 35px; }
  #related-products ul, #related-products li {
    display: block; }
  #related-products li::before {
    display: none; }
  #related-products .related-product {
    display: block; }
    #related-products .related-product a {
      position: relative;
      display: block;
      width: 100%;
      padding-top: 66%;
      background-repeat: no-repeat;
      background-position: center center;
      background-size: cover; }
      #related-products .related-product a span {
        display: block;
        position: absolute;
        bottom: 0;
        left: 10px;
        right: 10px;
        padding: 12px 15px 12px 15px;
        background: rgba(255, 255, 255, 0.8);
        text-transform: uppercase;
        font-weight: 300;
        font-size: 1.15rem;
        color: #000000; }

/* ------------------
 * 
 *  formulaire edition fiche exposant
 ------------------- */
#edit-field-exhibitor-files-wrapper .help-block,
#edit-field-exhibitor-logo-wrapper .help-block,
#edit-field-exhibitor-photos-wrapper .help-block {
  display: block !important; }
#edit-field-exhibitor-files-wrapper .icon-before,
#edit-field-exhibitor-logo-wrapper .icon-before,
#edit-field-exhibitor-photos-wrapper .icon-before {
  display: none !important; }

@media (min-width: 768px) {
  .contact-links {
    margin-top: 2rem;
    margin-bottom: 3rem;
    padding: 3rem 0 4rem; }
    .contact-links .col-md-4 {
      padding-top: 15px;
      padding-bottom: 15px; } }
.dashboard-exhibitor .field--name-field-exhibitor-informations > .field--label {
  display: none; }

.field--name-field-exhibitor-informations {
  margin-top: 2rem;
  margin-bottom: 2rem; }
  .field--name-field-exhibitor-informations > div {
    margin-left: -12px;
    margin-right: -12px; }
  .field--name-field-exhibitor-informations:after {
    clear: both; }
  .field--name-field-exhibitor-informations:before, .field--name-field-exhibitor-informations:after {
    content: " ";
    display: table; }
  @media (min-width: 992px) {
    .field--name-field-exhibitor-informations .field--items {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.exhibitor-information-item {
  background-color: #fcfcfc;
  padding: 1rem 1.5rem;
  text-align: center; }
  .exhibitor-information-item svg {
    display: block;
    width: auto;
    height: 50px;
    margin: 0 auto; }
    .exhibitor-information-item svg path,
    .exhibitor-information-item svg ellipse {
      fill: var(--color-secondary); }

/* ------------------
 * 
 *  Dashboard
 ------------------- */
.dashboard-edit {
  text-align: center;
  margin: 10px 0 5px; }
  .dashboard-edit .btn-primary {
    padding: 0.5rem 0.8rem; }

#edit-account {
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid  #ddd;
  border-radius: 4px; }
  #edit-account .control-label {
    display: block;
    float: none; }
  #edit-account .control-label {
    padding: 10px 15px;
    border-bottom: 1px solid transparent;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px;
    border-bottom: 1px solid transparent;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
    background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
    background-repeat: repeat-x; }
  #edit-account .form-text,
  #edit-account .form-email {
    margin-left: 15px;
    margin-right: 15px;
    width: auto; }
  #edit-account .help-block,
  #edit-account .password-strength,
  #edit-account .password-confirm {
    padding-left: 15px;
    padding-right: 15px; }

#btn-reset-password {
  border: 0; }

.block-views-blocklogo-bck-slideshow-exhibitor {
  margin-top: 2rem;
  margin-bottom: 2rem; }

.pager-nav ul:not(.nav-tabs) > li::before {
  display: none; }

.main-container ul.pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0; }
  .main-container ul.pagination li {
    padding: 0; }
  .main-container ul.pagination > li:first-child > a, .main-container ul.pagination > li:first-child > span {
    margin-left: 0;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0; }
  .main-container ul.pagination > li:last-child > a, .main-container ul.pagination > li:last-child > span {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0; }

.field--name-body img {
  max-width: 100%;
  height: auto; }
.field--name-body .btn {
  white-space: normal; }

.view-advertissing.view-display-id-block_home .view-content,
.view-advertissing.view-display-id-bck_home .view-content,
.pub-container .view-content {
  margin-left: -15px;
  margin-right: -15px; }

@media (min-width: 768px) {
  .main-container .highlighted-bloc {
    min-width: 317px; }
  .main-container .countdown-container .countdown-text {
    margin: 0.5rem 1.5rem 0.5rem 1.5rem; } }
@media (min-width: 992px) {
  .main-container {
    min-height: 600px; }

  .views-exhibitor-pg_all .views-rows,
  .views-session-pg_all .views-rows {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .views-exhibitor-pg_all .views-rows .views-row,
    .views-session-pg_all .views-rows .views-row {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      width: 50%; }
      .views-exhibitor-pg_all .views-rows .views-row > div,
      .views-session-pg_all .views-rows .views-row > div {
        width: 100%; } }
.box-info {
  position: relative;
  padding: 15px 1.5rem 15px 4.5rem;
  border: 1px solid transparent;
  border-color: #f1f1f1;
  border-radius: 4px;
  background-color: #fcfcfc; }
  .box-info:before {
    position: absolute;
    font: normal normal normal 14px/1 FontAwesome;
    display: block;
    content: "";
    font-size: 2em;
    top: calc(50% - 1rem);
    left: 1.5rem;
    color: #cccccc; }
  .box-info.pencil:before {
    content: "\f040"; }
  .box-info.mail:before {
    content: "\f2b7"; }
  .box-info__badge:before {
    content: "\f2c1"; }

.main-container aside .menu li::before {
  display: none; }

.page-concept .main-container aside {
  -webkit-box-ordinal-group: 4 !important;
      -ms-flex-order: 3 !important;
          order: 3 !important; }
.page-concept .main-container main {
  -webkit-box-ordinal-group: 3 !important;
      -ms-flex-order: 2 !important;
          order: 2 !important; }
@media (min-width: 992px) {
  .page-concept .main-container aside {
    -webkit-box-ordinal-group: 3 !important;
        -ms-flex-order: 2 !important;
            order: 2 !important; }
  .page-concept .main-container main {
    -webkit-box-ordinal-group: 4 !important;
        -ms-flex-order: 3 !important;
            order: 3 !important; } }
