/*
#------------------------------------------------------------------------
# Magazine - January Joomla! template (for Joomla 2.5)
#
# Copyright (C) 2007-2013 Gavick.com. All Rights Reserved.
# License: Copyrighted Commercial Software
# Website: http://www.gavick.com
# Support: support@gavick.com 
*/

/* Here you can include your override CSS styles */

/* FEDIR USW. */

.d1,.d1 td,.d1 th {
    border: 0 solid #ccc
}

.d1,.d2,.d3 {
    font-size: 14px;
    line-height: 14px
}

.d1 tr {
    vertical-align: top
}

.d2 td,.d2 th,.d3 td,.d3 th {
    border: 1px solid #ccc;
    padding: 0 5px
}

.d2 tr,.d3 tr {
    vertical-align: middle
}

.d3 {
    table-layout: fixed
}

.d1 th.tdfixed,.d2 td.tdfixed,.d3 td.tdfixed {
    white-space: normal;
    width: 150px;
    height: 50px
}

.d3 td,.d3 th {
    height: 50px;
    white-space: nowrap;
    width: 50px
}

table .d3 th.tdfixed,table td.tdfixed {
    display: none
}

.scrolldiv:hover {
    cursor: pointer
}

.scrolldiv {
    overflow: scroll;
    width: 95%
}

.scrolltablecenter {
    width: 95%;
    margin: 0 auto
}

.scrolltablecenter tbody td p {
    margin: 2px!important
}

@media only screen and (min-width:600px) {
    .float-left {
        float: left;
        margin: 5px
    }

    .float-right {
        float: right;
        margin: 5px
    }
}

@media only screen and (max-width:600px) {
    .float-left,.float-right {
        display: block;
        margin: 5px auto
    }
}

.blogcontent .items-row .item img.bs.span1,.blogcontent .items-row .item img.bs.span10,.blogcontent .items-row .item img.bs.span11,.blogcontent .items-row .item img.bs.span2,.blogcontent .items-row .item img.bs.span3,.blogcontent .items-row .item img.bs.span4,.blogcontent .items-row .item img.bs.span5,.blogcontent .items-row .item img.bs.span6,.blogcontent .items-row .item img.bs.span7,.blogcontent .items-row .item img.bs.span8,.blogcontent .items-row .item img.bs.span9 {
    width: 100%!important;
    height: auto!important;
    border: 0 solid #000!important
}

.bs {
    padding: 5px;
    margin-top: 5px
}

