.parish-day-section {
    position: relative;
    overflow: hidden;

    padding: 90px 0 100px;

    background:
        radial-gradient(
            circle at 87% 5%,
            rgba(72, 112, 91, .11),
            transparent 29%
        ),
        #12251d;

    color: #ffffff;
}

.parish-day-section::before {
    content: "";

    position: absolute;

    width: 660px;
    height: 660px;

    right: -260px;
    top: -360px;

    border:
        1px solid
        rgba(186, 161, 96, .13);

    border-radius: 50%;

    pointer-events: none;
}


/* =========================================================
   HEADING
   ========================================================= */

.parish-day-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 32px;

    margin-bottom: 33px;
}

.parish-day-eyebrow {
    margin: 0 0 10px;

    color: #7fc5a6;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: .17em;

    text-transform: uppercase;
}

.parish-day-heading h2 {
    margin: 0;

    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 48px;
    font-weight: 600;

    line-height: 1.06;

    letter-spacing: -.04em;
}

.parish-day-period {
    margin: 10px 0 0;

    color: #9db1a7;

    font-size: 15px;
}

.parish-day-all {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    padding-bottom: 4px;

    color: #b8d8ca;

    font-size: 11px;
    font-weight: 750;

    text-decoration: none;
}


/* =========================================================
   DAY TABS
   ========================================================= */

.parish-day-tabs {
    display: flex;

    gap: 7px;

    margin-bottom: 18px;

    overflow-x: auto;

    scrollbar-width: none;
}

.parish-day-tabs::-webkit-scrollbar {
    display: none;
}

.parish-day-tab {
    display: flex;
    align-items: center;

    gap: 8px;

    flex: 0 0 auto;

    min-height: 42px;

    padding: 0 14px;

    border:
        1px solid
        rgba(255,255,255,.10);

    border-radius: 999px;

    background:
        rgba(255,255,255,.025);

    color: #93a89e;

    cursor: pointer;

    transition:
        background-color .15s ease,
        border-color .15s ease,
        color .15s ease;
}

.parish-day-tab span {
    font-size: 9px;
    font-weight: 700;

    text-transform: uppercase;
}

.parish-day-tab strong {
    font-size: 11px;
}

.parish-day-tab:hover {
    border-color:
        rgba(127,197,166,.35);

    color: #d8e7e0;
}

.parish-day-tab.is-active {
    border-color: #7fc5a6;

    background: #7fc5a6;

    color: #10251c;
}


/* =========================================================
   PANEL
   ========================================================= */

.parish-day-panel {
    display: grid;

    grid-template-columns:
        minmax(0, .92fr)
        minmax(0, 1.08fr);

    overflow: hidden;

    border:
        1px solid
        rgba(255,255,255,.09);

    border-radius: 18px;

    background:
        rgba(5, 22, 15, .18);

    box-shadow:
        0 20px 55px
        rgba(0,0,0,.08);
}

.parish-day-panel[hidden] {
    display: none !important;
}

.parish-liturgy-column,
.parish-intentions-column {
    min-width: 0;

    padding: 35px 38px 37px;
}

.parish-liturgy-column {
    border-right:
        1px solid
        rgba(255,255,255,.08);

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.025),
            transparent
        );
}


/* =========================================================
   COMMON COLUMN
   ========================================================= */

.parish-column-label {
    margin-bottom: 18px;

    color: #7fc5a6;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: .19em;

    text-transform: uppercase;
}


/* =========================================================
   LITURGY
   ========================================================= */

.parish-liturgy-date {
    display: flex;
    align-items: baseline;

    gap: 9px;

    margin-bottom: 17px;
}

.parish-liturgy-date strong {
    color: #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;
}

.parish-liturgy-date span {
    color: #97aaa0;

    font-size: 11px;
}

.parish-liturgy-column h3,
.parish-intentions-column h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-weight: 500;

    color: #ffffff;
}

.parish-liturgy-column h3 {
    font-size: 26px;
    line-height: 1.25;
}


/* color */

.parish-liturgical-color {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-top: 14px;

    color: #9eb0a7;

    font-size: 10px;
}

.parish-liturgical-color strong {
    color: #cbd8d2;
}

.parish-liturgical-dot {
    display: block;

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: #b7b7b7;
}

.parish-liturgical-dot--zielony {
    background: #49926c;
}

.parish-liturgical-dot--biały,
.parish-liturgical-dot--bialy {
    background: #f5f1e4;
}

.parish-liturgical-dot--czerwony {
    background: #bf5353;
}

.parish-liturgical-dot--fioletowy {
    background: #805e98;
}

.parish-liturgical-dot--różowy,
.parish-liturgical-dot--rozowy {
    background: #d895aa;
}


