/* Loty krajowe v3 — spokojniejsza prezentacja, korekty QSF, mapy i kart. */

/* QSF: pola i logika pozostają bez zmian; ograniczona jest tylko ostatnia kolumna. */
@media (min-width: 1181px) {
    .domestic-search .search-form {
        grid-template-columns:
            minmax(0, 1.4fr) 44px minmax(0, 1.4fr)
            minmax(132px, .9fr) minmax(132px, .9fr)
            minmax(148px, .95fr) minmax(148px, 166px);
        max-width: 100%;
    }
}

@media (min-width: 901px) and (max-width: 1180px) {
    .domestic-search .search-form {
        grid-template-columns:
            minmax(0, 1.15fr) 40px minmax(0, 1.15fr)
            minmax(112px, .8fr) minmax(112px, .8fr)
            minmax(126px, .85fr) minmax(136px, 152px);
        max-width: 100%;
    }
}

@media (min-width: 701px) and (max-width: 900px) {
    .domestic-search .search-form {
        grid-template-columns: 1fr 1fr;
        max-width: 100%;
    }
}

@media (min-width: 701px) {
    .domestic-search .search-button {
        box-sizing: border-box;
        justify-self: stretch;
        min-width: 0;
        width: 100%;
        max-width: 100%;
        padding-inline: 10px;
    }
}

/* Profesjonalny znak samolotu w relacji GDN–KRK. */
.domestic-hero__route > b.domestic-hero__plane img {
    display: block;
    width: 27px;
    height: 27px;
    transform: rotate(-8deg);
}

/* Jednolita, spokojna paleta kart ofert. */
.domestic-deal-grid { gap: 14px; }

.domestic-deal {
    min-height: 282px;
    border-color: #d9e5f3;
    background: #fff;
    box-shadow: 0 8px 20px rgba(19, 57, 103, .055);
}

.domestic-deal:hover {
    border-color: #9bbce1;
    box-shadow: 0 13px 26px rgba(19, 57, 103, .09);
    transform: translateY(-2px);
}

.domestic-deal__image {
    position: relative;
    height: 94px;
    background: #dce8f5;
    isolation: isolate;
}

.domestic-deal__image::after {
    position: absolute;
    inset: 0;
    z-index: 1;
    content: "";
    background: linear-gradient(180deg, rgba(15, 68, 133, .05), rgba(15, 68, 133, .19));
    pointer-events: none;
}

.domestic-deal__image img {
    filter: saturate(.48) contrast(.94) brightness(1.03);
}

.domestic-deal:hover .domestic-deal__image img {
    transform: scale(1.025);
}

.domestic-deal__codes {
    margin-top: 11px;
}

.domestic-deal__codes b {
    min-width: 50px;
    padding: 7px 6px;
    border-color: #d6e4f3;
    border-radius: 9px;
    color: #194f96;
    background: #f5f8fc;
    box-shadow: none;
}