@media screen and (min-width:1220px) {
    .bs.span1 {
        width: 8%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:800px) and (max-width:1219px) {
    .bs.span1 {
        width: 16%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:550px) and (max-width:799px) {
    .bs.span1 {
        width: 30%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:420px) and (max-width:549px) {
    .bs.span1 {
        width: 47%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (max-width:419px) {
    .bs.span1 {
        width: 90%;
        display: block;
        vertical-align: top;
        margin: 0 auto
    }
}

@media screen and (min-width:1220px) {
    .bs.span2 {
        width: 20%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:800px) and (max-width:1219px) {
    .bs.span2 {
        width: 22%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:600px) and (max-width:799px) {
    .bs.span2 {
        width: 30%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:420px) and (max-width:599px) {
    .bs.span2 {
        width: 47%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (max-width:419px) {
    .bs.span2 {
        width: 90%;
        display: block;
        margin: 0 auto;
        vertical-align: top
    }
}

@media screen and (min-width:1280px) {
    .bs.span3 {
        width: 24%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:1000px) and (max-width:1279px) {
    .bs.span3 {
        width: 23%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:800px) and (max-width:999px) {
    .bs.span3 {
        width: 31%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:600px) and (max-width:799px) {
    .bs.span3 {
        width: 47%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (max-width:599px) {
    .bs.span3 {
        width: 90%;
        display: block;
        margin: 0 auto;
        vertical-align: top
    }
}

@media screen and (min-width:1000px) {
    .bs.span4 {
        width: 32%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:800px) and (max-width:999px) {
    .bs.span4 {
        width: 31%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (min-width:600px) and (max-width:799px) {
    .bs.span4 {
        width: 47%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (max-width:599px) {
    .bs.span4 {
        width: 90%;
        display: block;
        margin: 0 auto;
        vertical-align: top
    }
}

@media screen and (min-width:600px) {
    .bs.span5 {
        width: 41%;
        display: inline-block;
        vertical-align: top
    }
}

@media screen and (max-width:599px) {
    .bs.span5 {
        width: 90%;
        display: block;
        vertical-align: top;
        clear: both!important
    }

    p.span {
        clear: both
    }
}

@media screen and (min-width:600px) {
    .bs.span6 {
        width: 48%;
        display: inline-block;
        vertical-align: top
    }

    licolumn2 {
        -moz-column-count: 2;
        -webkit-column-count: 2;
        column-count: 2
    }
}

@media screen and (max-width:599px) {
    .bs.span6 {
        width: 90%;
        display: block;
        margin: 0 auto;
        vertical-align: top
    }
}

@media screen and (min-width:800px) {
    .bs.span7,.bs.span8 {
        width: 58%;
        display: inline-block;
        vertical-align: top
    }

    .bs.span8 {
        width: 66%
    }

    .bs.span10,.bs.span11,.bs.span12,.bs.span9 {
        width: 75%;
        display: inline-block;
        vertical-align: top
    }

    .bs.span10,.bs.span11,.bs.span12 {
        width: 83%
    }

    .bs.span11,.bs.span12 {
        width: 91%
    }

    .bs.span12 {
        width: 99%
    }
}

@media screen and (max-width:800px) {
    .bs.span10,.bs.span11,.bs.span12,.bs.span7,.bs.span8,.bs.span9 {
        width: 96%;
        display: block;
        vertical-align: top;
        margin: 0 auto
    }
}

@media screen and (min-width:700px) {
    .bs.span1 img.span,.bs.span10 img.span,.bs.span11 img.span,.bs.span12 img.span,.bs.span2 img.span,.bs.span3 img.span,.bs.span4 img.span,.bs.span5 img.span,.bs.span6 img.span,.bs.span7 img.span,.bs.span8 img.span,.bs.span9 img.span {
        width: 100%;
        border: 0 solid #000;
        margin: 0
    }
}

@media screen and (max-width:699px) {
    .bs.span1 img.span,.bs.span10 img.span,.bs.span11 img.span,.bs.span12 img.span,.bs.span2 img.span,.bs.span3 img.span,.bs.span4 img.span,.bs.span5 img.span,.bs.span6 img.span,.bs.span7 img.span,.bs.span8 img.span,.bs.span9 img.span {
        max-width: 100%;
        display: block;
        border: 0 solid #000;
        margin: 0 auto;
        text-align: center
    }

    .bs.span1,.bs.span10,.bs.span11,.bs.span12,.bs.span2,.bs.span3,.bs.span4,.bs.span5,.bs.span6,.bs.span7,.bs.span8,.bs.span9 {
        max-width: 100%
    }
}

.h1,.h2,.h3 {
    font-weight: 700
}

.h1 {
    font-size: 30px;
    color: #598473
}

.h2,.h3 {
    font-size: 20px
}

.h3 {
    font-size: 18px;
    color: #000
}

.bg-gray {
    background-color: rgba(127,255,193,.08)
}

.r {
    background-color: #86b1a0
}

.i,.i.bottom {
    display: block;
    line-height: inherit;
    position: inherit;
    transition: all .6s ease 0s;
    z-index: inherit;
    border: 0 solid #fff
}

.i.bottom {
    background-color: #1e77e4;
    border-radius: 0
}

.i {
    border-radius: 50%
}

.social li:active,.social li:focus,.social li:hover {
    transform: rotateY(180deg)
}

.social li:active .i,.social li:focus .i,.social li:hover .i {
    transform: rotateY(180deg);
    border-radius: 50%
}

.social li:active .i.botton,.social li:focus .i.bottom,.social li:hover .i.bottom {
    transform: rotateY(180deg);
    border-radius: 0
}

.social li:first-child {
    margin-left: 0
}

.social,h2.class_h1 {
    margin-top: 0;
    text-align: center
}

.social {
    float: none;
    margin-bottom: 0
}

lisocial li,lisocial.bottom li {
    display: inline-block;
    float: none;
    margin-right: 5px;
    margin-top: 2px;
    vertical-align: top
}

lisocial.bottom li {
    margin-top: 0
}

lisocial {
    padding-inline-start: 10px
}

lisocial.bottom {
    padding-inline-start: 0
}

h2.class_h1 {
    color: #7a7d7b;
    font-size: 28px;
    /*text-transform: uppercase*/
}

#tab-1 table,.vm-orders-order table,table .stable1,.adminlist,.stable {
    width: 100%;
    border-spacing: 0
}

#tab-1 tr:nth-child(2n),.str:nth-child(2n),.vm-orders-order tr:nth-child(2n) {
    background: #fff
}

#tab-1 tr:nth-child(1),.str:nth-child(1),.vm-orders-order tr:nth-child(1) {
    background: #ececec!important
}

#tab-1 tr:hover,.str:hover,.vm-orders-order tr:hover {
    background: #ccc
}

#tab-1 table td,.stable td,.stable1 td,.vm-orders-order table td,.adminlist td {
    padding: 5px;
    border: 1px solid #ececec
}

.stable1 tr:nth-child(2n),.adminlist tr:nth-child(2n) {
    background: #fff
}

.stable1 tr:nth-child(2n+1),.adminlist tr:nth-child(2n+1) {
    background: #eee
}

.stable1 tr:hover,.adminlist tr:hover {
    background: #89b7a6
}

.stable1 th,.adminlist th {
    background: #868686;
    color: #ffff;
    /*text-transform: uppercase;*/
    border: 1px solid #9e9e9e
}

@media screen and (min-width:800px) {
    .stable1 th,.stable,.stable p,.stable1,.stable1 p {
        font-size: 14px!important
    }
}

@media screen and (min-width:600px) and (max-width:799px) {
    .stable1 th,.stable,.stable p,.stable1,.stable1 p {
        font-size: 12px!important
    }
}

@media screen and (max-width:599px) {
    .stable1 th,.stable,.stable p,.stable1,.stable1 p {
        font-size: 10px!important
    }
}

.tabline.active .informer,.tabline.hidden .informer {
    opacity: 1;
    visibility: visible;
    transition: all 500ms ease-out
}

.tabline.hidden {
    transition: all 300ms ease-out;
    position: relative;
    background: #868686
}

.tabline.active {
    background: #89b7a6
}

.tabline.hidden p {
    margin-bottom: 0
}

.tabline.hidden .informer {
    visibility: hidden;
    overflow: hidden;
    height: 0;
    opacity: 0
}

.tabline.active .tabline-button {
    background: url(../images/close.png)no-repeat 0 0
}

.tabline.active .tabline-button,.tabline.hidden .tabline-button,.tabline.hidden .tabline-button:hover {
    width: 100%;
    height: 30px;
    background-position: 50% 50%;
    transition: all 300ms ease-out
}

.tabline.hidden .tabline-button {
    background: url(../images/open.png)no-repeat 0 0
}

.tabline.hidden .tabline-button:hover {
    background: url(../images/open-green.png)no-repeat 0 0;
    cursor: pointer
}

#gkMainbody .h4 {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    text-decoration: none
}

.content_rating,.form-inline {
    width: 200px;
    display: inline-block
}

#rating .controls {
    visibility: hidden
}

#rating:hover .controls {
    visibility: visible!important
}

#rating label {
    padding-right: 1.5px
}

#rating {
    position: absolute;
    left: 0;
    top: 0
}

.form-inline .radio {
    position: relative;
    font-size: 5px
}

.form-inline .radio:before {
    color: #000;
    border: 0 solid red;
    content: "";
    position: absolute;
    top: -10px;
    width: 16px;
    height: 16px;
    background: #fff url(../images/rating_star_blank.png)no-repeat 0 0;
    opacity: 1
}

.form-inline .radio.active:before,.form-inline .radio:hover:before {
    background: #fff url(../images/rating_star_hover.png)no-repeat 0 0
}

.form-inline .btn-mini {
    line-height: 30px;
    height: 30px;
    display: inline-block;
    float: none;
    margin: 0
}

.form-inline select {
    color: red;
    font-size: 14px;
    line-height: 19px
}

.contentratingall {
    position: relative
}

#gkPageContent .shariff-button a {
    display: block;
    padding-left: 30px;
    text-transform: none;
    color: #fff!important;
    text-decoration: none;
    font-size: 13px
}

.shariff-button {
    width: 100px;
    height: 25px;
    border: 0 solid #ccc;
    display: inline-block;
    margin: 10px 5px;
    text-decoration: none;
    border-radius: 4px
}

.shariff-button.facebook,.shariff-button.twitter {
    background-color: #55acee;
    background-image: url(/images/social/t.png);
    background-repeat: no-repeat;
    background-position: 0 center;
    background-size: 30px
}

.shariff-button.twitter:hover {
    background-color: #26ace0
}

.shariff-button.facebook:hover {
    background-color: #4273c8
}

.shariff-button.facebook {
    background-color: #3b5998;
    background-image: url(/images/social/f.png)
}

/* Menü */
#gkMainMenu {
  /*text-transform: uppercase;*/
  /*background: #ffffff;*/
}

/* Child-Menu */
.gkMainMenu1 .gkMenu > ul li div.childcontent, .gkMainMenu2 .gkMenu > ul li li div.childcontent {
    border: 1px solid #7a7d7b;
    background-color: #89b7a6;
    padding: 15px 0 15px 0;
    box-shadow: 10px 10px 5px #7a7d7b;
}
.gkMainMenu1 .gkMenu > li div.childcontent li, .gkMainMenu2 .gkMenu > li li div.childcontent li {
  border: none;
}

.gkMainMenu1 .gkMenu > ul li div.childcontent li:hover, .gkMainMenu2 .gkMenu > ul li li div.childcontent li:hover{
  background-color: #7a7d7b;  
}

/* Menüpunkte */
.gkMenu > ul > li {
    /* font-weight: 600; */
    /* border-bottom: solid 1px #e5e5e5; */
    text-align: left;
}

/* Menüpunkte */
.gkMenu ul li {
  font-size: 17px;
  line-height: 1.25;
  padding: 6px 0 6px 0;
}

.gkMenu li div.childcontent li {
  font-size: 16px;
}

.gkMenu > li div.childcontent a img {
  padding-right: 10px;
}

/* Menüpunkte */
.gkMenu > ul > li > a {
  color: #fff;
}

/* Menüpunkte */
.gkMenu a:hover {
 /* color: #363636; */
  color: #363636;
}

.gkMenu a:active, .gkMenu a:focus, .gkMenu li.active > a, .gkMenu > ul > li.active:first-child > a {
  color: #363636;
  /*font-weight: bold;
  color: #fff;*/
}

/* Box? */
.box li {
  padding: 0;
}

/* Flaggen und andere Felder ganz links */
div.mod-languages > ul.lang-block > li,
div.mod-languages > ul.lang-inline > li {
  margin: 0;
}

#gkSocial {
  margin: 0;
}

#gkLinks a, #gkSocial a {
  border-bottom: none;
}

@media (max-height: 480px) {
#gkSocial { display: block; }
}

@media (max-height: 320px) {
#gkSocial { display: none; }
}

#gkSearch {
  margin-top: 0;
  border-top: none;
  border-bottom: none;
}

#gkSearch form {
background-color: #89b7a6;
/*border: 1px solid #7a7d7b;*/
}

#gkSearch .mod-finder input[type='text'] {
padding: 0 1px;
}

#gkSearch #mod-search-searchword {
  outline: none!important;
  background-color: #89b7a6;
  border-bottom-color: #7a7d7b;
}

#gkBackToTop {
  border-top: none;
}

#gkBackToTop:hover, #gkToolbar a.gk-icon-search:hover, #gkToolbar a.gk-icon-email:hover {
  background: #89b7a6;
}