/* readings */

.parish-readings {
    display: grid;

    gap: 0;

    margin: 26px 0 0;
}

.parish-readings > div {
    display: grid;

    grid-template-columns:
        100px
        minmax(0, 1fr);

    gap: 12px;

    padding: 10px 0;

    border-bottom:
        1px solid
        rgba(255,255,255,.065);
}

.parish-readings dt {
    color: #758d81;

    font-size: 9px;
    font-weight: 700;

    text-transform: uppercase;
}

.parish-readings dd {
    margin: 0;

    color: #ccd8d2;

    font-size: 11px;
}


/* gospel quote */

.parish-gospel-quote {
    position: relative;

    margin: 25px 0 0;

    padding:
        23px 25px 21px;

    border:
        1px solid
        rgba(190, 164, 99, .17);

    border-radius: 12px;

    background:
        rgba(190, 164, 99, .055);
}

.parish-gospel-quote > span {
    position: absolute;

    top: 7px;
    left: 15px;

    color:
        rgba(190,164,99,.38);

    font-family: Georgia, serif;

    font-size: 34px;
}

.parish-gospel-quote p {
    margin: 0;

    color: #e0e7e3;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 15px;
    font-style: italic;

    line-height: 1.55;
}

.parish-gospel-quote cite {
    display: block;

    margin-top: 10px;

    color: #ab9b6c;

    font-size: 9px;

    font-style: normal;
}


/* liturgy empty */

.parish-liturgy-empty {
    display: flex;
    align-items: center;

    gap: 13px;

    margin-top: 25px;

    padding: 20px;

    border:
        1px dashed
        rgba(255,255,255,.11);

    border-radius: 12px;

    color: #91a49a;
}

.parish-liturgy-empty span {
    color: #ac9b69;
}

.parish-liturgy-empty p {
    margin: 0;

    font-size: 11px;

    line-height: 1.55;
}


/* =========================================================
   INTENTIONS
   ========================================================= */

.parish-intentions-column h3 {
    margin-bottom: 19px;

    font-size: 22px;
}

.parish-day-intentions {
    display: grid;
}

.parish-day-intention {
    display: grid;

    grid-template-columns:
        72px
        minmax(0, 1fr);

    gap: 18px;

    align-items: start;

    padding: 17px 0;

    border-bottom:
        1px solid
        rgba(255,255,255,.075);
}

.parish-day-intention:first-child {
    border-top:
        1px solid
        rgba(255,255,255,.075);
}

.parish-day-intention time {
    color: #7fc5a6;

    font-size: 17px;
    font-weight: 700;

    line-height: 1.4;
}

.parish-day-intention p {
    margin: 0;

    color: #d8e1dc;

    font-size: 13px;
    line-height: 1.58;
}

.parish-intentions-more {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    margin-top: 22px;

    color: #b8d8ca;

    font-size: 10px;
    font-weight: 750;

    text-decoration: none;
}

.parish-intentions-empty {
    padding: 25px 0;

    color: #8fa098;

    font-size: 11px;
}


/* =========================================================
   WHOLE SECTION EMPTY
   ========================================================= */

