html {
    font-family: 'Raleway', sans-serif !important;
}

body {
    font-size: 14px!important;
    line-height: 1.4em!important;
}

html, body{
    overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Raleway', sans-serif !important;
}
h1 {
    /* font-size: 4rem; */
}

h2 {
     font-size: 2rem!important; 
}


p {
    text-align: justify;
}

p.right{
    text-align: right;
}

p.left{
    text-align: left;
}

p.center{
    text-align: center;
}

.handschrift {
    font-family: 'Sacramento', cursive!important;
    font-size: 4.7rem;
    text-align: center;
    line-height: 41px;
    font-style: italic;
    color: #536a8a;
    /* font-weight: normal; */
}

.sichtbar-xs{
    display: none;
}
.sichtbar-sm{
    display: block;
}

.randlos{
    border: 0!important;
}

/*     MENU       */
#logo {
    padding-bottom: 12px;
    float: none!important;
    margin: 2px;
    text-align: left;    
}

.koepfe {
    margin-bottom: -14px;
}

#logo p{
    font-size: 52px;
    display: inline-block;
    margin: 0;
    font-family: 'Baskerville', serif;
}

.frick {
    color: #536a8a !important;
    margin-left: 8px !important;
    margin-top: 17px!important;
  }
  .sindeflingen {
    display: block !important;
    font-size: 20px !important;
    padding-top: 0px;
    padding-left: 418px;
  }

#menu ul li{
    position: relative;
}

#bilderbox, #bilderauswahl {
    padding-right: 2rem;
    padding-left: 2rem;
    margin-top: 60px;
}

#bilderbox img {
    border-radius: 50%;
    /* box-shadow: 11px 16px 8px 0px #f1e4ba; */
    width: 100%;
    max-width: 300px;
}

.imageContainer.col-xs-12.col-sm-4 {
    padding: 20px 16px;
    position: relative;
}

#sectionen img, #titelbild img{
    max-width: 100%;
    border: 1px solid #7f7f7f2e;
}

.headline {
    font-family: 'Sacramento', cursive!important;
    text-align: center;
    color: #536a8a;
    margin-bottom: 0px;
    line-height: 30px;
}

.headline h1 {
    font-size: 14px;
    margin: 0;
  }

#allwrap {
    margin: 10px;
}

#site {
    width: 99%!important;
    max-width: 1200px;
    height: 100%;
    text-align: center;
    padding: 0 0 0 0;
    margin: 0 auto 15px;
}

.caption {
    margin-top: 29px;
    text-align: justify;
}




h1 {
    text-align: left;
    padding-left: 20px;
}

#header #menu-special > ul >li {
    font-family: 'Raleway', sans-serif!important;
}

#header #menu > ul >li > ul {
    padding: 0px 11px 11px 0;
    background-color: #ffffff;
    margin-top: 20px;
    top: -1px;
    z-index: 99;
}

#menu > ul > li > ul {
    left: -16px !important;
    /* position: absolute; */
}
#menu > ul > li > ul li{
    list-style: none;
    width: 154px;
    padding: 3px;
    text-align: left;
}


.titel  {
    text-align: left;
    border-bottom: 2px solid;
}

#menu > ul {
    margin: 0;
    padding: 0;
    margin-bottom: 20px;
    }

#menu > ul > li {
    display: inline;
    margin: 0 20px;
    padding-bottom: 10px;
    }
   
.costumer {
    border: #ffd724 1px dotted;
    border-radius: 5px;
    padding: 7px 7px 7px 12px;
    margin-left: 10px;
}

.toggle {
    text-align: right;
    margin: 0 0em;
    position: relative;
    bottom: 1px;
    padding-left: 16px;
    display: none!important;
}

.toggle img {
    height: 39px;
    margin: 0px 5px 7px;
}
a.sprache {
    float: left;
    bottom: -13px;
    position: relative;
}

a.sprache img {
    height: 12px;
    margin: 0;
}

/*      MENU auf Kleingeräten     */  

#menusmall a {
    display: block;
}
#menusmall {
    width: 50%;
    margin: 0 auto 10px auto;
    border: 1px solid;
    border-right: 6px #fee162 solid;
    padding: 15px;
    margin-top: -28px;
    display: none;
}