/* Überschriften */
.box .header, h1 {
  color: #7a7d7b  
}

h2, h3, h4, h5, h6 {
  /*color: #264B1D;*/
  color: #89b7a6;
}

h1, h2, h3, h4 {
  margin: 32px 0 16px 0;
  line-height: 1.25;
  text-align: left;
  font-weight: 600;
}

h1 {
  /*font-size: 36px;*/
  font-size: 28px;  
  margin-top: 0;
  /*text-transform: uppercase;*/
  text-align: center;
  /*clear: both;*/
}

h2 {
  /*font-size: 26px;*/
  font-size: 24px;
  /*clear: both;*/
}

h3 {
  /*font-size: 22px;*/
  font-size: 20px;
}

h4 {
  /*font-size: 16px;*/
  font-size: 17px;
}

article header {
  margin: 0;
}

/* Überschriften immer schlank halten */
/*h1 strong, h2 strong, h3 strong, h4 strong, h6 strong  {
  font-weight: 300;
}*/

h5 strong {
  font-weight: 600;
}

h1 > br:first-child, h2 > br:first-child, h3 > br:first-child, h4 > br:first-child, h5 > br:first-child, h6 > br:first-child {
  display: none;
}

/* Fließtext */
p, section > header div p, h5, h6 {
  margin: 16px 0 16px 0;
  line-height: 1.5;
  font-size: 17px;
  font-weight: 400;
  text-align: left;
}

p.home {
  margin: 32px 20% 32px 20%;
}

p.small_menu_left {
  font-size:14px;
  background-color:#f0f0f0;
  text-align:center;
  padding:10px;
  margin-bottom:25px;
}

p.small_menu {
  font-size:14px;
  text-align:right;
}

p.small_menu:before {
    content: '?';
    display: inline-block;
    font-family: sans-serif;
    font-weight: bold;
    text-align: center;
    width: 2.2ex;
    height: 2.2ex;
    font-size: 1.8ex;
    line-height: 2.2ex;
    border-radius: 1.8ex;
    margin-right: 4px;
    padding: 1px;
    color: #fff;
    background: red;
    border: 1px solid #5f5f5f;
    text-decoration: none;
}

@media (max-width: 480px) {
p.home {
  margin: 32px 0 32px 0;
}
}

p:empty {
  display: none;
}

p.error, li.error {
  font-size: 14px;
  color: red;
  line-height: 150%;
  font-weight: bold;
}

p.info, li.info {
  font-size: 14px;
  color: #000;
  line-height: 150%;
  font-weight: bold;
}

h6 {
  font-weight: 600;
  font-style: italic;
}

/* Fließtext-Klasse .answer */
/*p.answer {
  margin-left: 16px;
}*/

p.justify {
  text-align: justify;
}

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

tdp {
  margin: 16px 32px 16px 0;
}


/* Bildabstand */
.item-page img[align="right"] {
  padding: 0 0 0 32px;
}

.item-page img[align="left"] {
  padding: 0 32px 0 0;
}

img.pull-left {
  float: left;
  padding: 0 16px 16px 0;
}

img.pull-center {
  display: block;
  margin: 0 auto;
  padding: 16px 0 16px 0;
}

img.pull-right {
  float: right;
  padding: 0 0 16px 16px;
}

img.one-third {
  max-width: 33% !important;
  height:auto !important;
}

/* Suchergebnisse */
legend {
  font-size: 16px;
}

.com-finder__search .form-inline {
    width: 100%;
    display: block;
}

#search-form fieldset.word .btn {
  background: #89b7a6;
}

#search-results .result__taxonomy {
display:none;
}

#search-results .result__title-url {
font-size:11px;
}

#search-results .result__item+.result__item {
border-top: 1px solid #e5e5e5;
}

/* Kategorien */

section.category table.com-content-category__table.category.table {
display: block;
margin:0 0 20px 0;
}

section.category table.com-content-category__table.category.table tbody {
display: block;
}

section.category table.com-content-category__table.category.table tr {
display: block;
}

section.category table.com-content-category__table.category.table th.list-title {
  display:list-item;
  list-style-type:disc;
  margin: 0 32px 0 0;
  padding-left: 20px;
  background: #fff;
  border:none;
  border-bottom: 1px solid #e5e5e5;
  text-align:left;
  font-weight:normal;
}

section.category table.com-content-category__table.category.table th.list-title a {
  display:list-item;
  list-style-type:disc;
  color: #5f5f5f!important;
}

section.category table.com-content-category__table.category.table th.list-title a:hover {
  text-decoration: underline!important;
  text-decoration-color: #da7a44!important;
  text-decoration-thickness: 2px!important;
  text-underline-offset: 3px!important;
}

/* Tabellen */
td{
  padding: 0 6px 0 0;
  word-wrap: break-word;
}

td.list-title {
  display:list-item;
  list-style-type:disc;
  margin: 0 32px 0 16px;
}

.category {
  margin: 16px 0 0 26px; 
}

tr:hover {
  background: transparent;
}

th {
  background: #89b7a6;
  color: #fff;
  text-transform: none;
  border: 1px solid #89b7a6;
  padding: 8px 10px 8px 10px;
  vertical-align: center;
  font-weight: 600;  
  text-align: center;
}

th p {
  font-weight: 600;  
  text-align: center;
  margin: 0;
}

th a {
  color: #fff!important;
  text-decoration: none!important;
}

th span {
  color: #fff!important;
}

.with_border {
  margin-top: 20px;
  table-layout: fixed;
}

.with_border td{
  border: 1px solid #89b7a6;
  padding: 0 10px 0 10px;
  vertical-align: top;
}

.with_border tdp {
  margin: 16px 0 16px 0;
}

.with_border tbody tr th {
  padding: 0 10px 0 10px;
  vertical-align: top;
}

.with_border tbody tr th p {
  margin: 16px 0 16px 0;
}

@media screen and (max-width: 480px) {
  .with_border p {
    font-size: 10px;
  }
  .with_border td{
    padding: 3px;
  }
  .with_border tdp {
    margin: 0;
  }
}


/*.with_border thead th:first-child {
  background: transparent;  
  border-left: none;
  border-top: none;
}*/

/* Schriftgröße auch in Aufzählungen auf 16px setzen */
section.categories-list li > div p, section.category .children li > div p, section.blog .children li > div p {
  font-size: 16px;
}

/* Aufzählungen */
div#gkContentWrap li ul {
  padding-top:12px;
  padding-left:40px;
}

section.categories-list  li:first-child, section.blog .items-row article header li {
  border-top: 1px solid #e5e5e5;
}

.item-page ul {
  list-style: disc;
  padding-left: 20px!important;
  line-height: 1.5;
}

.item-page ul > ul {
  list-style: circle;
}

.item-page ul > ul > ul {
  list-style: square;
}

.item-page li {
  margin: 8px 32px 8px 0; 
  line-height: 1.25;
}

/* Kontaktformular */
.ccms_form_element {
  padding-left: 0;
}

/* Kontaktformular */
.ccms_form_element label {
  font-weight: 400;
  width: 25%;
}

.ccms_form_element label[for] {
  width: auto;
}

/* Kontaktformular */
.cfdiv_checkboxgroup label:first-child {
  font-weight: 400 !important;
  width: 25%;
}

.cfdiv_radio label:first-child {
  font-weight: 400 !important;
  width: 25%;
}

.small-message, .error-message {
  margin-left: 25%;
}

/* Kontaktformular */
label {
  font-size: 14px;
  padding-right: 10px;
  text-transform: none;
}

