/* Add-on Filmhunde: Kartei, Karten, Detailfenster */
.dog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6)}
.dog-card a{position:relative;display:block;aspect-ratio:4/5;border-radius:var(--radius);overflow:hidden;background:var(--dark-2);border:1px solid rgba(255,255,255,.1);color:#fff;text-decoration:none;box-shadow:var(--shadow-lg);transition:transform .2s,border-color .2s}
.dog-card a:hover{transform:translateY(-4px);border-color:rgba(198,160,82,.55)}
.dog-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.dog-card a:hover img{transform:scale(1.05)}
.dog-card a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,12,0) 38%,rgba(10,10,12,.55) 62%,rgba(10,10,12,.92) 100%)}
.dog-age{position:absolute;z-index:1;top:16px;left:16px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:99px;background:rgba(15,15,18,.72);backdrop-filter:blur(6px);font-size:13px;font-weight:600}
.dog-age .icon{width:15px;height:15px}
.dog-body{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:var(--space-6)}
.dog-body h3,.dog-body .dog-name{font-size:clamp(26px,2.6vw,34px);font-weight:800;line-height:1.05;margin:0 0 2px;color:#fff}
.dog-breed{margin:0;font-size:13px;color:var(--gold-text,#7d601c)}
.dog-line{display:block;width:36px;height:2px;margin:12px 0;background:var(--grad-gold);border-radius:2px}
.dog-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}
.dog-foot p{margin:0;font-size:14px;line-height:1.55;color:rgba(255,255,255,.85);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dog-go{display:inline-flex;align-items:center;gap:8px;margin-top:var(--space-4);min-height:44px;padding:0 20px;border-radius:12px;background:var(--grad-gold);color:var(--on-gold,#17181b);font-size:14px;font-weight:700;box-shadow:0 8px 20px rgba(198,160,82,.3);transition:transform .2s,box-shadow .2s}
.dog-go .icon{width:18px;height:18px}
.dog-card a:hover .dog-go{transform:translateY(-1px);box-shadow:0 12px 26px rgba(198,160,82,.45)}
.dogs-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-8);margin-bottom:var(--space-12)}
.dogs-head .sec-title{font-size:var(--text-3xl);line-height:1.05;margin-bottom:var(--space-4)}
.dogs-rule{display:block;width:56px;height:3px;background:var(--grad-gold);border-radius:2px;margin-bottom:var(--space-6)}
.dogs-head .intro{margin:0;max-width:560px}
.dogs-note{position:relative;flex:none;max-width:220px;margin:var(--space-6) var(--space-8) 0 0;font-size:clamp(20px,2vw,26px);text-align:center;transform:rotate(-12deg)}
.dogs-note .icon{display:block;margin:6px auto 0;width:22px;height:22px}
.dogs-arrow{position:absolute;left:-10px;bottom:-60px;width:52px;height:44px;color:var(--gold);transform:rotate(12deg)}
@media (max-width:760px){.dogs-head{flex-direction:column;gap:var(--space-4)}.dogs-note{margin:0 auto;display:none}}
.dog-detail{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);margin-top:var(--space-6)}
.dog-detail-media{display:grid;gap:var(--space-3)}
.dog-detail-media img{border-radius:var(--radius);width:100%;object-fit:cover}
.dog-facts{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin:0 0 var(--space-6)}
.dog-facts div{background:var(--soft);border-radius:var(--radius-sm);padding:var(--space-3)}
.dog-facts dt{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.dog-facts dd{margin:0;font-weight:700}
@media (max-width:760px){.dog-detail{grid-template-columns:1fr}}
.dog-dialog{border:0;border-radius:var(--radius);padding:0;width:min(940px,calc(100% - 24px));max-height:calc(100vh - 24px);box-shadow:var(--shadow-lg)}
.dog-dialog::backdrop{background:rgba(15,15,18,.7)}
.dog-vita-link{margin:var(--space-6) 0}
.dogs-head .kicker{font-size:15px;font-weight:500;letter-spacing:.35em;margin-bottom:var(--space-3)}
.sec-dark .dogs-head .intro{color:rgba(242,240,234,.82)}
.dog-label{font-size:var(--text-xl);margin:var(--space-6) 0 var(--space-3)}
