/* Editoriale CarShow: una scena fotografica ampia, testo stabile e movimento discreto. */
.home-presenter-card {
    grid-template-columns: minmax(280px, .88fr) minmax(0, 1.12fr);
    gap: 0;
    align-items: stretch;
    background: linear-gradient(125deg, #fff 35%, #f4f6f9 100%);
    border-radius: 28px;
    box-shadow: 0 22px 55px -35px rgb(23 32 42 / 30%);
}
.home-presenter-gallery {
    position: relative;
    min-width: 0;
    isolation: isolate;
    background: #e6e9ee;
    overflow: hidden;
}
.home-presenter-frames { position: relative; height: 100%; min-height: 480px; }
.home-presenter-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .8s ease, visibility .8s;
    pointer-events: none;
}
.home-presenter-slide.is-active { opacity: 1; visibility: visible; }
.home-presenter-card .home-presenter-portrait {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 25%;
}
.home-presenter-gallery::after {
    content: '';
    position: absolute;
    z-index: 1;
    inset: 50% 0 0;
    background: linear-gradient(transparent, rgb(10 15 20 / 65%));
    pointer-events: none;
}
.home-presenter-image-label {
    position: absolute;
    z-index: 2;
    top: 24px;
    left: 24px;
    padding: 8px 13px;
    border-left: 3px solid #ffcc00;
    background: rgb(10 15 20 / 80%);
    color: #fff;
    font-size: .8rem;
    font-weight: 750;
    letter-spacing: .06em;
}
.home-presenter-image-label span { font-weight: 400; letter-spacing: 0; margin-left: 5px; }
.home-presenter-controls {
    position: absolute;
    z-index: 3;
    bottom: 20px;
    left: 20px;
    right: 20px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #fff;
}
.home-presenter-controls[hidden] { display: none; }
.home-presenter-controls button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 44px;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid rgb(255 255 255 / 65%);
    border-radius: 50%;
    background: rgb(10 15 20 / 80%);
    color: #fff;
    cursor: pointer;
    font: inherit;
    line-height: 1;
}
.home-presenter-controls button:hover { background: #fff; color: #17202a; }
.home-presenter-controls button:focus-visible { outline: 3px solid #ffcc00; outline-offset: 3px; }
.home-presenter-controls .home-presenter-pause { border-radius: 24px; margin-left: auto; font-size: .8rem; }
.home-presenter-counter { font-variant-numeric: tabular-nums; font-size: .85rem; min-width: 42px; text-align: center; }
.home-presenter-copy { align-self: center; padding: clamp(28px, 4vw, 60px); }
.home-presenter-copy h3 { margin: 14px 0; font-size: clamp(2rem, 3.4vw, 3.15rem); line-height: 1.06; letter-spacing: -.035em; }
.home-presenter-copy p { max-width: 53ch; }
.home-presenter-copy .home-presenter-role { font-size: 1.12rem; font-weight: 650; color: #17202a; margin-bottom: 20px; }
.home-presenter-copy .section-link { margin-top: 8px; }
@media (max-width: 850px) and (min-width: 621px) {
    .home-presenter-card { grid-template-columns: minmax(240px, .9fr) minmax(0, 1fr); }
    .home-presenter-copy { padding: 28px; }
}
@media (max-width: 620px) {
    .home-presenter-card { grid-template-columns: 1fr; border-radius: 22px; }
    .home-presenter-frames { height: auto; min-height: 0; aspect-ratio: 4 / 5; max-height: 560px; }
    .home-presenter-copy { padding: 30px 24px 34px; }
    .home-presenter-copy h3 { font-size: clamp(2rem, 9vw, 2.8rem); }
}
@media (prefers-reduced-motion: reduce) {
    .home-presenter-slide { transition: none; }
}