.ui.form .field>label, .ui.checkbox label, .ui.checkbox+label, .ui.form select, .semanticui-body ::selection, .ui.dropdown .menu .selected.item, .ui.dropdown.selected, .ui.dropdown .menu>.item {
  color: #5f5f5f;
}

.ui.form .inline.field>label, .ui.form .inline.field>p, .ui.form .inline.fields .field>label, .ui.form .inline.fields .field>p, .ui.form .inline.fields>label {
  color: #5f5f5f;
}

.ui.form .grouped.fields>label {
  color: #5f5f5f;
}

.ui.form .inline.fields>label {
  margin: .3em 1em 0 0;
}

.ui.form .fields>.multifield {
  padding-left:.5em;
  padding-right:.5em;
}

button, .button, input.button, span.button, button.button, div.button, input[type="submit"], input[type="button"], .pagenav-prev a, .pagenav-next a, .readon, .pagination li a, .pagination li span {
  background: #89b7a6;
}

button.ui.button.green,
a.ui.button.green {
  background: #89b7a6;
  text-decoration:none!important;
  color:#fff!important;
  float:none;
  margin-bottom:10px;
}

button.ui.button.green:focus,
button.ui.button.green:active,
a.ui.button.green:focus,
a.ui.button.green:active {
  background: #89b7a6;
}

button.ui.button.green.inline,
a.ui.button.green.inline {
  display:inline-block;
  border-radius:50%;
  height:auto;
  line-height:1.25;
  font-weight:bold;
  padding:30px;
}

a.ui.button.green span {
  color: red;
  font-size: 150%;
}

button.ui.button.red,
a.ui.button.red {
  float:none;
  margin-bottom:10px;
}

button.ui.button.green:hover,
a.ui.button.green:hover {
  background: #b4b3b3;
}

.ui.fluid.container {
  margin-top: 28px;
}

.ui.form .field.half {
  max-width: 25%;
}

.ui.form .field.third {
  max-width: 15%;
}

/* Kontaktformular Multi-Upload-Link */
div.multi-upload-add-attachment-link {
  padding-left: 25%!important;
  margin-left: 10px!important;
}
div.ccms_form_element.cfdiv_widget {
  line-height: 1;
  margin-bottom: 10px;
}

/* Kontaktformular ReCaptcha */
div#recaptcha {
  max-width: 100%;
  display: inline-block
}

div.g-recaptcha {
  margin: 0 0 1em;
}

/* Kontaktformular dickere Rahmen */

.ui.segment {
border: 2px solid rgba(34,36,38,.15);
}

/* Kontaktformular transparent */

.ui.tabular.menu .active.item, .ui.segment {
  background: none transparent;
}

/* Kontaktformular Menü Umbruch */

.ui.menu {
  flex-wrap: wrap;
}

/* Kontaktformular Texte */

.ui.segment h3 > div.sub.header {
  font-size: 14px;
  color: red;
  line-height: 150%;
}

/* Kontaktformular Segment-Unterteiler */
.ui.segment .ui.divider:not(.vertical):not(.horizontal) {
  border-top: 4px solid rgba(34,36,38,.15);
}

/* Kontaktformular kleine Erklärungstexte */

.ui.segment small.field-desc {
  font-size: 100%;
}

/* Kontaktformular Zeilenhöhe */

.ui.form .field, .ui.segment {
  line-height: 150%;
}

/* Kontaktformular Checkbox Label */

.ui.checkbox label {
  font-size: .92857143em;
}

/* Banner */
.bannergroup:first-line,
.bannergroup_text:first-line {
  color: #fff;
}

div.banneritem {
  text-align: center;
  background: rgb(55,81,70);
  color: #fff;
  font-size: 14px;
  padding: 8px;
  line-height: 1.2;
}

div.banneritem a {
  font-size: 24px
}

#gkBannerTop {
  margin: 30px 10px 30px 5%;
}

/* Strich vom Social API entfernen */
#gkSocialAPI {
  border-top: none;
  margin:0;
  padding:0;
}

/* Strich vor Modulen entfernen */
#gkMainbody + #gkMainbodyBottom {
  border-top: none;
  padding-top:0;
}

/* Block rechts und unten: */
body {
  color: #5f5f5f;
  font-size: 17px;
  /*background: #f5fbef;*/
  /*background: #89b7a6;*/
  /*background: #f0f0f0 url(../images/farbverlauf.png) repeat-x;*/
  background: #f0f0f0;
}

/* Block links: */
html {
  font-family: arial, sans-serif;
  background: #f0f0f0;
  -webkit-font-smoothing: antialiased;
}

.gkPage {
padding:0;
}

@media (max-width: 480px) {
.gkPage, #gkFooter {
padding: 0!important;
}
}

/* Block oben: */

section#gkPageTop {
  max-height:auto;
  overflow:visible;
}

#gkPageTop {
  /*background: #f5fbef;*/
  /*background: #ffffff;*/
  background:#f0f0f0;
}

/* Block Menü (und Fließtext): */
#gkPageContent {
  /*border-top: 1px solid #e5e5e5; */
  padding-right: 0;
}

/* Content-Block */
#gkPageContent {
min-height:459px;
background-color: #89b7a6;
}

/* Content-Block Fließtext: */
#gkContent {
  /*background: url(../images/wappen.png) center top no-repeat, url(../images/schatten.png) repeat-x;*/
  background-color: #fff;
}

/* Block Menü */
#gkContent.gkColumnLeft + #gkInset {
  padding: 10% 2% 2% 3%;  
}

/* Padding Fließtext */
#gkContentWrap {
padding: 0 50px 50px 25px;
}

@media (max-width: 1024px) {
#gkContentWrap {
margin-top: 20px;
padding: 0 10px!important;
}
}

/* Rahmen oben vor Content entfernen */
#gkContentWrap > section:first-child {
  border-top: 0;
}

/* Logo zentriert */
#gkLogo {
  height: auto;
  width: 100%;
  margin: 0 auto 0 auto;
  padding: 0 0 0 0;
}

#gkLogo img {
  margin: 0 auto 0 auto;
}

/* Logo links */
/*#gkLogo {
  height: auto;
  width: auto;
  margin: 0 5% 0 0;
  padding: 10px;
}*/

/* Logo ohne Farbveränderung beim Darüberfahren mit der Maus */
#gkLogo:hover {
  background-color: transparent;
}

/* Kein Strich vorm Footer */
#gkFooter > div {
  border-top: 0;
}

#gkPageContent + footer {
  margin-top: 0 !important;
}



#gkFooter {
  padding:0;
  font-size: 14px;
}

#gkFooter ul {
  float: left;
}
#gkFooter li {
  line-height: 1.15;
}

#gkFooter > div {
  /*background: #ffffff;*/
  margin: 0 0 30px 0;
  /*height: 30px;
  padding: 15px 50px 5px 50px;*/
  padding:16px 0 16px 0;
}

#gkFooter > div > p {
  display: none;
}

/* Die Links im Footer */
#gkFooterNav a {
  color: #5f5f5f;
}

.plg_system_eprivacy_module div.plg_system_eprivacy_accepted button, .plg_system_eprivacy_module div.plg_system_eprivacy_declined button {
  color: #5f5f5f!important;
  background:transparent!important;
}

/* Footer-Logo */
#gkFooterNav div.custom {
  max-width: 40%;
  float:left;
}

#gkFooterNav div.custom p {
  margin:0 60px 30px 0;
}

#gkFooterNav div.custom img {
  max-width: 100%;
}

@media (max-width:820px) {
  #gkFooterNav div.custom {
max-width:100%;
}
}


/* Komplette Seite zentriert */
/*body[data-layout="left"] .gkPage {
  margin: 0 auto 0 auto !important;
}*/

/* Fehlerseite */
div#errorDescription {
  background: #f5fbef;
  padding: 0 0 10px 50px;
  margin: 25px;
}

div#errorboxbody {
  background: #f5fbef;
  padding: 0 50px 0 50px;
}

#gkLogo img {
  max-width: 100%!important;
}

/* Wiki-Menu */

