/* Approved image treatment: compact inset glass, never a caption bar below. */
body main#main .pf-club-detail>figure{position:relative;overflow:hidden}
body main#main .pf-club-detail>figure>figcaption{position:absolute;inset:16px auto auto 16px;width:fit-content;max-width:calc(100% - 32px);margin:0;padding:8px 14px;border-radius:24px;background:hsl(var(--pf-brand-cream));color:hsl(var(--pf-brand-brown));font:var(--pf-weight-detail) var(--pf-type-small)/1.4 var(--pf-font-body)}
body main#main .pf-club-detail[data-club-panel="bad-homburg"]>figure>figcaption{background:hsl(var(--pf-brand-brown));color:hsl(var(--pf-brand-cream))}
body main#main .pf-photo-disclosure{width:calc(100% - 44px);max-height:calc(100% - 44px);overflow:auto}
body main#main .pf-photo-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;cursor:pointer;list-style:none}
body main#main .pf-photo-disclosure summary::-webkit-details-marker{display:none}
body main#main .pf-photo-disclosure .pf-photo-title{min-width:0;overflow-wrap:anywhere;text-wrap:pretty;color:inherit;font:inherit;margin:0;display:block}
body main#main .pf-photo-disclosure summary:focus-visible{outline:2px solid hsl(var(--pf-brand-sand));outline-offset:5px;border-radius:4px}
body main#main .pf-photo-disclosure .pf-photo-plus{flex:none;font-size:28px;transition:transform .25s ease}
body main#main .pf-photo-disclosure details[open] .pf-photo-plus{transform:rotate(45deg)}
body main#main .pf-photo-disclosure p{margin:16px 0 0;font:400 var(--pf-type-body,16px)/1.5 var(--pf-font-body);letter-spacing:normal;color:hsl(var(--pf-brand-cream))}
body main#main .pf-photo-disclosure details[open] p{animation:pf-photo-reveal .25s ease both}
@keyframes pf-photo-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
body main#main .pf-tariff-stage>figure{position:relative;align-self:start;height:clamp(260px,30vw,400px);min-height:0;overflow:hidden;isolation:isolate}
/* Desktop photo fills the complete tariff row, including expanded details. */
@media(min-width:701px){body main#main .pf-tariff-stage>figure{align-self:stretch;height:auto}}
body main#main .pf-tariff-stage>figure img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 35%}
@media(max-width:700px){body main#main .pf-tariff-stage>figure{grid-row:1;height:clamp(160px,40vw,220px)}body main#main .pf-tariff-panels{grid-row:2}}
body main#main .pf-tariff-stage>figure figcaption{position:absolute;inset:auto 16px 16px;max-width:calc(100% - 32px);width:fit-content;margin:0;padding:16px 20px;border-radius:20px;background:hsl(var(--pf-brand-brown)/.88);color:hsl(var(--pf-brand-cream));font-size:clamp(22px,2vw,28px);z-index:2}
@supports(backdrop-filter:blur(20px)){body main#main .pf-tariff-stage>figure figcaption{background:linear-gradient(120deg,hsl(var(--pf-brand-brown)/.62),hsl(var(--pf-brand-brown)/.8));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}}
@media(max-width:700px){body main#main .pf-photo-disclosure{width:calc(100% - 32px);max-height:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){body main#main .pf-photo-disclosure details[open] p{animation:none}body main#main .pf-photo-disclosure .pf-photo-plus{transition:none}}
@media(prefers-reduced-transparency:reduce){body main#main .pf-tariff-stage>figure figcaption{background:hsl(var(--pf-brand-brown));backdrop-filter:none;-webkit-backdrop-filter:none}}
body main :is(.community-photo,.pf-home-photo,.pf-bv-intro-photo){position:relative;isolation:isolate;overflow:hidden;border-radius:24px}
body main :is(.community-photo,.pf-home-photo,.pf-bv-intro-photo)>img{display:block;width:100%;object-fit:cover}
body main :is(.community-photo,.pf-home-photo,.pf-bv-intro-photo)>figcaption{position:absolute;inset:auto auto 22px 22px;width:auto;max-width:calc(100% - 44px);margin:0;padding:20px 24px;border:0;border-radius:20px;background:hsl(var(--pf-brand-brown)/.88);color:hsl(var(--pf-brand-cream));font:400 clamp(28px,3vw,40px)/1.08 var(--pf-font-headline);letter-spacing:-.045em;text-align:left;text-shadow:none;z-index:2}
body main :is(.community-photo,.pf-home-photo,.pf-bv-intro-photo)>figcaption span{display:block;color:hsl(var(--pf-brand-sand))}
@supports(backdrop-filter:blur(20px)){body main :is(.community-photo,.pf-home-photo,.pf-bv-intro-photo)>figcaption{background:linear-gradient(120deg,hsl(var(--pf-brand-brown)/.62),hsl(var(--pf-brand-brown)/.8));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}}
@media(max-width:700px){body main :is(.community-photo,.pf-home-photo,.pf-bv-intro-photo)>figcaption{left:16px;bottom:16px;max-width:calc(100% - 32px);padding:16px 20px;font-size:clamp(24px,6vw,32px)}}
@media(prefers-reduced-transparency:reduce){body main :is(.community-photo,.pf-home-photo,.pf-bv-intro-photo)>figcaption{background:hsl(var(--pf-brand-brown));backdrop-filter:none;-webkit-backdrop-filter:none}}
