a {
    text-decoration:none !important;
    outline:none !important;
}

a:not(.btn):not(.blokken-link):not(.parentlink):not(.directlink):not(.mp-back):link, 
a:not(.btn):not(.blokken-link):not(.parentlink):not(.directlink):not(.mp-back):hover, 
a:not(.btn):not(.blokken-link):not(.parentlink):not(.directlink):not(.mp-back):active, 
a:not(.btn):not(.blokken-link):not(.parentlink):not(.directlink):not(.mp-back):visited {
    color: #c00;
}

.floating-text-box .content p, .floating-text-box .content li {
  max-width: 700px;
}

@media only screen and (max-width: 768px) {
  .floating-text-box {
    padding-bottom: 60px;
  }
}

@media only screen and (min-width: 1280px) {
  .floating-text-box .content {
    line-height: 24px;
  }
}

@media only screen and (min-width: 1600px) {
  .floating-text-box .content {
    margin-right: 230px !important;
  }
}

@media only screen and (min-width: 2100px) {
  #bride-werkwijze-content {
    margin-right: 530px !important;
  }

  #bride-werkwijze-content {
    width: 850px;
    padding: 30px 2em;
    font-size: 20px;
    line-height: 28px;
  }

  .floating-text-box .content p, .floating-text-box .content li {
    max-width: 850px;
  }
}


#section_6, #section_32, #section_28 {
  /* For 320w */
  background-position-y: 282px !important;
  background-size: 100% auto !important;
  background-position: center center;
}

@media only screen and (min-width: 360px) {
  #section_6, #section_32, #section_28 {
    background-position-y: 234px !important;
  }
}

@media only screen and (min-width: 601px) {
  #section_6, #section_32, #section_28 {
    background-position-y: 186px !important;
  }
}

@media only screen and (min-width: 962px) {
  #section_6, #section_32, #section_28 {
    background-position-y: 90px !important;
  }
}

@media only screen and (min-width: 1024px) {
  #section_6, #section_32, #section_28 {
    background-position-y: 138px !important;
  }
}

/*#section_11, #section_6, #section_32, #section_16, #section_28, #section_24 {*/
/*  background-size: 100% auto !important;*/
/*  background-position: center center;*/
/*  background-position-y: 138px !important;*/
/*}*/


/* Cheeky hacks for some very specific screens. */
@media only screen and (min-width: 855px) and (min-height: 671px) and (max-height: 1290px) and (max-height: 720px) {
  #section_6 #btn_groepsfoto_afspraak {
    margin-top: 150px;
  }

  #section_11 #btn_groepsfoto_afspraak {
    margin-top: 170px;
  }

  #section_16 #btn_groepsfoto_afspraak {
    margin-top: 320px;
  }

  #section_24 #btn_groepsfoto_afspraak {
    margin-top: 180px;
  }
}

@media screen and (min-width: 1400px) and (max-width: 1599px) {
	#section_6 {
		background-position-y: 90px !important;
	}
}


#the-best-banner-container {
  display: none;
}

@media only screen and (min-width: 1023px) {
  #the-best-banner-container {
    display: initial;
    position: absolute;
    width: 410px;
    height: 300px;
    overflow: hidden;
    z-index: 1000;
    bottom: 300px;
    pointer-events: none;
    transform: translate(100vw, 100vh);
  }

  #the-best-banner-container .the-best-banner {
    background-color: #060606;
    position: absolute;
    bottom: 30px;
    right: 0;
    transform: rotate(-45deg) translate(27%, 0);
    text-align: center;
    text-transform: uppercase;
    text-shadow: 0 2px 2px rgba(0, 0, 0, 0.4);
    padding: 7px 60px;
    font-size: 0.75em;
  }

  #the-best-banner-container .the-best-banner.white-best-banner {
    background-color: #fefefe;
    color: #060606;
  }

  #the-best-banner-container.fly-in {
    animation-name: banner-fly-in;
    animation-duration: 700ms;
    animation-timing-function: cubic-bezier(0.23, 0.15, 0.25, 0.99);
    transform: translate(calc(100vw - 410px), 100%);
  }

  #the-best-banner-container.fly-out {
    animation-name: banner-fly-out;
    animation-duration: 700ms;
    animation-timing-function: cubic-bezier(0.23, 0.15, 0.25, 0.99);
  }

  @keyframes banner-fly-in {
    from {
      transform: translate(100vw, 100vh);
    }
    to {
      transform: translate(calc(100vw - 410px), 100%);
    }
  }
  
  @keyframes banner-fly-out {
    from {
      transform: translate(calc(100vw - 410px), 100%);
    }
    to {
      transform: translate(100vw, 100vh);
    }
  }
  
}

