@font-face {
  font-family: 'PoiretOne Regular';
  src: url("PoiretOne-Regular.ttf") format('truetype');
  font-weight: normal;
  font-style: normal;
}
:root {
    --b14-olive-light: #99A06D;
    --b14-olive-dark: #4a5a32;
    --b14-light-green: #F6E2C1;
    --b14-sea-dark-green: #245861;
    --b14-lightgreen-boxbg: #effee8;
    --b14-footer-color: #f6e2c1;
    --b14-color-change-button: #245861;
    --b14-member-txt-color: #045a0b;
  /*Therapy*/
    --primary-olive: #60734D;
    --light-olive: #E8ECE3;
    --bg-color: #F8F9F6;
    --text-dark: #333333;
    --card-bg: #FFFFFF;
    --maintext-font: Roboto;
    --body-font-size: 0.9rem;
}
/*:root {*/
body.alt-theme {
    --b14-olive-light: #a0c6c8;
    --b14-olive-dark: #245861;
    --b14-color-change-button: #4a5a32;
}
.navbar-toggler:focus {
    box-shadow: unset;
}
/* A lebegő gomb stílusa */
#theme-switcher {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 10; /*9999*/
    padding: 10px 15px;
    background-color: var(--b14-color-change-button);
    color: white;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    font-weight: bold;
    transition: transform 0.2s;
}

#theme-switcher:hover {
    transform: scale(1.1);
}
.priceInfoBox{
    color: var(--b14-olive-dark);
    font-family: var(--maintext-font); /*math;*/
    letter-spacing: 2px;
}
/*-------------------------------------------*/
main p, main li{
  color: var(--b14-olive-dark);
}
html, body {
  /*height: 100%;*/
  margin: 0;
}
.site-grid {
    flex: 1;
}
.brand-logo img {
    width: 150px;
}
.container-header {
    background-color: var(--b14-olive-dark);
    background-image: unset;
}
.header {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: flex-end;
    border-bottom: 4px solid var(--b14-light-green);
}
.container-header .grid-child {
    padding: .5em;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    width: max-content;
}
.container-header nav {
    z-index: 110;
}
.container-header .navbar-brand {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
  justify-content: center;
}
.container-header .site-description {
    margin-left: 15px;
    font-family: PoiretOne Regular;
    font-size: 25px;
    color: var(--b14-light-green);
}
.metismenu.mod-menu .metismenu-item {
    padding: 0 10px;
}
.metismenu.mod-menu .metismenu-item>span, .metismenu.mod-menu .metismenu-item>a, .metismenu.mod-menu .metismenu-item>button {
    font-size: 16px;
    color: var(--b14-light-green);
    border: 1px solid var(--b14-light-green);
    border-radius: 2px 2px 2px 2px;
    padding: 0 5px;
    background: var(--b14-olive-dark);
}
.metismenu.mod-menu .metismenu-item.active>span, .metismenu.mod-menu .metismenu-item.active>a, .metismenu.mod-menu .metismenu-item.active>button, .metismenu.mod-menu .metismenu-item>a:focus, .metismenu.mod-menu .metismenu-item>button:focus, .metismenu.mod-menu .metismenu-item>a:active, .metismenu.mod-menu .metismenu-item>button:active {
    color: var(--b14-olive-dark);
    background: var(--b14-light-green);
    outline: 0;
    outline-offset: 0;
}
.container-header .metismenu>li>a:hover:after, .container-header .metismenu>li>button:hover:before, .container-header .metismenu>li.active>a:after, .container-header .metismenu>li.active>button:before {
    background: #00ff39;
}

@media(min-width: 992px){
  .container-header .metismenu>li>a:after, .container-header .metismenu>li>button:before {
    opacity: .3;
  }
  
  .container-header .container-nav:after {
    content: "";
    border-bottom: 1px solid var(--b14-light-green);
    width: auto;
    position: absolute;
    bottom: 20px;
    left: 15%;
    z-index: 100;
    right: 0;
  }
}
.myhomecontent {
    background: var(--b14-lightgreen-boxbg);
    border: 2px solid var(--b14-olive-dark);
    border-radius: 0px 15px 0px 15px;
    margin: 15px auto 15px auto;
    padding-left: 35px;
    padding-right: 0;
    height: 100%;
    transition: box-shadow 0.6s ease;
}
.myhomecontent:hover {
    box-shadow: 9px 10px 19px 2px #2458619c;
    transform: scale(1.0003);
}