.parish-day-empty {
    padding: 40px;

    border:
        1px dashed
        rgba(255,255,255,.11);

    border-radius: 15px;

    color: #90a39a;

    text-align: center;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {

    .parish-day-panel {
        grid-template-columns: 1fr;
    }

    .parish-liturgy-column {
        border-right: 0;

        border-bottom:
            1px solid
            rgba(255,255,255,.08);
    }

}


@media (max-width: 640px) {

    .parish-day-section {
        padding: 62px 0 70px;
    }

    .parish-day-heading {
        align-items: flex-start;

        flex-direction: column;

        gap: 15px;
    }

    .parish-day-heading h2 {
        font-size: 39px;
    }

    .parish-liturgy-column,
    .parish-intentions-column {
        padding:
            25px 20px;
    }

    .parish-readings > div {
        grid-template-columns: 1fr;

        gap: 4px;
    }

    .parish-day-intention {
        grid-template-columns:
            58px
            minmax(0,1fr);

        gap: 12px;
    }

}


/* =========================================================
   LITURGICAL SOURCE
   ========================================================= */

.parish-liturgy-source {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    margin-top: 15px;

    color: #82988d;

    font-size: 9px;
    font-weight: 650;

    line-height: 1.45;

    text-decoration: none;

    transition:
        color .15s ease;
}

.parish-liturgy-source:hover {
    color: #b8d8ca;
}

.parish-liturgy-source span {
    color: #aa9a69;
}


/* =========================================================
   PARISH DAILY QUOTE
   ========================================================= */

.parish-day-quote {
    grid-column: 1 / -1;

    display: grid;

    grid-template-columns:
        62px
        minmax(0, 1fr);

    gap: 23px;

    align-items: start;

    padding:
        29px 38px 31px;

    border-top:
        1px solid
        rgba(255, 255, 255, .08);

    background:
        linear-gradient(
            110deg,
            rgba(180, 157, 101, .075),
            rgba(255, 255, 255, .015) 55%,
            transparent
        );
}

.parish-day-quote-mark {
    color:
        rgba(190, 164, 99, .58);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 64px;
    font-weight: 400;

    line-height: .75;

    text-align: center;
}

.parish-day-quote-content {
    max-width: 850px;
}

.parish-day-quote-label {
    margin:
        0 0 9px;

    color: #7fc5a6;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: .19em;

    text-transform: uppercase;
}

.parish-day-quote blockquote {
    margin: 0;

    color: #eef3f0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;
    font-weight: 400;

    line-height: 1.5;

    letter-spacing: -.015em;
}

.parish-day-quote footer {
    display: flex;
    align-items: center;

    flex-wrap: wrap;

    gap: 8px;

    margin-top: 13px;

    color: #899e93;

    font-size: 10px;
}

.parish-day-quote footer strong {
    color: #c8d8d0;

    font-weight: 700;
}

.parish-day-quote footer span::before {
    content: "·";

    margin-right: 8px;

    color: #aa9a69;
}


@media (max-width: 640px) {

    .parish-day-quote {
        grid-template-columns:
            37px
            minmax(0, 1fr);

        gap: 12px;

        padding:
            25px 20px 27px;
    }

    .parish-day-quote-mark {
        font-size: 48px;
    }

    .parish-day-quote blockquote {
        font-size: 17px;
    }

    .parish-day-quote footer {
        align-items: flex-start;

        flex-direction: column;

        gap: 3px;
    }

    .parish-day-quote footer span::before {
        display: none;
    }
}


/* =========================================================
   HOME DAILY EVENTS — HORIZONTAL
   ========================================================= */

.parish-day-events-horizontal {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 16px;
}

.parish-day-event-horizontal {
    --event-accent: #39745a;
    --event-soft: #edf5f1;

    position: relative;

    display: grid;

    grid-template-columns:
        118px
        minmax(0, 1fr)
        auto;

    gap: 24px;
    align-items: center;

    min-height: 112px;

    padding:
        18px
        22px
        18px
        18px;

    overflow: hidden;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--event-accent) 24%,
            #dfe7e2
        );

    border-radius: 15px;

    background:
        linear-gradient(
            90deg,
            var(--event-soft) 0,
            #fff 25%,
            #fff 100%
        );

    box-shadow:
        0 8px 24px
        rgba(33, 49, 40, .045);
}

.parish-day-event-horizontal::before {
    content: "";

    position: absolute;

    inset:
        0
        auto
        0
        0;

    width: 5px;

    background:
        var(--event-accent);
}

.parish-day-event-date {
    display: grid;
    align-content: center;
    justify-items: center;

    min-height: 72px;

    padding-right: 18px;

    border-right:
        1px solid
        rgba(52, 72, 61, .10);

    text-align: center;
}

.parish-day-event-date span {
    color:
        var(--event-accent);

    font-size: .66rem;
    font-weight: 800;

    letter-spacing: .08em;

    text-transform: uppercase;
}

.parish-day-event-date strong {
    margin-top: 2px;

    color: #26362d;

    font-size: 1.8rem;
    font-weight: 820;

    line-height: 1;
}

.parish-day-event-date small {
    margin-top: 4px;

    color: #7f8c84;

    font-size: .66rem;
    font-weight: 700;
}

.parish-day-event-main {
    min-width: 0;
}

.parish-day-event-meta {
    display: flex;
    flex-wrap: wrap;

    gap: 6px 12px;

    margin-bottom: 5px;

    color:
        var(--event-accent);

    font-size: .72rem;
    font-weight: 750;
}

.parish-day-event-meta span + span::before,
.parish-day-event-meta time + span::before {
    content: "·";

    margin-right: 12px;

    color: #a4aea8;
}

.parish-day-event-horizontal h3 {
    margin: 0;

    color: #26352c;

    font-size:
        clamp(
            1rem,
            1.7vw,
            1.25rem
        );

    line-height: 1.25;
}

.parish-day-event-horizontal p {
    max-width: 760px;

    margin:
        6px
        0
        0;

    color: #69766f;

    font-size: .82rem;

    line-height: 1.55;
}

.parish-day-event-action {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.parish-day-event-action a {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    min-height: 39px;

    padding:
        0
        14px;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--event-accent) 32%,
            #d4ddd7
        );

    border-radius: 9px;

    background: #fff;

    color:
        var(--event-accent);

    font-size: .74rem;
    font-weight: 800;

    text-decoration: none;

    white-space: nowrap;
}

