:root {
    --bg: #070807;
    --text: #f2efe6;
    --muted: #b7b1a2;
    --dim: #7e786b;
    --panel: rgba(12, 14, 12, 0.72);
    --panel-strong: rgba(7, 8, 7, 0.86);
    --line: rgba(242, 239, 230, 0.14);
    --signal: #d5ff67;
    --steel: #8ab4f8;
    --blood: #d24b4b;
}

* {
    box-sizing: border-box;
}

html,
body {
    min-height: 100%;
    margin: 0;
}

html {
    background: var(--bg);
    color: var(--text);
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    letter-spacing: 0;
}

body {
    min-height: 100vh;
    background:
        linear-gradient(90deg, rgba(7, 8, 7, 0.95) 0%, rgba(7, 8, 7, 0.76) 36%, rgba(7, 8, 7, 0.18) 72%),
        linear-gradient(180deg, rgba(7, 8, 7, 0.28), rgba(7, 8, 7, 0.82)),
        url("/images/skopowski_bg.jpg?v=1.1") right top / cover no-repeat var(--bg);
}

a {
    color: inherit;
}

a:focus-visible {
    outline: 2px solid var(--signal);
    outline-offset: 0.22rem;
}

.page {
    width: min(100%, 76rem);
    min-height: 100vh;
    padding: clamp(1rem, 2.6vw, 2.25rem);
}

.site-nav {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.35rem;
    max-width: 100%;
    overflow-x: auto;
    padding: 0.25rem;
    border: 1px solid var(--line);
    background: rgba(7, 8, 7, 0.48);
    backdrop-filter: blur(14px);
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
}

.site-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 2.25rem;
    padding: 0 0.78rem;
    color: var(--muted);
    font-size: 0.82rem;
    font-weight: 750;
    letter-spacing: 0.04em;
    text-decoration: none;
    text-transform: uppercase;
}

.site-nav a:hover,
.site-nav a[aria-current="page"] {
    background: var(--text);
    color: var(--bg);
}

main {
    width: min(100%, 66rem);
}

.hero {
    max-width: 47rem;
    padding: clamp(4.8rem, 12vw, 8.5rem) 0 clamp(2.25rem, 6vw, 4rem);
}

.eyebrow,
.tile-kicker {
    margin: 0;
    color: var(--signal);
    font-family: "Courier New", Courier, monospace;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

h1 {
    max-width: 11ch;
    margin: 0.75rem 0 0;
    font-size: clamp(3.4rem, 11vw, 8.6rem);
    font-weight: 820;
    line-height: 0.83;
    text-transform: uppercase;
}

.lead {
    max-width: 39rem;
    margin: 1.4rem 0 0;
    color: var(--muted);
    font-size: clamp(1.05rem, 2.2vw, 1.35rem);
    line-height: 1.55;
}

.actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    margin-top: 1.7rem;
}

.button {
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
    padding: 0 1.05rem;
    border: 1px solid var(--line);
    background: rgba(242, 239, 230, 0.04);
    color: var(--text);
    font-size: 0.9rem;
    font-weight: 750;
    text-decoration: none;
}

.button:hover,
.button.primary {
    border-color: transparent;
    background: var(--signal);
    color: var(--bg);
}

.grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--line);
    border-left: 1px solid var(--line);
}

.tile {
    display: grid;
    grid-template-rows: 1rem 3.8rem 1fr;
    min-height: 15.5rem;
    gap: 1.2rem;
    padding: clamp(1rem, 2vw, 1.35rem);
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    background: linear-gradient(180deg, rgba(242, 239, 230, 0.055), rgba(242, 239, 230, 0.018));
    box-shadow: 0 1.2rem 3.5rem rgba(0, 0, 0, 0.22);
    color: inherit;
    text-decoration: none;
}

.tile:hover {
    background: rgba(213, 255, 103, 0.1);
    box-shadow: 0 1.4rem 4rem rgba(0, 0, 0, 0.3);
}

.tile.featured {
    background:
        linear-gradient(135deg, rgba(213, 255, 103, 0.16), rgba(138, 180, 248, 0.07)),
        var(--panel);
}

.tile strong {
    display: flex;
    align-items: flex-start;
    font-size: clamp(1.12rem, 2.35vw, 1.72rem);
    line-height: 1;
    white-space: nowrap;
}

.tile span:last-child {
    align-self: end;
    color: var(--muted);
    line-height: 1.5;
}

.company {
    width: min(100%, 39rem);
    margin-top: clamp(4.8rem, 12vw, 8rem);
    padding: clamp(1.25rem, 3vw, 2rem);
    border: 1px solid var(--line);
    background: var(--panel-strong);
    box-shadow: 0 1.2rem 3.5rem rgba(0, 0, 0, 0.22);
}

.company h1 {
    max-width: none;
    margin-bottom: 1.7rem;
    font-size: clamp(2rem, 7vw, 4.2rem);
    white-space: nowrap;
}

dl {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    gap: 0.85rem 1.2rem;
    margin: 0;
    font-family: "Courier New", Courier, monospace;
    font-size: clamp(0.98rem, 2vw, 1.12rem);
    line-height: 1.4;
}

dt {
    color: var(--dim);
    font-weight: 700;
    text-transform: uppercase;
}

dd {
    margin: 0;
}

dd a {
    text-decoration-thickness: 1px;
    text-underline-offset: 0.22em;
}

@media (max-width: 58rem) {
    body {
        background:
            linear-gradient(180deg, rgba(7, 8, 7, 0.94) 0%, rgba(7, 8, 7, 0.64) 42%, rgba(7, 8, 7, 0.42) 100%),
            url("/images/skopowski_bg.jpg?v=1.1") right top / cover no-repeat var(--bg);
    }

    .grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 38rem) {
    .page {
        padding: 0.85rem;
    }

    .hero {
        padding-top: 4rem;
    }

    .grid {
        grid-template-columns: 1fr;
    }

    .tile {
        min-height: 12rem;
    }

    dl {
        grid-template-columns: 1fr;
        gap: 0.24rem;
    }

    dd {
        margin-bottom: 0.85rem;
    }
}
