* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { height: 100%; }

.hero {
    min-height: 100svh;
    background: url("bg.jpg") center/cover no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.overlay {
    width: min(720px, 100%);
    background: rgba(0,0,0,0.55);
    color: #fff;
    padding: 28px 24px;
    border-radius: 16px;
    text-align: center;
    backdrop-filter: blur(4px);
}

@supports not (backdrop-filter: blur(4px)) {
    .overlay { background: rgba(0,0,0,0.72); }
}

h1 {
    font-size: clamp(2rem, 6vw, 3rem);
    line-height: 1.1;
    margin-bottom: 10px;
}

p { font-size: 18px; line-height: 1.5; }
.small { margin-top: 10px; font-size: 14px; opacity: 0.95; }
.small a { color: inherit; text-underline-offset: 2px; }
.small a:hover { opacity: 0.85; }