.nav {
display:block;
}

.box .mod-menu ul {
margin-left:0;
}

.mod-menu li a {
display:block;
}

.wikimenu.box .header, .box .header {
  padding: 0;
}

#gkContentWrap + #gkSidebar {
  padding-left: 0;
}

.wikimenu #wikimenu.mod-menu li:hover, #gkSidebar .menu li:hover {
  background: transparent;
}

.wikimenu #wikimenu.mod-menu li a:hover, #gkSidebar .menu li a:hover {
  color: #363636!important;
}

.wikimenu #wikimenu.mod-menu > li.current > a, #gkSidebar .menu > li.current > a {
  color: #363636!important;
}

.wikimenu #wikimenu.mod-menu > li > ul > li.current > a, #gkSidebar .menu > li > ul > li.current > a {
  color: #363636!important;
}

.wikimenu #wikimenu.mod-menu li a {
  color: #fff!important;
}

#gkSidebar .menu li a {
  color: #89b7a6!important;
}

.wikimenu #wikimenu.mod-menu > li, #gkSidebar .menu > li {
  font-weight: 600;
  line-height: 1.25;
  border-bottom: solid 1px #e5e5e5!important;
  padding: 10px 0 10px 0;
  margin: 0 20px 0 0;
}

.wikimenu #wikimenu.mod-menu > li > ul > li, #gkSidebar .menu > li > ul > li {
  font-weight: 400;
  line-height: 1.15;
  border-bottom: none;
  border-top: solid 1px #e5e5e5!important;
  padding: 5px 0 5px 0;
  margin: 0 0 0 20px;
}

.wikimenu #wikimenu.mod-menu > li > ul > li:first-child, #gkSidebar .menu > li > ul > li:first-child {
  margin-top: 5px;
}

#gkInset div.box.nomargin.wikimenu li a::after {
content:none;
}


/* Logo-Block */
#gkInset div.box.nomargin.logo {
  margin-top: 20%;
}

#gkInset div.box.nomargin.logo p {
  margin:0;
}

#gkInset div.box.nomargin.logo img {
  max-width: 110%;
  margin: 0 0 0 -10%;
}

@media (max-width: 1024px) {
  #gkInset div.box.nomargin.logo {
display:none;
}
}

/* News-Block */
#gkInset div.box.nomargin {
  border: none;
  /*background: #ffffff;*/
}

#gkInset div.box.nomargin h3.header {
  color: #fff;
  font-size: 17px;
  margin-bottom: 9px;
  text-transform: none;
}

#gkInset div.box.nomargin li {
  border:none;
  line-height:1.15;
  margin: 9px 0 9px 0;
  font-size: 14px;
}

#gkInset div.box.nomargin li:first-child {
  margin-top: 0;
}

#gkInset div.box.nomargin li a {
  color: #fff;
}

#gkInset div.box.nomargin li a::after {
  content: " \0000BB";
}

#gkInset div.box.nomargin li a:hover {
  color: #363636;
}

#gkMainbody a {
  text-decoration: underline;
  text-decoration-color: #da7a44;
  /*text-decoration-color: #89B7A6;*/
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

#gkMainbody .answer a {
  text-underline-offset: 6px;
}

a:hover, a:active, a:focus, #gkMainbody a, #gkMainbody header h1 a:active, #gkMainbody header h1 a:focus, #gkMainbody header h1 a:hover, #k2Container article header h2 a:active, #k2Container article header h2 a:focus, #k2Container article header h2 a:hover {
  color: #5f5f5f;
}

#gkMainbody table a {
 /* text-decoration: none; // change for product package LPs 2025-08-31 */ 
}

#gkMainbody table a:hover {
  text-decoration: underline;
}

/* Sitemap */

.osmap-items ul {
  margin: 0 0 0 25px;
}

.osmap-items h2 {
  display: none;
}

/* FAQ */

section > header h2 {
margin-top:0;
}

section > header h2 small {
font-size: 28px; 
clear: both;
margin: 0 32px 16px 0;
line-height: 1.25;
text-align: left;
font-weight: 600;
color: #89b7a6;
}

section.category .children h3, section.blog .children h3 {
  font-size: 17px;
}

/* spezielle Tabelle für Feiertags-Verbots-Artikel */

.lightgrey th {
  background-color: #D3D3D3;
}
td.backgroundcolordarkgreen {
  background-color: #2E8B57;
}
td.backgroundcolorbrightyellow {
  background-color: #FFFF00;
  white-space:nowrap;
}
td.backgroundcolordarkred {
  background-color: #FF0000;
}

/* Wichtig, damit Seitenleiste immer grauen Hintergrund hat */
@media (min-width: 481px) {
  body {
    margin: 0 0 0 52px!important;
  }
}

/* News category list */

.popover-content, .popover-title {
    display: none;
}

td.list-title {

}

td.list-date {
  text-align: right;
  white-space: nowrap;
}

/* Wiki ohne Main-Menu */

.wiki #gkMainMenu {
  display: none;
}

/* Boxen auf der Startseite */

.smallboxes {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    width: 100%;
}

.smallbox {
    position: relative;
    display:inline-block;
    min-height: 1px;
    padding-right: 2.5%;
    padding-left: 2.5%;
    padding-top: 25px;
    padding-bottom: 25px;
    float: left;
    width: 20%;
    min-width: 180px;
}


.innerbox {
    border-radius: 10px;
    box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.3);
    border: 1px solid #e1e1e1;
    background-color: #fff;
    text-align: left;
    padding-top: 0;
    width:100%;
    margin:auto;
}

.boxcontent {
    text-align: center;
    max-height:65px;
    overflow:hidden;
    clear:both;
    padding:15px;
  transition: max-height 1s;
}

@media (max-width: 480px) {
.smallbox {
    padding-right: 0%;
    padding-left: 0%;
    min-width: 100%;
    }
.boxcontent {
    max-height:50px;
}
}

.boxcontent h3 {
  font-size: 15px; 
  margin:0;
}

.boxcontent p {
font-size: 14px; 
}

.innerbox:hover {
  background: #89b7a6;
}

.innerbox:hover .boxcontent {
  max-height:500px;
  color:#fff;
}

.innerbox:hover .boxcontent h3 {
  color:#fff;
}

/* FAQs */

@-webkit-keyframes fadeIn {
    from { opacity: 0; }
      to { opacity: 1; }
}
@keyframes fadeIn {
    from { opacity: 0; }
      to { opacity: 1; }
}

h5::before {
  content:"?";
}

h5, .semanticui-body h5 {
  border-radius: 10px;
  border: 1px solid #cadbd5;
  padding: 10px 10px 10px 36px;
  background: #cadbd5;
  /*color:#5f5f5f;*/
  color:#4b5753;
  margin-bottom: 20px;
}

h5::before, h5 + .answer::before
{
  font-size:30px;
  line-height:30px;
  color:#fff;
  content:"?";
  margin-left:-28px;
  margin-top:-3px;
  display:block;
  float:left;
  width:20px;
  text-align:center;
}

h5 + .answer::before {
  content:"!";
  margin-left:-25px;
  margin-top:13px;
  width:14px;
}

h5 + .answer
 {
  border-radius: 10px;
  border: 1px solid #cadbd5;
  padding: 10px 36px 10px 36px;
  background: #cadbd5;
  color:#000;
  display:none;
  margin: -32px 0 20px 0;
}

.form h5 + .answer {
  display:block;
}

#faq {
  display: none;
}

#faq + label {
  position: relative;
  display: inline-flex;
  cursor: pointer;
  font-family: sans-serif;
  font-size: 24px;
  line-height: 1.5;
  color: #89b7a6;
}

.form #faq + label {
  display:none;
}

#faq + label:before {
  width: 60px;
  height: 30px;
  border-radius: 30px;
  border: 2px solid #ddd;
  background-color: #EEE;
  content: "";
  margin-right: 15px;
  transition: background-color 0.5s linear;
}

