/**
 * @license
 * MyFonts Webfont Build ID 3867246, 2020-12-16T11:57:38-0500
 * 
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are 
 * explicitly restricted from using the Licensed Webfonts(s).
 * 
 * You may obtain a valid license at the URLs below.
 * 
 * Webfont: Adelon Serial by SoftMaker
 * URL: https://www.myfonts.com/collections/softmaker-foundry

 * Webfont: Adelon Serial Italic by SoftMaker
 * URL: https://www.myfonts.com/collections/softmaker-foundry

 * Webfont: Adelon Serial ExtraBold by SoftMaker
 * URL: https://www.myfonts.com/collections/softmaker-foundry

 * Webfont: Adelon Serial Heavy by SoftMaker
 * URL: https://www.myfonts.com/collections/softmaker-foundry
 
 * © 2026 MyFonts Inc. */


@font-face {
  font-family: "AdelonSerial";
  src: url('../../webFonts/AdelonSerial/font.woff2') format('woff2'), url('../../webFonts/AdelonSerial/font.woff') format('woff');
}
@font-face {
  font-family: "AdelonSerialHeavy";
  src: url('../../webFonts/AdelonSerialHeavy/font.woff2') format('woff2'), url('../../webFonts/AdelonSerialHeavy/font.woff') format('woff');
}
@font-face {
  font-family: "AdelonSerialExtraBold";
  src: url('../../webFonts/AdelonSerialExtraBold/font.woff2') format('woff2'), url('../../webFonts/AdelonSerialExtraBold/font.woff') format('woff');
}
@font-face {
  font-family: "AdelonSerialItalic";
  src: url('../../webFonts/AdelonSerialItalic/font.woff2') format('woff2'), url('../../webFonts/AdelonSerialItalic/font.woff') format('woff');
}


:root{
    --dark: #111111;
    --gold: #c6a86b;
    --light: #f8f8f8;
    --white: #ffffff;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior: smooth;
}