.parish-day-event-action a:hover {
    background:
        var(--event-soft);
}


/* EVENT COLORS */

.parish-day-event-horizontal.event-color--green {
    --event-accent: #36745a;
    --event-soft: #eaf4ef;
}

.parish-day-event-horizontal.event-color--blue {
    --event-accent: #3972a9;
    --event-soft: #eaf2fa;
}

.parish-day-event-horizontal.event-color--purple {
    --event-accent: #7655a5;
    --event-soft: #f1ecf8;
}

.parish-day-event-horizontal.event-color--amber {
    --event-accent: #a66b18;
    --event-soft: #fbf2df;
}

.parish-day-event-horizontal.event-color--red {
    --event-accent: #ad4a46;
    --event-soft: #faeceb;
}

.parish-day-event-horizontal.event-color--gray {
    --event-accent: #667085;
    --event-soft: #f0f2f4;
}


@media (max-width: 800px) {

    .parish-day-event-horizontal {
        grid-template-columns:
            82px
            minmax(0, 1fr);

        gap: 16px;

        padding:
            16px;
    }

    .parish-day-event-date {
        padding-right: 12px;
    }

    .parish-day-event-action {
        grid-column:
            1
            /
            -1;

        justify-content:
            flex-end;

        padding-left:
            98px;
    }
}


@media (max-width: 520px) {

    .parish-day-event-horizontal {
        grid-template-columns: 1fr;

        gap: 12px;
    }

    .parish-day-event-date {
        display: flex;
        align-items: center;
        justify-content: flex-start;

        gap: 8px;

        min-height: 0;

        padding:
            0
            0
            10px;

        border-right: 0;

        border-bottom:
            1px solid
            rgba(52, 72, 61, .10);

        text-align: left;
    }

    .parish-day-event-date strong {
        margin: 0;

        font-size: 1.15rem;
    }

    .parish-day-event-date small {
        margin: 0;
    }

    .parish-day-event-action {
        grid-column: auto;

        justify-content:
            flex-start;

        padding-left: 0;
    }

}

/* =========================================================
   INTENTIONS LOCATION GROUPS 3.0
   ========================================================= */

.parish-intention-location {
    display: flex;
    align-items: center;
    gap: 7px;

    margin: 15px 0 7px;
    padding: 7px 10px;

    border-radius: 8px;

    background: #eef5f1;
    color: #426452;

    font-size: .68rem;
    font-weight: 800;

    letter-spacing: .035em;
    text-transform: uppercase;
}

.parish-intention-location:first-child {
    margin-top: 2px;
}

.parish-intention-location span {
    color: #638170;
}

.parish-intention-location.is-outside {
    background: #f4f1ea;
    color: #756449;
}

.parish-intention-location.is-outside span {
    color: #927c57;
}

.parish-day-intention.is-outside {
    background: rgba(244, 241, 234, .44);
}

.parish-intention-no-time {
    display: flex;
    align-items: flex-start;
    justify-content: center;

    min-width: 46px;
    padding-top: 2px;

    color: #9a8463;

    font-size: 1rem;
    font-weight: 800;
}


/* =========================================================
   INTENTIONS 3.1 — LOCATION + MASS SERVICE GROUPS
   ========================================================= */

.parish-intention-location {
    margin:
        15px
        0
        7px;

    padding:
        7px
        10px;

    border-radius: 8px;

    background: #edf4f0;

    color: #40624f;

    font-size: .67rem;
    font-weight: 850;

    letter-spacing: .045em;

    text-transform: uppercase;
}

.parish-intention-location:first-child {
    margin-top: 2px;
}

.parish-intention-location.is-outside {
    background: #f4f0e8;

    color: #806b4d;
}


.parish-mass-service-group {
    display: grid;

    grid-template-columns:
        62px
        minmax(0, 1fr);

    gap: 12px;

    margin-bottom: 8px;

    padding:
        10px
        11px;

    border: 1px solid #e3e9e5;

    border-radius: 10px;

    background: #fff;
}


.parish-mass-service-group.is-outside {
    border-color: #e9e1d4;

    background: #fcfaf7;
}


.parish-mass-service-time {
    display: flex;

    align-items: flex-start;
    justify-content: center;
}


.parish-mass-service-time time {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-width: 48px;

    padding:
        6px
        7px;

    border-radius: 7px;

    background: #e8f1ec;

    color: #315f49;

    font-size: .72rem;
    font-weight: 850;
}


.parish-mass-service-time span {
    display: block;

    color: #927b59;

    font-size: .61rem;
    font-weight: 750;

    line-height: 1.2;
    text-align: center;
}