.itemid-101 .site-grid {
    background: var(--b14-olive-light);
    margin: 0;
    padding: 0;
}
.grid-child.container-component {
    padding: 10px 30px;
}
.myhomecontent > h2 {
    font-family: PoiretOne Regular;
    color: var(--b14-olive-dark);
    border-bottom: 1px solid var(--b14-olive-light);
    text-transform: uppercase;
    margin: 15px auto;
    letter-spacing: 3px
}
.rowcontent {
    padding: 10px 50px;
    height: 100%;
}
.munkatarsaink .rowcontent.row {
    justify-content: center;
    padding: 0 50px 20px 50px;
}
.separatorImg {
    width: 100%;
    margin: 10px auto;
    text-align: center;
}
a.team-member>img, a.team-member{
  transition: all 0.6s ease;
  border-radius: 15px;
  text-decoration: none;
  text-align: center;
}
a.team-member:hover{
  cursor: pointer;
}
a.team-member:hover>img{
  cursor: pointer;
  transform: scale(1.1);
}
a.team-member:hover {
    box-shadow: 4px 9px 19px 0px grey;
}
a.team-member {
    padding-bottom: 15px;
    padding-top: 30px;
    display: flex;
    flex-direction: column;
}
a.team-member p, a.team-member h4{
    transition: all 0.6s ease;
    color: var(--b14-olive-dark);
    width: max-content;
    margin: 0 auto;
    padding: 7px 15px 0px 15px;
    /*font-family: 'PoiretOne Regular';*/
    font-family: var(--maintext-font); /*math;*/
    font-weight: bold;
}
/*a.team-member:hover p,*/ a.team-member:hover h4{
    transform: scale(1.1);
}
a.team-member>img {
    margin-bottom: 20px !important;
      margin-top: 0 !important;
}
/*a.team-member p:after, a.team-member h4:after{
        content: "";
        opacity: .3;
        background: 0 0;
        height: 2px;
        margin: auto;
        transition: all .2s, background-color .2s;
        display: block;
        position: absolute;
        bottom: 0;
        left: 50%;
        right: 50%;
}
a.team-member:hover p:after, a.team-member:hover h4:after {
    background: var(--b14-member-txt-color);
    left: 0;
    right: 0;
}*/
a.team-member p, a.team-member h4 {
    position: relative;
    display: inline-block;
    overflow-wrap: normal;
    width: auto;
    margin-bottom: auto;
}
p.text-center {
    font-weight: 400 !important;
    font-size: 12px;
}
a.team-member p:after, a.team-member h4:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--b14-member-txt-color);
    opacity: 0.3;
    
    transform: scaleX(0); 
    transform-origin: center; /* Középről induljon */
    transition: transform .3s ease-in-out, opacity .3s;
}

/*a.team-member:hover p:after,*/ a.team-member:hover h4:after {
    /* Kinyílik teljes szélességre */
    transform: scaleX(0.85);
}

/*menu hover/active*/
.container-header .mod-menu > li.onepage-active > a {
    color: var(--b14-olive-dark);
    background: var(--b14-light-green);
    outline: 0;
    outline-offset: 0;
}

/*araink*/
p.arInfoTxt {
    text-align: center;
    /*color: var(--b14-sea-dark-green);*/
}
p.arTxt {
    text-align: center;
    /*color: var(--b14-sea-dark-green);*/
}
p.price {
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    /*color: var(--b14-sea-dark-green);*/
}
.row.priceBox {
    margin-top: auto;
    margin-bottom: 0;
    vertical-align: bottom;
    display: flex;
    /*height: 100%;
    align-items: flex-end;*/
}
.leftArImg {
    justify-content: flex-start;
    display: flex;
}
.rightArImg {
    justify-content: flex-end;
    display: flex;
}
.leftArImg>img, .rightArImg>img {
    height: 300px;
}
@media(max-width: 992px){
  .leftArImg, .rightArImg {
    justify-content: center;
  }
}

.rowcontent > p {
    text-align: justify;
}
.priceInfoBox {
    display: flex;
    flex-direction: column;
}
.row.priceBox {
    margin-top: auto !important;
    display: flex;
    height: auto;
    align-items: flex-end;
}

/*Footer*/
.footer {
    background-color: var(--b14-olive-dark);
    background-image: unset;
    margin: 0;
    color: var(--b14-footer-color);
}
.contact-box>img {
    width: 32px;
}

