/* ==========================================================================
   Geräte-Rahmen für die echten iris-Screenshots aus img/screens/
   ========================================================================== */

/* ── Laptop ────────────────────────────────────────────── */

.dev_laptop {
    width: 100%;
    filter: drop-shadow(0 30px 50px rgba(0, 0, 0, 0.55));
}

.dev_laptop_screen {
    aspect-ratio: 16 / 9.55;
    width: 88%;
    margin: 0 auto;
    padding: 1.6%;
    background: var(--bg-device);
    border-radius: 2.4% / 3.8%;
    border: 1px solid var(--bg-device-edge);
    overflow: hidden;
}

.dev_laptop_base {
    position: relative;
    height: 0;
    padding-bottom: 2.6%;
    background: linear-gradient(180deg, var(--bg-device-edge), var(--bg-device-frame) 60%, #111);
    border-radius: 0 0 40% 40% / 0 0 100% 100%;
}

.dev_laptop_base::before {
    content: "";
    position: absolute;
    left: 42%;
    width: 16%;
    top: 0;
    height: 35%;
    border-radius: 0 0 1em 1em;
    background: rgba(0, 0, 0, 0.35);
}

/* ── Monitor ───────────────────────────────────────────── */

.dev_monitor {
    width: min(100%, 1280px);
    filter: drop-shadow(0 40px 60px rgba(0, 0, 0, 0.5));
}

.dev_monitor_screen {
    aspect-ratio: 16 / 9.47;
    padding: 1%;
    background: var(--bg-device);
    border-radius: 1.2% / 2%;
    border: 1px solid var(--bg-device-edge);
    overflow: hidden;
}

.dev_monitor_stand {
    width: 18%;
    height: 3.5vw;
    max-height: 56px;
    margin: 0 auto;
    background: linear-gradient(180deg, #1a1a1a, var(--bg-device-frame));
    clip-path: polygon(20% 0, 80% 0, 100% 100%, 0 100%);
}

/* ── Smartphone ────────────────────────────────────────── */

.dev_phone {
    aspect-ratio: 9 / 19.2;
    padding: 3.2%;
    border-radius: 14% / 6.6%;
    background: var(--bg-device);
    border: 2px solid var(--bg-device-edge);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.55), inset 0 0 0 1px rgba(255, 255, 255, 0.06);
    position: relative;
}

.dev_phone::before {
    content: "";
    position: absolute;
    top: 2.6%;
    left: 50%;
    transform: translateX(-50%);
    width: 30%;
    height: 3.2%;
    border-radius: 100vw;
    background: #000;
    z-index: 2;
}

.dev_phone_screen {
    width: 100%;
    height: 100%;
    border-radius: 11% / 5.2%;
    overflow: hidden;
    background: var(--bg-screen);
}

.dev_phone_hero {
    position: absolute;
    right: 0;
    bottom: -8%;
    width: 23%;
    transform: rotate(4deg);
}

.trio_device .dev_phone { height: 100%; }

/* ── Screenshots ───────────────────────────────────────── */

.shot {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}

/* mehrere Ansichten übereinander, sichtbar ist .shot_active */
.shots { position: relative; }

.shots .shot {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.dev_monitor_screen.shots .shot { inset: 1%; width: 98%; height: 98%; }

.shots .shot_active { opacity: 1; }
