body{
    font-family: Arial, Helvetica, sans-serif;
    margin:0;
    line-height:1.6;
    color:#222;
    font-size:17px;
    }
    
    a{
    color:#0066cc;
    text-decoration:none;
    }
    
    a:hover{
    color:#004499;
    text-decoration:none;
    }
    
    
    /* CONTENT AREA */
    
    .content{
    max-width:900px;
    margin:auto;
    padding:60px 20px;
    line-height:1.6;
    }
    
    .content h1{
    margin-bottom:30px;
    }
    
    
    /* HEADER */
    
    .topbar{
    padding:15px 20px;
    }
    
    .topbar-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    max-width:1200px;
    margin:auto;
    }
    
    .logo{
    height:54px;
    }
    
    .topinfo{
    font-size:14px;
    display:flex;
    gap:12px;
    align-items:center;
    }
    
    .loginlink{
    text-decoration:none;
    font-weight:bold;
    color:#333;
    }
    
    .loginlink:hover{
    text-decoration:underline;
    }
    
    
    /* HERO */
    
    .heroimage{
    background-image:url("../images/AH-Wiesbaden.png");
    background-size:cover;
    background-position:center;
    height:240px;
    }
    
    
    /* WELCOME */
    
    .welcome_section{
    display:flex;
    gap:40px;
    max-width:1200px;
    margin:auto;
    padding:20px 20px;
    flex-wrap:wrap;
    }
    
    .welcome_left{
    flex:2;
    min-width:320px;
    }
    
    .welcome_right{
    flex:1;
    text-align:center;
    margin-top:180px;
    }
    
    .welcome_right img{
    max-width:350px;
    }
    
    .contact_box{
    background:#f5f5f5;
    padding:20px;
    margin-top:20px;
    border-radius:6px;
    }
    
    .flyertext{
    margin-top:10px;
    }
    
    
    /* NEWS */
    
    .news{
    background:#f5f5f5;
    padding:60px 20px;
    }
    
    .news h2{
    text-align:center;
    margin-bottom:40px;
    }
    
    .newsgrid{
    display:flex;
    gap:40px;
    flex-wrap:wrap;
    max-width:1200px;
    margin:auto;
    }
    
    .newsitem{
    flex:1;
    min-width:280px;
    background:white;
    padding:20px;
    border-radius:8px;
    box-shadow:0 4px 12px rgba(0,0,0,0.08);
    transition:transform 0.2s;
    }
    
    .newsitem:hover{
    transform:translateY(-4px);
    }
    
    .newsitem > img{
    width:100%;
    border-radius:6px;
    margin-bottom:10px;
    }
    
    
    /* NEWS ROW LAYOUT */
    
    .newsrow{
    display:flex;
    gap:20px;
    align-items:flex-start;
    }
    
    .newsimage{
    width:200px;
    height:200px;
    overflow:hidden;
    flex-shrink:0;
    }
    
    .newsimage img{
    width:100%;
    height:100%;
    object-fit:cover;
    }
    
    .newstext{
    flex:1;
    }
    
    
    /* BERATUNG */
    
    .beratung{
    max-width:900px;
    margin:auto;
    padding:60px 20px;
    }
    
    .beratung_intro{
    margin-bottom:30px;
    }
    
    .accordion{
    background:#f5f5f5;
    border-radius:6px;
    margin-bottom:10px;
    overflow:hidden;
    }
    
    .accordion summary{
    font-weight:bold;
    cursor:pointer;
    padding:16px 20px;
    list-style:none;
    position:relative;
    padding-left:30px;
    }
    
    .accordion summary::-webkit-details-marker{
    display:none;
    }
    
    .accordion summary:before{
    content:"▶";
    position:absolute;
    left:10px;
    transition:transform 0.2s;
    }
    
    .accordion summary:hover{
    background:#f5d6d6;
    color:#a40000;
    }
    
    .accordion summary:hover:before{
    color:#a40000;
    }
    
    .accordion[open] summary:before{
    transform:rotate(90deg);
    }
    
    .accordion[open]{
    background:#eeeeee;
    }
    
    .accordion p,
    .accordion ul{
    padding:0 20px 20px 30px;
    margin:0;
    }
    
    
    /* FOOTER */
    
    footer{
    background:#222;
    color:white;
    padding:50px 20px;
    }
    
    .footergrid{
    display:flex;
    flex-wrap:wrap;
    gap:40px;
    max-width:1200px;
    margin:auto;
    }
    
    .footergrid a{
    color:white;
    text-decoration:none;
    }
    
    .footer_logo{
    margin-left:auto;
    display:flex;
    align-items:flex-end;
    justify-content:flex-end;
    }
    
    .footer_logo img{
    max-width:70px;
    opacity:0.85;
    }
    
    .credits{
    text-align:center;
    opacity:0.1;
    font-size:12px;
    margin-top:40px;
    }
    
    
    /* MOBILE */
    
    @media (max-width:800px){
    
    .topbar-inner{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
    }
    
    .topinfo{
    font-size:13px;
    }
    
    .newsgrid{
    flex-direction:column;
    }
    
    .footergrid{
    flex-direction:column;
    gap:30px;
    }
    
    .heroimage{
    height:160px;
    }
    
    }
    
    @media (max-width:700px){
    
    .newsrow{
    flex-direction:column;
    }
    
    .newsrow img{
    max-width:100%;
    }
    
    }