/* Tenant-editable customization layer. Compiled JR theme styles load first. */
.jr-collection-card__meta { background: var(--jr-orange); }
.jr-collection-card:hover .jr-collection-card__meta,
.jr-collection-card:focus-within .jr-collection-card__meta { background: var(--jr-sky); }
.jr-collection-card__detail:hover,
.jr-collection-card__detail:focus-visible { color: var(--jr-sky); }
.jr-collection-card__book i { background: var(--jr-sky); }
.jr-collection-card__book.btn:hover,
.jr-collection-card__book.btn:focus-visible { color: #fff; background: var(--jr-sky); border-color: var(--jr-sky); }
.jr-collection-card__book.btn:hover i,
.jr-collection-card__book.btn:focus-visible i { color: var(--jr-sky); background: #fff; }

/* JR tariff cards and car-rental editorial layouts. */
.jr-tariff-section { overflow: hidden; background: #fff; }
.jr-tariff-section__heading { max-width: 50rem; margin: 0 auto 2rem; }
.jr-tariff-section__heading .jr-eyebrow { margin-bottom: .35rem; color: var(--jr-orange); }
.jr-tariff-section__heading h2 { margin: 0; color: var(--jr-ink); font-size: clamp(2rem,4vw,2.75rem); }
.jr-tariff-section__heading > p:last-child:not(.jr-eyebrow) { margin: .7rem auto 0; color: var(--jr-muted); line-height: 1.75; }
.jr-tariff-grid { margin-top: .25rem; }
.jr-tariff-card { display: flex; padding: 1rem; flex-direction: column; background: #fff; border: 1px dashed rgba(29,35,31,.5); border-radius: 1.75rem; box-shadow: 0 .45rem 1.4rem rgba(23,39,93,.06); transition: transform .3s ease,box-shadow .3s ease,border-color .3s ease; }
.jr-tariff-card:hover, .jr-tariff-card:focus-within { border-color: var(--jr-sky); box-shadow: 0 .75rem 1.8rem rgba(23,39,93,.12); transform: translateY(-.2rem); }
.jr-tariff-card__main { display: grid; flex: 1; grid-template-columns: minmax(9rem,38%) minmax(0,62%); gap: 1rem; }
.jr-tariff-card__vehicle { display: flex; min-width: 0; align-items: center; flex-direction: column; justify-content: flex-start; padding: .35rem .25rem; text-align: center; }
.jr-tariff-card__vehicle img { display: block; width: 100%; aspect-ratio: 215/130; margin: 0 auto .8rem; object-fit: contain; }
.jr-tariff-card__vehicle h3 { margin: 0; color: var(--jr-ink); font-size: 1rem; font-weight: 750; line-height: 1.4; }
.jr-tariff-card__vehicle p { margin: .2rem 0 0; color: var(--jr-muted); font-size: .78rem; line-height: 1.4; }
.jr-tariff-card__fare { min-width: 0; padding: .8rem .9rem; color: var(--jr-ink); background: #fae6e6; border-radius: .75rem; }
.jr-tariff-card__rows { margin: 0; }
.jr-tariff-card__rows > div, .jr-tariff-card__total { display: flex; min-width: 0; gap: .75rem; align-items: flex-start; justify-content: space-between; margin: 0; padding: .35rem 0; border-bottom: 1px solid rgba(110,31,35,.1); font-size: .78rem; line-height: 1.4; }
.jr-tariff-card__rows dt { min-width: 0; font-weight: 600; }
.jr-tariff-card__rows dd { flex: 0 0 auto; margin: 0; color: #8c151c; font-weight: 750; text-align: right; white-space: nowrap; }
.jr-tariff-card__details { margin-top: .25rem; border-bottom: 1px solid rgba(110,31,35,.1); }
.jr-tariff-card__details summary { display: flex; gap: .75rem; align-items: center; justify-content: space-between; padding: .45rem 0; color: var(--jr-orange); cursor: pointer; font-size: .78rem; font-weight: 750; list-style: none; }
.jr-tariff-card__details summary::-webkit-details-marker { display: none; }
.jr-tariff-card__details summary i { transition: transform .2s ease; }
.jr-tariff-card__details[open] summary i { transform: rotate(180deg); }
.jr-tariff-card__details summary:focus-visible { outline: 3px solid rgba(22,185,232,.35); outline-offset: .2rem; border-radius: .2rem; }
.jr-tariff-card__rows--details { padding: .15rem 0 .35rem; }
.jr-tariff-card__rows--details > div { font-size: .72rem; }
.jr-tariff-card__total { margin-top: .25rem; border-bottom: 0; font-weight: 700; }
.jr-tariff-card__total strong { flex: 0 0 auto; color: #8c151c; white-space: nowrap; }
.jr-tariff-card__footer { display: flex; justify-content: flex-end; margin-top: .9rem; padding-top: .75rem; border-top: 1px solid #e3e6eb; }
.jr-tariff-card__book.btn { display: inline-flex; min-height: 2.65rem; gap: .55rem; align-items: center; padding: .4rem .45rem .4rem 1rem; color: var(--jr-ink); background: #fff; border: 1px solid var(--jr-sky); border-radius: 999px; font-size: .82rem; font-weight: 750; }
.jr-tariff-card__book i { display: grid; width: 1.75rem; height: 1.75rem; color: #fff; background: var(--jr-sky); border-radius: 50%; font-size: .72rem; place-items: center; transition: color .2s ease,background-color .2s ease,transform .2s ease; }
.jr-tariff-card__book.btn:hover, .jr-tariff-card__book.btn:focus-visible { color: #fff; background: var(--jr-sky); border-color: var(--jr-sky); }
.jr-tariff-card__book.btn:hover i, .jr-tariff-card__book.btn:focus-visible i { color: var(--jr-sky); background: #fff; transform: translateX(.08rem); }

.jr-rental-editorial { overflow: hidden; color: #626b78; background: #fff; }
.jr-rental-editorial__lead { margin-bottom: 1.25rem; }
.jr-rental-editorial__image { overflow: hidden; margin: 0; border-radius: .4rem; box-shadow: 0 .75rem 2rem rgba(23,39,93,.12); }
.jr-rental-editorial__image img { display: block; width: 100%; aspect-ratio: 460/430; object-fit: cover; }
.jr-rental-editorial__content { color: #626b78; font-size: .95rem; line-height: 1.85; text-align: justify; overflow-wrap: anywhere; }
.jr-rental-editorial__content h2, .jr-rental-editorial__content h3 { color: var(--jr-ink); font-weight: 800; line-height: 1.5; text-align: left; text-wrap: balance; }
.jr-rental-editorial__content h2 { margin: 1.6rem 0 .65rem; font-size: clamp(1.35rem,2vw,1.7rem); }
.jr-rental-editorial__content h3 { margin: 1.25rem 0 .5rem; font-size: clamp(1.05rem,1.6vw,1.2rem); }
.jr-rental-editorial__content h2:first-child, .jr-rental-editorial__content h3:first-child { margin-top: 0; }
.jr-rental-editorial__content p { margin: 0 0 1rem; }
.jr-rental-editorial__content ul, .jr-rental-editorial__content ol { margin: 0 0 1.25rem; padding: 0; list-style: none; }
.jr-rental-editorial__content li { position: relative; margin-bottom: .5rem; padding-left: 1.5rem; }
.jr-rental-editorial__content li::before { position: absolute; top: .02rem; left: .1rem; color: var(--jr-orange); content: '\2192'; font-weight: 800; }
.jr-rental-editorial__content ol { counter-reset: jr-rental-step; }
.jr-rental-editorial__content ol li { counter-increment: jr-rental-step; }
.jr-rental-editorial__content ol li::before { content: counter(jr-rental-step) '.'; }
.jr-rental-editorial__body { margin-top: .5rem; }
.jr-rental-editorial__content table { display: block; width: 100%; min-width: 0; margin: 1.25rem 0 1.75rem; overflow-x: auto; border-collapse: collapse; background: #fff; text-align: left; }
.jr-rental-editorial__content table thead, .jr-rental-editorial__content table tbody { min-width: 42rem; }
.jr-rental-editorial__content table tr { display: table; width: 100%; min-width: 42rem; table-layout: fixed; }
.jr-rental-editorial__content table th, .jr-rental-editorial__content table td { padding: .85rem 1rem; border: 1px solid #27304b; text-align: left; vertical-align: top; }
.jr-rental-editorial__content table th { color: #fff; background: linear-gradient(135deg,var(--jr-primary-dark),var(--jr-primary)); font-weight: 750; }
.jr-rental-editorial__content table tbody tr:nth-child(even) td { background: #f5f7fb; }

@media (max-width: 767.98px) {
    .jr-tariff-card__main { grid-template-columns: minmax(7.5rem,34%) minmax(0,66%); }
    .jr-rental-editorial__content { text-align: left; }
}
@media (max-width: 575.98px) {
    .jr-tariff-section__heading { margin-bottom: 1.5rem; }
    .jr-tariff-card { padding: .8rem; border-radius: 1.25rem; }
    .jr-tariff-card__main { grid-template-columns: 1fr; }
    .jr-tariff-card__vehicle img { width: min(100%,13.5rem); }
    .jr-tariff-card__fare { padding: .75rem .85rem; }
    .jr-rental-editorial__image img { aspect-ratio: 4/3; }
    .jr-rental-editorial__content table thead, .jr-rental-editorial__content table tbody, .jr-rental-editorial__content table tr { min-width: 36rem; }
}