#faq + label:after {
  width: 30px;
  height: 30px;
  border-radius: 30px;
  background-color: #fff;
  content: "";
  transition: margin 0.1s linear;
  box-shadow: 0px 0px 5px #aaa;
  position: absolute;
  left: 2px;
  top: 2px;
}

#faq:checked + label:before {
  background-color: #89b7a6;
}

#faq:checked + label:after {
  margin: 0 0 0 30px;
}

#faq:checked ~ .answer {
  display:block;
}

h5:hover::before {
/*content:"? ";*/
}

h5:hover {
cursor:pointer;
color:#000;
}

h5:focus, .answer:focus {
  outline: none!important;
}

h5:focus + .answer, h5 + .answer:hover, h5 + .answer:focus {
    display: block;
/*    -webkit-animation: fadeIn .5s;
    animation: fadeIn .5s;*/
}



.inlineblockfooter, .inlineblockfooter1{
display: inline-block;
vertical-align: middle;
border: 0px solid#000;
padding: 1%;
}




#gkFooterNav .inlineblockfooter .custom {
    width: auto;
    float: none;
}

#gkFooterNav .inlineblockfooter .customsocial .social {
  /* margin: 0px auto;*/
  /* max-width: 240px;*/
    float: none;
	border: 0px solid#ff0000;
	/*text-align: center;*/
	padding-inline-start: 0px;
}
@media screen and (min-width: 1050px) {
#gkFooterNav .inlineblockfooter .customlogo img{
max-width: 412px;
}
#gkFooterNav {
  float:none;
  margin:0 0 15px 50px;
}
}

@media screen and (min-width: 920px) and (max-width: 1049px) {
#gkFooterNav .inlineblockfooter .customlogo img{
max-width: 350px;
}
}


@media screen and (min-width: 1300px) {
.inlineblockfooter1{
max-width: 700px;
}


}

@media screen and (min-width: 920px) and (max-width: 1299px) {
.inlineblockfooter1{
max-width: 380px;
text-align: left;
border: 0px solid#000;
}


}


@media screen and (max-width: 919px){

#gkFooter .inlineblockfooter .menu li, #gkFooter .inlineblockfooter button {
float: none;
display: inline-block;
}

#gkFooter .inlineblockfooter p {
text-align: center;
}

.inlineblockfooter1{
max-width: 420px;
text-align: center;
border: 0px solid#000;
}
#gkFooterNav .inlineblockfooter .customlogo {
max-width: 570px;
}

#gkFooterNav .inlineblockfooter .customlogo img{
width: 98%;
padding-left:1%;
padding-right: 1%;
}



#gkFooterNav .inlineblockfooter .customsocial .social {
  margin: 0px auto;
  max-width: 240px;
}
}
@media screen and (max-width: 300px){
#gkFooter .inlineblockfooter  .customsocial li{
text-align: center;
float: none;
margin-bottom: 15px!important;
}}




.box.nomargin h3.header{
font-size: 20px;
color: #89b7a6;
text-align: center;
}

.box.nomargin h4.header{
font-size: 18px;
color: #89b7a6;
text-align: center;
}

.relateditems.mod-list{
width: 100%; text-align: center;
}

.relateditems.mod-list  li{
display: inline-block;  
margin: 5px; 
border-bottom: 0px; 
}

.relateditems.mod-list  a:hover{
border: 1px solid#89b7a6;
transition: all 300ms ease-out;
background: #daeee7;
}

.relateditems.mod-list  a{
border-radius: 5px; 
border: 1px solid#ccc; 
padding: 5px 5px;
transition: all 300ms ease-out;
}

/* Newsletter-Captcha */

#user_captcha_ {
  width:auto!important;
}
#captcha_picture_ {
  width:134px!important;
}

.shariff {
  display:none;
}

/* CSS-Bestell-Buttons ! */

a.btn {
  font-family: Arial, Helvetica, sans-serif;
  background-color: #DA7a44;
  border: none;
  padding:0 30px 0 30px;
  font-size: 25px;
  color: #FFF!important;
  border-radius: 35px;
  line-height: 70px;
  vertical-align: middle;
  font-weight: bold;
  cursor: pointer;
  display: inline-block;
  text-decoration: none!important;
  /*text-transform: uppercase;*/
}

a.btn:hover {
  background-color: #89b7a6;
}

span.circle {
  border:1px #fff solid;
  padding:5px;
  width: 50px;
  margin:5px 5px 5px 35px;
  height: 50px;
  display:inline-block;
  vertical-align: middle;
  border-radius:50%;
}

span.arrow {
  border: solid #fff;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 11px;
  margin: 11px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

/* Phoca Downloads */

.pd-category a.btn {
  padding:2px 10px 2px 10px;
  font-size: 15px;
  border-radius: 15px;
  line-height: 20px;
}

.pd-category .row.pd-row2-bp {
  clear:both;
}

div.pd-cb + div {
visibility:hidden;
}

#phoca-dl-category-box .pd-category h3.pd-ctitle, #phoca-dl-file-box .pd-file h3.pd-ctitle, #phoca-dl-download-box .pd-file h3.pd-ctitle {
  margin-bottom:30px;
}

#pdCategoryModal {
  display:none;
}

/* edits for AvE */

.pd-document16 { visibility: hidden; }
.pd-filenamebox { margin: -15px !important; }


/*
1243-verlaengerung-der-aufenthaltsgenehmigung-fuer-freiberufler-und-sonstige-selbstaendige
*/

.honorar-container {
    max-width: 800px;
    margin: 0 auto;
    font-family: Arial, sans-serif;
    padding: 20px;
}

.honorar-title {
    color: #78a793;
    font-size: 28px;
    margin-bottom: 20px;
    font-weight: 300;
}

.honorar-intro {
    color: #2c3e50;
    margin-bottom: 30px;
    line-height: 1.6;
}

.honorar-table {
    width: 100%;
    border-collapse: collapse;
    margin: 25px 0;
    box-shadow: 0 2px 8px rgba(120, 167, 147, 0.1);
}

.honorar-table tr {
    border-bottom: 1px solid #e0e9e5;
    transition: all 0.3s ease;
}

.honorar-table tr:last-child {
    border-bottom: none;
}

.honorar-table td {
    padding: 18px 15px;
    color: #2c3e50;
    transition: all 0.3s ease;
}

.honorar-table td:last-child {
    text-align: right;
    font-weight: 600;
    color: #5b8a76;
}

.honorar-table tr:hover {
    background-color: #78a793;
}

.honorar-table tr:hover td {
    color: white !important;
}

.location-indent {
    padding-left: 30px !important;
    color: #5b8a76 !important;
}

.honorar-note {
    font-size: 0.9em;
    color: #666;
    font-style: italic;
    margin-top: 20px;
    padding-left: 15px;
}

/* Formular-Preis-Module
*/

.fees tr.emphasize {
  font-weight: bold;
}

.fees td:first-child {
  text-align:left;
}
.fees td {
  text-align:center;
}

/* floating-contact-box */

#floating-box-container {
  position: fixed;
  top: 75%;
  left: 3px;
  transform: translateY(-50%);
  z-index: 9999;
}

.floating-contact-box {
  border: 2px solid #e0e0e0;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  padding: 5px;
  font-family: Arial, sans-serif;
  text-align: center;
  background-color: #89B7A6;
  color: white !important;
  font-size: 13px;
  line-height: 1.5;
  position: relative;
}

.floating-contact-box a {
  display: block;
  margin-top: 0px;
  color: #222;
  text-decoration: none;
}
.floating-contact-box a:hover {
  text-decoration: underline;
}
.floating-contact-box p {
  font-size: 10px !important;
  line-height: 1.5;
  margin: 3px 0px 0px 0px;
}

/* X-Button */
#close-btn {
  position: absolute;
  top: -8px;
  right: -10px;
  width: 24px;
  height: 24px;
  background-color: #333;
  color: white;
  border: none;
  border-radius: 50%;
  font-size: 14px;
  line-height: 24px;
  text-align: center;
  padding: 0;
  cursor: pointer;
  z-index: 10000;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}

