/* Zcela nahoře přidejte tento import - FontShare nedoporučuje @import přímo v CSS, lepší je <link> v HTML, jak je uděláno výše */
/* Pokud byste přesto chtěli @import, vypadal by takto: */
/* @import url('https://api.fontshare.com/v2/css?f[]=satoshi@700,400&display=swap'); */

/* Základní reset a nastavení */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    /* Změna písma na Satoshi */
    font-family: 'Satoshi', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #333;
    background-color: #fdfdfd;
    /* Výchozí váha písma pro běžný text */
    font-weight: 400;
}

/* Kontejner pro centrování obsahu */
.container {
    max-width: 960px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Sekce */
.section {
    padding: 60px 0;
    border-bottom: 1px solid #eee;
}

.section:last-of-type {
    border-bottom: none;
}

/* Zvýrazněné sekce */
.section-highlight {
    background-color: #f7f7f7;
}

/* Úvodní sekce */
.section-intro {
    padding: 80px 0;
    text-align: center;
}
.section-intro h1 {
    margin-bottom: 20px;
}

/* Hlavička a navigace */
.site-header {
    background-color: #fff;
    padding: 15px 0;
    border-bottom: 1px solid #eee;
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.site-header .container {
    display: flex;
    justify-content: space-between;
    align-items: baseline; /* Zarovnání loga a nav podle účaří */
}

.logo a {
    font-size: 1.5em;
    /* Nastavení váhy písma pro logo */
    font-weight: 700; /* Bold pro Satoshi */
    color: #444;
    text-decoration: none;
}

.main-nav ul {
    list-style: none;
    display: flex;
    gap: 20px;
    margin: 0;
    padding: 0;
}

.main-nav a {
    text-decoration: none;
    color: #555;
    /* Váha písma pro navigační odkazy (může zůstat 400) */
    font-weight: 400;
    transition: color 0.3s ease;
    display: inline-block;
}

.main-nav a:hover,
.main-nav a:focus {
    color: #007bff;
}

/* Nadpisy */
h1, h2, h3, h4 {
    margin-bottom: 15px;
    /* Nastavení váhy písma pro nadpisy */
    font-weight: 700; /* Bold pro Satoshi */
    color: #333;
    line-height: 1.3;
}

h1 { font-size: 2.5em; }
h2 { font-size: 2em; margin-bottom: 25px; text-align: center; }
h3 { font-size: 1.5em; margin-top: 30px; margin-bottom: 10px; }
h4 { font-size: 1.1em; margin-bottom: 8px; } /* H4 může mít také 700, nebo nechat zdědit 400 - zde explicitně 700 pro konzistenci */

/* Odstavce */
p {
    margin-bottom: 15px;
}

/* Seznamy */
ul {
    list-style-position: inside;
    margin-left: 5px;
    margin-bottom: 20px;
}
ul li {
    margin-bottom: 8px;
}

/* Tlačítka / Odkazy */
.button {
    display: inline-block;
    padding: 12px 25px;
    background-color: #007bff;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    /* Nastavení váhy písma pro tlačítka */
    font-weight: 700; /* Bold pro Satoshi */
    transition: background-color 0.3s ease, transform 0.2s ease;
    margin-top: 15px;
    border: none;
    cursor: pointer;
}

.button:hover,
.button:focus {
    background-color: #0056b3;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

/* Specifické styly pro sekce */
.service-group { margin-bottom: 30px; padding-left: 15px; border-left: 3px solid #007bff; }
.testimonials blockquote { border-left: 4px solid #ccc; padding-left: 20px; margin-bottom: 25px; font-style: italic; color: #555; }
.testimonials cite { display: block; margin-top: 10px; font-style: normal; font-weight: 700; color: #333; } /* Zvýraznění jména */

/* Kontakt - upravená sekce */
.contact-details {
    margin: 20px 0; /* Přidáme trochu vertikálního odsazení */
}
.contact-details p {
    margin-bottom: 10px; /* Menší mezera mezi emailem a telefonem */
    font-size: 1.1em; /* Mírně zvětšíme kontakt */
}
.contact-details a {
    color: #007bff;
    text-decoration: none;
    font-weight: 400; /* Normální váha pro odkaz */
}
.contact-details a:hover {
    text-decoration: underline;
}
.contact-details strong {
    font-weight: 700; /* Ztučnění popisku (E-mail:, Tel.:) */
    margin-right: 8px; /* Malá mezera za popiskem */
}
/* Odstraněny styly pro address a social-links, pokud nejsou potřeba */

/* Patička */
.site-footer-bottom {
    background-color: #e9e9e9;
    color: #555;
    padding: 20px 0;
    text-align: center;
    font-size: 0.9em;
    margin-top: 40px;
}


/* --- Mobilní Navigace - Styly pro Burger Tlačítko --- */
.nav-toggle { display: none; background: none; border: none; padding: 10px; cursor: pointer; z-index: 110; margin-left: 15px; position: relative; width: 45px; height: 45px; }
.burger-line { display: block; width: 25px; height: 3px; background-color: #333; margin: 5px auto; transition: transform 0.3s ease, opacity 0.3s ease; position: relative; transform-origin: center; }
.nav-toggle.is-active .burger-line:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.nav-toggle.is-active .burger-line:nth-child(2) { opacity: 0; }
.nav-toggle.is-active .burger-line:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }


/* --- Responzivita --- */
@media (max-width: 768px) {
    .site-header .container {
        align-items: center; /* Na mobilu vrátit centrování */
    }
    .nav-toggle { display: block; }
    .main-nav { margin-top: 0; }
    .main-nav ul#main-nav-list { display: none; position: absolute; top: 66px; /* Vylaďte tuto hodnotu! */ left: 0; right: 0; background-color: #ffffff; box-shadow: 0 5px 10px rgba(0,0,0,0.1); padding: 10px 0 10px 0; z-index: 105; border-top: 1px solid #eee; flex-direction: column; align-items: stretch; gap: 0; list-style: none; margin: 0; padding-left: 0; }
    .main-nav ul#main-nav-list.is-open { display: flex; }
    .main-nav ul#main-nav-list li { width: 100%; margin-bottom: 0; padding: 0; border-bottom: 1px dashed #eee; }
    .main-nav ul#main-nav-list li:last-child { border-bottom: none; }
    .main-nav ul#main-nav-list li a { display: block; padding: 12px 20px; color: #333; font-weight: 700; /* Můžeme dát výraznější v mobilním menu */ }

    h1 { font-size: 2em; }
    h2 { font-size: 1.7em; }
    h3 { font-size: 1.3em; }
    .section { padding: 40px 0; }
    .section-intro { padding: 50px 0; }
}