	/*
	To change this license header, choose License Headers in Project Properties.
	To change this template file, choose Tools | Templates
	and open the template in the editor.
	*/
	/* 
		Created on : Dec 8, 2025, 11:34:25 AM
		Author     : Claudiu Tolas
	*/

	/* General CSS */ 
   
    body {
        font-family: 'KozGoPr6N', sans-serif;
        font-size: 20px;
        font-weight: 200;
        line-height: 1.3;
        color: #221F36;
        -ms-hyphens: auto;
        -webkit-hyphens: auto;
        hyphens: auto;
        overflow-x: hidden;
        margin-bottom: 0px !important;
    }

    body.no-scroll {
        overflow: hidden;
    }

    .no-padding {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .no-padding img {
        width: 100%;
        height: auto;
        display: block;
    }

    .fixed-position {
        overflow-y: hidden;
    }

    .round-button {
        border-radius: 1.75rem;
        /*cursor: pointer;*/
        display: inline-block;
        line-height: 1;
        padding: 0.3rem 1rem;
		font-size: 16px;
    }

    #mobile_menu .underline-wrapper {
        margin: 50px 0px auto;
        margin-left: 45px; 
    }

    .menu-contact-text .round-button {
        background-color: #212037;
        border: 3px solid #212037;
		font-weight: 300;
        color: #fff;
    }

    .main-content {
        padding-top: 50px;
    }
    
    #totop {
        cursor: pointer;
        position: fixed;
        width: 60px;
        height: 60px;
        right: 45px;
        top: calc(100vh / 2 - 20px);
        bottom: 100px;
        z-index: -1;
        opacity: 0;
    }
    
    #totop.scrolled {
        z-index: 10;
        opacity: 1;
    }

    /* Base floating button */
    .floating-btn {
        width: 31px;
        padding-bottom: 215px;   /* maintain SVG ratio */
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        display: block;
        cursor: pointer;
      
    }

    .floating-btn.fixed {
        position: fixed;
        right: 45px;
        z-index: 10;
    }

    /* Appointment button */
    #appointment {
        top: calc(100vh / 2 - 190px);
        background-image: url(../images/Termin.svg);
    }

    #appointment:hover {
        background-image: url(../images/Termin_RollOver.svg);
    }

    /* Rezept button */
    #rezept {
        top: calc(100vh / 2 + 50px);
        background-image: url(../images/Rezept.svg);
    }

    #rezept:hover {
        background-image: url(../images/Rezept_RollOver.svg);
    }

    .content-wrapper {
        padding: 20px 15px 0px 15px;
    }
    
    .container-padding {
        padding-left: 45px;
        padding-right: 45px;
    }
    
    .section-title {
        font-weight: 200;
        font-size: 40px;
    }

    [aria-expanded="false"] > .expanded,
    [aria-expanded="true"] > .collapsed {
      display: none;
    }
    
    .toggle-button,
    .toggle-button:focus {
        background: none;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0px;
        color: #221F36;
        opacity: 1;
        text-transform: uppercase;
    }
	
    .toggle-button-image.more {
        background-size: 51px 22px;
        width: 51px;
        background-image: url(../images/mehr.svg);
    }
    
    .toggle-button-image.less {
        background-size: 73px 22px;
        width: 73px;
        background-image: url(../images/weniger.svg);
    } 
    
    .toggle-button-image {
        background-repeat: no-repeat;
        height: 22px;
        cursor: pointer;
        display: inline-block;
        vertical-align: middle;
        margin-bottom: 2px;
    }

    .toggle-button span {
        margin-left: 5px;
        font-size: 20px;
    }

    .stroke-wrapper {
        line-height: 0;
    }

    /* End General CSS */
    
    /* Header section */ 
	#mobile_menu nav {
        background-color: #fff;
        width: 100vw;
        height: 100%;
        -webkit-transition: margin-right 1s;
        transition: margin-right 1s;
        overflow-y: scroll;
    }
    
    #mobile_menu.active nav {
        -webkit-transition: margin-right 0.3s;
        transition: margin-right 0.3s;
    }
    
    #mobile_menu {
        width: 100vw;
        right: 0;
        margin-right: -100vw;
        display: block;
        font-weight: 200;
        height: 100%;
        position: fixed;
        top: 0;
        overflow: hidden;
        -webkit-transition: margin-right 0.3s; /* Safari */
        transition: margin-right 0.3s;
    }
    
    #mobile_menu nav a {
        text-decoration: none;
        line-height: 1;
        color: #211F36; 
    }
    
    #mobile_menu nav li {
        width: 100%;
	}

	#mobile_menu nav ul {
        margin: 0px 12px 0px 45px;
	}
	
	#mobile_menu li a {
		font-size: 38px;
		padding-top: 20px;
        display: inline-block;
		line-height: 1.15;
	}

    #mobile_menu li a:hover {
        color: #D3E885;
        text-decoration: none;
	}
    
    #mobile_menu.active {
        margin-right: 0px;
        right: 0;
        -webkit-transition: margin-right 0.3s; /* Safari */
        transition: margin-right 0.3s;
		box-shadow: -10px 0px 10px rgba(0, 0, 0, 0.2); 
		z-index: 3;
    }
    
    #mobile_menu.active nav {
        margin-left: 0px;
        -webkit-transition: margin-right 0.8s; /* Safari */
        transition: margin-right 0.8s;
    }
    
    #mobile_menu_close {
        width: 40px;
        height: 40px;
		background-image: url(../images/Cross.svg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: 40px auto;
        position: absolute;
        right: 45px;
        top: 45px;
		cursor: pointer;
    }

    .menu-contact-text {
        margin-left: 45px
    }
    
    .site-header {
        padding: 20px 0px;
    }
    
    .mobile-menu-toggle {
        display: block;
    }
    
    .site-header #menu-toggle {
        display: block;
        background: none;
        border: none;
        box-shadow: none;
        width: 50px;
        height: 50px;
        background-image: url(../images/Burger_menu.svg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: 50px auto;
    }
    
    .menu-wrapper {
        display: flex;
        justify-content: center;
        align-items: center;
    }
	
    .header-section .content-wrapper {
        padding: 20px 15px 0px 15px;
    }
    
    .header-wrapper,
    .main-navigation ul {
        display: flex;
        justify-content: flex-end;
    }

    .main-navigation {
        display: flex;
        justify-content: flex-end;
    }
    
    .contact-list a {
        font-size: 30px;
        font-weight: 200;
        color: #ADA98E;
        text-decoration: none;
    } 

    .contact-list a:hover {
        color:  #D3E885
    }
    
    #site-navigation {
        margin-top: 2px;
    }
    
    #site-navigation ul li a {
        font-family: 'KozGoPr6N', sans-serif;
        text-decoration: none;
        color: #221F36;
        font-size: 18px;
        font-weight: 200;
        letter-spacing: 0.4px;
        line-height: 1;
    }
    
    #site-navigation ul li a span {
        position: relative;
    }
    
    #site-navigation ul li a span:after {
        display: block;
        clear: both;
        content: "";
        position: absolute;
        left: 0;
        bottom: -3px;
        right: 0;
        border-bottom: 2px solid #211F36;
        margin: 0 auto;
        padding: 1px 0px;
    }
    
    #site-navigation ul li a:hover span:after {
        -webkit-transition: opacity .15s ease-in-out;
        -moz-transition: all .15s ease-in-out;
        -ms-transition: all .15s ease-in-out;
        -o-transition: all .15s ease-in-out;
        transition: all .15s ease-in-out;
    }
    
    #site-navigation ul li a.active span:after,
    #site-navigation ul li.current-menu-item.menu-item-object-page a span:after {
        border-bottom: 2px solid #BCB613;
    }
    
    #site-navigation ul li a:hover span:after {
        border-bottom: 2px solid #BCB613;
    }
    
    .nav-link {
        padding: 0px;
    }

    .header-logo img {
        min-width: 180px;
        width: 40%;
        height: auto;
        margin: 0 auto;
    }
    /* End Header section */
     
    
    /* Home page */ 
     
    /* Intro section */
    .intro-label { 
        font-family: 'Ronnia', sans-serif;
        font-weight: 500;
        font-size: 16px;
        display: inline-block;
        margin-right: 15px;
    }

    .intro-text {
        font-size: 40px;
        display: inline;
        font-weight: 200;
    }

    .intro-text p {
        display: inline;
        margin: 0;
        padding: 0;
    }

    .intro-section {
        margin-bottom: 20%;
        font-weight: 200;
    }
    /* End Intro section */

    /* Slider section */ 
    .slider.section-content {
        padding: 25px 45px;
    }
    
    .slider-arrow {
        position: absolute;
        top: calc(100% - 90px);
        width: 60px;
        height: 60px;
        background-size: 60px 60px !important;
        background-position: center center;
        background-size: auto;
        background-repeat: no-repeat;
        z-index: 1;
        cursor: pointer;
    }
    
    .btn-left {
        left: 20px;   
        background-image: url(../images/arrow_left.svg) !important;
    }
    
    .btn-right { 
        right: 20px;
        background-image: url(../images/arrow_right.svg) !important;
    }
    
    .slick-disabled {
        opacity: 0;
        pointer-events:none;
    } 
    
     .slick-dots li button:before {
        display: none;
    } 

    /* Slick dots container */
    .slick-dots {
        display: flex !important;
        justify-content: center;
        align-items: center;
        gap: 8px;
        bottom: -8px;
    }

    /* Individual dots */
    .slick-dots li {
        margin: 0;
        width: auto;
        height: auto;
    }

    /* Inactive dot (rectangle) */
    .slick-dots li button {
        width: 36px;
        height: 7px;
        padding: 0;
        border: none;
        border-radius: 1px;
        background-color: #fff;
        opacity: 1;
        transition: background-color 0.3s ease, opacity 0.3s ease;
    }

    .slick-dots li.slick-active button {
        background-color: #5A4A5E;
        opacity: 1;
    }

    #slider-background {
        background: rgba(220, 214, 205, 0.65);
    }

    #sprechzeiten {
        position: relative;
        background-image: url(../images/Figuren.svg);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
    }

    /* The overlay */
    #sprechzeiten::before {
        content: "";
        position: absolute;
        inset: 0; /* top:0; left:0; bottom:0; right:0 */
        background: rgba(220, 214, 205, 0.65);
        z-index: 1;
    }

    /* Content above overlay */
    #sprechzeiten > * {
        position: relative;
        z-index: 2;
    }

    .home-slider {
        margin-top: -20%;
    }

    .slick-dotted.slick-slider {
        margin-bottom: 50px;
    }
    /* End Slider section */

    /* Office hours section */
    .office-hours-title {
        font-size: 18px;
        font-weight: 500;
    }

    .day-text {
        font-size: 18px;
        font-family: 'Ronnia', sans-serif;
        font-weight: 500;
    }

    .office-hours-contact-text a {
        text-decoration: none;
        color: #221F36;
    }

    .office-hours-contact-text a:hover {
        color: #ADA98E;
    }

    .floating-btn-horizontal {
        padding-bottom: 35px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        display: inline-block;
        cursor: pointer;
    }

    #appointment-horizontal {
        width: 195px;
    }

    #rezept-horizontal {
        width: 180px;
    }

    #appointment-horizontal {
        top: calc(100vh / 2 - 190px);
        background-image: url(../images/Termin_horizontal.svg);
    }

    #appointment-horizontal:hover {
        background-image: url(../images/Termin_horizontal_rollOver.svg);
    }

    /* Rezept button */
    #rezept-horizontal {
        top: calc(100vh / 2 + 50px);
        background-image: url(../images/Rezept_horizontal.svg);
    }

    #rezept-horizontal:hover {
        background-image: url(../images/Rezept_horizontal_RollOver.svg);
    }

    /* End Office hours section */

    /* Announcement section */
     .announcements-section .announcement-item {
        display: flex;
        align-items: flex-start;
        margin-bottom: 20px;
    }

    .announcements-section .announcement-bullet {
        margin-top: 0.6em;
        margin-right: 16px;
        background-color: #fff;  
    }

    .announcement-bullet {
        width: 40px;            
        height: 8px;  
        background-color: #221F36;  
        flex-shrink: 0;
    }
    
    .announcement-text p {
        margin-top: 0;
    }

    .announcements-section {
        background-color: #5A4A5E;
        color: #fff;
        position: relative;
    }

    .announcements-section::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 8px;
        background-color: #D3E885;
    }

    .announcement-text {
        font-weight: 300;
    }
    /* End Announcement section */

    /* Praxis section */
    .practice-item {
        font-size: 16px;  
    }

    .practice-title {
        font-weight: 500;
    }

    .converted-dash-list ul {
        list-style: none;
        padding-left: 0;
        margin: 0;
    }

    .converted-dash-list li {
        position: relative;
        padding-left: 1.2em;
    }

    .converted-dash-list li::before {
        content: "–";
        position: absolute;
        left: 0;
    }

    /* End Praxis section */

    /* Team section */
    .team-name {
        font-family: 'Ronnia', sans-serif;
        text-align: center;
        font-size: 16px;
		letter-spacing: 3px;
		font-weight: 500;
    }

    .team-title {
        font-size: 20px;
        color: #ADA98E;
        text-align: center;
    }

    .team-short {
        font-size: 16px;
    }

    .member-item .toggle-button-wrapper {
        text-align: center;
    }

    .kozuka-medium {
        font-weight: 500;
    }

    .small-font {
        font-size: 18px;
    }

    .office-hours-contact-text a[href^="tel:"] {
        font-weight: 200;
    }

    /* Lift only the FIRST team member */
    .member-item:first-child {
        /* transform: translateY(-80px); */
    }

    .team-intro {
        margin-bottom: 80px;
    }

    /* End Team section */

    /* End Home page */

    
    /* 404 page */
    .error-text {
        font-size: 30px;
        color: #ADA98E;
    }
    /* End 404 page */
    
    
    /* Footer section */ 
    .site-footer {
        background-color: #fff;
        padding-top: 20%;
        font-weight: 200;
    }

     .footer-image {
        margin-top: -20%;
    }
    
    .footer-top-section {
        background-color: #DCD6CD;
        padding-bottom: 100px;
    }

    #anfahrt {
        background-color: #5A4A5E;
        color: #fff;
        padding-bottom: 30px;
    }

    #anfahrt a {
        text-decoration: none;
        color: #fff;
    }

    #anfahrt .round-button {
        background-color: #221F36;
        border: 3px solid #221F36;
		font-weight: 300;
    }
    
    .copyright-wrapper  {
        font-size: 18px;
        padding: 2em 15px 0px 15px;
    }
    
    .copyright-wrapper p {
        display: inline;
        padding-left: 10px;
    }
    
    .copyright-wrapper a,
    .copyright-wrapper a:hover,
    .copyright-wrapper a:visited {
        color: #211F36;
        text-decoration: none;
    }
	
	.site-footer .content-wrapper a,
	.site-footer .content-wrapper a:hover	{
		color: #FFF;
		text-decoration: none;
	}

    #anfahrt .row {
        display: flex;
    }

    /* Make menu vertical */
    .anfahrt-menu {
        display: block !important;
        padding-left: 0;
        margin: 0;
        list-style: none;
        margin-bottom: 50px;
    }

    .anfahrt-menu li {
        display: block;
    }

    .anfahrt-menu li a {
        font-size: 38px;
        display: inline-block;
        text-decoration: none;
    }

    #anfahrt .anfahrt-menu li a:hover {
        color: #BCB613;
	}

    .footer-logo-wrapper .logo {
        display: block; 
    }

    .footer-logo-wrapper {
        display: flex;
        justify-content: flex-end;  /* move right */
        align-items: flex-end;       /* move bottom */
        min-height: 100%;            /* optional */
    }

    .footer-logo-wrapper img {
        width: 100%;
        max-width: 220px; /* set a limit */
        height: auto;
  }
    /* End Footer section */

    /* Impressum/privacy */

    .section-title.privacy{
        color: #212037
    }

    .privacy-content a {
        color: #211F36;
        text-decoration: none;
    }
    
    #CybotCookiebotDialogPoweredbyLink {
        display: none;
    }

    /* End Impressum/privacy */

    /* Rezept contact form */
    #rezept_overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background: rgba(255, 255, 255, 1); 
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s ease;
        z-index: 15;
    }

    #rezept_overlay.active {
        opacity: 1;
        pointer-events: auto;
    }

    .rezept-overlay-inner {
        background: #fff;
        width: 100%;
        height: 100%;
        overflow-y: auto;
        padding: 80px 0px 0px;
    }

    /* CLOSE BUTTON */
    #rezept_overlay_close {
        width: 40px;
        height: 40px;
        background-image: url(../images/Cross.svg);
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        right: 45px;
        top: 45px;
        cursor: pointer;
    }

    body.fixed-position {
        overflow: hidden;
    }

    .rezept-form .wpcf7 {
        max-width: 100%;
    }

    /* Field wrapper */
    .rezept-form p {
        display: flex;
        flex-direction: column-reverse;
        margin-bottom: 28px;
    }

    .rezept-form label {
        font-family: 'Ronnia', sans-serif;
        margin-top: 10px;
        font-size: 16px;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        font-weight: 500;
        color: #ADA98E;
    }
	
	.rezept-form .textarea-field label {
		margin-top: 4px;
	}

    .rezept-form label + br {
        display: none;
    }

    .rezept-form input[type="text"],
    .rezept-form input[type="email"],
    .rezept-form input[type="tel"],
    .rezept-form select,
    .rezept-form textarea {
        width: 100%;
        border: none;
        border-bottom: 2px solid #ADA98E;
        background: transparent;
        padding: 6px 0;
        font-size: 18px;
        font-weight: 200;
        color: #221F36;
    }

    .rezept-form textarea {
        min-height: 30px;
        height: 70px;
        resize: vertical;
    }

    .rezept-form input:focus,
    .rezept-form textarea:focus,
    .rezept-form select:focus {
        border-bottom-color: #000;
    }

    .rezept-form select {
        appearance: none;
        background-repeat: no-repeat;
        background-position: right center;
        background-size: 12px;
        padding-right: 20px;
    }

    .rezept-form input[type="submit"] {
        background: #fff;
        padding: 14px;
        font-size: 18px;
        font-weight: 600;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        cursor: pointer;
        margin-top: 20px;
        border: 2px solid #211F36;
    }

    .rezept-form input[type="submit"]:hover {
        opacity: 0.9;
    }

    .rezept-form .wpcf7-not-valid-tip {
        font-size: 12px;
        color: #221F36;
        margin-top: 4px;
    }

    .rezept-form .wpcf7-response-output {
        border: none;
        padding: 0;
        margin-top: 20px;
        font-size: 16px;
    }

    .rezept-form .dsgvo {
        display: block;
    }

    .rezept-form .dsgvo label {
        display: flex;
        align-items: flex-start;
        gap: 14px;
        cursor: pointer;
        font-size: 16px;
        font-family: 'KozGoPr6N', sans-serif;
        color: #221F36;
        font-weight: 200;
        line-height: 1.5;
        text-transform: none;
        letter-spacing: normal;
        position: relative;
    }

    .rezept-form .dsgvo input[type="checkbox"] {
        position: absolute;
        opacity: 0;
    }

    .rezept-form .dsgvo label::before {
        content: "";
        width: 23px;
        height: 23px;
        border: 2px solid #ADA98E;
        border-radius: 50%;
        flex-shrink: 0;
        margin-top: 3px;
        box-sizing: border-box;
    }

    .rezept-form .dsgvo label::after {
        content: "";
        position: absolute;
        left: 5px;
        top: 8px;
        width: 13px;
        height: 13px;
        background-color: #D3E885;
        border-radius: 50%;
        opacity: 0;
        transition: opacity 0.15s ease;
    }

    .rezept-form .form-field label {
        min-height: 2.8em;
    }

    .rezept-form .dsgvo label:has(input[type="checkbox"]:checked)::after {
        opacity: 1;
    }

    .rezept-form .wpcf7-list-item-label {
        position: relative;
    }

    .rezept-form .dsgvo .wpcf7-list-item {
        margin: 0;
    }

    .rezept-form .dsgvo a {
        color: #221F36;
        text-decoration: none;
    }

    .rezept-form .dsgvo a:hover {
        color:#D3E885;
    }

    .rezept-form .dsgvo label::before,
    .rezept-form .dsgvo label::after {
        pointer-events: none;
    }

    .rezept-form input:not(:placeholder-shown) + label {
        opacity: 0.6;
    }

    .rezept-form .col-md-4,
    .rezept-form .col-md-6,
    .rezept-form .col-12 {
        /* display: flex; */
        flex-direction: column-reverse;
    }

    .rezept-form .required-hint {
        font-size: 16px;
        color: #ADA98E;
        margin: 10px 0px 30px;
        font-weight: 300;
    }

    .rezept-contact-row {
        display: flex;
        gap: 40px;
        margin-top: 10px;
    }

    .rezept-phone {
        font-size: 30px;
        color: #221F36;
        text-decoration: none;
    }

    .rezept-phone:hover {
        color: #ADA98E;
    }

    .rezept-sprechzeiten {
        background: #fff;
        padding: 8px 12px;
        font-size: 16px;
        font-weight: 500;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        cursor: pointer;
        text-decoration: none;
        border: 2px solid #211F36;
        color: #211F36;
    }

    .rezept-sprechzeiten:hover {
        color: #211F36;
        background: #D3E885;
    }

    .rezept-sprechzeiten:visited {
        color: #211F36;
    }

    .rezept-form .form-field:has(.wpcf7-not-valid) input,
    .rezept-form .form-field:has(.wpcf7-not-valid) textarea {
        background-color: rgba(211, 232, 133, 0.59);
        padding: 8px;
    }

    .wpcf7 form.invalid .wpcf7-response-output, 
    .wpcf7 form.unaccepted .wpcf7-response-output, 
    .wpcf7 form.payment-required .wpcf7-response-output {
        background-color: rgba(211, 232, 133, 0.59);
        border: none;
        padding: 15px;
    }

    .wpcf7 form.sent .wpcf7-response-output {
        background-color: rgba(211, 232, 133, 0.79);
        border: none;
        padding: 15px;
    }
        
    /* End Rezept contact form */
    
    /* Cookie notice  */  
    .cli-bar-message {
        font-family: 'KozGoPr6N', sans-serif !important;
        font-size: 14px !important;
        line-height: 1.3 !important;
    }
    
    .cli_settings_button {
        font-family: 'KozGoPr6N', sans-serif !important;
        font-size: 14px !important;
        text-decoration: underline !important;
        text-underline-offset: 3px;
    }
    
    .cli_action_button {
        font-family: 'KozGoPr6N', sans-serif !important;
        font-size: 14px !important;
    }
    
    .cli_settings_button:hover,
    .cli_action_button:hover {
        background-color: rgb(0, 0, 0) !important;
    } 
    /* End Cookie notice  */
	
	/* Disable hyphenation on desktop only */
	@media (min-width: 1024px) {
		body {
			hyphens: none;
			-webkit-hyphens: none;
			-ms-hyphens: none;
		}
	}


    @media screen and (max-width: 1200px) and (min-width: 992px) {      
       
    }
    


