/* =====================================================================
   Wohnungsseite - Bilderfolge und Ausstattung im Wechsel
   ===================================================================== */

.wohnung {
    scroll-margin-top: 5rem; /* damit die klebende Navigation nichts verdeckt */
}

.wohnung__raster {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
    gap: var(--raum-xl);
    align-items: center;
}

/* Bei jeder zweiten Wohnung steht der Text links, das Bild rechts */
.wohnung__raster--gedreht .wohnung__text {
    order: -1;
}

.wohnung__text h2 {
    margin-top: 0;
}

.wohnung__text h3 {
    margin-top: var(--raum-m);
    font-family: var(--schrift-text);
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--farbe-tinte-leise);
}

/* Kleine Kapseln mit Flaeche und Personenzahl */
.merkmale {
    display: flex;
    flex-wrap: wrap;
    gap: var(--raum-2xs);
    margin: 0 0 var(--raum-s);
    padding: 0;
    list-style: none;
}

.merkmale li {
    margin: 0;
    padding: 0.25rem 0.85rem;
    background: var(--farbe-akzent-leise);
    border-radius: 999px;
    font-size: 0.85rem;
    color: var(--farbe-akzent);
}

.band--warm .merkmale li {
    background: #fff;
}

.wohnung__liste {
    margin: 0 0 var(--raum-m);
    padding-left: 0;
    list-style: none;
}

.wohnung__liste li {
    position: relative;
    padding-left: 1.4rem;
    margin-bottom: 0.5rem;
    font-size: 0.98rem;
    line-height: 1.6;
}

/* Haken statt Aufzaehlungspunkt */
.wohnung__liste li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.62em;
    width: 0.5rem;
    height: 0.28rem;
    border-left: 2px solid var(--farbe-akzent);
    border-bottom: 2px solid var(--farbe-akzent);
    transform: rotate(-45deg);
}

/* --- Bilderfolge ------------------------------------------------------- */

.bilderfolge {
    position: relative;
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: var(--schatten);
    background: var(--farbe-warm);
}

.band--warm .bilderfolge {
    background: var(--farbe-flaeche);
}

.bilderfolge__buehne {
    position: relative;
    aspect-ratio: 3 / 2;
}

.bilderfolge .slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s ease;
}

.bilderfolge .slide.ist-aktiv {
    opacity: 1;
    visibility: visible;
}

.bilderfolge__pfeil {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 2.6rem;
    height: 2.6rem;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.85);
    color: var(--farbe-tinte);
    border: 0;
    border-radius: 50%;
    font-size: 1rem;
    line-height: 1;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.2s ease, background-color 0.15s;
}

/* Pfeile erscheinen beim Darueberfahren. Auf Geraeten ohne Mauszeiger
   sind sie immer sichtbar - siehe Regel weiter unten. */
.bilderfolge:hover .bilderfolge__pfeil,
.bilderfolge:focus-within .bilderfolge__pfeil {
    opacity: 1;
}

.bilderfolge__pfeil:hover {
    background-color: #fff;
}

.bilderfolge__pfeil--zurueck { left: var(--raum-xs); }
.bilderfolge__pfeil--weiter  { right: var(--raum-xs); }

.bilderfolge__stand {
    position: absolute;
    right: var(--raum-xs);
    bottom: var(--raum-xs);
    z-index: 2;
    margin: 0;
    padding: 0.15rem 0.7rem;
    background: rgba(20, 22, 18, 0.55);
    color: #fff;
    border-radius: 999px;
    font-size: 0.78rem;
}

/* --- Mobil --------------------------------------------------------------- */

@media (hover: none) {
    .bilderfolge__pfeil {
        opacity: 1;
    }
}

@media (max-width: 62rem) {
    .wohnung__raster {
        grid-template-columns: 1fr;
        gap: var(--raum-l);
    }

    /* Auf schmalen Bildschirmen kommt immer erst das Bild */
    .wohnung__raster--gedreht .wohnung__text {
        order: 0;
    }
}
