@import url('https://fonts.googleapis.com/css2?family=UnifrakturCook:wght@700&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f0e7;color:#26352b;font:17px/1.7 Georgia,serif}a{color:inherit}header{background:#193527;color:#f8efdc;position:sticky;top:0;z-index:5;box-shadow:0 2px 10px #0003}.nav{max-width:1160px;margin:auto;padding:12px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:18px;font-weight:bold;text-decoration:none;line-height:1.25}.brand small{display:block;font:11px Arial,sans-serif;letter-spacing:2px;color:#d4bb80}nav{display:flex;flex-wrap:wrap;gap:15px}nav a{font:13px Arial,sans-serif;text-decoration:none}nav a:hover{color:#d4bb80}.hero{background:linear-gradient(90deg,#0c241be0,#0c241b42),url('../bilder/titel.jpg') center/cover;min-height:570px;display:flex;align-items:center;color:#fff}.hero-inner{max-width:1160px;width:100%;margin:auto;padding:70px 24px}.eyebrow{font:12px Arial,sans-serif;letter-spacing:3px;text-transform:uppercase;color:#e0c487}.hero h1{font-size:clamp(38px,6vw,76px);line-height:1.08;max-width:780px;margin:18px 0}.hero p{font-size:21px;max-width:650px}.btn{display:inline-block;background:#bba06a;color:#17271c;text-decoration:none;padding:12px 23px;font:700 14px Arial,sans-serif;border-radius:3px;margin-top:15px}.wrap{max-width:1160px;margin:auto;padding:70px 24px}h2{font-size:clamp(30px,4vw,46px);line-height:1.2;margin:8px 0 22px}h3{font-size:25px;margin:10px 0}p{margin:0 0 16px}.intro{text-align:center;max-width:780px;margin:auto}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:35px}.tile{background:#fff;box-shadow:0 5px 24px #1a302112}.tile img{width:100%;height:270px;object-fit:cover}.tile div{padding:20px}.split{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.split img{width:100%;max-height:540px;object-fit:cover}.dark{background:#1b3729;color:#f5f0e6}.dark .eyebrow{color:#d4bb80}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery img{width:100%;height:260px;object-fit:cover;border-radius:3px}.gallery img:first-child{grid-column:span 2}.note{background:#e8dfca;border-left:4px solid #a18b5d;padding:16px;margin-top:20px;font-size:15px}footer{background:#11271c;color:#e8dfca;padding:35px 24px;text-align:center;font:14px Arial,sans-serif}footer a{margin:0 9px}.legal{max-width:800px;margin:auto;padding:60px 24px}.logo{max-width:210px;max-height:260px;object-fit:contain;background:#f6f1e7;padding:12px;border-radius:5px}@media(max-width:760px){.nav{align-items:flex-start;flex-direction:column}nav{gap:12px}.hero{min-height:460px}.grid,.split{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.gallery img:first-child{grid-column:span 1}.gallery img{height:190px}.wrap{padding:50px 20px}}
/* Fotos vollständig und unverzerrt anzeigen */
.tile img,.split img,.gallery img{object-fit:contain;height:auto;max-height:none;background:#e9e4d8}
.tile .photo-link{display:flex;align-items:center;justify-content:center;background:#e9e4d8;min-height:230px}
.tile .photo-link img{max-height:380px;width:100%;height:auto}
.split .photo-link{display:block;min-width:0;text-align:center}
.split .photo-link img{width:100%;height:auto;max-height:650px;object-fit:contain}
.gallery{align-items:stretch}
.gallery .photo-link{display:flex;align-items:center;justify-content:center;background:#e9e4d8;border-radius:3px;padding:6px;min-width:0}
.gallery .photo-link img{max-height:330px;max-width:100%;width:auto;height:auto;object-fit:contain}
.gallery .photo-link:first-child{grid-column:span 2}
.photo-link{cursor:zoom-in}
.photo-link:hover{outline:2px solid #bba06a;outline-offset:2px}
.nachsuche-logo{display:block;width:170px!important;max-height:none!important;object-fit:contain!important;margin:10px 0 22px;background:#fff;border-radius:4px}
@media(max-width:760px){.gallery .photo-link:first-child{grid-column:span 1}.gallery .photo-link img{max-height:260px}}

/* Nachsuche: Bild ohne helle seitliche Ränder, vollständig und anklickbar */
#nachsuche .split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
#nachsuche .photo-link{background:transparent;display:block;width:100%;padding:0}
#nachsuche .photo-link img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;background:transparent;border-radius:4px}
@media(max-width:760px){#nachsuche .split{grid-template-columns:1fr}}

.content-page{min-height:65vh;padding-top:75px;padding-bottom:85px;max-width:900px}.content-page img{max-width:100%;height:auto}.content-page h1{font-size:clamp(2rem,5vw,3.5rem)}

/* Zuechter-Bereich */
.zuechter-content{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:40px;align-items:start}.zuechter-address{background:#e8dfca;padding:24px;border-left:4px solid #bba06a}.zuechter-address h3{font-size:23px;margin-top:0}section[id]{scroll-margin-top:95px}@media(max-width:760px){.zuechter-content{grid-template-columns:1fr}}

/* Rechtliche Bereiche und Kontakt */
.legal-section{max-width:900px}.legal-section h3{font-size:22px;margin:28px 0 10px}.legal-section p{overflow-wrap:anywhere}.legal-alt{background:#e7dfcf}.legal-note{padding:16px 20px;border-left:4px solid #aa8e55;background:#f5ead2;font-size:15px}#kontakt a:not(.btn){color:#f4ddb0}#impressum,#datenschutz{scroll-margin-top:95px}

.footer-heading{font-weight:700;font-size:17px;margin-bottom:12px;color:#e0c487}footer a{text-decoration:underline;text-underline-offset:3px}

/* Optionaler Welpenbereich, nur ausgefüllte Bilder erscheinen */
.welpen-section{padding-top:12px;padding-bottom:30px}
.welpen-section h3{margin:0 0 18px;font-size:clamp(1.3rem,2.5vw,2rem)}
.welpen-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.welpen-grid:empty{display:none}
.welpen-card{margin:0;min-width:0}
.welpen-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:10px}
.welpen-caption{margin-bottom:9px;font-weight:600}
@media(max-width:800px){.welpen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.welpen-grid{grid-template-columns:1fr}}

/* Version 17: Titelmotiv Wiese/Hund, lesbarer Schriftzug, Text links unten */

.hero{position:relative;min-height:710px;align-items:flex-end;background-position:center 52%!important;background-size:cover!important;}
.hero-brandline{position:absolute;z-index:1;top:26px;left:2%;width:96%;text-align:center;font-family:'UnifrakturCook','Old English Text MT',Georgia,serif;font-size:clamp(30px,5.5vw,90px);font-weight:700;line-height:1.1;color:#10180b;text-shadow:0 1px 1px #ffffff45;pointer-events:none;}
.hero-ornament{display:block;font:34px Georgia,serif;line-height:1.1;max-width:75%;margin:0 auto;border-bottom:2px solid #19200f;}
.hero-inner{position:relative;z-index:2;max-width:1600px;margin:0 auto;padding:270px 5.5% 45px;}
.hero h1{max-width:630px;font-size:clamp(38px,4vw,70px);line-height:1.05;margin:0 0 16px;text-shadow:0 2px 5px #001c0b77;}
.hero p{max-width:610px;font-size:clamp(17px,1.5vw,22px);text-shadow:0 1px 4px #001c0b99;}
@media(max-width:800px){.hero{min-height:650px;background-position:58% center!important}.hero-brandline{top:22px;font-size:clamp(28px,7vw,52px)}.hero-inner{padding:220px 22px 40px}.hero h1{max-width:440px;font-size:clamp(32px,7vw,48px)}.hero p{max-width:420px}.hero-ornament{font-size:23px}}

/* v18: Fraktur-Schrift zuverlässig laden; Bildausschnitt und Aufhellung wie Vorlage */
.hero-brandline{font-family:'UnifrakturCook','Old English Text MT',serif;font-weight:700;font-size:clamp(34px,5.2vw,96px);top:22px;}
.hero{background-position:center center!important;}
.hero-inner{padding-left:3.8%;}
.zuechter-address .contact-detail{overflow-wrap:anywhere;margin-top:12px;line-height:1.5}
.zuechter-address .contact-detail a{color:#153e2e;text-decoration:underline;text-underline-offset:3px}

/* v19: Wiese oberhalb des Hundes; Hund bleibt unter der Fraktur-Ueberschrift. */
.hero{min-height:860px;background-position:center top!important;background-size:cover!important;}
@media(max-width:800px){.hero{min-height:720px;background-position:60% top!important}.hero-inner{padding-top:235px}}

/* Final hero: single approved artwork; no repeated or mirrored dog. */
.hero.hero-final{min-height:0!important;aspect-ratio:2021 / 715;background-image:url("../bilder/hero-freigegeben.jpg")!important;background-position:center center!important;background-repeat:no-repeat!important;background-size:100% 100%!important;display:block!important;}
.hero.hero-final .hero-brandline,.hero.hero-final .hero-inner{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}
@media(max-width:800px){.hero.hero-final{aspect-ratio:2021 / 715;min-height:0!important;}}

/* v21: Extra galleries, hidden when no photos or heading. */
.optional-photo-section{padding-top:24px;padding-bottom:38px;}
.optional-photo-section:not(:has(.welpen-card)):not(:has(h3)){display:none;}
.optional-photo-section h3{margin:0 0 20px;}
.optional-photo-section .welpen-grid:empty{display:none;}

/* v22: report featured images */
.bericht-card .bericht-photo{display:block;overflow:hidden;border-radius:8px 8px 0 0}.bericht-card .bericht-photo img{display:block;width:100%;height:220px;object-fit:cover}.bericht-detail-photo{display:block;max-width:100%;width:100%;max-height:550px;object-fit:contain;margin:20px auto 30px;border-radius:8px}

/* Eigene Berichte: Zeilenumbrueche aus Publii erhalten */
.bericht-eigener-text{white-space:pre-line;}

/* v25: tappable overlay matching the button baked into the approved hero image. */
.hero.hero-final{position:relative!important;}
.hero-hotspot{position:absolute;z-index:4;left:7.55%;top:84.4%;width:12.9%;height:7.5%;display:block;cursor:pointer;border-radius:4px;}
.hero-hotspot:focus-visible{outline:3px solid #fff;outline-offset:3px;}
.mobile-hero-action{display:none;}
/* Mobile devices: keep the approved artwork undistorted, provide a real, comfortably tappable button. */
@media(max-width:760px){
 html,body{max-width:100%;overflow-x:hidden;}
 .nav{padding:12px 16px;gap:10px;}
 .nav nav{display:flex;gap:8px 14px;}
 .nav nav a{padding:5px 0;min-height:32px;}
 .hero.hero-final{width:100%;aspect-ratio:2021/715!important;min-height:0!important;background-size:100% 100%!important;}
 .hero-hotspot{display:none;}
 .mobile-hero-action{display:block;background:#193527;padding:14px 18px 20px;text-align:center;}
 .mobile-hero-action .btn{margin:0;min-height:46px;display:inline-flex;align-items:center;justify-content:center;}
 .grid,.split,.zuechter-content{grid-template-columns:minmax(0,1fr)!important;}
 .wrap{padding-left:18px;padding-right:18px;}
 img{max-width:100%;}
}
@media(min-width:761px) and (max-width:1100px){.nav{flex-wrap:wrap;}.nav nav{gap:10px;}}
