

body {
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Trajan Pro', serif;
    margin: 0;
    padding: 0;
    background: url('/public/images/tlo3.png') no-repeat;
    background-size: cover;
    background-attachment: fixed;
    flex-direction: column;
    min-height: 100vh;
}

header {
    color: #FFFFFF;
    padding: 20px 0;
    width: 100%;
    text-align: center;
}

.box {
    max-width: 90%;
    width: 500px;
    margin: 20px auto;
    padding: 20px;
    /*    background-color: rgba(0, 0, 0, 0.4);
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
*/ text-align: justify;
    color: white;
    /* border: 2px solid white;
    border-radius: 10px;*/
}

h1 {
    color: #FFFFFF;
    text-align: center;
}

p, text {
    color: #FFFFFF;
    text-align: justify;
    margin: auto 5px auto 5px;
}

text {
    font-size: 1.2em;
    display: block;
}

.footer {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  text-align: center;
  z-index: 1000;
}

.footer-text {
  font-size: 1em;
  color: white;
  padding: 10px 20px;
}

.cta-button, .btn, .buy-btn {
    vertical-align: middle;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    color: white;
    padding: 6px 12px;
    border: 2px solid white;
    font-size: 1.2em !important;
    border-radius: 5px;
    cursor: pointer;
    text-decoration: none;
    transition: background-color 0.3s ease;
    margin: 5px;
}

.cta-button:hover, .btn:hover {
    background-color: #4fc4bd;
}

.buy-btn {
    background-color: #4fc4bd;
}

.buy-btn:hover {
    background-color: transparent;
}

.button-group {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    margin-top: 5px;
}

.center-buttons {
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: row; 
    gap: 10px;
    z-index: 1000;
}

.author-btn, .contact-btn {
    background-color: transparent;
    color: white !important;
    white-space: nowrap;
    padding: 12px 24px;
    font-size: 1.3em !important;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
}

.social-buttons {
    position: fixed;
    top: 10px;
    right: 10px;
    display: flex;
    gap: 10px;
    z-index: 9999;
}


.social-buttons button {
    background: transparent; /* przezroczyste tło */
    border: none;
    padding: 0;
    cursor: pointer;
}

.social-buttons img {
    width: 32px;
    height: 32px;
    transition: transform 0.3s;
}

.social-buttons img:hover {
    transform: scale(1.1);
}


/* Extra small devices (phones, 600px and down) */
/*@media only screen and (max-width: 600px) {
    ...
}*/

/* Small devices (portrait tablets and large phones, 600px and up) */
/*@media only screen and (min-width: 600px) {
    ...
}*/

/* Medium devices (landscape tablets, 768px and up) */
/*@media only screen and (min-width: 768px) {
    ...
}*/

/* Large devices (laptops/desktops, 992px and up) */
/*@media only screen and (min-width: 992px) {
    ...
}*/

