*{box-sizing:border-box}
body{margin:0;font-family:Segoe UI,Arial,sans-serif;line-height:1.6;color:#2d2d2d;background:#faf8f3}html{scroll-behavior:smooth}
.nav-inner{max-width:1100px;margin:auto;padding:1rem;display:flex;justify-content:space-between;align-items:center}
.menu a{text-decoration:none;margin-left:1rem;color:#355441;font-weight:600}nav{position:sticky;top:0;background:#ffffffee;backdrop-filter:blur(8px);z-index:100}
.hero{height:85vh;position:relative}
.hero img{width:100%;height:100%;object-fit:cover}
.hero-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0.45);
}
.hero-content{
    position:absolute;
    inset:0;

    display:flex;
    flex-direction:column;

    justify-content:center;
    align-items:flex-start;

    text-align:left;

    color:white;

    padding-left:6%;
    max-width:700px;
}

.hero h1{font-size:4rem;margin:.5rem 0}
.button,.links a{background:#355441;color:#fff;padding:.8rem 1.2rem;border-radius:999px;text-decoration:none}
.section{padding:4rem 0}
.alt{background:#eef4ef}
.container{width:min(1100px,92%);margin:auto}
.narrow{max-width:800px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}
.card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 15px rgba(0,0,0,.08);text-align:center}
.time{font-size:2rem;color:#355441;font-weight:bold}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.gallery img{width:100%;height:250px;object-fit:cover;border-radius:10px}
.links{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}h2{text-align:center;color:#355441}
.logo{font-weight:700;color:#355441}footer{text-align:center;background:#355441;color:#fff;padding:2rem}@media(max-width:768px){.hero h1{font-size:2.5rem}.nav-inner{flex-direction:column}}
.bank-account {
    margin-top: 3rem;
    padding: 2rem;

    background: #eef4ef;

    border-left: 4px solid #355441;
    border-radius: 10px;
}

.bank-account h3 {
    margin-top: 0;
    color: #355441;
}

.iban {
    font-size: 1.2rem;
    font-weight: bold;
    color: #355441;
    letter-spacing: 1px;
    word-break: break-word;
}

.qr-code {
    display: block;

    width: 180px;
    max-width: 100%;

    margin: 1.5rem auto;

    background: white;
    padding: 8px;
    border-radius: 8px;
}

.bank-account p:last-child {
    margin-bottom: 0;
}
.map-section {
    margin: 2rem 0;
}

.map-section h3 {
    margin-bottom: 1rem;
}

.map-section iframe {
    width: 100%;
    height: 350px;
    border: 0;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.map-link {
    margin-top: 1rem;
}