@media only screen and (min-width: 2100px) {
  #the-best-banner-container {
    width: 610px;
    height: 360px;
    bottom: 360px;
  }

  #the-best-banner-container.fly-in {
    transform: translate(calc(100vw - 610px), 100%);
  }
}

.pricing-table td {
  padding-bottom: 2px;
  padding-top: 2px;
  vertical-align: baseline;
}

.pricing-table td:nth-child(1) {
  padding-right: 35px;
}


/* ========= Prohair fade button ========= */
.prohair-button-fade,
#cfverzenden {
  border-radius: 0;
  font-family: Muli;
  border: none;
  backface-visibility: hidden;
  /* Part of hover background color. */
  background: #222 none repeat scroll 0 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  text-decoration: none;
  font-style: normal;
  font-weight: 400;
  overflow: hidden;
  text-transform: uppercase;
  transform: translate(0px, 0px);
  margin-left: 1em;
  margin-right: 1em;
  white-space: normal;
  position: relative;
}

.prohair-button-fade::before,
#cfverzenden::before {
  /* Default background color */
  background: #7c0606 none repeat scroll 0 0;
  bottom: 0;
  content: "";
  height: 200%;
  position: absolute;
  right: -100%;
  transform: skewX(-60deg);
  transition: all 0.4s ease 0s;
  width: 200%;
  z-index: -1;
}

.prohair-button-fade:hover,
.prohair-button-fade:focus,
#cfverzenden:hover,
#cfverzenden:focus {
  /* Hover background color. */
  background: #222 none repeat scroll 0 0;
  color: #fff;
}

.prohair-button-fade:hover::before,
.prohair-button-fade:focus::before,
#cfverzenden:hover::before,
#cfverzenden:focus::before {
  bottom: -100%;
  opacity: 0;
  right: -200%;
}

/* Alternative slightly transparent style. */
.prohair-button-fade.transparent {
  background: rgba(34, 34, 34, .7) none repeat scroll 0 0;
}

.prohair-button-fade.transparent::before {
  background: rgba(124, 6, 6, .7) none repeat scroll 0 0;
}

.prohair-button-fade.transparent:hover {
  background: rgba(34, 34, 34, .7) none repeat scroll 0 0;
}

/* Alternative light style (for bride). */
.prohair-button-fade.light,
body#page-1022 #cfverzenden {
  background: #444 none repeat scroll 0 0;
}

.prohair-button-fade.light::before,
body#page-1022 #cfverzenden::before {
  background: #7f7e7e none repeat scroll 0 0;
  color: #fcfcfc;
}

.prohair-button-fade.light:hover,
body#page-1022 #cfverzendenfade:hover {
  background: #444 none repeat scroll 0 0;
}

/* Alternative light transparent style (for bride). */
.prohair-button-fade.light-transparent {
  background: rgba(68, 68, 68, .7) none repeat scroll 0 0;
}

.prohair-button-fade.light-transparent::before {
  background: rgba(127, 126, 126, .7) none repeat scroll 0 0;
  color: #fcfcfc;
}

.prohair-button-fade.light-transparent:hover {
  background: rgba(68, 68, 68, .7) none repeat scroll 0 0;
}

/* Button sizes. */
@media only screen and (min-width: 320px) {
  .prohair-button-fade.small,
  #cfverzenden {
    padding: 14px 30px;
    font-size: 12px;
  }

  .prohair-button-fade {
    padding: 14px 30px;
    font-size: 14px;
  }

  .prohair-button-fade.large {
    padding: 14px 30px;
    font-size: 16px;
  }
}

@media only screen and (min-width: 768px) {
  .prohair-button-fade.small,
  #cfverzenden {
    padding: 22px 48px;
    font-size: 24px;
  }

  .prohair-button-fade {
    padding: 25px 50px;
    font-size: 26px;
  }

  .prohair-button-fade.large {
    padding: 30px 60px;
    font-size: 30px;
  }
}

@media only screen and (min-width: 1900px) {
  .prohair-button-fade.large {
    padding: 25px 50px;
    font-size: 36px;
  }
}


button, button:active, button:hover, button:focus, .button, .button:active, .button:hover, .button:focus, .btn, .btn:active, .btn:hover, .btn:focus, h1, h2, h3, h4 {
  letter-spacing: 2px;
}


#appointment_window {
  z-index: 999999999;
  padding-left: 0 !important;
}

#appointment_window .modal-dialog {
  width: auto;
  max-width: 800px;
  margin: 10px auto;
}

@media (max-width: 820px) {
  #appointment_window .modal-dialog {
    margin-left: 10px;
    margin-right: 10px;
  }
}

.modal-content {
  background: #060606;
  border: solid #fefefe 1px;
}

