/* Definicja zmiennych i ustawień globalnych */
:root {
    --color-darker: #0a0a0a;
    --color-blue: #4682B4; 
    --color-purple: #9400D3;
    --color-text: #f0f0f0;
    --color-text-muted: rgba(240, 240, 240, 0.7);
    --transition: all 0.3s ease;
    --container-width: 1200px;
}

/* Reset i podstawowe style */
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    font-family: 'Montserrat', sans-serif;
    background-color: var(--color-darker);
    color: var(--color-text);
    text-align: center;
    overflow-x: hidden;
}

/* Struktura i tło */
#background-container { position: fixed; width: 100%; height: 100%; top: 0; left: 0; z-index: 1; background: var(--color-darker); }
#particles-js { height: 100%; }
.container { width: 100%; max-width: var(--container-width); margin: 0 auto; padding: 0 25px; }

/* Nagłówek */
#header { 
    position: fixed; top: 0; left: 0; width: 100%; z-index: 100; height: 60px; 
    display: flex; align-items: center; background: rgba(18, 18, 18, 0.8); 
    backdrop-filter: blur(10px); border-bottom: 1px solid rgba(255, 255, 255, 0.1); 
}
#header .container { display: flex; justify-content: space-between; align-items: center; }
.logo-link { text-decoration: none; }
.logo { width: 150px; }
.logo img { width: 100%; height: auto; display: block; }
.header-cta { display: flex; align-items: center; }

/* Przyciski */
.btn-primary { display: inline-block; padding: 16px 38px; border-radius: 50px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; transition: var(--transition); cursor: pointer; background: linear-gradient(135deg, var(--color-blue) 0%, var(--color-purple) 100%); color: white; text-decoration: none; border: none; box-shadow: 0 5px 20px rgba(148, 0, 211, 0.4); }
.btn-primary:hover { transform: translateY(-4px) scale(1.05); box-shadow: 0 8px 30px rgba(148, 0, 211, 0.5); }
.btn-primary.btn-small { padding: 10px 24px; font-size: 14px; }

/* Główna treść - wyśrodkowana */
.center-wrapper {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    min-height: 100vh; width: 100%; position: relative; z-index: 2;
    padding: 120px 25px 60px 25px;
}
#page-content { 
    background-color: transparent; padding: 20px;
    max-width: 1200px; /* <--- ZMIANA: Szerokość kontenera treści */
    width: 100%;
}
.profile-pic {
    width: 120px; height: 120px; border-radius: 50%;
    border: 3px solid var(--color-purple); margin-bottom: 30px; object-fit: cover;
}

/* Nagłówek H1 */
h1 {
    font-family: 'Poppins', sans-serif;
    font-size: 36px;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 25px;
    max-width: 1200px; /* <--- ZMIANA: Szerokość H1 */
    margin-left: auto;
    margin-right: auto;
}

/* Subnagłówek */
.subtitle {
    font-size: 18px;
    color: var(--color-text-muted);
    margin-bottom: 40px;
    max-width: 800px; /* <--- ZMIANA: Szerokość subnagłówka */
    margin-left: auto;
    margin-right: auto;
    line-height: 1.7;
}

.links-container { display: flex; flex-direction: column; align-items: center; gap: 15px; }

/* Główny przycisk CTA */
.link-button {
    display: inline-block; /* <--- ZMIANA: Dopasowanie szerokości do treści */
    padding: 18px 40px; border-radius: 50px; font-weight: 700;
    font-family: 'Poppins', sans-serif; text-transform: uppercase; letter-spacing: 1px;
    transition: var(--transition); cursor: pointer;
    background: linear-gradient(135deg, var(--color-blue) 0%, var(--color-purple) 100%);
    color: white; text-decoration: none; border: none;
    box-shadow: 0 5px 20px rgba(148, 0, 211, 0.4);
}
.link-button:hover { transform: translateY(-4px) scale(1.03); box-shadow: 0 8px 30px rgba(148, 0, 211, 0.5); }
.privacy-note { margin-top: 15px; font-size: 14px; color: var(--color-text-muted); }
.privacy-note a { color: var(--color-blue); text-decoration: underline; }

/* Stopka */
#footer {
    position: relative; /* <--- ZMIANA: Usunięcie przyklejenia */
    z-index: 2;
    padding: 40px 0 30px 0;
    text-align: center;
    font-size: 14px;
    color: var(--color-text-muted);
}

/* Poprawki dla urządzeń mobilnych */
@media (max-width: 767px) {
    h1 { font-size: 28px; }
    .subtitle { font-size: 17px; }
}