body {
    margin: 0;
}

.container {
    width: 1440px;
    margin: 0 auto; /* Wyśrodkowanie kontenera */
    padding: 0; /* Usuń wewnętrzne odstępy */
    background: white;
}

.main-banner {
    width: 1440px;
    height: 836px;
    margin: 0 auto;
    background-image: url('/images/baner1440x836.png');
    background-size: cover; /* Dopasuj obraz do rozmiaru */
    background-position: center; /* Wyśrodkuj tło */
    position: relative; /* Potrzebne do pozycjonowania tekstu */
}

.banner-title {
    position: absolute;
    top: 200px; /* Pozycjonowanie w pionie */
    left: 900px; /* Pozycjonowanie w poziomie */
    transform: translate(10%, 100%); /* Idealne wyśrodkowanie */
    color: white; /* Kolor tekstu */
    font-family: 'Italiana', serif; /* Font z Google Fonts */
    font-weight: 400; /* Normal */
    letter-spacing: 1.24px;
    line-height: 74.15px;
    vertical-align: middle;
    font-size: 64px;
    text-align: right; 
    margin: 0;
}

.banner-subtitle {
    position: absolute;
    top: 57%; /* Niżej niż tytuł */
    left: 64%;
    transform: translateX(19%);
    color: white;
    font-family: 'Inter', sans-serif;
    font-size: 36px;
    letter-spacing: 1.24px;
    font-weight: 100; /* Normal */
    line-height: 1.2;
    text-align: right; 
}

/* Przycisk - nowe pozycjonowanie */
.transparent-button {
    display: inline-block; /* Zmiana z absolute na inline-block */
    margin-top: 620px; /* Odstęp od góry baneru*/
    margin-left: 1030px;
    width: 378px;
    height: 84px;
    line-height: 84px; /* Pionowe wyśrodkowanie tekstu */
    
    /* Style czcionki */
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 600;
    font-style: italic;
    letter-spacing: 1.24px;
    color: white;
    text-transform: uppercase;
    text-decoration: none;
    text-align: center;
    
    /* Ramka i tło */
    background: transparent;
    border: 2px solid white;
    
    /* Efekty */
    cursor: pointer;
    transition: all 0.3s;
}



.centered-image {
    width: 729px;
    height: 412px;
    display: block;
    margin: 60px auto 0;  /* Przykład większego odstępu */
}

/* Nagłówek sekcji */


.container h1.section-title {
    /* Reset marginesów i paddingu */
    margin: 60px 0 40px;
    padding: 0;
    
    /* Gwarancja wyśrodkowania */
    text-align: center;
    width: 100%;
    display: block;
    
    /* Jawne ustawienie czcionki (bez dziedziczenia) */
    font-family: 'Newsreader', serif;
    font-weight: 400; /* Normal */
    font-size: 64px;
    color: #333;
}

.container h1.frame-title {
    /* Reset marginesów i paddingu */
    margin: 60px 0 40px;
    padding: 0;
    
    /* Gwarancja wyśrodkowania */
    text-align: left;
    width: 100%;
    display: block;
    
    /* Jawne ustawienie czcionki (bez dziedziczenia) */
    font-family: 'Newsreader', serif;
    font-weight: 400; /* Normal */
    font-size: 64px;
    color: #333;
}


/* Kontener dla trzech grup */
.content-groups {
   
    
    flex-wrap: wrap;
    justify-content: center; /* Wyśrodkowanie grup */
    gap: 30px; /* Odstęp między grupami */
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
   
}

/* Pojedyncza grupa */
.content-group {
   /* width: 1220px; */
    text-align: center; /* Wyśrodkowanie tekstu w grupie */
    margin-bottom: 80px; /* Tylko odstęp pionowy */
  
}

/* Grafika w grupie */
.group-image {
    width: 167px; /* Wymiary grafiki */
    height: 75px;
    display: block;
    margin: 0 auto 20px; /* Odstęp pod grafiką */
}

/* Nagłówek grupy */
.group-title {
    font-family: 'NewsReader','serif';
    font-weight: 400; /* normal */
    font-size: 24px;
    margin: 0 0 15px 0; /* Odstęp od opisu */
    color: #444;
}
/* Opis grupy */
.group-description {
    font-family: 'Inter','serif';
    font-weight: 200; /* normal */
    font-size: 20px;
    line-height: 1.5;
    color: #666;
    margin: 0;
}

.break-text {
    white-space: pre-line; /* Zachowuje ręczne łamanie wierszy */
    
}