.parish-mass-intention-list {
    margin: 0;

    padding:
        0
        0
        0
        18px;
}


.parish-mass-intention-list li {
    margin:
        0
        0
        7px;

    color: #445149;

    font-size: .78rem;

    line-height: 1.5;
}


.parish-mass-intention-list li:last-child {
    margin-bottom: 0;
}


.parish-mass-intention-list li::marker {
    color: #698273;
}


@media (max-width: 560px) {

    .parish-mass-service-group {
        grid-template-columns:
            54px
            minmax(0, 1fr);

        gap: 8px;
    }

}


/* =========================================================
   INTENCJE — DARK INTEGRATED DESIGN
   2026-09-23
   ========================================================= */

/*
 * Prawa część ma wyglądać jak część jednej ciemnej karty,
 * a nie osobny biały moduł.
 */

.parish-intentions-column {
    position: relative;

    min-width: 0;

    padding:
        46px
        46px
        42px;

    background:
        linear-gradient(
            180deg,
            rgba(255, 255, 255, .018) 0%,
            rgba(255, 255, 255, .006) 100%
        );
}


/*
 * Nagłówek prawej kolumny
 */

.parish-intentions-column .parish-column-label {
    margin-bottom: 20px;

    color: #75d2aa;

    font-size: 11px;
    font-weight: 850;

    letter-spacing: .16em;
    text-transform: uppercase;
}


.parish-intentions-column > h3 {
    margin:
        0
        0
        28px;

    color: #f5f7f5;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(
            27px,
            2.1vw,
            37px
        );

    font-weight: 600;

    line-height: 1.08;
}


/*
 * MIEJSCOWOŚĆ
 *
 * Rezygnujemy z dużej białej belki.
 * Powstaje elegancki nagłówek grupy.
 */

.parish-intention-location {
    display: flex;

    align-items: center;

    gap: 12px;

    width: auto;

    margin:
        27px
        0
        10px;

    padding: 0;

    border: 0;

    border-radius: 0;

    background: transparent;

    color: #9bbcad;

    font-size: 11px;
    font-weight: 850;

    letter-spacing: .11em;
    text-transform: uppercase;
}


.parish-intention-location:first-child {
    margin-top: 0;
}


.parish-intention-location::after {
    content: "";

    flex: 1 1 auto;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            rgba(128, 180, 155, .38),
            rgba(128, 180, 155, .04)
        );
}


/*
 * POZA PARAFIĄ — lekki ciepły akcent,
 * ale nadal we wspólnym ciemnym designie.
 */

.parish-intention-location.is-outside {
    background: transparent;

    color: #c7b58f;
}


.parish-intention-location.is-outside::after {
    background:
        linear-gradient(
            90deg,
            rgba(199, 181, 143, .42),
            rgba(199, 181, 143, .04)
        );
}


/*
 * KARTA JEDNEJ MSZY
 *
 * Koniec z białymi prostokątami.
 */

.parish-mass-service-group {
    display: grid;

    grid-template-columns:
        76px
        minmax(0, 1fr);

    gap: 17px;

    align-items: start;

    margin:
        0
        0
        8px;

    padding:
        15px
        17px;

    border:
        1px solid
        rgba(159, 197, 179, .14);

    border-radius: 12px;

    background:
        rgba(255, 255, 255, .035);

    box-shadow:
        inset 0 1px 0
        rgba(255, 255, 255, .025);

    transition:
        border-color .18s ease,
        background .18s ease;
}


.parish-mass-service-group:hover {
    border-color:
        rgba(133, 207, 172, .25);

    background:
        rgba(255, 255, 255, .05);
}


/*
 * Poza parafią
 */

.parish-mass-service-group.is-outside {
    border-color:
        rgba(199, 181, 143, .15);

    background:
        rgba(199, 181, 143, .035);
}


.parish-mass-service-group.is-outside:hover {
    border-color:
        rgba(199, 181, 143, .26);

    background:
        rgba(199, 181, 143, .05);
}


/*
 * GODZINA
 */

.parish-mass-service-time {
    display: flex;

    align-items: flex-start;
    justify-content: flex-start;

    padding-top: 1px;
}


.parish-mass-service-time time {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-width: 58px;

    padding:
        7px
        9px;

    border:
        1px solid
        rgba(117, 210, 170, .13);

    border-radius: 8px;

    background:
        rgba(117, 210, 170, .09);

    color: #8fd9b8;

    font-size: 13px;
    font-weight: 850;

    line-height: 1;

    letter-spacing: .015em;
}


/*
 * Poza parafią nie potrzebuje wielkiego badge.
 */

