/* TIRION - Main CSS - POPRAWIONA KOLEJNOŚĆ IMPORTÓW */

/* === WSZYSTKIE @IMPORT MUSZĄ BYĆ NA SAMEJ GÓRZE === */
/* Reset i podstawowe style */
@import url('reset.css');

/* Zmienne CSS */
@import url('variables.css');

/* Nawigacja */
@import url('navigation.css');

/* Sekcje (bez home) */
@import url('sections.css');

/* Formularze */
@import url('forms.css');

/* Animacje */
@import url('animations.css');

/* Utilities */
@import url('utilities.css');

/* === HOME RESPONSIVE - 3 PLIKI === */
@import url('home/mobile.css');         /* do 1024px */
@import url('home/desktop.css');        /* 1025px - 1920px */
@import url('home/highresolution.css'); /* 1921px+ */

/* Responsive dla pozostałych sekcji */
@import url('responsive.css');

/* === ERP SECTION - MUSI BYĆ NA KOŃCU ABY NADPISAĆ WSZYSTKO === */
@import url('erp/erp.css');
@import url('erp/erp_laptop_fix.css');

/* === APLIKACJE SECTION === */
@import url('aplikacje/aplikacje.css');

/* === KONTAKT SECTION === */
@import url('kontakt/contact.css');

/* === FUTURYSTYCZNE EFEKTY === */
@import url('futuristic.css');

/* === STYLE GLOBALNE - PO WSZYSTKICH @IMPORT === */

/* PASEK POSTĘPU SCROLL */
.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    height: 4px;
    background: linear-gradient(90deg, #4a90e2, #2d5aa0);
    z-index: 1001;
    transition: width 0.3s ease;
    box-shadow: 0 0 10px rgba(74, 144, 226, 0.5);
    width: 0;
}

/* GLOBALNE STYLE CZCIONEK */
body {
    font-family: var(--font-primary);
    font-weight: 400;
    line-height: 1.6;
    color: #ffffff;
    background: var(--primary-dark);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

/* Zapewniamy że wszystkie elementy używają prawidłowej czcionki */
* {
    font-family: inherit;
    box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-primary);
    font-weight: var(--font-weight-semibold);
    margin: 0;
}

p, span, div, a, button {
    font-family: var(--font-primary);
    margin: 0;
}

/* GLOBAL VIEWPORT FIX */
html {
    height: 100%;
    margin: 0;
    padding: 0;
    scroll-behavior: smooth;
    width: 100%;
    overflow-x: hidden;
}

body {
    min-height: 100%;
    min-height: 100dvh;
    width: 100%;
    overflow-x: hidden;
}

/* === BAZOWE STYLE HOME SECTION === */
.section-home {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    background: linear-gradient(135deg, #17274a, #182c53, #1a2142);
    overflow: hidden;
}

/* === SVG BACKGROUND CONTAINER - WAŻNE! === */
/* Zapewniamy że SVG tło może wychodzić poza hexagony */
.hexagons-container {
    position: relative;
    z-index: var(--z-hexagons);
}

.hexagons-container::before {
    /* SVG tło będzie pozycjonowane absolutnie względem kontenera */
    /* ale jego rozmiar może przekraczać rozmiar kontenera */
    position: absolute;
    content: '';
    pointer-events: none;
    z-index: var(--z-background);
}

/* === RESET STYLÓW === */
.home-banner,
.diamond-video-grid,
.hexagons-container,
.text-container {
    box-sizing: border-box;
}

/* === ACCESSIBILITY === */
:focus-visible {
    outline: 2px solid var(--blue-light);
    outline-offset: 2px;
}

/* === FOOTER === */
.site-footer {
    width: 100%;
    padding: 1.5rem 2rem;
    text-align: center;
    background: transparent;
}

.site-footer p {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.5);
    margin: 0;
    letter-spacing: 0.02em;
}

/* === PRINT STYLES === */
@media print {
    .main-nav,
    .scroll-progress,
    .nav-toggle,
    .btn,
    .contact-form,
    .site-footer {
        display: none !important;
    }

    body {
        color: black;
        background: white;
    }
}