/* Ramka na pełną szerokość strony */
.framed-section {
    width: calc(100% - 150px);       /* Pełna szerokość kontenera */
    margin:  40px 50px;             /* Odstęp góra/dół + wyśrodkowanie */
    padding: 45px;                 /* Wewnętrzny odstęp od ramki */
    border: 2px solid #000000;     /* Szara ramka (dostosuj kolor) */
    box-sizing: border-box;        /* Zapobiega "uciekaniu" szerokości */
    display: flex;                 /* Zdjęcie i tekst obok siebie */
    align-items: center;           /* Wyśrodkowanie w pionie */
    gap: 40px;                     /* Odstęp między zdjęciem a tekstem */
}



/* Zdjęcie wewnątrz ramki */
.framed-image {
     width: 45%;                    /* Dostosuj szerokość zdjęcia */
    max-width: 522px;              /* Maksymalna szerokość */
    height: 521px;
}

/* Tekst obok zdjęcia */
.framed-text {

    font-family: 'Inter','serif';
    font-weight: 100; /* normal */
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 1.24px;
    vertical-align: middle;
    width: 55%;                    /* Reszta szerokości dla tekstu */
}



.multi-elements-first {
    display: grid;
    grid-template-columns: repeat(3, 229px); /* 3 kolumny po 229px */
    gap: 80px;
    margin: 40px 0;
    justify-content: center; /* Wyśrodkowanie całej siatki */
}

.multi-elements-second {
    display: grid;
    grid-template-columns: repeat(2, 229px); /* 2 kolumny po 229px */
    gap: 80px;
    margin: 40px 0;
    justify-content: center; /* Wyśrodkowanie całej siatki */
}


/* Zdjęcie w elemencie */
.element-img {
    
    width: 229px;            /* Szerokość względem rodzica */
    height: 100px;
   
   
}

/* Opis pod zdjęciem produktu*/
.element-description {
    text-align: center;
    margin-top: 30px;
    margin-bottom: 0px;
    font-family: 'NewsReader','serif';
    font-weight: 400; /* normal */
    font-size: 24px;
    color: #333;
}

