/* Ergänzungen für Fotoprojekte, Breadcrumb, Sprachwahl. Nutzt Variablen aus style.css. */
.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.page-intro{max-width:60ch}

/* Projekt-Kacheln */
.proj-card{padding:0 !important;overflow:hidden;position:relative}
.proj-card:focus-within{outline:3px solid var(--green);outline-offset:3px}
.proj-img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:0; height:220px;}
.proj-body{padding:var(--g-m2);display:flex;flex-direction:column;gap:var(--g-xs)}
.proj-title, .proj-title a{font-size:1.3rem !important;line-height:1.25}
.proj-title a{color:var(--black);text-decoration:none}
.proj-title a::after{content:"";position:absolute;inset:0}
.proj-title a:hover{text-decoration:underline;text-underline-offset:4px}
.proj-title a:focus-visible{outline:none;text-decoration:underline}
.proj-meta{font-size:.95rem;color:#444}

/* Projektseite */
.project-page{padding-top:var(--g-m2);padding-bottom:var(--g-xl)}
.breadcrumb ol{display:flex;flex-wrap:wrap;gap:4px 8px;list-style:none;margin:0 0 var(--g-m3);padding:0;font-size:.95rem}
.breadcrumb li{list-style:none;display:inline}
.breadcrumb li+li::before{content:"›";margin-right:8px;color:#555}
.breadcrumb a{color:var(--green);font-size:inherit;text-underline-offset:3px}
.breadcrumb a:focus-visible,.follow-box a:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.facts{background:var(--white);border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:var(--g-m2);margin:0}
.facts div{padding:10px 0;border-bottom:1px solid rgba(0,0,0,.08)}
.facts div:last-child{border-bottom:0}
.facts dt{font-weight:600;font-size:.9rem;color:#444}
.facts dd{margin:0;font-size:var(--default)}
.follow-box{background:var(--green-opacity);border-radius:8px;padding:var(--g-m3)}
.follow-box p{margin-bottom:37px !important;};
.legal-note{font-size:.95rem}

/* Sprachwahl im Footer */
.lang-nav ul{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;margin:0;padding:0;justify-content:flex-start}
@media (min-width:768px){.lang-nav ul{justify-content:flex-end}}
.lang-nav li{list-style:none}
.lang-nav a{text-underline-offset:4px;display:inline-block;min-height:24px;padding:4px 0}
.lang-nav a[aria-current="true"]{font-weight:700;text-decoration:underline}
.lang-nav a:focus-visible{outline:3px solid var(--lightgreen);outline-offset:3px}

.hero-sub h1,.hero h1{hyphens:manual;-webkit-hyphens:manual}
.hero-sub-proj{height:unset !important; padding-top:2rem;}
.hero-sub-proj h1{font-size:2.18rem;}
@media screen and (min-width:768px){.hero-sub-proj h1{font-size:3rem;}}

/* Sprachauswahl im Header */
.header-end{justify-self:end;display:flex;align-items:center;gap:12px}
.lang-switch{position:relative;z-index:110}
.lang-btn{display:flex;align-items:center;gap:8px;min-height:44px;min-width:44px;padding:0 12px;border-radius:999px;background:transparent;color:var(--black,#111);font:inherit;font-size:.95rem;font-weight:500;cursor:pointer;border:none;}
.lang-btn:hover{background:rgba(0,0,0,.05)}
.lang-btn:focus-visible,.lang-menu a:focus-visible{outline:3px solid var(--green,#4f6a00);outline-offset:2px}
.lang-caret{width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s}
.lang-btn[aria-expanded="true"] .lang-caret{transform:rotate(-135deg) translate(-2px,-2px)}
.flag{display:block;width:24px;height:16px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.2);flex:none}
.lang-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);min-width:190px;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:16px;box-shadow:0 12px 35px rgba(0,0,0,.15)}
.lang-switch.open .lang-menu{display:block}
.lang-menu li{list-style:none}
.lang-menu a{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border-radius:10px;color:var(--black,#111);text-decoration:none}
.lang-menu a:hover{background:rgba(0,0,0,.06)}
.lang-menu a[aria-current="true"]{font-weight:700;background:rgba(0,0,0,.05)}
.lang-menu .lang-code{font-weight:600;min-width:1.8em}
@media (max-width:768px){.header-end{margin-left:auto;margin-right:4px}.lang-code{display:none}.lang-menu .lang-code{display:inline}.lang-btn{padding:0 10px}}

/* Instagram-Raster (Startseite) */
.ig-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;list-style:none;margin:0;padding:0}
@media (min-width:600px){.ig-grid{grid-template-columns:repeat(3,1fr);gap:12px}}
@media (min-width:992px){.ig-grid{grid-template-columns:repeat(4,1fr)}}
.ig-grid li{list-style:none}
.ig-grid a{display:block;aspect-ratio:1;overflow:hidden;border-radius:8px;background:#ddd}
.ig-grid img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.ig-grid a:hover img,.ig-grid a:focus-visible img{transform:scale(1.04)}
.ig-grid a:focus-visible{outline:3px solid var(--green,#4f6a00);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.ig-grid img{transition:none}}