.parish-mass-service-time span {
    display: block;

    padding:
        6px
        0;

    color: #bca77e;

    font-size: 10px;
    font-weight: 800;

    line-height: 1.25;

    text-align: left;

    text-transform: uppercase;
    letter-spacing: .03em;
}


/*
 * LISTA INTENCJI
 */

.parish-mass-intention-list {
    display: grid;

    gap: 0;

    margin: 0;

    padding: 0;

    list-style: none;
}


.parish-mass-intention-list li {
    position: relative;

    margin: 0;

    padding:
        6px
        0
        6px
        18px;

    color:
        rgba(
            238,
            244,
            240,
            .88
        );

    font-size: 14px;

    line-height: 1.48;
}


.parish-mass-intention-list li + li {
    border-top:
        1px solid
        rgba(255, 255, 255, .045);
}


.parish-mass-intention-list li::before {
    content: "";

    position: absolute;

    left: 1px;
    top: 13px;

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: #73c8a3;

    box-shadow:
        0 0 0 3px
        rgba(115, 200, 163, .07);
}


.parish-mass-intention-list li::marker {
    content: "";
}


/*
 * Poza parafią — subtelnie inny marker.
 */

.parish-mass-service-group.is-outside
.parish-mass-intention-list li::before {
    background: #bba57a;

    box-shadow:
        0 0 0 3px
        rgba(187, 165, 122, .06);
}


/*
 * Przycisk "Wszystkie intencje" na dole kolumny
 */

.parish-intentions-column .parish-day-all {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    margin-top: 23px;

    color: #92d4b7;

    font-size: 12px;
    font-weight: 750;

    text-decoration: none;

    transition:
        color .18s ease,
        transform .18s ease;
}


.parish-intentions-column .parish-day-all:hover {
    color: #c5ead9;

    transform: translateX(2px);
}


/*
 * Delikatna linia między kolumnami.
 */

.parish-day-panel {
    overflow: hidden;
}


.parish-liturgy-column {
    position: relative;
}


.parish-liturgy-column::after {
    content: "";

    position: absolute;

    top: 0;
    right: -1px;
    bottom: 0;

    width: 1px;

    background:
        linear-gradient(
            180deg,
            rgba(154, 194, 175, .04),
            rgba(154, 194, 175, .18) 16%,
            rgba(154, 194, 175, .12) 84%,
            rgba(154, 194, 175, .03)
        );
}


/*
 * Desktop — prawa kolumna nie powinna dominować
 * wizualnie przez białe powierzchnie.
 */

@media (min-width: 981px) {

    .parish-day-panel {
        grid-template-columns:
            minmax(0, .96fr)
            minmax(0, 1.04fr);
    }

}


/*
 * Tablet
 */

@media (max-width: 980px) {

    .parish-intentions-column {
        padding:
            34px
            30px
            34px;
    }

    .parish-liturgy-column::after {
        top: auto;
        right: 0;
        bottom: -1px;
        left: 0;

        width: auto;
        height: 1px;
    }

}


/*
 * Mobile
 */

@media (max-width: 620px) {

    .parish-intentions-column {
        padding:
            27px
            19px
            28px;
    }


    .parish-intentions-column > h3 {
        margin-bottom: 22px;

        font-size: 27px;
    }


    .parish-intention-location {
        margin-top: 23px;
    }


    .parish-mass-service-group {
        grid-template-columns:
            62px
            minmax(0, 1fr);

        gap: 10px;

        padding:
            13px
            12px;
    }


    .parish-mass-service-time time {
        min-width: 52px;

        padding:
            6px
            7px;

        font-size: 12px;
    }


    .parish-mass-intention-list li {
        padding:
            5px
            0
            5px
            15px;

        font-size: 13px;
    }


    .parish-mass-intention-list li::before {
        top: 12px;

        width: 4px;
        height: 4px;
    }

}


/* =========================================================
   INTENTIONS COMPACT NATIVE v2
   ========================================================= */

/*
 * Prawa kolumna ma korzystać z istniejącego
 * zielonego tła całego modułu.
 */

.parish-intentions-column {
    min-height: 0 !important;

    padding:
        44px
        46px
        30px !important;

    background: transparent !important;
}


/*
 * Awaryjnie ukrywamy stary nagłówek daty,
 * gdyby został jeszcze w HTML z innego wariantu.
 */

.parish-intentions-column > h3 {
    display: none !important;
}


.parish-intentions-column
.parish-column-label {
    margin-bottom: 18px !important;
}


/* =========================================================
   MIEJSCOWOŚĆ
   ========================================================= */