#page-1022 .modal-content {
  background: #fff;
  border: none;
}

iframe {
  border: none;
}

.modal-header {
  font-weight: bold;
}

.modal-header .close {
  background-color: #060606;
  color: #fefefe;
  opacity: 1;
}

#page-1022 .close {
  background-color: #fff;
  color: #000;
  opacity: 1;
}

.modal-title {
  font-weight: bold;
}

.modal-header, .modal-footer {
  border: none;
}

#hide_appointment_window, #hide_appointment_window:hover, #hide_appointment_window:active {
  /* mooie groene knop maar leidt af van het afspraak maken */
  /*
  background:#8fbd40;
  border-color:#8fbd40;
  */
  background: #7c0606;
  border-color: #7c0606;
  color: #fefefe;
}


/* dit moet nog een instelling worden */
#menu_1 #menu_root_1 > li > a, #menu_2 #menu_root_2 > li > a, #menu_3 #menu_root_3 > li > a, #menu_4 #menu_root_4 > li > a {
  letter-spacing: 4px;
}

#menu_1 #menu_root_1 .dropdown-menu > li > a, #menu_2 #menu_root_2 .dropdown-menu > li > a, #menu_3 #menu_root_3 .dropdown-menu > li > a, #menu_4 #menu_root_4 .dropdown-menu > li > a {
  letter-spacing: 4px;
}

#menu_root_1 {
  font-weight: 400;
  font-size: 42px;
}


/* fancybox is voor het openen van de foto's */
.fancybox-skin {
  color: #fff;
  background: rgba(6, 6, 6, 0.7);
  /*border: solid #7F7E7E 0px;*/
}


.fa1_hour_table_time {
  text-align: right;
}


.alert-danger {
  background-color: rgba(255, 255, 255, 0.8);
  border: 0;
  margin-left: 170px;
  margin-right: 75px;
}
.alert {
  padding: 10px 20px;
}

/* via menubuilder */
/*
#menu_1 #menu_root_1 > li > a {
  padding: 35px 22px 35px 22px;
}
*/

li {
  list-style-position: inside;
}

#menu_2 {
  background-color: #2222;
}

/* via menubuilder */
/*
#menu_root_2 {
  font-weight: normal;
  font-size: 42px;
}
#menu_2 #menu_root_2 > li > a {
  padding: 35px 22px 35px 22px;
}
*/

@media only screen and (min-width: 1077px) {
  /* Add a little more padding when screen allows it. */
  #menu_2 #menu_root_2 > li > a, #menu_1 #menu_root_1 > li > a {
    padding: 35px 32px 35px 32px;
  }
}

header {
  padding-bottom: 15px;
}

@media only screen and (min-width: 2100px) {
  .diagonal-img-section-wrapper header p {
    font-size: 24px;
  }

  .diagonal-img-section-wrapper header h2 {
    font-size: 52px;
  }

  .shape {
    shape-margin: 60px;
  }

  .diagonal-img-section-wrapper .content {
    padding-right: 120px;
  }

  header {
    padding-bottom: 20px;
  }

  h4 {
    font-size: 46px;
  }

  .prohair-video-layer-txt-container p {
    font-size: 26px;
    line-height: 34px;
  }
}

.visually-hidden {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.btn-contact-afspraak-wrapper {
  margin: 0 auto;
}

@media only screen and (min-width: 1024px) {
  body#page-1022 #menu_logo_container_2 {
    width: 270px !important;
  }
}

#fp-nav {
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: 30px;
}

/* scrollicoon op eerste sectie */
/* Hide the icon on mobile for every page that is not home. */
@media only screen and (max-width: 768px) {
  body:not(#page-1019) .icon-scroll {
    display: none;
  }
}

.icon-scroll,
.icon-scroll:before {
  position: absolute;
  left: 50%;
}

.icon-scroll {
  /*position:absolute;*/
  width: 29px;
  height: 45px;
  margin-left: -24px;
  margin-top: 5px;
  box-shadow: inset 0 0 0 1px #fefefe;
  border-radius: 25px;
  z-index: 99999999999;
  /*bottom:20px;*/

  position: fixed;
  top: 86vh;
}

.icon-scroll:before {
  content: '';
  width: 7px;
  height: 8px;
  background: #fff;
  margin-left: -4px;
  top: 8px;
  border-radius: 4px;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: mouse-icon-scroll;
  animation-name: mouse-icon-scroll;
}

@-webkit-keyframes mouse-icon-scroll {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(25px);
    transform: translateY(25px);
  }
}

@keyframes mouse-icon-scroll {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(25px);
    transform: translateY(25px);
  }
}

@media only screen and (min-width: 768px) {
  .icon-scroll {
    top: 92vh;
  }
}