body{
    font-family: "AdelonSerial";
    font-optical-sizing: auto;
    line-height:22px;
    font-style: normal;
    letter-spacing:0.3px;
    background: #336992;
    background-image: linear-gradient(45deg, #336992 0%, #5ba5de 99%, #e3f1fc 100%);
    color:#222;
}

h2{
    font-family: "AdelonSerialExtraBold";
    color: #000;
    opacity: 0.89;
}

nav{
    position:fixed;
    top:0;
    width:100%;
    z-index:1000;
    padding:14px 0;
    background:rgba(214, 127, 0, 1);
    backdrop-filter:blur(10px);
}

.container{
    width:min(1200px,90%);
    margin:auto;
}

.nav-wrapper{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.logo{
    color:white;
    font-size:1.4rem;
    font-weight:700;
    letter-spacing:0px;
    line-height:1.2rem;
}

.logo a{
    font-family: "AdelonSerialExtraBold";
    color:white;
    font-size:1.5rem;
    font-weight:700;
    letter-spacing:0px;
    line-height:1.2rem;
    display:flex;
    align-items:center;
    gap:16px;
}

.logo img{
    display:block;
    width:clamp(170px, 19vw, 380px);
    height:auto;
}

.logo-text{
    display:block;
   line-height:2rem;
}

.doctor-name{
    white-space:nowrap;
}

.nav-toggle{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.hamburger{
    display:none;
    width:44px;
    height:36px;
    flex-direction:column;
    justify-content:center;
    gap:6px;
    cursor:pointer;
}

.hamburger span{
    display:block;
    height:3px;
    width:100%;
    background:#fff;
    border-radius:999px;
    transition:transform .25s ease, opacity .25s ease;
}

.berufsbezeichnung{
    display:block;
    font-family: "Arial", serif;
    color:white;
    font-size:0.9rem;
    font-weight:300;
    letter-spacing:0.3px;
    line-height:1.3rem; 
}

.p4{
    font-family: "AdelonSerial";
    color: #fff;
    font-size:0.8rem;
    text-align:center;
}

.p5{
    font-size:0.9rem;
    text-align:center;
}

.zitat-color {
    background:rgba(0,0,0,.08);
    padding:80px 10px 65px 10px;
    border-radius:20px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    margin-bottom:60px;
}

.zitat-color img{
    display:center;
    width:clamp(170px, 19vw, 380px);
    height:auto;
    opacity: 0.89;
}

.zitat {
    font-family: "AdelonSerialItalic";
    color: rgba(226, 212, 212, 0.38);
    font-size:1.1rem;
    text-align:center;
}

.zitatautor{
    font-family: "AdelonSerial";
    font-size:0.9rem;
    text-align:center;
}

nav ul{
    display:flex;
    gap:30px;
    list-style:none;
}

nav a{
    color:white;
    text-decoration:none;
}

.hero{
    min-height:100dvh;
    height:auto;
    padding:150px 20px 100px;
    background: #295d7f;
    background-image: linear-gradient(45deg, #295d7f 0%, #4296cf 99%, #b6d9ef 100%);
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    color:white;
}

.hero img{
    position: relative;
    z-index: 900;
    width:30%;
}

.hero h1{
    font-size:4rem;
    margin-bottom:20px;
}

.hero h2{
    font-family: "AdelonSerialExtraBold";
    color: #fff;
    font-size:2rem;
    line-height:36px;
    margin-bottom:20px;
}

.hero p{
    font-size:1.2rem;
    line-height:28px;
}

.btn{
    display:inline-block;
    margin-top:40px;
    margin-bottom:40px;
    padding:15px 35px;
    background:var(--gold);
    color:white;
    text-decoration:none;
    border-radius:50px;
}

section{
    min-height: 100vh;
    padding:120px 0;
    align-items:center;
}

.section-title{
    font-family: "AdelonSerialHeavy";
    text-align:center;
    margin-bottom:60px;
}

.section-title h2{
    font-size:2.5rem;
    line-height:1.2;
}

.section-subhead {
    padding-left:20px;
}

.placeholder-card-first{
    max-width:760px;
    margin:0 auto;
    padding:40px;
    border-radius:18px;
    background: #336992;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    text-align:center;
    margin-bottom:40px;
}

.placeholder-card-first h2{
    margin-bottom:18px;
}

.placeholder-card-first p{
    font-size:1.2rem;
    line-height:1.6;
}

.placeholder-card-first a{
    font-size:1.05rem;
    line-height:1.6;
    text-decoration: none;
    color: #000;
}

.placeholder-card-first img{
    width:100%;
    display:center;
    border-radius:15px;
    transition:.4s;
    margin-top: 20px;
    opacity: 0.89;
}

.about{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap: 50px;
    text-align:left;
}

.about ul li{
    margin-bottom: 10px;
    font-size:1rem;
    line-height:1.6;
}

.about-image-wrapper{ 
    position: relative; 
    display: inline-block; 
} 

.about-image-wrapper img{ 
    width: 48%; 
    border-radius: 20px; 
} 

.about-vignette{ 
    position: absolute; 
    top: 50%; 
    left: 50%; 
    transform: translate(-45%, -45%); 
    pointer-events: none; 
} 

.about-vignette img{ 
    height: 450px; 
    width: auto; 
    opacity: 0.3; 
}

.location-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(400px,1fr));
    gap:40px;
}

.location-grid img{
    width:60%;
    display:block;
    border-radius:15px;
    transition:.4s;
    margin-left: 80px;
}

.location-grid img:hover{
    transform:scale(1.4);
}

.location-grid p{
    text-align: center;
    max-width: 60%;
    margin-top: 15px;
    margin-left: 80px;

}

.location-text h1{
    font-family: "AdelonSerialExtraBold";
    text-align: center;
    margin-top: 40px;
}

.location-text p{
    text-align: center;
    margin: 0 150px 0 150px;
}

.location-vignette{
    text-align:center;
}

.location-vignette img{
    position: absolute;
    z-index: 900;
    height:80px !important;
    width:auto;
    opacity:0.6;
    margin: -10px 0px 0px 80px;
}

.services{
    background: #f5f5f5;
}

.service-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:25px;
}

.service-grid img{
    height:160px !important;
    border-radius:15px;
    margin-bottom:10px;
}

.service-vignette{
    text-align:center;
    margin-bottom:15px;
}

.service-vignette img{
    position: absolute;
    z-index: 900;
    height:130px !important;
    width:auto;
    opacity:0.7;
    margin: -30px auto 0px 140px;
}

.card{
    background:white;
    padding:30px;
    border-radius:15px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.card h3{
    font-family: "AdelonSerialExtraBold";
}

.card p{
    font-family: "AdelonSerial";
}
.imprint{
    text-align:left;
}

.imprint form{
    max-width:700px;
    margin:auto;
}

.imprint h2{
    font-size:1.2rem;
    text-align:left;
}

.placeholder{
    background:rgba(255,255,255,.9);
}

.placeholder-card-important{
    max-width:760px;
    margin:0 auto;
    padding:40px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    text-align:center;
}

.placeholder-card-important h2{
    margin-bottom:18px;
    text-align:left;
}

.placeholder-card-important p{
    font-size:1.05rem;
    line-height:1.6;
}

.placeholder-card-important ul{
    font-size:1.05rem;
    line-height:1.6;
    text-align:left;
    margin-left: 50px;
}

.placeholder-card-important a{
    font-size:1.05rem;
    line-height:1.6;
    text-decoration: none;
    color: #000;
}

.placeholder-card-important img{
    width:100%;
    display:center;
    border-radius:15px;
    transition:.4s;
    margin-top: 20px;
}

.placeholder-card-important02{
    max-width:760px;
    margin:50px auto;
    padding:40px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    text-align:center;
}

.placeholder-card-important02 h2{
    margin-bottom:18px;
    text-align:left;
}

.placeholder-card-important02 p{
    font-size:1.05rem;
    line-height:1.6;
}

.placeholder-card-important02 ul{
    font-size:1.05rem;
    line-height:1.6;
    text-align:left;
    margin-left: 50px;
}

.placeholder-card-important02 a{
    font-size:1.05rem;
    line-height:1.6;
    text-decoration: none;
    color: #000;
}

.placeholder-card-important02 img{
    width:100%;
    display:center;
    border-radius:15px;
    transition:.4s;
    margin-top: 20px;
}

.important-vignette{
    text-align:center;
    margin-bottom:15px;
}

.important-vignette img{
    position: absolute;
    z-index: 900;
    width:240px !important;
    height:auto;
    opacity:1.0;
    margin-left: 110px;
    margin-top: 50px;
}
.accordion{
cursor:pointer;
}

.placeholder-card-imprint{
    max-width:760px;
    margin:0 auto;
    padding:40px;
    border-radius:18px;
    background: #336992;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    text-align:left;
    margin-bottom:40px;
}

.placeholder-card-imprint h2{
    margin-bottom:18px;
}

.placeholder-card-imprint p{
    font-size:1.05rem;
    line-height:1.6;
}

.placeholder-card-imprint a{
    font-size:1.05rem;
    line-height:1.6;
    text-decoration: none;
    color: #000;
}

.placeholder-card-imprint img{
    width:100%;
    display:center;
    border-radius:15px;
    transition:.4s;
    margin-top: 20px;
    opacity: 0.89;
}

.imprint-vignette{
    text-align:center;
    margin-bottom:15px;
}

.imprint-vignette img{
    position: absolute;
    z-index: 900;
    height:90px !important;
    width:auto;
    opacity:0.7;
    margin: 0px auto 0px 30px;
}

.placeholder-card-contact{
    max-width:760px;
    margin:0 auto;
    padding:40px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    text-align:center;
}

.placeholder-card-contact h2{
    margin-bottom:18px;
}

.placeholder-card-contact p{
    font-size:1.05rem;
    line-height:1.6;
}

.placeholder-card-contact a{
    font-size:1.05rem;
    line-height:1.6;
    text-decoration: none;
    color: #000;
}

.placeholder-card-contact img{
    width:100%;
    display:center;
    border-radius:15px;
    transition:.4s;
    margin-top: 20px;
}

.contact-vignette{
    text-align:center;
    margin-bottom:15px;
}

.contact-vignette img{
    position: absolute;
    z-index: 900;
    width:250px !important;
    height:auto;
    opacity:1.0;
    margin-left: 115px;
    margin-top:50px;
}

input,
textarea{
    width:100%;
    padding:15px;
    margin-bottom:15px;
    border:1px solid #ddd;
    border-radius:10px;
}

button{
    background:var(--gold);
    color:white;
    border:none;
    padding:15px 35px;
    border-radius:50px;
    cursor:pointer;
}
#start,
#about,
#location,
#services,
#important,
#imprint,
#contact{
    min-height:100vh;
}

footer {
    position: relative;
    bottom:0;
}

.footer-content{
    position: relative;
    bottom:0px;
    width:100%;
    z-index:1000;
    background:rgba(28, 73, 102, 1);
    color:white;
    font-family: "Arial", sans-serif;
    font-size:14px;
    line-height:18px;
    text-align:center;
    padding:30px;
}

.footer-content a{
    color:white;
    text-decoration: none;
}

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

    html{
        -webkit-text-size-adjust: 100%;
    }

    nav{
        padding:10px 0;
    }

    .nav-wrapper{
        flex-direction:row;
        gap:10px;
    }

    .hamburger{
        display:flex;
    }

    .nav-toggle:checked + .hamburger span:nth-child(1){
        transform:translateY(9px) rotate(45deg);
    }

    .nav-toggle:checked + .hamburger span:nth-child(2){
        opacity:0;
    }

    .nav-toggle:checked + .hamburger span:nth-child(3){
        transform:translateY(-9px) rotate(-45deg);
    }

    nav ul{
        position:absolute;
        top:100%;
        left:0;
        right:0;
        display:none;
        flex-direction:column;
        justify-content:center;
        gap:0;
        margin:0;
        padding:10px 5%;
        background:rgba(214, 127, 0, .98);
        width:100%;
        box-shadow:0 14px 22px rgba(0,0,0,.18);
    }

    .nav-toggle:checked ~ ul{
        display:flex;
    }

    nav ul li{
        list-style:none;
        border-top:1px solid rgba(255,255,255,.25);
    }

    nav ul li:first-child{
        border-top:0;
    }

    nav a{
        font-size:1rem;
    }

    nav ul a{
        display:block;
        padding:13px 0;
    }

    .logo{
        text-align:left;
    }

    .logo a{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:5px;
        font-size:.86rem;
        line-height:1.08;
    }

    .logo img{
        width:260px;
        margin-bottom:2px;
    }

    .logo-text{
        display:flex;
        flex-direction:column;
        line-height:1.4rem;
    }

    .doctor-name{
        display:block;
        white-space:nowrap;
        font-size:1.1rem;
    }

    .berufsbezeichnung{
        font-size:0.7rem;
    }

    .hamburger{
        align-self:center;
        margin-left:auto;
    }

    .p5{
        font-size:0.75rem;
    }

    .hero{
        min-height:100dvh;
        padding:145px 20px 70px;
        margin-top:0;
        align-items:flex-start;
    }
    .hero h1{
        font-size:1.8rem;
    }
    .hero h2{
        font-size:1.4rem;
        line-height:1.25;
        margin-bottom:12px;
    }

    .hero p{
        font-size:0.85rem;
        line-height:1.6;
    }

    .hero img{
        width:100%;
        max-width:280px;
        display:block;
        margin:15px auto;
    }

    .btn{
        width:100%;
        max-width:300px;
        margin-top:20px;
        margin-bottom:20px;
        padding:15px;
        font-size:0.9rem;
    }

.p4{
    font-family: "AdelonSerial";
    color: #fff;
    font-size:0.8rem;
    text-align:center;
    line-height:0.3rem;
}

.placeholder-card-first{
    margin:0 auto;
    padding:30px 20px 30px 20px;
    border-radius:18px;
    background: #336992;
    text-align:center;
    margin-bottom:20px;
}


.zitat {
    font-family: "AdelonSerialItalic";
    color: rgba(226, 212, 212, 0.8);
    font-size:0.9rem;
    text-align:center;
}

.zitatautor{
    display:center;
    font-size:0.7rem;
}

    section{
        padding:90px 0 80px;
    }

    #about,
    #location,
    #services,
    #important,
    #imprint,
    #contact{
        scroll-margin-top: 65px;
    }

    .about{
        grid-template-columns:1fr;
        gap:30px;
    }

    .about img{
        width:100%;
        max-width:350px;
        margin:auto;
        display:block;
    }

    .about-vignette{
    display: none;
    }

    .about-vignette img{
    display: none;
    }

    .location-grid{
        grid-template-columns:1fr;
    }

    .location-grid img{
        width:100%;
        margin:0;
    }

    .location-grid img:hover{
    transform:none;
    }

    .location-text p{
    text-align: center;
    margin: auto;
    padding-bottom: 20px;
    }

    .location-vignette{
    display: none;
    }

    .location-vignette img{
    display: none;
    }

    .service-grid{
        grid-template-columns:1fr;
    }

    .service-vignette{
    display: none;
}

    .service-vignette img{
    display: none;
}

    .card{
        padding:20px;
    }

    .placeholder-card-important{
        padding:26px 20px;
    }

    .important-vignette{
        display: none;
    }

    .important-vignette img{
        display: none;
    }

    .imprint-vignette{
    display: none;
    }

    .imprint-vignette img{
    display: none;
    }

    .contact-vignette{
    display: none;
    }

    .contact-vignette img{
    display: none;
    }

    .section-title{
        margin-bottom:24px;
    }

    .section-title h2{
        font-size:1.8rem;
        line-height:1.15;
    }

    .location-text h1{
        margin-top:32px;
        margin-bottom:10px;
        line-height:1.15;
    }

    .card h2,
    .placeholder-card-important h2,
    .imprint h2{
        line-height:1.2;
        margin-bottom:8px;
    }

    footer {
        position: relative;
        bottom:0;
    }

    .footer-content{
    position: relative;
    bottom:0;
    width:100%;
    z-index:1000;
    background:rgba(28, 73, 102, 1);
    color:white;
    font-family: "Arial", sans-serif;
    font-size:12px;
    line-height:16px;
    text-align:center;
    padding:10px;
}

    .footer-content a{
    color:white;
    text-decoration: none;
    }
}


