.annuaire-search {
  position: relative; }

.annuaire-search:before {
  font-family: 'Font Awesome 5 Regular';
  content: "\f002";
  display: none; }

.annuaire-search .svg-inline--fa {
  color: rgba(0, 0, 0, 0.7);
  font-size: 22px;
  position: absolute;
  left: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%); }

.annuaire-search .content {
  width: 100%;
  display: block;
  padding: 20px 20px 20px 60px;
  background: rgba(0, 0, 0, 0.05);
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  position: relative;
  margin-bottom: 20px;
  min-height: 66px; }

.annuaire-search .content:hover {
  background: rgba(0, 0, 0, 0.1); }

.annuaire-search .content:focus {
  outline: none; }

.annuaire-search .placeholder {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 60px;
  color: rgba(0, 0, 0, 0.4);
  pointer-events: none;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out; }

.annuaire-search .placeholder.active {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%); }

.annuaire-search .placeholder:not(.active) {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: translateY(-30%);
      -ms-transform: translateY(-30%);
       -o-transform: translateY(-30%);
          transform: translateY(-30%); }

.annuaire ul, .annuaire li {
  margin: 0; }

.annuaire .element {
  float: left;
  padding: 10px; }

.annuaire .element:not(.active) .content:hover {
  cursor: pointer; }

.annuaire .element .content .entry-header {
  position: relative;
  background: #f4f6f8;
  padding: 16px;
  padding: 1rem;
  margin: 0; }

.annuaire .element .content .entry-header:before, .annuaire .element .content .entry-header:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  top: 0;
  right: 0;
  border-left: 16px solid transparent;
  border-left: 1rem solid transparent;
  border-right: 16px solid transparent;
  border-right: 1rem solid transparent;
  border-top: 16px solid transparent;
  border-top: 1rem solid transparent;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out; }

.annuaire .element .content .entry-header:before {
  border-bottom: 16px solid #fff;
  border-bottom: 1rem solid #fff;
  -webkit-transform: translate(50%, -50%) rotateZ(45deg);
      -ms-transform: translate(50%, -50%) rotate(45deg);
       -o-transform: translate(50%, -50%) rotateZ(45deg);
          transform: translate(50%, -50%) rotateZ(45deg); }

.annuaire .element .content .entry-header:after {
  border-bottom: 16px solid #cacaca;
  border-bottom: 1rem solid #cacaca;
  -webkit-transform: translate(-20%, 20%) rotateZ(225deg);
      -ms-transform: translate(-20%, 20%) rotate(225deg);
       -o-transform: translate(-20%, 20%) rotateZ(225deg);
          transform: translate(-20%, 20%) rotateZ(225deg); }

.annuaire .element .content .entry-header .entry-title {
  min-height: 2.2em;
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.7);
  padding-bottom: 0; }

.annuaire .element .content .entry-header .entry-title:after {
  display: none;
  content: ''; }

.annuaire .element .content .entry-content {
  background: #fff;
  padding: 16px;
  padding: 1rem;
  border-left: 1px solid #f4f6f8;
  border-bottom: 1px solid #f4f6f8;
  border-right: 1px solid #f4f6f8; }

.annuaire .element .content .entry-content .title {
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: 4px;
  padding: 0;
  color: rgba(0, 0, 0, 0.4); }

.annuaire .element .content:hover .entry-header:before {
  -webkit-transform: translate(50%, -50%) rotateZ(45deg) scale(1.3) !important;
      -ms-transform: translate(50%, -50%) rotate(45deg) scale(1.3) !important;
       -o-transform: translate(50%, -50%) rotateZ(45deg) scale(1.3) !important;
          transform: translate(50%, -50%) rotateZ(45deg) scale(1.3) !important; }

.annuaire .element .content:hover .entry-header:after {
  top: 4px !important;
  right: 4px !important; }

.annuaire .list-contact {
  margin: 4px 0;
  padding: 0;
  list-style-type: none; }

.annuaire .list-contact .contact {
  font-size: 14px;
  font-weight: 300; }

.annuaire .list-contact .contact .name, .annuaire .list-contact .contact .firstname {
  font-weight: 600; }

.annuaire .list-contact .contact .phone {
  float: right; }

.annuaire .list-contact .contact .icon-phone:before {
  padding-right: 6px; }

.annuaire .list-contact .contact:before {
  display: none;
  content: ''; }

.annuaire .element.size {
  width: 25%; }

@media screen and (max-width: 1080px) {
  .annuaire .element.size {
    width: 33.333333%; } }

@media screen and (max-width: 770px) {
  .annuaire .element.size {
    width: 50%; } }

@media screen and (max-width: 480px) {
  .annuaire .element.size {
    width: 100%; } }

#secondary .annuaire .element {
  padding: 0;
  width: 100%; }
