/* Schriftarten lokal geladen – keine Anfrage an Google Fonts */
@font-face{font-family:'Cormorant Garamond';src:url('fonts/cormorant-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('fonts/cormorant-medium.woff2') format('woff2');font-style:normal;font-weight:500 600;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('fonts/cormorant-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('fonts/cormorant-medium-italic.woff2') format('woff2');font-style:italic;font-weight:500 600;font-display:swap}
@font-face{font-family:'Libre Baskerville';src:url('fonts/libre-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Libre Baskerville';src:url('fonts/libre-bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}

:root{--olive:#566440;--dark:#2f3a22;--cream:#f9f5ed;--ink:#2c3021;--line:#dfd7c8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'Cormorant Garamond',Georgia,serif;font-size:21px}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}.header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,64px);gap:24px;background:#faf7f0}.brand{display:flex;align-items:center;gap:8px;white-space:nowrap}.brand strong{display:block;font-size:39px;font-style:italic;font-weight:500;line-height:.9}.brand small{display:block;text-align:right;font-size:16px}.sprig{font-size:55px;color:var(--olive);transform:rotate(-28deg)}nav{display:flex;gap:clamp(12px,2vw,36px);font-size:19px}nav a:hover,nav a:focus-visible{border-bottom:1px solid var(--olive)}.language{font-size:17px;white-space:nowrap}.language small{display:none}.hero{min-height:570px;height:57vw;max-height:720px;position:relative;background:url('bilder/Haus-mit-Platanen.jpg') center 48%/cover no-repeat;display:flex;align-items:center;padding:5%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,22,12,.68),rgba(15,22,12,.18) 65%,rgba(15,22,12,.04))}.hero-text{position:relative;color:white;text-shadow:0 2px 14px #0007}.hero h1{font-size:clamp(65px,8vw,125px);font-weight:400;font-style:italic;line-height:1;margin:15px 0}.hero-text>p{font-size:clamp(30px,3.8vw,54px);line-height:1.04;margin:16px 0 30px}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:15px}.light{color:#fff}.flourish{font-size:21px}.button{display:inline-block;background:var(--olive);border:1px solid var(--olive);color:#fff;padding:13px 24px;font-size:20px;transition:.2s}.button:hover{background:var(--dark)}.button span{padding-left:10px}.button.outline{background:rgba(72,87,52,.9);border:2px solid #f9f4e8}.hero-seal{position:absolute;right:6%;top:30%;width:150px;height:150px;border-radius:50%;background:#5b673f;border:2px solid #d7c57e;color:#fff;display:grid;place-content:center;text-align:center;line-height:1.12;font-size:25px;box-shadow:0 0 0 5px #58653d66}.features{display:grid;grid-template-columns:repeat(4,1fr);padding:22px 3%;text-align:center;background:#f7f2e9}.features>div{border-right:1px solid var(--line)}.features>div:last-child{border:0}.feature-icon{display:block;font-size:49px;color:var(--olive);height:53px}.features h3{font-size:26px;font-weight:500;margin:3px 0 0}.features p{font-size:17px;margin:0}.intro{display:grid;grid-template-columns:40% 60%;min-height:420px}.intro-copy{padding:clamp(30px,5vw,75px);align-self:center}.intro h2,.section-heading h2,.closing h2{font-size:clamp(44px,5vw,72px);font-weight:400;font-style:italic;line-height:.95;margin:18px 0}.intro p{font-size:22px;line-height:1.28;max-width:480px}.small-flourish{color:#a9a782}.intro-image img{height:100%;min-height:420px}.stays{padding:80px 5%;background:#f4efe5}.section-heading{text-align:center;margin-bottom:36px}.section-heading p{margin:0}.stay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;max-width:1350px;margin:auto}.stay-card{background:#fffaf2;box-shadow:0 3px 18px #302a1814}.stay-card img{height:270px}.stay-body{padding:25px}.stay-type{color:var(--olive);font-size:16px;text-transform:uppercase;letter-spacing:.1em}.stay-body h3{font-size:36px;font-weight:500;margin:8px 0}.stay-body p{font-size:20px;line-height:1.2;min-height:72px}.stay-body a{color:var(--olive);font-weight:600;border-bottom:1px solid var(--olive)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gallery-item img{height:270px}.gallery-item>div{padding:14px 30px 19px;min-height:90px}.gallery h3{font-size:25px;font-weight:500;margin:0}.gallery p{font-size:17px;margin:0}.closing{position:relative;min-height:350px;background:url('bilder/IMG_2760.jpeg') center 45%/cover;display:flex;align-items:end;justify-content:space-between;padding:60px 5%;gap:30px;color:white}.closing-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#17200ec9,#17200e45)}.closing-text,.closing-action{position:relative}.closing h2{margin:9px 0}.closing p{font-size:23px;max-width:600px;margin:0}.closing-action{text-align:right}.closing-action p{margin-bottom:15px}.muted{cursor:default}footer{background:#eee7db;padding:24px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px}footer strong,footer span{display:block}footer strong{font-size:27px;font-style:italic;font-weight:500}footer p{max-width:440px}@media(max-width:900px){.header{height:auto;min-height:75px;flex-wrap:wrap;padding:14px 20px}.brand strong{font-size:31px}nav{order:3;width:100%;justify-content:center;flex-wrap:wrap}.language{margin-left:auto}.hero{min-height:520px}.hero-seal{right:3%;width:115px;height:115px;font-size:20px}.intro{grid-template-columns:1fr 1fr}.stay-card img{height:200px}.stay-body h3{font-size:29px}}@media(max-width:650px){body{font-size:19px}.header{gap:12px}.brand strong{font-size:29px}.brand small{font-size:13px}.sprig{font-size:37px}nav{font-size:16px;gap:15px}.hero{min-height:480px;padding:25px;background-position:52% center}.hero h1{font-size:60px}.hero-text>p{font-size:34px}.hero-seal{display:none}.features{grid-template-columns:repeat(2,1fr);gap:20px 0}.features>div:nth-child(2){border:0}.features h3{font-size:22px}.features p{font-size:15px}.intro{grid-template-columns:1fr}.intro-image img{min-height:290px;max-height:420px}.stays{padding:55px 20px}.stay-grid{grid-template-columns:1fr}.stay-card img{height:250px}.stay-body p{min-height:0}.gallery{grid-template-columns:1fr}.gallery-item img{height:240px}.closing{display:block;padding:55px 25px}.closing-action{text-align:left;margin-top:30px}footer{display:block;text-align:center}footer p{margin:15px auto}}

/* Bildergalerie Startseite: unveränderte Bildmaße, Pfeile innerhalb der Bilder */
.gallery-photo{position:relative;overflow:hidden}
.gallery-photo img{height:270px}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:52px;border:1px solid rgba(255,255,255,.65);background:rgba(35,45,27,.58);color:#fff;font-size:28px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1;transition:background .2s}
.gallery-prev{left:9px}.gallery-next{right:9px}
.gallery-arrow:hover,.gallery-arrow:focus-visible{background:rgba(35,45,27,.88);outline-offset:2px}
.gallery-item .gallery-caption{padding:14px 30px 19px;min-height:90px}
@media(max-width:650px){.gallery-photo img{height:240px}.gallery-arrow{width:38px;height:48px}}

/* Dezente Galerie-Pfeile im Provence-Stil */
.gallery-arrow{
  width:36px;
  height:36px;
  border:1px solid rgba(255,250,238,.68);
  border-radius:50%;
  background:rgba(48,58,36,.28);
  color:#fffaf0;
  font-family:Georgia,serif;
  font-size:23px;
  font-weight:400;
  line-height:1;
  box-shadow:0 1px 7px rgba(0,0,0,.10);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
  transition:background .2s ease,border-color .2s ease;
}
.gallery-prev{left:12px}
.gallery-next{right:12px}
.gallery-arrow:hover,.gallery-arrow:focus-visible{
  background:rgba(67,79,49,.72);
  border-color:rgba(255,250,238,.95);
  outline:2px solid transparent;
  outline-offset:3px;
}
.gallery-arrow:focus-visible{outline-color:#fffaf0}
@media(max-width:650px){.gallery-arrow{width:36px;height:36px}}
/* Rückzugsort – Text und Bild gleich hoch */
.intro {
    min-height: 0;
    align-items: stretch;
}

.intro-copy {
    padding: 35px 5%;
}

.intro-image {
    height: auto;
    overflow: hidden;
}

.intro-image img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 650px) {
    .intro-image {
        height: 300px;
    }
}
/* Abstand unter der Symbolleiste */
.intro {
    margin-top: 20px;
}
/* Rückzugsort – kleineres, eingerahmtes Bild */
.intro {
    margin-top: 20px;
    align-items: center;
}

.intro-image {
    width: 85%;
    height: 380px;
    margin: 25px auto;
    padding: 8px;
    background: #eee7db;
    border: 1px solid #d8cfbf;
    box-shadow: 0 4px 15px rgba(50, 45, 30, 0.10);
    overflow: hidden;
}

.intro-image img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 650px) {
    .intro-image {
        width: 90%;
        height: 280px;
        margin: 20px auto;
    }
}

/* Footer-Links auf kleinen Bildschirmen: Abstand und gut antippbare Links */
@media (max-width:650px) {
  footer { text-align:center; }
  footer > a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    margin:5px 7px;
    padding:8px 12px;
    border:1px solid #d8cfbf;
    border-radius:3px;
    white-space:nowrap;
  }
}

/* Footer-Navigation: eigener Bereich, statt einzelner Links im Flex-Footer */
footer .footer-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 18px}
footer .footer-links a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;white-space:nowrap}
@media(max-width:650px){
  footer .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px auto 4px;max-width:360px}
  footer .footer-links a{display:flex;min-height:46px;margin:0;padding:10px 8px;border:1px solid #d8cfbf;border-radius:3px;text-align:center}
}