@media screen and (min-width:769px) and (max-width:1024px){

    nav{
        padding:12px 0;
    }

    .container{
        width:min(940px,92%);
    }

    .logo a{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:7px;
        font-size:1.1rem;
        line-height:1.1;
    }

    .logo img{
        width:180px;
        margin-bottom:2px;
    }

    .logo-text{
        display:flex;
        flex-direction:column;
    }

    .doctor-name{
        white-space:nowrap;
    }

    nav ul{
        gap:18px;
    }

    nav a{
        font-size:.95rem;
    }

    .hero{
        padding:145px 30px 90px;
        min-height:100dvh;
    }

    .hero h2{
        font-size:1.7rem;
    }

    .about{
        grid-template-columns:1fr;
        gap:35px;
    }

    .about img{
        width:55%;
        max-width:430px;
        margin:auto;
        display:block;
    }

    .about-vignette{
    display: none;
    }

    .about-vignette img{
    display: none;
    }

    .location-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .location-grid img{
        width:100%;
        margin:0;
    }

    .location-text p{
        margin:0 40px;
    }

    .location-vignette{
    display: none;
    }

    .location-vignette img{
    display: none;
    }

    .service-vignette{
    display: none;
}

    .service-vignette img{
    display: none;
}

    .important-vignette{
        display: none;
    }

    .important-vignette img{
        display: none;
    }

    .imprint-vignette{
    display: none;
    }

    .imprint-vignette img{
    display: none;
    }

    .contact-vignette{
    display: none;
    }

    .contact-vignette img{
    display: none;
    }

    .service-grid{
        grid-template-columns:repeat(2,1fr);
    }

    #about,
    #location,
    #services,
    #important,
    #imprint,
    #contact{
        scroll-margin-top:95px;
    }
}