.domestic-deal__codes i { border-color: #c1d2e6; }
.domestic-deal__codes svg { fill: #4b79b7; width: 18px; height: 18px; }

.domestic-deal__badge {
    margin-top: 8px;
    border-color: #d4e2f2;
    color: #35679f;
    background: #f2f7fc;
}

.domestic-deal__cities {
    margin-top: 8px;
    color: #173d70;
    font-size: .96rem;
}

.domestic-deal__meta strong { color: #175daf; }

.domestic-deal__cta {
    color: #285f9f;
    border-top-color: #e5edf6;
}

/* Prawdziwy kontur Polski — punkty skalibrowane do położenia portów. */
.domestic-map__point[data-code="SZZ"] { --map-x: 24% !important; --map-y: 25% !important; }
.domestic-map__point[data-code="GDN"] { --map-x: 48% !important; --map-y: 13% !important; }
.domestic-map__point[data-code="SZY"] { --map-x: 67% !important; --map-y: 24% !important; }
.domestic-map__point[data-code="BZG"] { --map-x: 41% !important; --map-y: 34% !important; }
.domestic-map__point[data-code="POZ"] { --map-x: 31% !important; --map-y: 45% !important; }
.domestic-map__point[data-code="IEG"] { --map-x: 27% !important; --map-y: 56% !important; }
.domestic-map__point[data-code="WRO"] { --map-x: 39% !important; --map-y: 66% !important; }
.domestic-map__point[data-code="LCJ"] { --map-x: 53% !important; --map-y: 55% !important; }
.domestic-map__point[data-code="WAW"] { --map-x: 63% !important; --map-y: 47% !important; }
.domestic-map__point[data-code="RDO"] { --map-x: 66% !important; --map-y: 61% !important; }
.domestic-map__point[data-code="KTW"] { --map-x: 55% !important; --map-y: 75% !important; }
.domestic-map__point[data-code="KRK"] { --map-x: 62% !important; --map-y: 83% !important; }
.domestic-map__point[data-code="LUZ"] { --map-x: 73% !important; --map-y: 58% !important; }
.domestic-map__point[data-code="RZE"] { --map-x: 73% !important; --map-y: 79% !important; }

/* Sekcja miast: jeden stonowany kadr, pozostałe pozycje jako lekkie kafle. */
.domestic-origin-feature {
    border-color: #d6e3f1;
    background: #fff;
    box-shadow: 0 8px 22px rgba(18, 57, 105, .045);
}

.domestic-origin-feature__lead {
    color: #123e78;
    background: #eef4fb;
    border-right: 1px solid #d9e5f2;
}

.domestic-origin-feature__lead small { color: #2f67a8; }
.domestic-origin-feature__lead b { color: #173f72; }

.domestic-origin-feature > img {
    filter: saturate(.42) contrast(.94) brightness(1.04);
}

.domestic-origin-feature__city > b {
    color: #245d9f;
    background: #f5f8fc;
    box-shadow: none;
}

.domestic-origin-feature__routes em { color: #1d609f; }

.domestic-origin-feature__cta {
    color: #235c9d;
    background: #f8fafc;
}

.domestic-origin-grid {
    gap: 12px;
}

.domestic-origin-grid a {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    min-height: 112px;
    border-color: #dbe6f2;
    background: #fff;
    box-shadow: 0 7px 18px rgba(18, 57, 105, .04);
}

.domestic-origin-grid a:hover {
    border-color: #a9c4e3;
    box-shadow: 0 10px 22px rgba(18, 57, 105, .075);
}

.domestic-origin-grid a > .domestic-origin-grid__code {
    align-items: center;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    width: auto;
    height: auto;
    min-height: 110px;
    border-radius: 0;
    color: #174f91;
    background: #f1f6fc;
}

.domestic-origin-grid__code b {
    font-size: .78rem;
    letter-spacing: .035em;
}

.domestic-origin-grid__code img {
    box-sizing: border-box;
    width: 30px;
    height: 30px;
    padding: 7px;
    border-radius: 50%;
    background: #3569ac;
}

.domestic-origin-grid a > .domestic-origin-grid__copy {
    align-self: stretch;
    min-width: 0;
    min-height: 110px;
    padding: 17px 34px 15px 15px;
    background: #fff;
}

.domestic-origin-grid__copy small { color: #7889a0; }
.domestic-origin-grid__copy strong { color: #173c6d; }

.domestic-origin-grid__copy em {
    margin-top: 8px;
    color: #285f9f;
    font-size: .79rem;
}

.domestic-origin-grid__copy > i {
    right: 13px;
    bottom: 14px;
    color: #6684aa;
}

/* Tooltip jest generowany klasami wspólnego kalendarza Latamy.pl. */
.domestic-calendar-grid > a[data-domestic-day-tooltip] { cursor: pointer; }

@media (max-width: 1180px) {
    .domestic-origin-grid a {
        grid-template-columns: 64px minmax(0, 1fr);
    }
}

@media (max-width: 700px) {
    .domestic-deal {
        min-height: 278px;
    }

    .domestic-deal__image { height: 92px; }

    .domestic-origin-feature__lead {
        border-right: 1px solid #d9e5f2;
    }

    .domestic-origin-grid a {
        grid-template-columns: 64px minmax(0, 1fr);
        flex: 0 0 74%;
        min-height: 110px;
    }
}