.parish-intention-location {
    display: flex !important;

    align-items: center;

    gap: 12px;

    margin:
        15px
        0
        4px !important;

    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;

    color:
        rgba(
            255,
            255,
            255,
            .68
        ) !important;

    font-size: 11px !important;
    font-weight: 700 !important;

    line-height: 1.2;

    letter-spacing: .09em;

    text-transform: uppercase;
}


.parish-intention-location:first-child {
    margin-top: 0 !important;
}


/*
 * Ta linia zostaje — wygląda dobrze
 * i porządkuje miejscowości.
 */

.parish-intention-location::after {
    content: "";

    flex: 1 1 auto;

    height: 1px;

    background:
        rgba(
            255,
            255,
            255,
            .13
        ) !important;
}


/*
 * Poza parafią bez osobnego koloru.
 */

.parish-intention-location.is-outside {
    background: transparent !important;

    color:
        rgba(
            255,
            255,
            255,
            .68
        ) !important;
}


.parish-intention-location.is-outside::after {
    background:
        rgba(
            255,
            255,
            255,
            .13
        ) !important;
}


/* =========================================================
   JEDNA GODZINA = JEDNA GRUPA
   ========================================================= */

.parish-mass-service-group {
    display: grid !important;

    grid-template-columns:
        58px
        minmax(0, 1fr) !important;

    gap: 13px !important;

    align-items: start;

    margin: 0 !important;

    padding:
        8px
        0 !important;

    border: 0 !important;

    border-bottom:
        1px solid
        rgba(
            255,
            255,
            255,
            .075
        ) !important;

    border-radius: 0 !important;

    background: transparent !important;

    box-shadow: none !important;
}


.parish-mass-service-group:hover {
    border-color:
        rgba(
            255,
            255,
            255,
            .075
        ) !important;

    background: transparent !important;
}


/*
 * Ostatnie cienkie oddzielenie może zostać.
 * Dzięki temu całość jest bardzo czytelna.
 */


/* =========================================================
   GODZINA — ZWYKŁY TEKST
   ========================================================= */

.parish-mass-service-time {
    display: block !important;

    padding:
        2px
        0
        0 !important;
}


.parish-mass-service-time time {
    display: block !important;

    min-width: 0 !important;

    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;

    color:
        rgba(
            255,
            255,
            255,
            .92
        ) !important;

    font-size: 14px !important;
    font-weight: 600 !important;

    line-height: 1.45 !important;

    letter-spacing: 0 !important;
}


/* =========================================================
   INTENCJE — BEZ KROPEK / BEZ BUDKI
   ========================================================= */

.parish-mass-intention-list {
    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

    list-style: none !important;
}


.parish-mass-intention-list li {
    position: static !important;

    margin: 0 !important;

    padding:
        2px
        0 !important;

    border: 0 !important;

    color:
        rgba(
            255,
            255,
            255,
            .90
        ) !important;

    font-family:
        inherit !important;

    font-size: 14px !important;
    font-weight: 400 !important;

    line-height: 1.42 !important;
}


/*
 * Między kilkoma intencjami tej samej Mszy
 * zostaje bardzo delikatne oddzielenie.
 */

.parish-mass-intention-list li + li {
    margin-top: 3px !important;

    padding-top: 5px !important;

    border-top:
        1px solid
        rgba(
            255,
            255,
            255,
            .045
        ) !important;
}


/*
 * Całkowicie usuwamy zielone kropki.
 */

.parish-mass-intention-list li::before,
.parish-mass-intention-list li::after {
    display: none !important;

    content: none !important;
}


.parish-mass-intention-list li::marker {
    content: "" !important;
}


/* =========================================================
   POZA PARAFIĄ
   ========================================================= */

/*
 * Nie potrzebujemy napisu "bez godziny".
 * Sam nagłówek POZA PARAFIĄ wszystko wyjaśnia.
 */

.parish-mass-service-group.is-outside {
    display: block !important;

    padding:
        7px
        0 !important;

    border-color:
        rgba(
            255,
            255,
            255,
            .075
        ) !important;

    background: transparent !important;
}


.parish-mass-service-group.is-outside
.parish-mass-service-time {
    display: none !important;
}


.parish-mass-service-group.is-outside
.parish-mass-intention-list li {
    color:
        rgba(
            255,
            255,
            255,
            .88
        ) !important;
}


/* =========================================================
   LINK
   ========================================================= */

.parish-intentions-column
.parish-day-all {
    margin-top: 14px !important;
}


/* =========================================================
   CAŁA KARTA — BEZ SZTUCZNEJ WYSOKOŚCI
   ========================================================= */

.parish-day-panel {
    min-height: 0 !important;

    align-items: stretch;
}