.footer .grid-child {
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
}
.footer .moduletable {
    width: 100%;
}
.footer .row {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
}
.footer p, .footer a {
    margin: 0 10px;
}
.footer .contact-box {
    padding: 13px 10px;
    text-align: justify;
}
.footer iframe {
    width: 100%;
}
.footer .row .row {
    display: flex;
    flex-direction: column;
    margin-bottom: 30px !important;
    height: 100%;
}
.contact-box {
    width: 100%;
    margin: 0 auto;
    min-width: 300px;
    max-width: 525px;
}
.footer iframe {
    width: 100%;
    filter: grayscale(100%) invert(90%) contrast(90%); /* Fekete-fehér és kicsit sötétebb/negatív */
    height: 400px;
    opacity: 0.85;
    transition: all .8s ease;
}

/* Hoverre visszajönnek a színek */
.footer iframe:hover {
    filter: grayscale(30%) invert(0%) contrast(90%);
}
/*
.footer .row .col-12:nth-child(2) {
    position: relative;
    line-height: 0;
    background: #000;
}

.footer .row .col-12:nth-child(2) iframe iframe {
    width: 100%;
    height: 400px;
    border: 0;
    opacity: 0.5;
    filter: grayscale(100%);
    transition: opacity 0.4s ease;
}

.footer .row .col-12:nth-child(2) iframe:hover iframe {
    opacity: 1;
    filter: grayscale(0%);
}*/
.footer .grid-child {
    flex-direction: column;
}

/* Impressum */
div#mod-custom114 {
    margin: 55px 20px 20px 20px;
}
.footer ul {
    text-align: center;
    margin: 0 auto;
    width: 100%;
}
.footer li {
    width: 100%;
    max-width: 100%;
    min-width: min-content;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left;
}
.accordion {
   --accordion-border-color: var(--b14-olive-light);
   --accordion-border-width: 2px;
}
.accordion-button {
    background-color: var(--b14-footer-color);
}
.accordion-item {
    color: var(--b14-sea-dark-green);
    background-color: var(--b14-footer-color);
}
.accordion-button {
    color: var(--b14-sea-dark-green);
}
.accordion-button:not(.collapsed) {
    color: var(--b14-member-txt-color);
}

@media(max-width: 992px){
  .footer .row {
    flex-direction: column;
    margin: 0;
  }
  .footer .row >div {
    padding: 0;
    margin: 0;
  }
  .footer .contact-box {
    justify-content: center;
  }
  .grid-child.container-component {
    padding: 0;
  }
}

/* -- Banner img animation page loading -- */
.container-banner {
    overflow: hidden;
    position: relative;
    background-color: var(--b14-olive-light);
}