@media screen and (max-width: 480px) and (orientation: portrait) {
    
    body {
        font-size: 16px !important;
        line-height: 1.42857143 !important;
    }
    
}

@media screen and (min-width: 480px) and (max-width: 799px) and (orientation: landscape) {
    
    body {
        font-size: 16px !important;
        line-height: 1.42857143 !important;
    }
    
}

/* @media only screen and (max-width: 768px) { */
@media only screen and (max-width: 1023px) {
    
  body {
    font-size: 18px;
    line-height: 27px;
  }

  .navigation_toggle {
    width: 110px;
  }
  
}

@media only screen and (min-width: 1800px) {
    
  body {
    font-size: 18px;
    line-height: 27px;
  }
  
}

.diagonal-img-section-wrapper {
  line-height: 27px;
  /*font-size: 18px !important;*/
}

@media only screen and (min-width: 2100px) {
    
    body {
        font-size: 18px;
        line-height: 27px;
    }
    
    .floating-text-box .content {
        font-size: 21px  !important;
        line-height: 29px !important;
    }
    
    .contact-form-wrapper, .cfverplicht {
        font-size: 21px  !important;
        line-height: 29px !important;   
    }
    
    .form-control {
        font-size: 18px  !important;
    }
    
    .cfverplicht {
        font-size: 16px;
    }
    
    .gmap_infowindowbelow {
        font-size: 16px !important;
    }
    
    .diagonal-img-section-wrapper {
        font-size: 21px !important;
        line-height: 29px;
    }

}

@media (max-width: 1023px) {
  .opacitydescr_hidden, .opacitydescr_hidden:hover {
    height: auto !important;
    /*font-size: 14px;*/
    height: 800px !important;
    overflow: hidden;
    /*line-height: 1.42857143;*/
  }

  .opacitydescr {
    max-height: none;
    height: 100%;
  }
}

@media (max-width: 460px) {
  .fa-thumb-box {
    width: 100%;
  }

  /*.opacitydescr_hidden, .opacitydescr_hidden:hover {
    font-size: 18px;
    line-height: 1.42857143;
  }
  */
}

/*
.mp-cover .mp-level.mp-level-open,
.mp-menu ul.sublevel {
  overflow: scroll;
}
*/

/* of 987px */
@media (max-width: 1000px) {
  #menu_personeel_container {
    bottom: 30px;
  }
}


@media only screen and (max-width: 768px) {
  .fotoalbum ul.fa-thumbs {
    margin-top: 80px;
  }
}

@media only screen and (max-width: 1024px) {
  ul.fa-thumbs li {
    width: 50%;
  }
  ul.fa-thumbs {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
}

/* tijdelijk tot responsive menu helemaal goed is */
.directlink {
  line-height: 1.42857143;
  font-size: 0.9em !important;
}

.full-height-section-container {
  min-height: 100vh;
}

@media (max-width: 1023px) {
  .container-mpmenu {
    position: relative;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  /*
  .mp-menu {
    transform: translate3d(120%, 0%, 0) !important;
  }
  */
  .container-mpmenu {
    width: 100vw;
  }
}

.rotate-device-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999999;
  background: black;
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.rotate-device-wrapper .phone {
  height: 50px;
  width: 100px;
  border: 3px solid white;
  border-radius: 10px;
  animation: rotate-device 1.5s ease-in-out infinite alternate;
}

.rotate-device-wrapper .message {
  color: white;
  font-size: 1em;
  margin-top: 40px;
}

@keyframes rotate-device {
  0% {
    transform: rotate(0deg)
  }
  50% {
    transform: rotate(-90deg)
  }
  100% {
    transform: rotate(-90deg)
  }
}

@media only screen and (max-device-width: 812px) and (orientation: landscape) {
  .rotate-device-wrapper .phone, .rotate-device-wrapper .message {
    display: block;
  }
}

/* Menu fix for first section of kapsalon page. */
body#page-1021 .navigation_toggle.black {
  border-color: #000;
}

body#page-1021 .navigation_toggle.black:hover, .navigation_toggle.black:focus {
  /*background-color: #000;*/
}

body#page-1021 .navigation_toggle.black .icon-bar {
  background-color: #000;
}

body#page-1021 .navigation_toggle.black .nav-btn-text {
  color: #000;
}

#mobile-menu-appointment-button {
  margin: 0;
  display: flex;
  justify-content: center;
  padding: 20px 0;
}


#mp-menu.dirtydirty {
  -webkit-transform: translate3d(240%, 0%, 0);
  -moz-transform: translate3d(240%, 0%, 0);
  transform: translate3d(240%, 0%, 0);
}

.vacation-message {
    width: 500px;
    max-width: 500px;
}