/* Browse-first refresh. Only loaded on the home and catalogue pages. */
.catalogue-intro{padding-top:6.4rem;padding-bottom:.5rem}
.catalogue-eyebrow{letter-spacing:.1em;font-size:.68rem;margin-bottom:.45rem}
.catalogue-intro h1{font-family:var(--body);font-weight:700;font-size:clamp(1.8rem,3vw,2.65rem);letter-spacing:-.045em;line-height:1.16}
.catalogue-lede{font-size:.92rem;max-width:740px;margin-top:.65rem}
.catalogue-filters{max-width:790px;border-radius:40px;margin:1.25rem 0 .6rem;box-shadow:0 3px 12px #142e4010;border-color:#e0e5e8}
.filter-summary{min-height:64px;padding:.7rem .85rem .7rem 1.25rem}
.filter-summary-action{border:0;background:var(--blue-deep);color:#fff;border-radius:50px;padding:.75rem .95rem}
.filter-summary-action svg{width:18px;height:18px}
.catalogue-filters[open]{border-radius:24px}
.destination-links{flex-wrap:nowrap;overflow-x:auto;gap:1.5rem;padding:.7rem 0 .2rem;margin:.3rem 0 0;scrollbar-width:thin}
.destination-links a{border:0;border-radius:0;padding:.65rem 0 .85rem;white-space:nowrap;font-weight:600;font-size:.83rem;position:relative}
.destination-links a:hover,.destination-links a[aria-current]{background:transparent;color:var(--blue-deep)}
.destination-links a[aria-current]:after{content:'';position:absolute;bottom:0;height:3px;left:0;right:0;background:var(--blue-deep);border-radius:3px}
.catalogue-results{padding-top:.8rem}
.catalogue-heading{margin-bottom:1rem;align-items:center}
.catalogue-heading h2{font-family:var(--body);font-size:1.4rem;font-weight:700;letter-spacing:-.025em}
.catalogue-heading p{font-size:.83rem;margin-top:.35rem}
.catalogue-heading .section-tag{background:none;padding:0;font-size:.65rem;letter-spacing:.08em;margin-bottom:.35rem;color:var(--blue-deep)}
.car-section{margin-bottom:2.6rem}
.car-grid{gap:1.9rem 1.25rem}
.car-card,.car-card-link{background:transparent;border:0;box-shadow:none}
.car-card-photo{border-radius:16px;aspect-ratio:1.4;overflow:hidden}
.car-card-heading{margin-top:.7rem;align-items:start}
.car-card h3{font-size:.97rem;line-height:1.4}
.car-rating{font-size:.77rem}
.car-place{font-size:.79rem;margin-top:.2rem}
.car-specs{font-size:.74rem}
.car-price{margin-top:.5rem;font-size:.94rem}
.car-price-note{font-size:.67rem;line-height:1.5}
.car-featured-badge{border:0;background:#fff;color:var(--blue-deep);font-size:.66rem;box-shadow:0 2px 7px #0001}
.featured-rail{grid-auto-columns:calc((100% - 3.75rem)/4);gap:1.25rem}
.featured-controls{gap:.5rem}.featured-arrow{border-color:#dbe2e7;background:transparent}
.app-handoff-note{background:#f4faff;border:0;border-radius:16px}
@media(max-width:1100px) and (min-width:761px){.featured-rail{grid-auto-columns:calc((100% - 2.5rem)/3)}}
@media(max-width:760px){
 .catalogue-intro{padding-top:6rem}.catalogue-eyebrow{font-size:.6rem;letter-spacing:.07em}
 .catalogue-intro h1{font-size:1.65rem;max-width:100%;line-height:1.18}
 .catalogue-lede{font-size:.8rem;line-height:1.5;margin-top:.5rem}
 .catalogue-filters{margin-top:1rem}.filter-summary{min-height:60px;padding:.7rem .8rem}
 .filter-summary-copy strong{font-size:.86rem}.filter-summary-copy>span{font-size:.72rem}
 .filter-summary-action{padding:.7rem}.filter-summary-action>span{display:none}
 .destination-links{gap:1.2rem;padding-top:.4rem}.destination-links a{font-size:.78rem}
 .catalogue-results{padding-top:.65rem}.catalogue-heading h2{font-size:1.17rem}
 .featured-rail{grid-auto-columns:44%;gap:.85rem}
 .featured-rail .car-card-photo{aspect-ratio:1.3}
 .featured-rail .car-card-heading{display:block}.featured-rail .car-card h3{font-size:.84rem}
 .car-grid{gap:1.5rem .9rem}.car-card-photo{border-radius:13px;aspect-ratio:1.3}
 .car-card h3{font-size:.84rem}.car-place,.car-specs{font-size:.73rem}
 .car-price-note{font-size:.65rem}.car-section{margin-bottom:2rem}
}
@media(prefers-reduced-motion:reduce){.car-card img{transition:none}}

/* A photographic introduction, followed by useful inventory rather than decorative panels. */
body[data-view=home] .catalogue-intro{padding-top:6.2rem}
.browse-cover{position:relative;isolation:isolate;border-radius:20px;background:#16485d;overflow:hidden}
.browse-cover-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;z-index:-2}
.browse-cover:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#061c2bd9,#061c2b65);z-index:-1}
.browse-cover-content{position:relative}
.browse-cover .browse-cover-content{padding:3.2rem 3rem 2.4rem}
.browse-cover h1{color:#fff;font-size:clamp(2rem,3.8vw,3.2rem);max-width:820px;text-wrap:balance}
.browse-cover .ryde-word{color:var(--blue);text-transform:uppercase}
.browse-cover .catalogue-eyebrow{color:#e1f6ff}
.browse-cover .catalogue-lede{color:#f3f8fa;max-width:650px;margin-top:.8rem}
.browse-cover .catalogue-filters{background:#fff;max-width:100%;margin:1.5rem 0 0;box-shadow:none}
.browse-cover .filter-summary-copy strong{color:var(--ink)}
.browse-cover .filter-summary-copy>span{color:var(--muted)}
body[data-view=home] .destination-links{margin-top:.8rem;margin-bottom:.5rem}
body[data-view=home] .hero{background:#f7f8f8;padding:3rem 0;margin:2rem auto;border-radius:20px;max-width:var(--wrap)}
body[data-view=home] .hero-road,body[data-view=home] .road{display:none}
body[data-view=home] .hero .eyebrow{background:none;box-shadow:none;padding:0;border-radius:0}
body[data-view=home] .hero .eyebrow-dot{display:none}
body[data-view=home] .hero h2,body[data-view=home] .section h2{font-family:var(--body);font-size:clamp(1.65rem,3vw,2.4rem);line-height:1.2;letter-spacing:-.035em}
body[data-view=home] .hero .float{animation:none}
body[data-view=home] .hero .phone{box-shadow:inset 0 0 0 2px #182630,0 12px 30px #0002;background:#182630}
body[data-view=home] .section{padding-block:3.5rem}
body[data-view=home] .section-tag{background:none;border-radius:0;padding:0;box-shadow:none;letter-spacing:.08em}
body[data-view=home] .why{background:none}
body[data-view=home] .step{box-shadow:none;border:0;background:none}
body[data-view=home] .step-num{background:none;box-shadow:none;border-radius:0;justify-content:start;width:auto;height:auto;font-family:var(--body);font-size:1.25rem}
body[data-view=home] .result-card{box-shadow:none}
body[data-view=listing] .listing-page{max-width:1120px;padding-top:6.5rem}
body[data-view=listing] .listing-heading h1,body[data-view=listing] .listing-columns h2{font-family:var(--body);letter-spacing:-.025em}
body[data-view=listing] .listing-gallery{border-radius:16px;gap:.4rem}
body[data-view=listing] .listing-booking{box-shadow:none;border-radius:16px}
body[data-view=listing] .listing-booking .btn{background:var(--blue-deep);border-radius:10px}
@media(min-width:961px){body[data-view=home] .nav,body[data-view=cars] .nav{background:#fff;border-bottom:1px solid #eef1f3;box-shadow:none}}
@media(max-width:760px){
 body[data-view=home] .catalogue-intro{padding-top:5.5rem}
 .browse-cover{border-radius:16px}
 .browse-cover .browse-cover-content{padding:1.5rem 1.15rem 1.15rem}
 .browse-cover h1{font-size:1.65rem;max-width:330px}
 .browse-cover .catalogue-eyebrow{font-size:.6rem}
 .browse-cover .catalogue-lede{font-size:.78rem;max-width:300px}
 .browse-cover .catalogue-filters{margin-top:1rem;border-radius:24px}
 .browse-cover .filter-summary{padding:.7rem;gap:.5rem}
 body[data-view=home] .hero{border-radius:0;margin-top:1rem;padding-block:2rem}
 body[data-view=home] .hero .showcase{max-height:430px;overflow:hidden}
 body[data-view=home] .section{padding-block:2.5rem}
}

/* Keep one set of filters available throughout the inventory, below the fixed nav. */
.browse-cover .browse-cover-content{padding-bottom:2.5rem}
.browse-sticky{position:sticky;top:var(--browse-nav-height,80px);z-index:40;background:#fff;border-bottom:1px solid #e8edf1}
.browse-sticky-inner{padding-block:.55rem .1rem}
.browse-sticky .catalogue-filters{margin:0 auto;max-width:900px}
.browse-sticky .filter-summary{min-height:54px;padding-block:.45rem}
.browse-sticky .destination-links{margin:.15rem 0 0;padding-top:0}
body[data-view=home] .browse-sticky .destination-links{margin:.15rem 0 0}
.browse-sticky .car-search{max-height:35vh;overflow-y:auto}
@media(max-width:760px){
 .browse-cover .browse-cover-content{padding-bottom:1.25rem}
 .browse-sticky .filter-summary{min-height:50px}
 .browse-sticky .destination-links a{padding-block:.45rem .55rem}
}

/* Use the page scrollport and a single opaque header stack. */
body:is([data-view=home],[data-view=cars],[data-view=location]){overflow-x:clip}
body:is([data-view=home],[data-view=cars],[data-view=location]) .nav,
body:is([data-view=home],[data-view=cars],[data-view=location]) .nav.scrolled{
 background:#fff;padding-block:.65rem;border:0;box-shadow:none;backdrop-filter:none
}
.browse-sticky-inner{padding-top:.25rem}
.browse-sticky .destination-links{scrollbar-width:none}
.browse-sticky .destination-links::-webkit-scrollbar{display:none}
body[data-view=home] main section[id]{scroll-margin-top:calc(var(--browse-stack-height,180px) + 12px)}
@media(min-width:761px){.browse-sticky .destination-links{justify-content:safe center}}

.parish-intro{padding-top:5.35rem;padding-bottom:.55rem}
.parish-intro .page-breadcrumbs{font-size:.76rem;margin-bottom:.45rem}
.parish-intro h1{font-size:clamp(1.55rem,2.65vw,2.3rem);line-height:1.16;text-wrap:balance}
.parish-intro-note,.parish-guide-summary{color:var(--muted);font-size:.88rem;line-height:1.55}
.parish-intro-note{margin:.35rem 0 0}
.parish-guide-summary{margin:.65rem 0}
@media(max-width:760px){
 .parish-intro{padding-top:4.9rem;padding-bottom:.4rem}
 .parish-intro h1{font-size:clamp(1.45rem,4.4vw,1.8rem)}
 .parish-intro-note{font-size:.8rem}
}