.container-banner img {
    opacity: 0;
    transform: scale(0.9); 
    transition: opacity 1.2s ease-out, transform 1.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.container-banner.loaded img {
    opacity: 1;
    transform: scale(1);
}
@keyframes slowZoom {
    0% { transform: scale(1); }
    100% { transform: scale(1.05); }
}

.container-banner.loaded img {
    opacity: 1;
    animation: slowZoom 15s infinite alternate ease-in-out 1.5s;
}

/* - myhomecontent animation - */
/*main .myhomecontent {
    opacity: 0;
    clip-path: inset(50% 50% 50% 50%);
    transition: all 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
main .myhomecontent.is-visible {
    opacity: 1;
    clip-path: inset(0% 0% 0% 0%);
}*/


@media (max-width: 991.98px) {
  .myhomecontent {
    padding-left: 0;
  }
  .myhomecontent > h2 {
    padding-left: 15px;
  }
  .footer ol, .footer ul {
    padding-left: 0;
  }
  .rowcontent {
    padding: 10px 10px;
    margin: auto;
  }

  /* - NAV - */
  /*.container-header .navbar-collapse.show {
        position: sticky;
        top: 0;
        right: 0;
        left: 0;
  }*/
  .metismenu.mod-menu {
    background: var(--b14-olive-light);
    border-radius: 3px;
    border: 2px solid var(--b14-sea-dark-green);
        width: 100%;
  }
  .metismenu.mod-menu .metismenu-item>span, .metismenu.mod-menu .metismenu-item>a, .metismenu.mod-menu .metismenu-item>button {
    padding: 5px 10px;
  }
  .metismenu.mod-menu .metismenu-item {
    padding: 0;
  }
  .metismenu.mod-menu .metismenu-item>span, .metismenu.mod-menu .metismenu-item>a, .metismenu.mod-menu .metismenu-item>button {
    width: 100%;
    padding: 5px 5px !important;
  }
  .container-header .grid-child {
    padding: 0 !important;
    padding-bottom: 7px !important;
  }
  .container-header nav {
    margin: 0 !important;
    padding: 0 !important;
    justify-content: center;
  }
    .navbar-collapse, 
    .collapsing {
        width: 100vw;
        z-index: 1000;
        background-color: #ffffff;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s linear !important;
        transform-origin: top right;
        height: auto !important;
    }

   .navbar-collapse:not(.show),
    .collapsing {
        transform: scale(0);
        opacity: 0;
        pointer-events: none;
    }

    .navbar-collapse.show {
        transform: scale(1);
        opacity: 1;
        pointer-events: auto;
        visibility: visible;
    }

    .navbar-toggler {
        z-index: 1001;
    }

    .container-header .navbar-toggler {
      background: var(--b14-olive-dark);
    }

    .navbar-collapse, 
    .navbar-collapse.collapsing {
        position: fixed !important; 
        top: 0 !important;
        right: 0 !important;
        width: 100vw !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 1000;
        
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        background-color: #ffffff;
        max-width: 100%;
        transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s linear !important;
        transform-origin: top right;
    }

    .navbar-collapse:not(.show),
    .navbar-collapse.collapsing {
        transform: scale(0) !important;
        opacity: 0 !important;
        pointer-events: none;
    }
    .navbar-collapse.show {
        transform: scale(1) !important;
        opacity: 1 !important;
        pointer-events: auto;
    }

  button.navbar-toggler[aria-expanded="true"]{
    position: fixed;
    top: 75px;
    right: 50px;
    z-index: 9999;
  }
  
  a.team-member {
    padding-bottom: 15px;
    display: flex;
    flex-direction: column;
    margin: 0 auto !important;
  }
}

.header .grid-child {
    margin-left: 0;
}
.grid-child.container-nav {
    margin: 0px 0 0px 0;
}


@media(max-width: 768px){
    a.team-member {
    width: 80%;
  }
}

/* ------------------------------ */
/* Therapy */
        .therapy-section {
            padding: 80px 20px;
            max-width: 1100px;
            margin: 0 auto;
        }

        .therapy-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
            gap: 30px;
            /* A perspektíva segít a térbeli hatás rásegítésében, ha forgatnánk is, de a scale-hez is ad egy mélységet */
            perspective: 1000px;
            padding: 15px;
        }

        /* --- MÓDOSÍTOTT KÁRTYA ANIMÁCIÓ --- */
        .therapy-card {
            background-color: var(--card-bg);
            border-radius: 12px;
            padding: 40px 25px;
            text-align: center;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
            border: 1px solid rgba(96, 115, 77, 0.1);
            
            /* Alapállapot: Átlátszó és Z-tengelyen "hátrébb" (kisebb) */
            opacity: 0;
            transform: scale(0.5); 
            
            /* A cubic-bezier adja a visszarugózó, "ugráló" hatást */
            transition: opacity 0.6s ease-out, transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.3s ease, border-color 0.3s ease;
        }

        /* Amikor a grid láthatóvá válik, a kártyák beugranak a helyükre */
        .therapy-grid.is-visible .therapy-card {
            opacity: 1;
            transform: scale(1);
        }

        /* Véletlenszerű, de meghatározott megjelenési sorrend a késleltetések (delay) keverésével */
        .therapy-grid .therapy-card:nth-child(1) { transition-delay: 0.1s; }
        .therapy-grid .therapy-card:nth-child(2) { transition-delay: 0.4s; }
        .therapy-grid .therapy-card:nth-child(3) { transition-delay: 0.2s; }
        .therapy-grid .therapy-card:nth-child(4) { transition-delay: 0.6s; }
        .therapy-grid .therapy-card:nth-child(5) { transition-delay: 0.3s; }
        .therapy-grid .therapy-card:nth-child(6) { transition-delay: 0.5s; }

        /* Hover effektek a már megjelent kártyákon */
        .therapy-grid.is-visible .therapy-card:hover {
            transform: scale(1.03); /* Kicsit megnő, ha ráviszed az egeret */
            box-shadow: 0 12px 25px rgba(96, 115, 77, 0.15);
            border-color: var(--b14-olive-dark);
            /* Reseteljük a delay-t, hogy a hover azonnal reagáljon */
            transition-delay: 0s; 
        }

        /* Ikonok stílusa (változatlan) */
        .icon-wrapper {
            background-color: var(--light-olive);
            width: 80px;
            height: 80px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 20px auto;
            transition: background-color 0.3s ease;
        }

        .therapy-card:hover .icon-wrapper {
            background-color: var(--b14-olive-dark);
        }

        .icon-wrapper svg {
            width: 40px;
            height: 40px;
            fill: var(--b14-olive-dark);
            transition: fill 0.3s ease;
        }

        .therapy-card:hover .icon-wrapper svg {
            fill: #FFFFFF;
        }

        .therapy-card h3 {
           font-size: 1.2rem;
           margin: 0;
           color: var(--b14-olive-dark);
           font-family: 'PoiretOne Regular';
        }