/* "+" Button */
#reopen-btn {
  width: 26px;
  height: 26px;
  background: #333;
  color: white;
  border-radius: 50%;
  text-align: center;
  line-height: 26px;
  font-size: 18px;
  cursor: pointer;
  box-shadow: 0 2px 6px rgba(0,0,0,0.3);
}

/* Forms "später ausfüllen?" */

.later h4 {
  color:#990000 !important; 
}

/* Product Packages LP */

.cta-button {
  margin-top: 20px;
  padding: 12px 24px;
  background: #2a5bd7;
  color: white;
  border: none;
  border-radius: 6px;
  font-size: 1em;
  cursor: pointer;
}
.pricing-table-pp {
  width: 90%;
  max-width: 1000px;
  margin: 20px auto;
  border-collapse: collapse;
  background: white;
  box-shadow: 0 0 10px rgba(0,0,0,0.05);
}
.pricing-table-pp th,
.pricing-table-pp td {
  border: 1px solid #e0e0e0;
  padding: 10px;
  text-align: center;
}
.pricing-table-pp th {
  background-color: #f0f4fa;
  color: black;
}
.price {
  font-size: 1.3em;
  font-weight: bold;
  color: #1b1b1b;
}
.package-grid-pp {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  padding: 20px 30px;
}
.package-box {
  background: white;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  width: 165px;
  text-align: center;
}
.package-box h3 {
  margin-top: 10px;
  font-size: 1.1em;
}
.package-box p {
  font-size: 0.95em;
  color: #444;
  margin: 10px 0 20px;
}
.package-box button {
  padding: 10px 20px;
  background: #2a5bd7;
  color: white;
  border: none;
  border-radius: 5px;
  font-size: 0.95em;
  cursor: pointer;
}
.faq-section-pp {
  max-width: 800px;
  margin: 0 auto 60px;
  padding: 0 20px;
}
.faq-section-pp h2 {
  font-size: 1.5em;
  margin-bottom: 20px;
}
.faq-pp {
  margin-bottom: 20px;
}
.faq-pp p {
  margin: 6px 0;
}

@media (max-width: 768px) {
  .pricing-table-pp th, .pricing-table-pp td {
    font-size: 0.9em;
  }
  .package-grid-pp {
    flex-direction: column;
    align-items: center;
  }
}
  
.package-form-section {
  max-width: 800px;
  margin: 0 auto;
  padding: 10px;
  background: #ffffff;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  border-radius: 10px;
}

.incorporation-form fieldset {
  border: none;
  margin-bottom: 30px;
}

.incorporation-form legend {
  font-weight: bold;
  font-size: 1.1em;
  margin-bottom: 10px;
  color: #444;
}

.incorporation-form label {
  display: block;
  margin-bottom: 15px;
  padding: 15px;
  border-radius: 8px;
  border: 1px solid #ddd;
  cursor: pointer;
  transition: background 0.3s, color 0.3s;
  font-size: 17px;
}


/* =======================
   Produkt Pakete v2 (2025-08-25 Monday 16:02)
   ======================= */

/* ==== Desktop zeigen, Mobile verstecken ==== */
#incorporation-matrix .view-desktop { display: block; }
#incorporation-matrix .view-mobile  { display: none; }

/* ==== Mobile: nur Karten anzeigen ==== */
@media (max-width: 760px) {
  #incorporation-matrix .view-desktop,
  #incorporation-matrix table,
  #incorporation-matrix .pricing-table-matrix,
  #incorporation-matrix .table-responsive,
  #incorporation-matrix .rtable,
  #incorporation-matrix .has-scroll,
  #incorporation-matrix .table-scroll,
  #incorporation-matrix [data-responsive-table] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
  }
  #incorporation-matrix .view-mobile { display: block !important; }
}

/* =======================
   Mobile Cards
   ======================= */

.package-card {
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 16px;
  color: #212529;
}