#menusmall a.menutrennung {
    border-bottom: 1px solid;
    padding-bottom: 5px;
    margin-bottom: 5px;
}

#menusmall a.menutrennung-top{
    border-top: 1px solid;
    padding-top: 3px;
}

#menusmall a.customer {
    border: #ffd724 1px dotted;
    border-radius: 5px;
    padding: 7px 7px 7px 12px;
    margin: 10px auto;
}

#menusmall img {
    width: 100%;
    max-width: 30px;
  }

  #menusmall-portfolio {
    list-style: none;
    padding: 0;
    display: none; 
    margin-top: 0;
    margin-bottom: 8px;
  }

  #submenuportrait a {
    word-wrap: break-word;
}

  div.submenu  {
    border-top: 1px dotted;
    border-bottom: 1px dotted;
    padding: 5px 0;
    display: none;
  }

  .is-submenu-parent-wedding, .is-submenu-parent-portrait {
    padding-left: 8px;
    }

  .is-submenu-parent-wedding::after, .is-submenu-parent-portrait::after {
    content: "+";
    position: relative;
    left: 2rem;
    font-size: 22px;
    top: 2px;
    line-height: 17px;
    }



.portfolio {
    position: relative;
    top: -51px;
    font-size: 17px;
    left: 80%;
    width: max-content;
  }

  #menu-portfolio {
    list-style: none;
    padding-left: 8px;
    line-height: 20px;
    font-size: 14px;
    border-left: 3px solid #ffd724;
    position: absolute;
    background: white;
    width: max-content;
    margin: 0;
    left: -18px;
  }

  #menu-portfolio li {
    margin: 8px;
  }

/*   CONTNET    */
   /*  index  */



#sectionen .row {
    padding: 33px 0;
}

#sectionen p, .wedding a.more {
    margin: 14px;
    padding: 0 10px;
}

.bild {
    position: relative;
    margin: 0 auto;
}

#unterteilung {
    border-bottom: 6px dotted;
    width: 34px;
    margin: 12px auto;
    }

.passbilder, .weddingproducts, .portraitspecial {
    padding: 20px 10px;
    border-radius: 7px;
    margin: 38px 10px 22px;
    border: 2px solid #efefef;
  }

.passbilder h2 {
    height: 45px;
}

.passbilder p.info {
    min-height: 114px;
}

.portraitspecial p.info{
    min-height: 76px;
}

.passbilder p, .weddingproducts p, .portraitspecial p {
    text-align: center;
    width: 80%;
    margin: 10px auto;
}

.passbilder img {
    /* width: 57%; */
    max-width: max-content;
}

.take-it {
    text-align: center;
    /* color: red; */
    font-weight: bold;
    font-size: larger;
    font-family: 'Spartan', sans-serif !important;
    padding: 5px;
    /* height: max-content!important; */
}

/*   PORTRAIT  */

#bilderauswahl img {
    border: 1px solid #efefec;
    border-radius: 50%;
    width: 100%;
    max-width: 272px;
    
}
#bilderauswahl .headline {
    min-width: min-content;
    height: auto;
    
}

#bilderauswahl .headline > h1 {
    top: -3px;
    position: relative;
    padding-left: 12px !important;
    text-align: center;
    padding-right: 12px;
  }
.imageContainer{
    min-height: 300px;
}

#passbild{
    margin-top: 58px;
    background-color: #efefec;
    padding: 5px;
    padding-left: 10px;
    padding-right: 10px;
    border-left: 4px solid;
    border-right: 4px solid;
    box-shadow: 0 3px 10px -2px;
    border-radius: 25px;
}

#passbild .take-it{
    border: 1px solid;
    width: max-content;
    margin: 17px auto;
}

/*   ueber uns   */

img.team{
    max-width: 100%!important;
}

.img-circle {
    border-radius: 50%;
}

.shadow {
    box-shadow: 3px 5px 10px #f1f1f1;
}

.uberuns h3.uberuns {
    text-decoration: none!important;
    font-size: 1.4rem!important;
}

.uberuns h2.uberuns {
    font-weight: 500;
}

.uberuns img {}

#index.uberuns .sparten img {
    max-width: max-content;
    width: 90%!important;
}