/* ---- NAV TESZT ------ */
@media(max-width: 992px){
  /* .grid-child.container-nav {
      width: 100%;
   }
    .container-header nav {
    margin-top: .5em;
    padding: 0;
    width: 100%;
    text-align: center;
    margin: 3px auto;
  }
  .container-header .navbar-toggler {
    color: #fff;
    cursor: pointer;
    border: 0px solid #fff;
    width: 100%;
  }
  .container-header .navbar-toggler>* {
    pointer-events: none;
    border: 1px solid #fff;
    padding: 5px 8px;
    border-radius: 3px;
  }
  .container-header .metismenu.mod-menu .metismenu-item a {
    width: 100%;
  }
  .container-header .metismenu.mod-menu .metismenu-item .mm-toggler-link {
    position: absolute;
    width: 100%;
    padding: 0 10px;
    height: 50px;
    top: 0;
  }
  .metismenu.mod-menu .metismenu-item:not(.level-1)>ul, .metismenu.mod-menu .metismenu-item:not(.level-2)>ul {
    position: relative;
    width: 100%;
  }
  .metismenu.mod-menu .mm-collapse>li.parent .mm-toggler {
    height: 51px;
    position: absolute;
    top: 0px;
    width: 100%;
  }
  
  .navbar-toggler:focus {
    box-shadow: unset;
  }*/
}

.footer .row h2 {
    font-family: PoiretOne Regular;
    border-bottom: 1px solid #f6e2c1;
    text-transform: uppercase;
    margin: 15px auto;
    letter-spacing: 3px;
}
.footer *{
    font-family: var(--maintext-font); /*math;*/
    letter-spacing: 2px;
}

.szolgaltatasok .rowcontent .row div > div {
  margin: 0 auto;
  width: 250px;
  height: 100%;
  min-height: 380px;
  background-size: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transition: all 0.6s ease-in-out;
}
.felnott{
  background: url(/images/ourservices/felnott_.png);
}
.csoport{
  background: url(/images/ourservices/csoport_.png);
}
.serdulo{
  background: url(/images/ourservices/serdulo_.png);
}
/*hover*/
/*.felnott:hover{
  background: url(/images/ourservices/felnott.png);
}
.csoport:hover{
  background: url(/images/ourservices/csoport.png);
}
.serdulo:hover{
  background: url(/images/ourservices/serdulo.png);
}*/

.myhomecontent {
    background: #f4ddb8;
    /*font-family: 'PoiretOne Regular';*/
    font-family: var(--maintext-font); /*math;*/
    letter-spacing: 2px;
    font-weight: bold;
}

.showplusx-animation-show, .showplusx-item, .showplusx-current{
    background-position: center !important;
    background-size: contain !important;
}
#showplus_images_aboutus_slider > .showplusx-slideshow, #showplus_images_aboutus_slider{
    width: 100%;
    height: 600px;
    margin: 0 auto;
}
.showplusx-item, .showplusx-viewport, .showplusx-viewport > a {
    margin: 0 auto !important;
  }

.ourteam-box div{
  font-weight: normal;
}
.ourteam-box > div > img {
    width: auto;
    float: left;
    vertical-align: text-top;
    margin: 0px 15px 5px auto;
    display: block;
}
.ourteam-box > h2 {
    margin-bottom: 20px;
    margin-top: 10px;
    border-bottom: 2px solid green;
    letter-spacing: 4px;
}

@media(max-width: 768px){
   .ourteam-box > div > img{
        width: 100%;
        margin: 0 auto;
        float: unset;
        margin-bottom: 10px;
    }
   .ourteam-box div {
      padding: 0 10px;
    }
  }

.showplusx-viewport {
    bottom: 70px !important;
}


.footer .accordion a:not(.btn), .footer .accordion .btn-link, .accordion strong {
    text-decoration: unset;
    width: 100%;
    display: block;
}

.footer .accordion a:not(.btn):hover, .footer .accordion .btn-link:hover {
    color: #4a5a32;
    text-decoration: underline;
}
.footer .accordion a:not(.btn):hover, .footer .accordion a:not(.btn):focus, .footer .accordion .btn-link:hover, .footer .accordion .btn-link:focus{
  color: #99a06d
}
.back-to-top-link:hover, .back-to-top-link:focus {
    background-color: #99a06d;
}
.separatorImg > img {
    width: 150px;
}
.ourteam-box ul li {
    font-family: var(--maintext-font);
    font-weight: normal !important;
    letter-spacing: 2px;
    color: var(--body-color);
}