/* Scoped after Bootstrap and the shared styles: one layout for package selection. */
body { font-family: "PeydaWebFaNum", sans-serif; }
/* Bootstrap's wide gutters otherwise push the shared footer beyond tablet screens. */
.mainFooter .mainFooter__topSide > .row { margin-inline: 0; }
.packageSelectPage.container {
    width: 100%;
    max-width: 1480px;
    padding-inline: 24px;
}
.packageSelectPage .select-package-background {
    margin: 32px 0 64px;
    padding: 0;
    direction: rtl;
}
.packageSelectPage .package-heading { margin: 0 auto 32px; text-align: center; }
.packageSelectPage .package-heading h1 { font-size: clamp(24px, 2.3vw, 34px); margin-bottom: 12px; }
.packageSelectPage .packagePage__lead { font-size: 16px; line-height: 1.9; }
.packageSelectPage .package-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    align-items: start;
    max-width: 1400px;
    margin-inline: auto;
}
.packageSelectPage .package { min-width: 0; padding: 0 !important; }
.packageSelectPage .package-selection-card {
    display: block;
    position: relative;
    container-type: inline-size;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0 0 20px 20px;
    background: transparent;
    box-shadow: none;
    overflow: hidden;
    cursor: pointer;
    transition: transform .2s;
    font-family: "PeydaWebFaNum", sans-serif;
}
.packageSelectPage .package-selection-card:hover { transform: translateY(-4px); box-shadow: none; }
.packageSelectPage .package-selection-link {
    display: block;
    position: relative;
    width: 100%;
    color: inherit;
    text-decoration: none;
}
.packageSelectPage .package-selection-link:focus-visible { outline: 3px solid #ff4000; outline-offset: 4px; }
.packageSelectPage .package-backend-image {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 434 / 680;
    object-fit: contain;
    object-position: top;
    border-radius: 0;
}
.packageSelectPage .package-price-overlay {
    position: absolute;
    inset: auto 0 0;
    height: 11.18%;
    min-height: 0;
    padding: 0 5%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3%;
    background: #1b2466;
    border: 0;
    border-radius: 0 0 20px 20px;
    box-shadow: none;
    color: #fff;
    white-space: nowrap;
}
.packageSelectPage .package-price-label { color: #ff9b7a; font-size: clamp(13px, 4.8cqw, 20px); font-weight: 700; }
.packageSelectPage .package-price-value { color: #fff; font-size: clamp(22px, 8cqw, 34px); font-weight: 800; line-height: 1.2; direction: ltr; }
.packageSelectPage .package-price-unit { color: #fff; font-size: clamp(11px, 3.7cqw, 16px); line-height: 1.3; }
.packageSelectPage .modal-body.row { margin: 0; row-gap: 16px; }
.packageSelectPage .modal-body .card { width: 100% !important; height: 100%; padding: 16px; }
.packageSelectPage .modal-body .card-img-top { width: 96px; height: 96px; object-fit: contain; margin: 0 auto; }
.packageSelectPage .modal-body .card-title { font-size: 16px; text-align: center; }
@media (max-width: 1279.98px) {
    .packageSelectPage .package-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 864px; }
}
@media (max-width: 639.98px) {
    .packageSelectPage.container { padding-inline: 16px; }
    .packageSelectPage .package-grid { grid-template-columns: minmax(0, 1fr); max-width: 400px; gap: 28px; }
    .packageSelectPage .packagePage__lead { font-size: 14px; }
    .packageSelectPage .package-heading h1:before, .packageSelectPage .package-heading h1:after { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .packageSelectPage .package-selection-card { transition: none; }
}
