/* 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:block}.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; }
}

/* Eigene Bilddarstellung Wohnung 2; die CSS-Datei von Wohnung 1 bleibt unverändert. */
.gallery figure img{object-position:center 42%}

/* Bilderzoom: gleiche Darstellung wie bei Ferienwohnung 1; die gemeinsamen Lightbox-Regeln kommen aus wohnung1.css. */
