/* =========================================================
   ThePolka.Cloud™ Store Theme
   Sidebar Dashboard + Product Cards
   ========================================================= */


/* -------------------------
   Global Reset
-------------------------- */

* {
    box-sizing: border-box;
}

html,
body {
    margin: 0;
    padding: 0;
    min-height: 100%;
    font-family: Arial, Helvetica, sans-serif;
    background: #f4f7fb;
    color: #222;
}


/* -------------------------
   Main Application Layout
-------------------------- */

.app-container {
    display: flex;
    min-height: 100vh;
}


/* -------------------------
   Left Sidebar Navigation
-------------------------- */

.sidebar {
    position: fixed;
    left: 0;
    top: 0;

    width: 260px;
    height: 100vh;

    padding: 25px;

    background: #102a43;
    color: white;

    overflow-y: auto;

    box-shadow: 3px 0 15px rgba(0,0,0,0.15);
}


.sidebar-brand {
    margin-bottom: 20px;
}


.sidebar-brand a {
    color: white;
    text-decoration: none;

    font-size: 1.35rem;
    font-weight: bold;
}


/* -------------------------
   Language Greeting Ticker
-------------------------- */

.hero-ticker {

    width: 100%;
    overflow: hidden;

    margin-bottom: 25px;

    padding: 10px;

    border-radius: 10px;

    background: rgba(255,255,255,0.08);
}


.ticker-track {

    display: flex;
    gap: 15px;

    white-space: nowrap;

}


.ticker-item {

    font-size: .9rem;

}



/* -------------------------
   Sidebar Menu Containers
-------------------------- */


.sidebar-nav {

    display: flex;
    flex-direction: column;

    gap: 12px;

}



.nav-link {

    display: block;

    padding: 12px 15px;

    color: white;

    text-decoration: none;

    background: rgba(255,255,255,0.08);

    border-radius: 12px;

    transition: all .2s ease;

}



.nav-link:hover {

    background: rgba(255,255,255,0.22);

    transform: translateX(5px);

}



.nav-link.active {

    background: #2563eb;

}



/* -------------------------
   Sidebar Image
-------------------------- */

.sidebar img {

    width: 100%;

    margin-top: 35px;

    border-radius: 15px;

}



/* -------------------------
   Main Content Area
-------------------------- */


.main-column {

    margin-left: 260px;

    width: calc(100% - 260px);

}



.page-content {

    padding: 40px;

}



/* -------------------------
   Store Product Grid
-------------------------- */


.services {

    display: grid;

    grid-template-columns:
    repeat(auto-fit,minmax(300px,1fr));

    gap: 25px;

}



/* Product / Service Containers */

.card {

    background: white;

    padding: 25px;

    border-radius: 16px;

    border: 1px solid #d9e2ec;

    box-shadow:
    0 5px 15px rgba(0,0,0,.08);

    transition: transform .2s ease,
                box-shadow .2s ease;

}



.card:hover {

    transform: translateY(-5px);

    box-shadow:
    0 10px 25px rgba(0,0,0,.15);

}



.card h3 {

    margin-top:0;

    color:#102a43;

}



.card p {

    line-height:1.5;

}



/* Price */

.price {

    font-size:1.5rem;

    font-weight:bold;

    color:#2563eb;

    margin:15px 0;

}



/* Purchase Button */

.button {

    display:inline-block;

    padding:12px 22px;

    border-radius:10px;

    background:#0070ba;

    color:white;

    text-decoration:none;

    font-weight:bold;

}



.button:hover {

    background:#005ea8;

}



/* -------------------------
   Footer
-------------------------- */


.site-footer {

    margin-top:50px;

    padding:25px;

    background:white;

    border-radius:15px;

    border:1px solid #ddd;

}



.footer-contact a {

    color:#2563eb;

    text-decoration:none;

}



.footer-legal {

    margin-top:15px;

    font-size:.85rem;

    color:#666;

}



/* -------------------------
   Mobile Responsive
-------------------------- */


@media(max-width:900px){


    .sidebar {

        position:relative;

        width:100%;

        height:auto;

    }


    .main-column {

        margin-left:0;

        width:100%;

    }


    .app-container {

        flex-direction:column;

    }


    .page-content {

        padding:20px;

    }


}
