/*
Theme Name: Magiczne Podróże
Theme URI: https://magicznepodroze.eu/
Author: Michał Grobelski
Author URI: https://www.linkedin.com/in/mgrobels/
Description: Dedykowany motyw przygotowany dla bloga podróżniczego "Magiczne Podróże".
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: securityinpractice
*/

body
{
    margin: 0;
    font-family: sans-serif;
}

header#masthead
{
    padding: 1rem 2rem;
}

header#masthead .container
{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

header#masthead .site-branding
{
    background-color: #0f4daf;
    padding: 1rem 2rem;
    border-radius: 1rem;
    width: 10rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

header#masthead .site-branding img
{
    width: 100%;
    height: auto;
    display: flex;
}

header#masthead .mobile-navigation, header#masthead .mobile-navigation-button
{
    display: none
}

header#masthead .main-navigation
{
    background-color: white;
    padding: 1rem 2rem 1rem 1rem;
    border-radius: 1rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

header#masthead .main-navigation ul
{
    display: flex;
    list-style: none;
    padding-left: 0; 
}

header#masthead .main-navigation ul li
{
    margin-left: 1rem;
}

header#masthead .main-navigation ul li a
{
    color: black;
    text-decoration: none;
    font-weight: bold;
}

header#masthead .main-navigation ul li:first-child a
{
    color: red;
}

main#front-page .hero
{
    height: 90vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

main#front-page .hero h1
{
    font-size: 5rem;
    color: white;
    text-align: center;
    font-family: serif;
    font-weight: lighter;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

main#front-page .hero span
{
    font-size: 8rem;
    display: block;
}

main#front-page .hero .container
{
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
    overflow: hidden;
}

main#front-page .hero .container::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 168, 255, 0.6);
    pointer-events: none;
    z-index: 2;
}

main#front-page .hero .container img
{
    width: 100vw;
    height: 100vh;
    display: flex;
    object-fit: cover;
}

main#front-page .hero .scroll-down
{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    background-color: white;
    font-size: 2rem;
    color: #0f4daf;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

main#front-page .about-us
{
    box-sizing: border-box;
    padding: 0 2rem;
}

main#front-page .about-us .container
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    width: 100%;
    padding: 0 0 2rem 0;
    margin: 0 auto;
    box-sizing: border-box;
}

main#front-page .about-us .container p
{
    max-width: 500px;
}


main#front-page .about-us .container p a
{
    text-decoration: none;
    color: black;
    font-weight: bold;
}

main#front-page .about-us .container img
{
    width: 20%;
    height: auto;
    border-radius: 1rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

main#front-page .offer
{
    box-sizing: border-box;
    background-color: rgb(0, 168, 255);
    padding: 3rem 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}

main#front-page .offer h2
{
    color: white;
    text-align: center;
    font-size: 3rem;
    font-weight: normal;
    font-family: serif;
    width: 100%;
    margin-top: 0;
}

main#front-page .offer .container
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

main#front-page .offer .container a
{
    width: calc(100% / 6);
}

main#front-page .offer .container a img
{
    width: 100%;
    height: auto;
    border: 0.5rem solid white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
    box-sizing: border-box;
}

main#front-page .offer .about-us-link
{
    box-sizing: border-box;
    background-color: white;
    color: black;
    text-decoration: none;
    font-weight: bold;
    margin-top: 2rem;
    padding: 1rem;
    border-radius: 1rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

main#front-page .blog-entries
{
    box-sizing: border-box;
    background-color: white;
    padding: 3rem 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}

main#front-page .blog-entries h2
{
    color: black;
    text-align: center;
    font-size: 3rem;
    font-weight: normal;
    font-family: serif;
    width: 100%;
    margin-top: 0;
}

main#front-page .blog-entries .container
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

main#front-page .blog-entries .container a
{
    width: calc(100% / 6);
}

main#front-page .blog-entries .container a img
{
    width: 100%;
    height: auto;
    border: 0.5rem solid white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
    box-sizing: border-box;
}

main#front-page .blog-entries .blog-entries-link
{
    box-sizing: border-box;
    background-color: #0f4daf;
    color: white;
    text-decoration: none;
    font-weight: bold;
    margin-top: 2rem;
    padding: 1rem;
    border-radius: 1rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

footer#colophon
{
    padding: 3rem 2rem;
    background-color: rgb(0, 168, 255);
}


footer#colophon .site-info
{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

footer#colophon .site-info img
{
    width: 30vw;
    display: flex;
    margin: 1rem 0;
}

footer#colophon .footer-widgets
{
    display: flex;
    justify-content: space-between;
}

footer#colophon .footer-widgets .footer-widgets-single
{
    width: calc(100vw / 4);
    text-align: center;
}

footer#colophon .footer-widgets .footer-widgets-single h3
{
    text-align: center;
}

footer#colophon .footer-widgets .footer-widgets-single-sm
{
    text-align: left;
}

footer#colophon .footer-widgets .footer-widgets-single p
{    
    padding: 1rem 0;
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 1rem;
}

footer#colophon .footer-widgets .footer-widgets-single ul
{    
    list-style: none;
    padding-left: 0; 
}

footer#colophon .footer-widgets .footer-widgets-single ul li
{
    text-decoration: none;
    padding: 0.75rem;
    margin: 0.5rem 0;
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

footer#colophon .footer-widgets .footer-widgets-single ul li img
{
    height: 2.5rem;
    border-radius: 50%;
    position: absolute;
}

footer#colophon .footer-widgets .footer-widgets-single ul li a
{
    color: black;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
}

footer#colophon .footer-widgets .footer-widgets-single-sm ul li
{
    justify-content: unset;
}

footer#colophon .footer-widgets .footer-widgets-single-sm ul li a
{
    margin-left: 3rem;
}

/* 1. SINGLE - STRONA WPISU */
main#single
{
    padding: 3rem 2rem;
    display: flex;
    border-top: 2rem solid #0f4daf;
}

main#single .container
{
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

/* 2. PAGE - POJEDYŃCZA STRONA */
main#page
{
    padding: 3rem 2rem;
    display: flex;
    border-top: 2rem solid #0f4daf;
}

main#page .container
{
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

/* 3. BLOG - STRONA Z WPISAMI */
main#blog
{
    padding: 3rem 2rem;
    display: flex;
    border-top: 2rem solid #0f4daf;
}

main#blog .container
{
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

main#blog .container .container-blog
{
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    justify-content: space-between;
}

main#blog .container .container-blog .post img
{
    border: 0.5rem solid white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
    box-sizing: border-box;
}

main#blog .container .posts-navigation
{
    text-align: center;
    margin: 2rem 0;
}

main#blog .container .posts-navigation .page-numbers
{
    border: 1px solid black;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    width: 1rem;
    height: 1rem;
}

main#blog .container .posts-navigation .prev.page-numbers, main#blog .container .posts-navigation .next.page-numbers
{
    width: unset;
    height: unset;
    border-radius: 1rem;
}

main#blog .container .posts-navigation .page-numbers.current
{
    background-color: black;
    color: white;
}

main#blog .container .posts-navigation a
{
    text-decoration: none;
    font-weight: bold;
    color: black;
}

@media (orientation: portrait)
{
    header#masthead .main-navigation
    {
        display: none;
    }
    header#masthead .mobile-navigation-button
    {
        display: flex;    
        flex-direction: column;
        background-color: white;
        padding: 1rem;
        border-radius: 1rem;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
    }
    header#masthead .mobile-navigation-button div
    {
        width: 35px;
        height: 5px;
        background-color: black;
        margin: 5px 0;
        position: relative;
    }    
    header#masthead .mobile-navigation
    {
        display: none;
    }
    header#masthead .mobile-navigation.is-active
    {
        display: flex;
    }
    header#masthead .mobile-navigation
    {
        position: absolute;
        top: 8rem;
        left: 0;
        width: 100%;
        background-color: white;
        z-index: 3;
    }
    header#masthead .mobile-navigation ul
    {
        display: flex;
        list-style: none;
        padding-left: 0;
        flex-direction: column; 
        width: 100%;
    }
    header#masthead .mobile-navigation ul li a
    {
        color: black;
        text-decoration: none;
        font-weight: bold;
    }
    
    header#masthead .mobile-navigation ul li
    {
        text-align: center;
        margin: 0.5rem 0;
    }
    header#masthead .mobile-navigation ul li:first-child a
    {
        color: red;
    }
    
    main#front-page .hero h1
    {
        font-size: 2.5rem;
    }
    main#front-page .hero span
    {
        font-size: 4rem;
    }
    main#front-page .about-us .container
    {
        flex-direction: column;
    }
    main#front-page .about-us .container p
    {
        max-width: unset;
    }
    main#front-page .about-us .container img
    {
        width: 100%;
    }

    main#front-page .offer .container
    {
        flex-direction: column;
    }
    main#front-page .offer .container a
    {
        width: 75%;
        margin-top: 1rem;
    }

    main#front-page .blog-entries .container
    {
        flex-direction: column;
    }
    main#front-page .blog-entries .container a
    {
        width: 75%;
        margin-top: 1rem;
    }

    main#blog .container .container-blog
    {
        justify-content: center;
    }

    footer#colophon .footer-widgets 
    {
        flex-direction: column;
    }
    footer#colophon .footer-widgets .footer-widgets-single 
    {
        width: unset;
        text-align: center;
    }
    footer#colophon .footer-widgets .footer-widgets-single-sm ul li a
    {
        margin-left: 0;
        width: 100%;
        text-align: center;
    }
    footer#colophon .site-info img
    {
        width: 75%;
        margin: 0 auto;
    }
    footer#colophon .site-info p
    {
        text-align: center;
    }
}