.parish-liturgy-column,
.parish-intentions-column {
    min-height: 0 !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 980px) {

    .parish-intentions-column {
        padding:
            30px
            28px
            27px !important;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 620px) {

    .parish-intentions-column {
        padding:
            25px
            18px
            24px !important;
    }


    .parish-mass-service-group {
        grid-template-columns:
            52px
            minmax(0, 1fr) !important;

        gap: 9px !important;

        padding:
            7px
            0 !important;
    }


    .parish-mass-service-time time {
        font-size: 13px !important;
    }


    .parish-mass-intention-list li {
        font-size: 13px !important;

        line-height: 1.4 !important;
    }

}


/* =========================================================
   LITURGY + QUOTE BALANCE
   2026-09-23
   ========================================================= */


/*
 * LITURGIA DNIA i INTENCJE MSZALNE
 * — dokładnie ten sam styl.
 */

.parish-liturgy-column
> .parish-column-label,

.parish-intentions-column
> .parish-column-label {
    margin-bottom: 18px !important;

    color: #75d2aa !important;

    font-size: 12px !important;
    font-weight: 800 !important;

    line-height: 1.2 !important;

    letter-spacing: .15em !important;

    text-transform: uppercase !important;
}


/* =========================================================
   CYTAT DNIA — POD LITURGIĄ
   ========================================================= */

.parish-liturgy-column
.parish-day-quote {
    display: grid !important;

    grid-template-columns:
        34px
        minmax(0, 1fr) !important;

    gap: 13px !important;

    width: auto !important;

    margin:
        30px
        0
        0 !important;

    padding:
        20px
        0
        0 !important;

    border: 0 !important;

    border-top:
        1px solid
        rgba(
            255,
            255,
            255,
            .11
        ) !important;

    border-radius: 0 !important;

    background: transparent !important;

    box-shadow: none !important;
}


/*
 * Znak cudzysłowu ma być dekoracją,
 * a nie wielkim osobnym kaflem.
 */

.parish-liturgy-column
.parish-day-quote-mark {
    display: block !important;

    width: auto !important;
    height: auto !important;

    margin: -4px 0 0 !important;

    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;

    color:
        rgba(
            117,
            210,
            170,
            .62
        ) !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif !important;

    font-size: 38px !important;
    font-weight: 400 !important;

    line-height: .9 !important;
}


/*
 * Treść cytatu.
 */

.parish-liturgy-column
.parish-day-quote-content {
    min-width: 0;
}


.parish-liturgy-column
.parish-day-quote-label {
    margin:
        0
        0
        7px !important;

    color:
        rgba(
            117,
            210,
            170,
            .82
        ) !important;

    font-size: 10px !important;
    font-weight: 800 !important;

    line-height: 1.2 !important;

    letter-spacing: .12em !important;

    text-transform: uppercase !important;
}


.parish-liturgy-column
.parish-day-quote blockquote {
    margin: 0 !important;

    padding: 0 !important;

    border: 0 !important;

    color:
        rgba(
            255,
            255,
            255,
            .90
        ) !important;

    font-family:
        inherit !important;

    font-size: 14px !important;
    font-style: italic !important;
    font-weight: 400 !important;

    line-height: 1.55 !important;
}


.parish-liturgy-column
.parish-day-quote footer {
    display: flex !important;

    flex-wrap: wrap;

    gap:
        3px
        9px !important;

    align-items: center;

    margin-top: 8px !important;

    padding: 0 !important;

    border: 0 !important;
}


.parish-liturgy-column
.parish-day-quote footer strong {
    color:
        rgba(
            255,
            255,
            255,
            .72
        ) !important;

    font-size: 11px !important;
    font-weight: 650 !important;
}


.parish-liturgy-column
.parish-day-quote footer span {
    color:
        rgba(
            255,
            255,
            255,
            .43
        ) !important;

    font-size: 10px !important;
}


.parish-liturgy-column
.parish-day-quote footer span::before {
    content: "·" !important;

    margin-right: 9px;
}


/* =========================================================
   LEWA KOLUMNA — trochę lepsze wykorzystanie przestrzeni
   ========================================================= */

.parish-liturgy-column {
    display: flex;

    flex-direction: column;
}


.parish-liturgy-column
.parish-day-quote {
    margin-top: 28px !important;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 620px) {

    .parish-liturgy-column
    > .parish-column-label,

    .parish-intentions-column
    > .parish-column-label {
        font-size: 11px !important;
    }


    .parish-liturgy-column
    .parish-day-quote {
        grid-template-columns:
            26px
            minmax(0, 1fr) !important;

        gap: 10px !important;

        margin-top: 24px !important;

        padding-top: 17px !important;
    }


    .parish-liturgy-column
    .parish-day-quote-mark {
        font-size: 31px !important;
    }


    .parish-liturgy-column
    .parish-day-quote blockquote {
        font-size: 13px !important;
    }

}