.uberuns #content div {
    padding: 20px;
}


.uberuns #content .sparten p {
    min-height: 200px;
}

/*   bewerbung   */

.bewerbung .firstp{
    padding-right: 20px;
}

.bewerbung .info{
    margin: 0 auto;
}

.bewerbung .service {
    border: 1px solid;
    /* height: 100%; */
    width: 100%;
    padding-right: 5px;
    padding-bottom: 25px;
}

.bewerbung ul {
    list-style-image: url(../img/bulleted_list.png);
}

/*   wedding  */

.second{
    display: none;
}

 #table{
    display: inline;
}

#handy{
    display: none;
    margin: 0 auto;
} 

.wedding
    div {
    padding: 20px;
}

.wedding a.more, .portrait a.more{
    font-style: italic;
    text-align: left;
    color: #2e6093;
    display: block;
    font-family: 'Spartan';
    text-decoration: dotted underline;
}

.wedding
    img {
    margin: 14px !important;
    border-radius: 15px;
    width: 85%!important;
    max-width: 300px;
}
    img.extra {
    width: 75%!important;
}

.weddingproducts img, .portraitspecial img {
    width: 100%;
    max-width: max-content;
}

.pakete {
    margin: 0 auto;
    width: 100%;
}

.paketrep, .jga, .preis {
    border: solid 1px #7f7f7f2e;
    /* border-radius: 7px; */
    margin: 14px;
    text-align: center;
    /* background-color: #d3d3d347; */
    padding: 5px;
    /* box-shadow: 0px 0px 5px 0px #536a8a; */
}

.jga {
    margin: 0 14px;
}

.jga h2 {
    position: relative;
    top: 24%;
}

img.pictorgam {
    border: 0!important;
    max-height: 146px;
}

.angebot {
    height: 100px;
    color: white;
}

.angebot h2 {
    /* text-decoration: underline dotted #536a8a; */
    color: white;
    text-transform: uppercase;
    margin: 0;
    padding: 12px 0;
}
.angebot.silber {
    background-color: #c3c3c3;
}
.angebot.gold {
    background-color: #9e7452;
}

.angebot.platin {
    background-color: #deb569;
}

.angebot.diamant {
    background-color: #b8eaea;
}

.angebot.einzel {
    background-color: #3a87ad;
}

.angebot.aufnahme {
    background-color: #536a8a;
    border-radius: 10px;
}

.angebot p {
    text-align: center;
}

.paketrep ul, .jga ul, .bewerbung ul, .preis ul {
    text-align: left;
    /* list-style: square; */
}

.paketrep li, .jga li{
    color: #7f7f7f;
}

.sichtbar-lg{
    display: block;
}

.sichtbar-md{
    display: none;
}

/*      Kommunion/Konfirmation        */

.design-card {
      border-radius: 8px;
      box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
      overflow: hidden;
      transition: transform 0.2s ease;
      background: white;
    }
    .design-card:hover{
        margin:10px;
        transform: scale(1.52);
    }
    .design-card img{
        width: 80%;
        margin-top: 10px
        
    }
    .design-card .content {
      padding: 1rem;
    }
    .design-card p {
        text-align: center;
    }
    .design-card h3 {
      margin-top: 0;
      background: #f5f5f5;
      border-radius: 5px;
      padding: 3px;
      box-shadow: 0 2px 1px rgba(0, 0, 0, 0.1);
    }
   
    .design-card a {
      display: inline-block;
      margin-top: 0.5rem;
      padding: 0.5rem 1rem;
      background-color: #333;
      color: #fff;
      text-decoration: none;
      border-radius: 4px;
    }
    .design-card a:hover {
      background-color: #555;
    }
    .bestellung{
        text-align:left;
        line-height: 1.7;
    }




/*      Fotoprodukte    */

#pictogram{
    background-color: #f5f5f5;
    padding: 13px 0;
    margin: 20px 0;
}
div#pictogram h2{
    float: none;
    text-align: center!important;
}

div#pictogram p{
    text-align: center;
}
div#pictogram img{
    width: 100px;
    padding: 17px 0px 10px;
}
#pictogramunder{
    margin:10px 0 50px;
}
div#pictogramunder img{
    width: 80px;
}
div