/* Package-Farben (für Cards und andere Elemente) */
.col-index { color: #fff !important; }
.package-pur, .pur-option     { background-color: #f2f2f2; }
.package-basic, .basic-option { background-color: #fff8e1; }
.package-start, .startklar-option { background-color: #e8f5e9; }
.package-premium, .premium-option { background-color: #e3f2fd; }

/* Zusatzoptionen */
.extra-none   { background-color: #f9f9f9; }
.extra-remote { background-color: #ffe0b3; }
.extra-fast   { background-color: #ffcc80; }

.package-card h3 { margin: 0 0 8px; font-size: 1.1rem; }
.section-title   { font-weight: 600; margin: 10px 0 6px; color: #333; }

.card-features { list-style: none; margin: 0 0 10px; padding: 0; }
.card-features li {
  display: flex; gap: 8px; align-items: center; padding: 4px 0; font-size: 13px;
}

.card-extras legend { font-weight: 600; margin: 12px 0 6px; }
.card-extras label  { display: block; margin: 6px 0; }

.card-price { margin: 10px 0 2px; font-weight: 600; }
.card-choose label { display: flex; gap: 8px; align-items: center; margin-top: 8px; }

/* Buttons in Karten zentrieren */
.packages-cards .package-card .buy-btn { display: block; margin: .25rem auto 0; }

/* =======================
   Desktop-Tabelle
   ======================= */

.pricing-table-matrix.v2 {width: 102%;}

/* Ab 2. Spalte zentrieren */
.pricing-table-matrix.v2 th:nth-child(n+2),
.pricing-table-matrix.v2 td:nth-child(n+2) { text-align: center; }

/* Header-Hintergründe und ganze Spalten in denselben Farben */
.pricing-table-matrix.v2 thead th.col-pur,
.pricing-table-matrix.v2 td:nth-child(2) { background:#f2f2f2; }    /* Gründung Pur */

.pricing-table-matrix.v2 thead th.col-basic,
.pricing-table-matrix.v2 td:nth-child(3) { background:#fff8e1; }    /* Grundpaket */

.pricing-table-matrix.v2 thead th.col-start,
.pricing-table-matrix.v2 td:nth-child(4) { background:#e8f5e9; }    /* Startklar */

.pricing-table-matrix.v2 thead th.col-premium,
.pricing-table-matrix.v2 td:nth-child(5) { background:#e3f2fd; }    /* Premium Paket */

/* Header-Schriftfarbe Mintgrün */
.pricing-table-matrix.v2 thead th { color:#63a892; font-weight:700; }

/* Gründungsform Dropdowns */
.pricing-table-matrix.v2 .gründungsform-select {
  width: 90%;
  padding: 6px 8px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 14px;
  background-color: #fff;
  cursor: pointer;
  text-align: center;
}

/* Spaltenzentrierung übernehmen */
.pricing-table-matrix.v2 .gründungsform-row td:nth-child(n+2) {
  text-align: center;
}


/* Feature-Spalte linksbündig */
.pricing-table-matrix.v2 td.feature,
.pricing-table-matrix.v2 th:first-child { text-align: left; }

/* „Jetzt kaufen" Reihe zentrieren */
.pricing-table-matrix.v2 .buy-row td { text-align: center; }

/* =======================
   Buttons
   ======================= */

.buy-btn,
.incorporation-form button {
  display: inline-block;
  padding: 0px 1.1rem;
  font-weight: 700;
  border-radius: 999px;
  border: 0;
  background: #e07b43; /* Grundorange - war #da7a44 */
  color: #fff;
  transition: background-color .18s ease, transform .04s ease, box-shadow .18s ease;
  box-shadow: 0 2px 0 rgba(0,0,0,.06);
  cursor: pointer;
}

.buy-btn:hover,
.buy-btn:focus,
.incorporation-form button:hover { 
  background: #80b5a8; /* Mintgrün Hover - war #89b7a6 */
}

.buy-btn:active { transform: translateY(1px); }

/* Spezielle Styles für incorporation-form buttons */
.incorporation-form button {
  display: block;
  width: 100%;
  font-size: 22px;
  border-radius: 6px;
}

/* =======================
   Große Checkboxen (Mintgrün)
   ======================= */

/* Hauptselektor für alle Checkboxen */
#incorporation-matrix input.extra[type="checkbox"],
.pricing-table-matrix input.extra[type="checkbox"],
.package-card input.extra[type="checkbox"],
.incorporation-form input[type="radio"] {
  /* Template-Overrides mit höchster Priorität */
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
  z-index: auto !important;
  clip: auto !important;
  clip-path: none !important;
  
  /* Native Darstellung komplett entfernen */
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  
  /* Größe und Aussehen */
  box-sizing: border-box !important;
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  min-height: 28px !important;
  border: 3px solid #9aa7a1 !important;
  border-radius: 8px !important;
  background: #fff !important;
  background-clip: padding-box !important;
  
  /* Display-Eigenschaften */
  display: inline-block !important;
  vertical-align: middle !important;
  margin: 0 8px 0 0 !important;
  padding: 0 !important;
  
  /* Interaktion */
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  
  /* Schatten für bessere Sichtbarkeit */
  box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
  
  /* Zusätzliche Resets für störende Template Styles */
  transform: none !important;
  float: none !important;
  clear: none !important;
}

/* Radio buttons spezielle Margin */
.incorporation-form input[type="radio"] {
  margin-right: 10px !important;
}

/* Hover-Effekt */
#incorporation-matrix input.extra[type="checkbox"]:hover,
.pricing-table-matrix input.extra[type="checkbox"]:hover,
.package-card input.extra[type="checkbox"]:hover {
  border-color: #63a892 !important;
  box-shadow: 0 0 0 4px rgba(99, 168, 146, 0.15), 0 2px 4px rgba(0,0,0,0.1) !important;
  transform: scale(1.05) !important;
}

/* Focus-Effekt */
#incorporation-matrix input.extra[type="checkbox"]:focus,
.pricing-table-matrix input.extra[type="checkbox"]:focus,
.package-card input.extra[type="checkbox"]:focus {
  outline: none !important;
  border-color: #63a892 !important;
  box-shadow: 0 0 0 4px rgba(99, 168, 146, 0.25), 0 2px 4px rgba(0,0,0,0.1) !important;
}

/* Checked-State (aktiviert) */
#incorporation-matrix input.extra[type="checkbox"]:checked,
.pricing-table-matrix input.extra[type="checkbox"]:checked,
.package-card input.extra[type="checkbox"]:checked {
  border-color: #63a892 !important;
  background-color: #63a892 !important;
  position: relative !important;
  box-shadow: 0 2px 6px rgba(99, 168, 146, 0.3) !important;
}

/* Häkchen für aktivierte Checkboxen */
#incorporation-matrix input.extra[type="checkbox"]:checked::after,
.pricing-table-matrix input.extra[type="checkbox"]:checked::after,
.package-card input.extra[type="checkbox"]:checked::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 18px !important;
  height: 18px !important;
  margin: -9px 0 0 -9px !important;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20,6 9,17 4,12'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  pointer-events: none !important;
}

/* Checked + Hover Kombination */
#incorporation-matrix input.extra[type="checkbox"]:checked:hover,
.pricing-table-matrix input.extra[type="checkbox"]:checked:hover,
.package-card input.extra[type="checkbox"]:checked:hover {
  background-color: #4a9d7e !important;
  border-color: #4a9d7e !important;
  transform: scale(1.05) !important;
}

/* Mobile Anpassungen */
@media (max-width: 768px) {
  #incorporation-matrix input.extra[type="checkbox"],
  .pricing-table-matrix input.extra[type="checkbox"],
  .package-card input.extra[type="checkbox"] {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    margin: 0 10px 0 0 !important;
  }
  
  #incorporation-matrix input.extra[type="checkbox"]:checked::after,
  .pricing-table-matrix input.extra[type="checkbox"]:checked::after,
  .package-card input.extra[type="checkbox"]:checked::after {
    width: 20px !important;
    height: 20px !important;
    margin: -10px 0 0 -10px !important;
  }
}

/* Gründungsform in Mobile-Cards */
.package-card .gründungsform-select{
  width: 100%;
  max-width: 420px;
  padding: 8px 10px;
  margin: 4px 0 10px;
  border: 1px solid #cfd8dc;
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
}


/* =======================
   Label Ausrichtung
   ======================= */

/* Labels in Ihrem HTML korrekt ausrichten */
#incorporation-matrix label {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  cursor: pointer !important;
  margin: 4px 0 !important;
}

/* Checkboxen in Tabellenzellen zentrieren */
#incorporation-matrix .pricing-table-matrix td label,
#incorporation-matrix .pricing-table-matrix.v2 td label {
  justify-content: center !important;
}

/* Mobile Cards: Checkboxen linksbündig lassen */
#incorporation-matrix .package-card label,
#incorporation-matrix .packages-cards label {
  justify-content: flex-start !important;
}

/* Text in Labels */
#incorporation-matrix label span,
#incorporation-matrix label strong,
#incorporation-matrix label em {
  vertical-align: middle !important;
  line-height: 1.4 !important;
}

/* === Nur obere und untere Abschlusslinien in Mintgrün === */

/* gesamte Tabelle: keine Standard-Borders */
.pricing-table-matrix.v2 th,
.pricing-table-matrix.v2 td {
  border: none !important;
}

/* Oberer Abschluss */
.pricing-table-matrix.v2 thead th {
  border-top: 1px solid #63a892 !important;
}

/* Unterer Abschluss */
.pricing-table-matrix.v2 tr:last-child td {
  border-bottom: 1px solid #63a892 !important;
}

/* Vertikale Linien (mintgrün) */
.pricing-table-matrix.v2 tr > *:nth-child(2),
.pricing-table-matrix.v2 tr > *:nth-child(3),
.pricing-table-matrix.v2 tr > *:nth-child(4),
.pricing-table-matrix.v2 tr > *:nth-child(5) {
  border-left: 1px solid #63a892 !important;
  line-height: 22px;
}
.pricing-table-matrix.v2 tr > *:nth-child(5) {
  border-right: 1px solid #63a892 !important;
}
/* Linke Außenlinie (1px mintgrün) */
.pricing-table-matrix.v2 tr > *:first-child {
  border-left: 1px solid #63a892 !important;
}


/* 2025-09-17 Mehr Abstand zwischen den Listeneinträgen auf Seite Erstberatung / Init. Consultation */

.init-consult li {
  margin-bottom: 1rem;   /* Abstand nach unten */
  line-height: 1.6;      /* Zeilenhöhe */
}

.immigration {
  list-style-type: lower-alpha; /* ergibt a, b, c */
  margin-left: 1.5rem;          /* Einzug */
  padding-left: 0;              /* je nach Template */
}

.immigration li {
  margin-bottom: 0.5rem;        /* etwas Abstand */
}

.immigration li::marker {
  content: counter(list-item, lower-alpha) ") "; 
}

/* 2025-09-29 Bugfix verschachtelte Menüs */

/* Menü und Spalten dürfen Untermenüs nicht beschneiden */
/* 1) Nur dort Overflow öffnen, wo es clippt (rechte Content-Spalte) */
#gkContent,
#gkContentWrap {
  overflow: visible !important;
}

/* 2) Menü über dem Content stapeln – ohne die Sidebar/anderen Ebenen zu verändern */
#gkMainMenu,
#gkExtraMenu {
  position: relative;
  z-index: 1000;
}

/* 3) Nur den Dropdown-Container höher stapeln, Styles/Backgrounds vom Template bleiben unangetastet */
.gkMenu .childcontent {
  z-index: 10000;
}

/* Wichtig: NICHT .childcontent-inner und KEINE position/Background-Overrides setzen,
   damit die Template-Farben/Schattierungen erhalten bleiben. */