@media screen and (max-width:950px) and (orientation:landscape){

    .hero{
        min-height:100dvh;
        padding:115px 20px 70px;
        margin-top:0;
    }

    .hero img{
        width:80%;
        max-width:220px;
    }

    .hero h2{
        font-size:1.2rem;
    }

    .hero p{
        font-size:0.75rem;
    }
    #about,
    #location,
    #services,
    #important,
    #contact,
    #imprint{
        scroll-padding-top:10px;
    }

    .about{
        grid-template-columns:1fr 1fr;
    }

    .about-vignette{
        display: none;
    }

    .about-vignette img{
        display: none;
    }

    .location-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .location-text p{
        text-align: center;
    }

    .location-vignette{
        display: none;
    }

    .location-vignette img{
        display: none;
    }

    .service-vignette{
    display: none;
}

    .service-vignette img{
    display: none;
}

    .important-vignette{
        display: none;
    }

    .important-vignette img{
        display: none;
    }

    .imprint-vignette{
    display: none;
    }

    .imprint-vignette img{
    display: none;
    }    

    .contact-vignette{
        display: none;
    }

    .contact-vignette img{
        display: none;
    }
    
    .about{
        grid-template-columns:1fr 1fr;
    }

    .about-vignette{
        display: none;
    }

    .about-vignette img{
        display: none;
    }

    .footer-content{
    position: relative;
    bottom:0;
    width:100%;
    z-index:1000;
    background:rgba(28, 73, 102, 1);
    color:white;
    font-family: "Arial", sans-serif;
    font-size:12px;
    line-height:16px;
    text-align:center;
    padding:10px;
}

    .footer-content a{
    color:white;
    text-decoration: none;
    }
}

@media (min-width: 1025px) and (max-width: 1440px) {
 
    body{
        transform-origin: top center;
    }

    .placeholder-card-first{
        margin-top: -30px;
        padding-bottom: 15px;
    }

    .p4{
        transform: scale(0.9);
    }

        #contact{
        margin-top: 5px;
        padding-bottom: 0px;
    }

    .placeholder-card-contact{
        margin-top: -90px;
        padding-bottom: 0px;
        transform: scale(0.75);
    }

}