/* Extra large devices (large laptops and desktops, 1200px and up) */
/*@media only screen and (min-width: 1200px) {
    ...
}*/
/* RESPONSYWNOŚĆ */
@media (max-width: 600px) {
  
    .author-btn, .contact-btn {
    font-size: 1.2em !important;
    padding: 6px 12px;
}
.center-buttons {
    gap: 5px;
    position: fixed;
    top: 0;
}

    .social-buttons {
        top: 75%;
        right: 0;
        transform: translateY(-50%);
        flex-direction: column;
        background: rgba(255, 255, 255, 0.0); /* przezroczyste tło */
        padding: 5px;
    }

    .social-buttons img {
        width: 28px;
        height: 28px;
    }

    
    .box {
        width: 90%;
        padding: 15px;
    }

/*    .author-btn, .contact-btn {
        font-size: 1em;
        padding: 8px 16px 8px 16px;
    }*/

    .social-info {
        top: 100px;
        right: 10px;
        font-size: 0.9em;
    }

    .cta-button, .btn, .buy-btn {
        font-size: 0.9em;
        padding: 10px 10px;
    }


    .book-cover-wrapper {
        width: 90%;
        /*margin: 0 auto;*/
        position: relative;
        padding-top: 50%;
        /*width: 33vw;*/ /* 1/3 szerokości ekranu */
        /*        height: 33vh;
*/ /*aspect-ratio: 2 / 3;*/ /* proporcje książki */
        margin: 40px auto;
        object-fit: cover;
    }

    .book-cover {
        position: absolute;
        top: 30px;
        width: 100%;
        height: 100%;
        background-image: url('/images/image.png');
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
    }

    .faq-container {
        margin-top: 120px;
        padding: 20px;
    }

}
    .contact-container {
        max-width: 1000px;
        margin: 100px auto;
        padding: 20px;
        background: rgba(0, 0, 0, 0.5);
        border-radius: 10px;
        color: white;
        font-family: 'Trajan Pro', serif;
    }

    .contact-container h2 {
        text-align: center;
        margin-bottom: 20px;
    }

    .contact-container form {
        display: flex;
        flex-direction: column;
    }

    .contact-container label {
        margin-bottom: 5px;
        font-size: 1.1em;
    }

    .contact-container input[type="email"] {
        height: 50px; /* zwi�kszona wysoko�� pola e-mail */
    }

    .contact-container textarea {
        min-height: 150px; /* wi�ksze pole na wiadomo�� */
        min-width: 350px;/* pozwala u�ytkownikowi zmienia� wysoko�� */
    }

        .contact-container input, .contact-container textarea {
            padding: 10px;
            border: 1px solid #ccc;
            border-radius: 5px;
            font-size: 1em;
            font-family: 'Trajan Pro', serif;
            margin-bottom: 15px;
            width: 100%;
            box-sizing: border-box;
        }

    .contact-container input::placeholder, .contact-container textarea::placeholder {
        color: #999;
    }

    .contact-container button {
        background-color: #4fc4bd; /* turkusowy akcent */
        color: white;
        border: none;
        padding: 12px;
        border-radius: 5px;
        font-size: 1em;
        cursor: pointer;
        transition: background-color 0.3s ease, border 0.3s ease;
    }

    .contact-container button:hover {
        background-color: transparent;
        border: 2px solid #4fc4bd;
    }

    .contact-response {
        max-width: 1000px;
        margin: 40px auto;
        padding: 20px;
        background: rgba(0, 0, 0, 0.5);
        border-radius: 10px;
        color: white;
        font-family: 'Trajan Pro', serif;
    }

    .btn-icon {
        vertical-align: middle; /* lub display: block oraz przemy�lane marginesy */
        margin-left: 10px;
        display: inline-flex;
        align-items: center;
    }

    faq-container {
        max-width: 800px;
        margin: 0 auto;
        background-color: #fff;
        padding: 40px;
        border-radius: 8px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    }

    .faq-container h1 {
        text-align: center;
        margin-bottom: 40px;
        font-size: 2em;
        color: #222;
    }

    .faq-item {
        margin-bottom: 30px;
        padding-bottom: 20px;
        border-bottom: 1px solid #ddd;
    }

    .faq-question {
        background: none;
        border: none;
        width: 100%;
        text-align: left;
        font-size: 1.3em;
        padding: 15px 0;
        cursor: pointer;
        color: #FFFFFF;
        transition: color 0.3s;
    }

    .faq-question:hover {
        color: #FFFFFF;
    }

    .faq-answer {
        display: none;
        padding: 10px 0 0;
        font-size: 1.05em;
        color: #555;
        line-height: 1.6;
    }

    .faq-item.active .faq-answer {
        display: block;
    }

.author-section {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    max-width: 1000px;
    margin: 70px auto;
    padding: 40px 20px;
    gap: 40px;
    align-content: center;
}

.author-text {
    flex: 1 1 400px;
    display: flex;
    flex-direction: column;
    justify-content: center; /* wy�rodkowanie nag��wka wzgl�dem tekstu */
    font-family: 'Trajan Pro', serif;
    font-size: 1.1em;
    color: white;
}

    .author-text h2 {
        margin: 0 0 20px;
        text-align: center; /* wy�rodkowanie nag��wka */
    }

.author-photo {
    flex: 1 1 300px;
    display: flex;
    justify-content: center;
    align-items: center;
}

    .author-photo img {
        max-width: 100%;
        height: auto;
        border-radius: 8px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    }
/* Responsywno�� */

@media (max-width: 768px) {
    .author-section {
        flex-direction: column;
        text-align: center;
    }

    .author-text, .author-photo {
        flex: 1 1 100%;
    }

        .author-text h2 {
            text-align: center;
        }
}
