/* Cormorant Garamond – lokal von 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;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;font-display:swap}

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#faf7f0;color:#303525;font-family:'Cormorant Garamond',Georgia,serif;font-size:23px}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}.wrap{max-width:1180px;margin:auto;padding:0 25px}.top{background:#faf7f0;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:90px;padding:15px 5%}.logo{display:flex;align-items:center;gap:9px;color:#53633b;font-size:42px;line-height:1}.logo span{font-style:italic}.logo small{display:block;font-size:16px;color:#4b4e3f;text-align:right;font-style:normal}.top nav{display:flex;gap:25px;font-size:20px}.top nav a:hover{text-decoration:underline}.tag{font-size:17px;color:#6c715c}.breadcrumb{padding:15px 5%;font-size:17px;color:#737461}.hero{height:420px;position:relative;background:#4b473c}.hero>img{height:100%;object-fit:contain;object-position:center center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#1119,transparent 65%)}.hero-overlay{position:absolute;bottom:45px;left:max(5%,calc((100vw - 1180px)/2));z-index:1;color:#fff;text-shadow:0 2px 9px #0007}.overline{font-size:15px;letter-spacing:.18em;text-transform:uppercase}.green{color:#738056}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(55px,7vw,95px);font-weight:400;font-style:italic;margin:7px 0}h2{font-size:clamp(42px,5vw,62px);font-weight:400;font-style:italic;line-height:1.02;margin:14px 0 22px}.hero p{font-size:29px;margin:0}.intro{display:grid;grid-template-columns:1.5fr 1fr;gap:65px;padding-top:85px;padding-bottom:90px}.intro p{line-height:1.3}.facts{background:#eee9dc;padding:32px 35px;align-self:start}.facts h3{font-size:38px;font-weight:400;border-bottom:1px solid #d5cbb8;padding-bottom:12px}.facts>div{display:flex;gap:17px;margin:22px 0}.facts>div>span{font-size:30px;color:#67764b}.facts p{margin:0}.facts strong,.facts small{display:block}.facts strong{font-size:23px;font-weight:400}.facts small{font-size:18px;color:#6b6b5d}.pending{font-size:18px!important;border-top:1px solid #d5cbb8;padding-top:20px;color:#686f55}.gallery-section{background:#f0eadf;padding:78px 0 90px;text-align:center}.sub{font-size:21px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;text-align:left;margin-top:32px}.gallery figure{margin:0;background:#fffaf4}.gallery figure img{height:220px}.gallery figure.large{grid-column:span 2;grid-row:span 2}.gallery figure.large img{height:calc(440px + 15px + 43px)}.gallery figcaption{padding:9px 15px;font-size:20px}.outdoor{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center;padding-top:100px;padding-bottom:100px}.outdoor img{height:400px}.note{font-size:19px;color:#6d7658}.end{text-align:center;background:#52613e;color:#fff;padding:75px 20px}.end h2{margin-bottom:7px}.end a{display:inline-block;margin-top:15px;padding:12px 20px;border:1px solid #fff;font-size:20px}footer{display:flex;justify-content:space-between;gap:20px;padding:23px 5%;font-size:17px}@media(max-width:760px){.top{flex-wrap:wrap}.top nav{order:3;width:100%;justify-content:center;flex-wrap:wrap}.tag{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.hero{height:340px}.intro,.outdoor{grid-template-columns:1fr;gap:30px;padding-top:55px;padding-bottom:55px}.gallery{grid-template-columns:1fr 1fr}.gallery figure.large{grid-column:span 2;grid-row:auto}.gallery figure.large img{height:310px}.gallery figure img{height:170px}.outdoor img{height:300px}footer{display:block;text-align:center}footer span{display:block}}@media(max-width:460px){.gallery{grid-template-columns:1fr}.gallery figure.large{grid-column:span 1}.gallery figure img,.gallery figure.large img{height:230px}.hero-overlay{bottom:25px}.hero p{font-size:24px}}
/* Variante 2: Text links, Originalfoto rechts – ohne Vergrößerung oder Beschnitt */
.hero{height:auto;min-height:360px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);background:#eee9dc;align-items:stretch}
.hero>img{grid-column:2;grid-row:1;height:100%;max-height:490px;min-height:360px;object-fit:contain;object-position:center;background:#e8e1d5;filter:brightness(1.17) contrast(1.035) saturate(1.07)}
.hero:after{display:none}
.hero-overlay{position:static;grid-column:1;grid-row:1;align-self:center;padding:55px max(28px,5vw);color:#34402b;text-shadow:none}
.hero-overlay .overline{color:#748056}
.hero-overlay h1{font-size:clamp(48px,5.3vw,76px)}
.hero-overlay p{font-size:clamp(23px,2.6vw,32px)}
/* Freundlichere, natürlich wirkende Fotos; Originaldateien bleiben unverändert */
.gallery img,.outdoor img{filter:brightness(1.17) contrast(1.035) saturate(1.07)}
@media(max-width:760px){.hero{grid-template-columns:1fr}.hero-overlay{grid-column:1;grid-row:1;padding:35px 25px}.hero>img{grid-column:1;grid-row:2;height:auto;min-height:0;max-height:none;aspect-ratio:4/3;object-fit:contain}.hero-overlay h1{font-size:clamp(46px,9vw,70px)}}

/* Sicherheitsregel: Das Bild darf nie die ganze Seitenbreite beanspruchen. */
@media(min-width:761px){.hero>img{width:100%;max-width:100%;max-height:490px}.hero-overlay{min-width:0}}

/* Harmonischer Hintergrund rechts statt weißer Leerflächen */
.hero{background:#eee9dc}
.hero>img{background:#eee9dc;object-fit:contain;object-position:center center}

/* Korrektur: Bild nicht auf volle Spaltenbreite strecken.
   Freie Flaechen gehoeren dadurch zum beigen Hero-Hintergrund. */
@media (min-width:761px) {
  .hero { background:#eee9dc !important; }
  .hero > img {
    width:auto !important;
    height:490px;
    min-height:0;
    max-height:490px;
    max-width:100%;
    justify-self:center;
    align-self:center;
    object-fit:contain;
    background:transparent !important;
  }
}
@media (max-width:760px) {
  .hero { background:#eee9dc !important; }
  .hero > img { width:100% !important; background:#eee9dc !important; }
}

/* Bildzoom / Lightbox */
.gallery figure img{cursor:zoom-in}
.gallery figure img:focus-visible{outline:3px solid #899978;outline-offset:-3px}
.lightbox[hidden]{display:none!important}
.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(17,24,18,.94);display:flex;align-items:center;justify-content:center;padding:65px 75px 85px}
.lightbox-image{display:block;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 10px 40px #0005}
.lightbox button{position:absolute;border:0;background:rgba(255,255,255,.13);color:#fff;cursor:pointer;border-radius:50%;display:grid;place-items:center;font-family:Arial,sans-serif}
.lightbox button:hover,.lightbox button:focus-visible{background:rgba(255,255,255,.3)}
.lightbox-close{right:20px;top:18px;width:45px;height:45px;font-size:32px}
.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%);width:48px;height:48px;font-size:42px;line-height:1}
.lightbox-prev{left:15px}.lightbox-next{right:15px}
.lightbox-caption{position:absolute;bottom:25px;left:70px;right:70px;text-align:center;color:#f5f4ed;font:400 24px 'Cormorant Garamond',serif}
body.lightbox-open{overflow:hidden}
@media(max-width:640px){.lightbox{padding:75px 12px 85px}.lightbox-prev,.lightbox-next{top:auto;bottom:18px;transform:none;width:42px;height:42px}.lightbox-caption{bottom:27px;left:60px;right:60px;font-size:18px}.lightbox-close{top:12px;right:12px}}

/* Anpassung an die globale Bildregel von Ferienwohnung 1 */
.lightbox .lightbox-image{width:auto;height:auto;max-width:100%;max-height:100%;filter:none!important}

/* Feine, elegante Schrift fuer Ueberschriften und Logo */
.logo, .hero-overlay h1, .intro h2, .gallery-section h2, .outdoor h2, .end h2 {font-weight:400;}