div#pictogramunder ul{
    text-align: initial;
    margin: 17px 16px 20px 40px;
    list-style-image: url(/img/bulleted_list.png);
}
#download h2 {
    float: left;
    /* margin-right: 27%; */
}
#download .mitte{
    float: left;
    position: relative;
    /* left: 38%; */
}

#download .left{
    float: left;
    position: relative;
    /* left: -47%; */
    padding: 37px 16px 10px;
}
div#download img{
    width: 80px;
    border: 1px solid;
}
div#download p{
    text-align: center;
}
#fragen {
    padding-top: 45px;
    clear: both;
}


/*      Fotobooth   */

#fotobooth .box {
    margin: 18px;
    padding: 0;
}

#pictogram {
    background-color: #f5f5f5;
    padding: 13px 14px;
    margin: 20px 0;
}
div#pictogram img {
    width: 80px;
}
.beschreibung {
    padding: 0 14px;
    margin: auto 0;
}
#pictogram ul{
    text-align: left;
}
#pictogram li {
    /* list-style-position: inside; */
    list-style-image: url('../img/bulleted_list.png');
    margin: 7px 7px 7px 64px;
}


/*          Preis        */

table#preis {
    width: 100%;
    padding: 0 9% 0 9%;
    text-align: left;
}   

#preis td{
    vertical-align: top;
}

#preis .lastchild{
    border-bottom: double #2e6093;
}

#preis td:nth-child(2) {
    min-width: 62px;
}

.bew-mini{
    display: none;
}

/*         Footer          */


.footer {
    background-color: #EFEFEC;
    padding: 10px;
}
.footertext {
    text-align: center;
    margin: 0 auto;
    padding-bottom: 20px;
}

.footertext
    p {
    text-align: center;
    margin: 0 auto 15px;
}
.footer
    h3 {
    text-align: center;
    font-size: 1.8rem;
}
ul.social{
    padding: 0;
}
.social li {
    display: inline-block;
    margin: 0 10px;
}

.social
    li a::after {
    content:" ";
}

.social
    img {
    width: 26px;
    background-color: #888e9c;
    border-radius: 5px;
}
.legal
    a,.help a { 
    display: block;
    margin-bottom: 13px;
}

.footer >
    a {
    text-decoration: none;
}

.footer
    a::after {
    content:" »";
}
    a {
    text-decoration: none;
}

/*         impressum          */

.mitte{
    text-align: center;
}
#impressum {
    margin: 0 auto 48px;
    width: 86%;
}

#impressum .text {
    padding-left: 13%;
}

#impressum h3{
    text-align: left;
}

#impressum .text:nth-child(2) {
    border-left: 1px dotted #ced4da;
}
#datenschutzerklaerung {
    width: 90%;
    margin: 41px auto 0;
    }

#datenschutzerklaerung p, #datenschutzerklaerung h3, 
#datenschutzerklaerung ol, #datenschutzerklaerung ul {
    text-align: left;
    list-style: none;
}

.referenzenimpressum {
    max-width: 130px;
    max-height: 27px;
    margin: 20px 20px 20px 18px!important;
    display: block;
}


/* Kontaktformular */

form {
    position: relative;
    width: 80%;
    margin: 0 auto;
    margin-bottom: 50px;
    text-align: left;
    color: black;
}

form p{
  margin-top:25px;
  font-size: smaller;
}

a.underline:hover {
  text-decoration: underline !important;
}

.option {
  font-size:smaller;
  color: #ced4da;
}
legend {
    margin-bottom: 20px;
}

label {
    display: inline-block;
    margin-bottom: 0.5rem;
    margin-right: 10px;
}

.termine {
    margin: auto 15px;
}

.termine label {
    min-width: 112px;
}

.konfession {
    margin-left: 124px;
    margin-bottom: 15px;
}