/* Cena pod zdjęciem produktu*/
.element-price {
    text-align: center;
    margin-top: 10px;
    font-family: 'Inter','serif';
    font-weight: 200; /* normal */
    font-optical-sizing: auto;
    font-size: 20px;
    color: #000000;
}
/* Sekcja z tłem graficznym */
.graphic-section {
    width: 1440px;
    height: 447px;
    background: url('/images/golffield.png') no-repeat center/cover; /* Wstaw swoje tło */
    margin: 40px auto; /* Odstęp od innych sekcji */
    position: relative; /* Potrzebne do pozycjonowania ramki w rogu */
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Centralna biała ramka */
.main-frame {
    width: 1235px;
    height: 371px;
    background: white;
    border: 3px solid black; /* Czarne obramowanie */
    position: relative; /* Umożliwia pozycjonowanie ramki w rogu */
    padding: 30px; /* Wewnętrzny odstęp */
    box-sizing: border-box; /* Zapobiega "rozsadzeniu" ramki */
}

/* Tekst w centralnej ramce */
.main-text {
    font-size: 24px;
    color: #333;
    text-align: center; /* Wyśrodkowanie tekstu */
}

/* Mała ramka w prawym dolnym rogu */
.corner-frame {
    width: 518px;
    height: 87px;
    background: white;
    border: 3px solid black;
    position: absolute;
    bottom: 20px; /* Odstęp od dołu */
    right: 20px;  /* Odstęp od prawej */
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Tekst w małej ramce */
.corner-text {

    font-family: 'Inter', serif;
    font-weight: 600; /* Italic */
    font-style: italic; /* Wymusza pochylenie */
    font-size: 20px;
    margin: 0;
}

/* Kontener dla rzędów grafik */
.image-row {
    display: flex;
    justify-content: center; /* Wyśrodkowanie grafiki */
    align-items: flex-start; /* Wyrównanie do góry */
    gap: 70px; /* Odstęp między grafikami */
    margin: 60px auto; /* Odstęp od innych sekcji */
}

/* Pojedyncza grafika + opis */
.image-item {
    width: 237px; /* Szerokość grafiki */
    text-align: center; /* Wyśrodkowanie tekstu */
}

/* Grafika */
.small-image {
    width: 237px; /* Wymiary */
    height: 84px;
    display: block; /* Usuwa marginesy inline */
    margin: 0 auto 15px; /* Odstęp pod grafiką */
}

/* Opis pod grafiką */
.image-caption {
    margin-top: 10px;
    font-family: 'NewsReader','serif';
    font-weight: 400; /* normal */
    font-size: 24px;
    color: #333;
    margin: 0; /* Reset domyślnych marginesów */
    line-height: 1.4;
}

/* Cena pod zdjęciem produktu*/
.image-price {
    margin-top: 10px;
    font-family: 'Inter','serif';
    font-weight: 200; /* normal */
    font-size: 20px;
    color: #333;
}

/* Kontener dla rzędów grafik */
.four-images-row {
    display: flex;
    justify-content: center; /* Wyśrodkowanie */
    flex-wrap: wrap; /* Zawijanie do nowej linii jeśli brak miejsca */
    gap: 70px; /* Odstęp między grafikami */
    margin: 60px auto; /* Odstęp od innych sekcji */
    max-width: 1200px; /* Maksymalna szerokość (opcjonalne) */
}

/* Pojedyncza grafika + opis */
.image-box-4 {
    width: 200px; /* Szerokość grafiki */
    text-align: center; /* Wyśrodkowanie tekstu */
}

/* Grafika */
.small-image-4 {
    width: 200px; /* Wymiary */
    height: 148px;
    display: block; /* Usuwa marginesy inline */
    margin: 0 auto 15px; /* Odstęp pod grafiką */
    object-fit: contain; /* Zapobiega deformacji */
}

/* Opis pod grafiką */
.image-description-4 {
    font-family: 'NewsReader','serif';
    font-weight: 400; /* normal */
    font-size: 16px;
    color: #333;
    margin: 0;
    line-height: 1.4;
}

.image-text-4 {
    margin-top: 10px;
    font-family: 'Inter','serif';
    font-weight: 300; /* normal */
    font-size: 14px;
    color: #333;
}

.text-bold {
    font-weight: 700; /* Pogrubienie */
}

.text-italic {
    font-style: italic; /* Kursywa */
    font-weight: 700; /* Pogrubienie */
}

.text-light {
    font-weight: 300; /* Wersja light */
}
/******* Stopka *******/
.site-footer {
    background: #000;          /* czarne tło */
    color: #fff;               /* biały tekst */
    padding: 40px 0;
    font-family: 'Inter', sans-serif;
}

.footer-container {
    max-width: 1000px;         /* zawężenie całej stopki */
    margin: 0 auto;            /* wyśrodkowanie */
    display: flex;
    justify-content: space-between;
    gap: 40px;
}


.footer-column {
    flex: 1;                   /* każda kolumna równej szerokości */
}

.footer-column h3 {
    font-size: 18px;
    margin-bottom: 15px;
}

.footer-column p,
.footer-column a {
    font-size: 14px;
    color: #fff;
    text-decoration: none;
    line-height: 1.6;
}

.footer-column a:hover {
    text-decoration: underline;
}

.social-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.social-links li {
    margin-bottom: 8px;
}

.footer-item {
  display: flex;
  align-items: center;   /* wyrównanie w pionie */
  margin-bottom: 10px;
}

.footer-icon {
  width: 22px;           /* stała szerokość pola ikony */
  height: 22px;          /* stała wysokość pola ikony */
  object-fit: contain;   /* dopasuj obraz do pola, nie rozciągaj */
  margin-right: 10px;    /* odstęp od tekstu */
  flex-shrink: 0;        /* ikona nie będzie się ściskać */
}
.footer-column:nth-child(2) {
  margin-top: 90px;   /* obniżenie drugiej kolumny */
}
.thin-text {
  display: block;
  font-weight: 300;   /* cieńszy niż normalny tekst */
  font-size: 0.9em;   /* odrobinkę mniejszy */
  color: #ccc;        /* np. jaśniejszy szary */
  margin-left: 5px;   /* mały odstęp od tekstu głównego */
}

.footer-link {
  text-decoration: none;  /* usuwa podkreślenie */
  color: #fff;            /* biały jak reszta tekstu w stopce */
  font-size: 14px;
  line-height: 1.6;
}

.footer-link:hover {
  text-decoration: underline; /* opcjonalnie podkreślenie przy najechaniu */
  color: #ccc;                /* opcjonalna zmiana koloru */
}

.footer-subtitle {
  font-weight: 600;   /* pogrubienie */
  font-size: 15px;    /* trochę mniejsze niż h3 */
  margin: 5px 0 15px; /* odstępy góra/dół */
  color: #fff;        /* biały jak reszta */
}


