﻿/* Passikuvasivujen yhteiset tyylit (/fi/passikuvat/).
   Perustyylit (kortit, otsikot, hintamerkki, huomautukset) tulevat myymala.css:stä,
   joten tämä tiedosto ladataan sen jälkeen. Käyttö: sisältölohkolle luokka "store-page".

   Asettelu: .passi-layout > .passi-main (sisältökortit) + .passi-aside (kuvat, ohjelaatikko). */

.passi-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
    gap: 0 14px;
    align-items: start;
}

.passi-aside {
    margin: 0 10px 28px 0;
}

    .passi-aside .store-section {
        margin-left: 0;
        margin-right: 0;
        text-align: center;
    }

    .passi-aside img {
        max-width: 100%;
        height: auto;
    }

    .passi-aside .passi-photo {
        max-width: 320px;
    }

    /* Kuvan taustan valkoinen yläosa sulautuu valkoiseen korttiin,
       joten kuvalle annetaan reunus, jotta sen rajat erottuvat. */
    .passi-aside .passi-portrait {
        display: block;
        max-width: 160px;
        margin: 0 auto;
        border: 1px solid var(--store-border);
        border-radius: 6px;
    }

.store-page .store-section ul.list-disc {
    margin: 0 0 14px 0;
    line-height: 1.5;
}

/* Korostuslaatikko sisältöalueen levyisenä (esim. tarjousteksti) */
.store-page .passi-callout {
    margin: 0 10px 28px 10px;
}

.store-page .store-callout h5 {
    margin: 0;
    font-size: 1em;
}

/* Ylen uutinen omana korostuslaatikkonaan */
.store-page .passi-news {
    margin: 0 10px 28px 10px;
    padding: 18px 22px;
    border-left-width: 6px;
    font-size: 1.12em;
    line-height: 1.55;
}

    .store-page .passi-news a {
        color: var(--store-link);
        font-weight: 700;
        text-decoration: underline;
        text-underline-offset: 2px;
    }

        .store-page .passi-news a:hover {
            color: var(--store-link-hover);
        }

/* Keltainen ohjelaatikko */
.passport-banner {
    background-color: var(--store-accent);
    color: var(--store-text);
    padding: 20px;
    border-radius: var(--store-radius);
    margin: 0 0 28px 0;
}

    .passport-banner h2 {
        font-size: 22px;
        line-height: 1.25;
        margin: 0 0 12px 0;
        text-align: center;
    }

    .passport-banner ol {
        padding-left: 22px;
        margin: 0;
        text-align: left;
    }

    .passport-banner li {
        font-size: 17px;
        line-height: 1.4;
        margin-bottom: 8px;
    }

    .passport-banner .cta {
        font-size: 18px;
        font-weight: bold;
        margin: 14px 0 0 0;
        text-align: center;
    }

/* -50 % -tähti */
.passi-star {
    width: 160px;
    height: 160px;
    margin: 16px auto 0 auto;
    background: url(../images/passikuvat/star.png);
    text-align: center;
    color: #fff;
}

@media (max-width: 980px) {
    .passi-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .passi-aside {
        margin-left: 10px;
    }
}

@media (max-width: 600px) {
    .passport-banner h2 {
        font-size: 20px;
    }

    .passport-banner li {
        font-size: 16px;
    }

    .passport-banner .cta {
        font-size: 17px;
    }
}