button {
    border-radius: 12px;
    min-width: max-content;
  }
  
  button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color;
  }
  
  input,
  button,
  select,
  optgroup,
  textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
  }
  
  button,
  input {
    overflow: visible;
  }
  
  button,
  select {
    text-transform: none;
  }

  button,
  [type="button"],
  [type="reset"],
  [type="submit"] {
    -webkit-appearance: button;
  }
  
  button:not(:disabled),
  [type="button"]:not(:disabled),
  [type="reset"]:not(:disabled),
  [type="submit"]:not(:disabled) {
    cursor: pointer;
  }
  
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    padding: 0;
    border-style: none;
  }
  
  input[type="radio"],
  input[type="checkbox"] {
    box-sizing: border-box;
    padding: 0;
  }
  
  input[type="date"],
  input[type="time"],
  input[type="datetime-local"],
  input[type="month"] {
    -webkit-appearance: listbox;
  }

.form-control {
    box-sizing: border-box;
    width: 100%;
    height: 26px;
    margin-bottom: 23px;
    padding: 0.375rem 0.75rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
}

  
  div.form-group:nth-child(4) > div:nth-child(2) {
    margin-left: 0;
    margin-right: 0;
   }

#datum {
    max-width: 116px;
}
#notiz {
    height: auto;
}

#anschrift {
    margin-top: 39px;
}

address,#anschrift > p {
    margin-bottom: 20px;
    line-height: 1.42857143;
    text-align: left;
    margin-left: 60px;
    font-style: normal;
}



a.anfahrtsplan {
    position: relative;
    top: -24px;
    font-size: smaller;
}

.kontaktformular h2 {
    font-style: normal;
    font-weight: 500;
}
#adresse h2 {
    text-align: left;
    margin-left: 60px;
}

#titelbild img {
    max-height: 300px;
    /* width: 100%; */
}

.h-captcha {
    text-align: center;
    margin: 10px 0 34px 0;
}






/*   Media Syle   */

@media screen and (
    max-width:999px) {
    div#pictogram img {
        width: 50px;
    }
    
    .sichtbar-lg {
        display: none;
    }
    .sichtbar-md {
        display: block;
    }

}

@media screen and (
    max-width: 767px) {
    div .toggle {
        display: block!important;
    }
    div #menu-special {
    display: none;
    }
    #menu {
    display: none;
    }
    h1{
      padding:0;
    }
    .portfolio {
    display: none;
      }
    .handschrift {
    font-size: 3rem;
    }
    .sichtbar-sm {
        display: none;
    }
    .sichtbar-xs{
        display: block;
    }
    .passbilder h2 {
        height: auto;
        margin-top: 50px;
    }
    .passbilder p.info {
        min-height: auto;
    }
    .bewerbung .first{
        padding-right: 0px;
    }
    
    .bewerbung .info{
        margin-top: 20px;
    }

    #pictogram p {
        text-align: center;
    }
    #pictogram ul{
        text-align: center;
        padding: 0px;
    }
    #pictogram li{
        list-style-position: inside;
        margin-left: 0px ;
    }
    .jga {
        margin: 54px 14px 0;
    }

    #impressum p, #impressum h3 {
        text-align: center;
    }

    #impressum .text {
        padding-left: 0;
    }
    #impressum .text:nth-child(2) {
        border-left: 0;
    }
    
    #datenschutzerklaerung {
        font-size: smaller;
    }
    
    .referenzenimpressum {
        display: inline;
    }     

    /* Kontaktformular  */ 
  
    address, #anschrift > p {
        text-align: center;
        margin-left: 0;
    }
    .konfession {
        margin: 0 auto;
        margin-bottom: 15px;
    }

    #pictogramunder ul{
        margin-left: 0px;
    }
    
    #download h2{
        float: none;
        margin: 0px;
    }
    #download .mitte{
        left: 50%;
    }
    
    #download .left{
        left: -50%;
    }

}
    /* Preise */

    
@media screen and (
    max-width: 544px) {
    .titel{
        text-align: center;
    }
    .koepfe{
    display: block;
    margin: 0 auto -14px;
    }
    .sindeflingen{
    text-align: center;
    padding-left: 0;
    }
    .first{
    display: none;
    }
    .second{
    display: block;
    }
    #table{
    display: none;
    }
    #handy{
    display: block;
    height: 280px;
    width: auto;
    }
    #flyer{
    height: 57%;
    }

}

@media screen and (
    max-width: 346px) {
    #handy{
        /* height: 38%; */
        width: 90%;
        height: auto;
    }
}