/* Sticky footer — стандартный flexbox-паттерн */
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    margin: 0;
}
.wrap {
    flex: 1;
}
.footer {
    padding: 1rem 1.5rem;
    background: #f5f5f5;
}

/* Top navigation */
.site-nav {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    padding: 2rem 0 1.5rem;
}
.site-nav__logo {
    font-size: 1.5rem;
    font-weight: 600;
    color: #363636;
}
.site-nav__logo:hover { color: #3273dc; }
.site-nav__link {
    font-size: 1.25rem;
    color: #363636;
}
.site-nav__link:hover { color: #3273dc; }

/* Player */
#ytplayer {
    width: 100%;
    aspect-ratio: 16/9;
    background: #000;
    display: block;
}

/* Video title below player */
.video-meta {
    margin-top: 0.5rem;
    color: #888;
    font-size: 0.85rem;
    text-align: center;
}

/* Low-key troubleshooting link under the player controls */
.player-trouble {
    background: none;
    border: 0;
    padding: 0.25rem;
    margin-top: 0.25rem;
    color: #aaa;
    font-size: 0.75rem;
    cursor: pointer;
}
.player-trouble:hover { color: #3273dc; text-decoration: underline; }

@media (max-width: 768px) {
    .site-nav { padding: 1rem 0; }
    .column.is-4 { padding: 0.25rem; }
    .button.is-large { font-size: 1rem; padding: 0.5em 1em; }
}

/* Landscape phones: a full-width 16:9 player is taller than the viewport
   and pushes the controls off-screen, so cap the player to a share of the
   viewport height (letting width follow) and shrink the chrome around it. */
@media (max-height: 500px) and (orientation: landscape) {
    .site-nav { padding: 0.4rem 0; }
    .site-nav__logo { font-size: 1.1rem; }
    .site-nav__link { font-size: 0.95rem; }
    .column.is-10.is-12-mobile { padding: 0.25rem 0.75rem; }
    #ytplayer {
        width: auto;
        height: 55vh;
        height: 55dvh;
        max-width: 100%;
        margin: 0 auto;
    }
    #controls .column.is-4 { padding: 0.15rem; }
    #controls .button.is-large { font-size: 0.85rem; padding: 0.35em 0.75em; }
    #controls .column { padding: 0.15rem; }
    .video-meta { margin-top: 0.15rem; }
}
