:root { --rp-navy:#0b2f73; --rp-navy-2:#164c9c; --rp-blue:#164c9c; --rp-blue-dark:#0f397d; --rp-secondary:#e1262f; --rp-accent:#f7b916; --rp-sky:#edf4ff; --rp-ink:#172033; --rp-muted:#748097; --rp-line:#e5e9f1; --rp-paper:#fff; --rp-soft:#f6f8fc; --rp-green:#20b889; }
[data-site-theme="logo"] { --rp-navy:#0b2f73; --rp-navy-2:#164c9c; --rp-blue:#164c9c; --rp-blue-dark:#0f397d; --rp-secondary:#e1262f; --rp-accent:#f7b916; --rp-sky:#edf4ff; }
[data-site-theme="indigo"] { --rp-navy:#111a2d; --rp-navy-2:#182742; --rp-blue:#4e63f5; --rp-blue-dark:#3d50d5; --rp-secondary:#8c60e8; --rp-accent:#98a5ff; --rp-sky:#edf2ff; }
[data-site-theme="emerald"] { --rp-navy:#0c3532; --rp-navy-2:#12534d; --rp-blue:#0f8f83; --rp-blue-dark:#087268; --rp-secondary:#16a36f; --rp-accent:#75d6b1; --rp-sky:#e9f8f4; }
[data-site-theme="sunset"] { --rp-navy:#4b241d; --rp-navy-2:#743428; --rp-blue:#df593f; --rp-blue-dark:#bd402b; --rp-secondary:#ef8c2f; --rp-accent:#f6c453; --rp-sky:#fff1ec; }
[data-site-theme="plum"] { --rp-navy:#29183f; --rp-navy-2:#472763; --rp-blue:#7444c5; --rp-blue-dark:#59309f; --rp-secondary:#bd3f83; --rp-accent:#d9a3ef; --rp-sky:#f4edff; }
.rentcar-public-body { height:auto; min-height:100%; overflow-x:hidden; overflow-y:auto; }
.rentcar-public-body > .flex-root { height:auto; min-height:100vh; overflow:visible; }
.rc-public-site { background:var(--rp-paper); color:var(--rp-ink); font-family:Inter,sans-serif; min-height:100vh; overflow-x:hidden; overflow-y:visible; width:100%; }
.rc-public-container { margin:0 auto; max-width:1220px; padding-left:24px; padding-right:24px; width:100%; }
.rc-public-topbar { background:var(--rp-navy); color:#aeb8cc; font-size:10px; }
.rc-public-topbar .rc-public-container { align-items:center; display:flex; height:34px; justify-content:space-between; }
.rc-public-topbar span,.rc-topbar-hotline { align-items:center; display:flex; gap:7px; }
.rc-topbar-hotline { color:#fff; font-weight:600; padding:5px 10px; transition:color .2s ease,opacity .2s ease; }
.rc-topbar-hotline:hover { color:var(--rp-accent); }
.rc-topbar-hotline strong { color:inherit; font-size:10px; font-weight:800; letter-spacing:.01em; }
.rc-topbar-hotline > span { color:#aeb8cc; font-size:9px; font-weight:500; }
.rc-topbar-copy-mobile { display:none!important; }
.rc-public-header { background:rgba(255,255,255,.94); border-bottom:1px solid rgba(229,233,241,.8); position:relative; z-index:100; }.rc-public-header.sticky { backdrop-filter:blur(14px); box-shadow:0 8px 30px rgba(17,26,45,.06); position:fixed; top:0; width:100%; }.rc-public-nav-wrap { align-items:center; display:flex; height:76px; justify-content:space-between; }.rc-public-logo { align-items:center; color:var(--rp-ink); display:flex; font-size:19px; gap:10px; letter-spacing:-.4px; }.rc-public-logo:hover { color:var(--rp-ink); }.rc-public-logo em { color:var(--rp-blue); font-style:normal; font-weight:800; margin-left:4px; }.rc-public-brand-logo { background:#fff; border:1px solid #e4e8f1; border-radius:50%; box-shadow:0 4px 12px rgba(13,43,91,.12); height:54px; object-fit:cover; width:54px; }.rc-public-nav { align-items:center; display:flex; gap:30px; }.rc-public-nav a { color:#566176; font-size:11px; font-weight:600; }.rc-public-nav a:hover { color:var(--rp-blue); }.rc-public-nav-actions { align-items:center; display:flex; gap:14px; }.rc-public-contact { align-items:center; color:var(--rp-ink); gap:8px; }.rc-public-contact i { color:var(--rp-blue); }.rc-public-contact small,.rc-public-contact strong { display:block; font-size:8px; }.rc-public-contact small { color:var(--rp-muted); }.rc-public-book-button,.rc-hero-primary { align-items:center; background:var(--rp-blue); border:0; border-radius:9px; color:#fff; display:inline-flex; font-size:10px; font-weight:700; gap:9px; height:42px; padding:0 17px; }.rc-public-book-button:hover,.rc-hero-primary:hover { background:var(--rp-blue-dark); color:#fff; }.rc-public-menu-button { align-items:center; background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:8px; color:var(--rp-ink); display:flex; height:38px; justify-content:center; width:38px; }
.rc-hero { background:linear-gradient(132deg,var(--rp-navy) 0%,var(--rp-navy-2) 60%,color-mix(in srgb,var(--rp-navy-2) 72%,var(--rp-blue)) 100%); min-height:620px; overflow:hidden; position:relative; }.rc-hero-grid { align-items:center; display:grid; gap:75px; grid-template-columns:minmax(0,1fr) 415px; min-height:620px; padding-bottom:68px; padding-top:68px; position:relative; z-index:2; }.rc-hero-glow { background:var(--rp-blue); border-radius:50%; filter:blur(20px); height:420px; opacity:.16; position:absolute; right:22%; top:-180px; width:420px; }.rc-hero-line-art { bottom:-15px; left:0; opacity:.09; position:absolute; width:100%; z-index:1; }.rc-section-kicker { align-items:center; color:var(--rp-blue); display:inline-flex; font-size:9px; font-weight:800; gap:7px; letter-spacing:.11em; text-transform:uppercase; }.rc-section-kicker.light { color:var(--rp-accent); }.rc-hero-copy h1 { color:#fff; font-size:clamp(48px,5vw,72px); font-weight:750; letter-spacing:-3.2px; line-height:1.02; margin:18px 0 22px; }.rc-hero-copy h1 em { color:var(--rp-accent); font-style:normal; }.rc-hero-copy > p { color:#d0d8e7; font-size:14px; line-height:1.8; max-width:590px; }.rc-hero-actions { align-items:center; display:flex; gap:23px; margin-top:31px; }.rc-hero-primary { height:50px; padding:0 22px; }.rc-hero-secondary { align-items:center; color:#fff; display:flex; font-size:10px; font-weight:650; gap:9px; }.rc-hero-secondary:hover { color:var(--rp-accent); }.rc-hero-secondary span { align-items:center; border:1px solid rgba(255,255,255,.16); border-radius:8px; display:flex; height:36px; justify-content:center; width:36px; }.rc-hero-trust { align-items:center; display:flex; gap:12px; margin-top:36px; }.rc-trust-avatars { display:flex; }.rc-trust-avatars span { align-items:center; background:var(--rp-blue); border:2px solid var(--rp-navy-2); border-radius:50%; color:#fff; display:flex; font-size:7px; font-weight:700; height:31px; justify-content:center; margin-left:-7px; width:31px; }.rc-trust-avatars span:first-child { background:#e49d60; margin:0; }.rc-trust-avatars span:nth-child(2) { background:#39a58f; }.rc-stars { color:var(--rp-accent); font-size:11px; letter-spacing:2px; }.rc-hero-trust small { color:#aeb9ca; display:block; font-size:8px; margin-top:2px; }
.rc-quick-book { background:linear-gradient(90deg,var(--rp-blue),var(--rp-secondary),var(--rp-accent)) top/100% 5px no-repeat,#fff; border-radius:17px; box-shadow:0 24px 60px rgba(2,9,25,.25); padding:14px 27px 27px; }.rc-quick-book-heading { align-items:center; display:flex; justify-content:space-between; margin-bottom:18px; }.rc-quick-book-heading span { color:var(--rp-blue); font-size:8px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.rc-quick-book-heading h2 { color:var(--rp-ink); font-size:18px; margin:4px 0 0; }.rc-quick-book-heading > i { color:#c5ccdb; }.rc-quick-book label { color:var(--rp-ink); display:block; font-size:8px; font-weight:700; margin-bottom:13px; }.rc-quick-book label > div { align-items:center; background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:9px; color:#a1abc0; display:flex; height:45px; margin-top:6px; padding:0 12px; }.rc-quick-book input,.rc-quick-book select { background:transparent; border:0; color:var(--rp-ink); font-size:10px; height:42px; outline:0; padding:0 9px; width:100%; }.rc-quick-book button { align-items:center; background:var(--rp-blue); border:0; border-radius:9px; color:#fff; display:flex; font-size:10px; font-weight:700; height:47px; justify-content:center; margin-top:5px; width:100%; }.rc-quick-book button i { margin-left:9px; }.rc-quick-book > small { align-items:center; color:var(--rp-muted); display:flex; font-size:7px; gap:5px; justify-content:center; margin-top:12px; }
.rc-quick-location-label { position:relative; z-index:2; }
.rc-quick-location-label:focus-within { z-index:80; }
.rc-quick-book .rc-quick-location { height:auto; min-height:45px; overflow:visible; padding:0 10px 0 12px; position:relative; }
.rc-quick-location > i { flex:0 0 auto; }
.is-quick-map-ready .rc-quick-location > i { display:none; }
.rc-quick-place-host { flex:1 1 auto; min-width:0; overflow:visible; position:relative; z-index:2; }
.rc-quick-place-host gmp-place-autocomplete { background:transparent; border:0; border-radius:8px; color:var(--rp-ink); color-scheme:light; font:600 10px/1.35 Inter,sans-serif; min-height:42px; width:100%; }
.rc-quick-place-host gmp-place-autocomplete::part(input) { background:transparent; border:0; box-shadow:none; color:var(--rp-ink); font:600 10px/1.35 Inter,sans-serif; min-height:40px; outline:0; padding-block:0; }
.rc-quick-place-host gmp-place-autocomplete::part(focus-ring) { border:0; box-shadow:none; outline:0; }
.rc-quick-place-host gmp-place-autocomplete::part(prediction-list) { background:#fff; border:1px solid var(--rp-line); border-radius:12px; box-shadow:0 18px 45px rgba(16,27,54,.2); color:var(--rp-ink); font:500 9px/1.4 Inter,sans-serif; margin-top:7px; max-height:270px; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; position:relative; z-index:100; }
.rc-quick-place-host gmp-place-autocomplete::part(prediction-item) { border-radius:8px; color:var(--rp-muted); margin:3px; min-height:42px; }
.rc-quick-place-host gmp-place-autocomplete::part(prediction-item-selected) { background:color-mix(in srgb,var(--rp-blue) 9%,#fff); color:var(--rp-ink); }
.rc-quick-place-host gmp-place-autocomplete::part(prediction-item-main-text) { color:var(--rp-ink); font-weight:700; }
.rc-quick-place-host gmp-place-autocomplete::part(prediction-item-match) { color:var(--rp-blue); font-weight:800; }
.rc-quick-location-check { align-items:center; background:#e9faf4; border-radius:50%; color:#15966f; display:flex; flex:0 0 auto; height:21px; justify-content:center; opacity:0; transform:scale(.7); transition:opacity .2s,transform .25s var(--rc-ease); width:21px; }
.rc-quick-location.is-selected { background:#fff; border-color:#9cdac7; box-shadow:0 0 0 3px rgba(31,180,139,.08); }
.rc-quick-location.is-selected .rc-quick-location-check { opacity:1; transform:scale(1); }
.rc-quick-location.is-invalid { animation:rcFieldShake .36s ease-in-out; background:#fff8f8; border-color:#e86b72; box-shadow:0 0 0 3px rgba(225,38,47,.08); }
.rc-quick-location.is-loading { opacity:.7; pointer-events:none; }
.rc-quick-book-status { align-items:flex-start; background:#f5f7ff; border:1px solid #e4e8fa; border-radius:8px; color:var(--rp-muted); display:flex; font-size:7px; gap:6px; line-height:1.45; margin:0 0 10px; padding:8px 10px; }
.rc-quick-book-status i { color:var(--rp-blue); flex:0 0 auto; font-size:13px; }
.rc-quick-book-status[data-state="success"] { background:#effaf6; border-color:#ccecdf; color:#15775e; }
.rc-quick-book-status[data-state="success"] i { color:#1bae83; }
.rc-quick-book-status[data-state="error"] { background:#fff5f5; border-color:#f2d3d5; color:#b2313a; }
.rc-quick-book-status[data-state="error"] i { color:#e1262f; }
.rc-quick-book button:disabled { cursor:wait; opacity:.82; }
.rc-route-strip { background:#fff; border-bottom:1px solid var(--rp-line); }.rc-route-strip .rc-public-container { align-items:center; display:flex; height:66px; overflow-x:auto; scrollbar-width:none; }.rc-route-label { color:#9aa4b6; font-size:8px; font-weight:800; letter-spacing:.1em; margin-right:20px; text-transform:uppercase; white-space:nowrap; }.rc-route-strip a { align-items:center; border-left:1px solid var(--rp-line); color:var(--rp-muted); display:flex; font-size:8px; gap:6px; margin-left:16px; padding-left:16px; white-space:nowrap; }.rc-route-strip a strong { color:var(--rp-ink); }.rc-route-strip a i { color:var(--rp-blue); }
.rc-public-section { padding:92px 0; }.rc-section-heading { margin-bottom:43px; }.rc-section-heading.centered { margin-left:auto; margin-right:auto; max-width:680px; text-align:center; }.rc-section-heading.split { align-items:end; display:flex; justify-content:space-between; }.rc-section-heading.split > div { max-width:620px; }.rc-section-heading h2 { color:var(--rp-ink); font-size:clamp(30px,3vw,43px); font-weight:740; letter-spacing:-1.7px; line-height:1.12; margin:11px 0 0; }.rc-section-heading p { color:var(--rp-muted); font-size:11px; line-height:1.75; margin:13px auto 0; max-width:570px; }.rc-section-heading.split > p { margin:0; max-width:390px; }
.rc-services { background:var(--rp-soft); }.rc-service-grid { display:grid; gap:20px; grid-template-columns:repeat(3,1fr); }.rc-service-grid article { background:#fff; border:1px solid var(--rp-line); border-radius:15px; padding:27px; position:relative; transition:.25s; }.rc-service-grid article:hover { box-shadow:0 18px 40px rgba(17,26,45,.08); transform:translateY(-5px); }.rc-service-grid article > span { align-items:center; background:#eef1ff; border-radius:10px; color:var(--rp-blue); display:flex; height:45px; justify-content:center; width:45px; }.rc-service-grid article > small { color:#c6ccd8; font-size:9px; font-weight:800; position:absolute; right:24px; top:26px; }.rc-service-grid h3 { font-size:14px; margin:24px 0 8px; }.rc-service-grid p { color:var(--rp-muted); font-size:9px; line-height:1.7; min-height:47px; }.rc-service-grid a { color:var(--rp-blue); font-size:9px; font-weight:700; }.rc-service-grid article.featured { background:var(--rp-navy); border-color:var(--rp-navy); }.rc-service-grid article.featured h3 { color:#fff; }.rc-service-grid article.featured p { color:#9ca7ba; }.rc-service-grid article.featured > span { background:rgba(92,111,247,.18); color:#a7b2ff; }
.rc-fleet-section { background:#fff; }.rc-fleet-grid { display:grid; gap:20px; grid-template-columns:repeat(3,1fr); }.rc-fleet-grid article { background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:17px; overflow:hidden; padding:20px 22px 22px; }.rc-fleet-card-top { align-items:center; color:#9ca7ba; display:flex; font-size:9px; justify-content:space-between; }.rc-fleet-card-top > i { font-size:17px; }.rc-fleet-visual { align-items:center; display:flex; height:155px; justify-content:center; position:relative; }.rc-fleet-visual::after { background:currentColor; border-radius:50%; content:''; filter:blur(25px); height:80px; opacity:.12; position:absolute; width:180px; }.rc-fleet-visual i { color:var(--rp-blue); font-size:105px; line-height:1; position:relative; z-index:1; }.tone-violet .rc-fleet-visual i { color:#8c60e8; }.tone-orange .rc-fleet-visual i { color:#ea9c4a; }.rc-fleet-grid h3 { font-size:16px; margin:0 0 3px; }.rc-fleet-grid > article > p { color:var(--rp-muted); font-size:8px; }.rc-fleet-specs { border-bottom:1px solid var(--rp-line); border-top:1px solid var(--rp-line); display:flex; gap:18px; margin:17px 0; padding:13px 0; }.rc-fleet-specs span { align-items:center; color:#667188; display:flex; font-size:8px; gap:6px; }.rc-fleet-grid a { align-items:center; color:var(--rp-ink); display:flex; font-size:9px; font-weight:700; justify-content:space-between; }.rc-fleet-grid a:hover { color:var(--rp-blue); }
.rc-why-section { background:var(--rp-navy); color:#fff; }.rc-why-grid { align-items:center; display:grid; gap:80px; grid-template-columns:1fr 1fr; }.rc-why-visual { background:linear-gradient(145deg,#25385f,#182640); border:1px solid rgba(255,255,255,.08); border-radius:22px; height:410px; overflow:hidden; position:relative; }.rc-big-car { bottom:40px; color:#8494ff; font-size:260px; left:50%; line-height:1; position:absolute; transform:translateX(-50%); }.rc-road-line { border:2px dashed rgba(255,255,255,.16); border-radius:50%; height:500px; left:-40%; position:absolute; top:40%; width:180%; }.rc-floating-stat { background:rgba(255,255,255,.08); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.12); border-radius:12px; padding:13px 17px; position:absolute; z-index:2; }.rc-floating-stat strong,.rc-floating-stat span { display:block; }.rc-floating-stat strong { font-size:17px; }.rc-floating-stat span { color:#a5b0c4; font-size:8px; }.stat-one { left:25px; top:25px; }.stat-two { right:25px; top:75px; }.rc-why-copy h2 { color:#fff; font-size:42px; letter-spacing:-1.7px; margin:12px 0 17px; }.rc-why-copy > p { color:#a4aec0; font-size:11px; line-height:1.8; }.rc-why-list { display:grid; gap:19px; margin-top:29px; }.rc-why-list > div { align-items:center; display:flex; gap:12px; }.rc-why-list > div > span { align-items:center; background:rgba(80,100,245,.2); border-radius:9px; color:#a5afff; display:flex; height:36px; justify-content:center; width:36px; }.rc-why-list strong,.rc-why-list small { display:block; }.rc-why-list strong { font-size:10px; }.rc-why-list small { color:#8793aa; font-size:8px; margin-top:3px; }
.rc-rates-section { background:var(--rp-soft); }.rc-rates-card { background:#fff; border:1px solid var(--rp-line); border-radius:16px; overflow:hidden; }.rc-rates-head,.rc-rate-row { align-items:center; display:grid; grid-template-columns:2fr .75fr .65fr .65fr; }.rc-rates-head { background:#f0f3f8; color:#8d97a9; font-size:8px; font-weight:800; letter-spacing:.06em; padding:13px 22px; text-transform:uppercase; }.rc-rate-row { border-top:1px solid var(--rp-line); min-height:69px; padding:0 22px; }.rc-rate-row > div { align-items:center; display:flex; font-size:9px; gap:9px; }.rc-route-dot { background:var(--rp-blue); border:5px solid #e9edff; border-radius:50%; height:14px; width:14px; }.rc-rate-row > span { color:var(--rp-muted); font-size:9px; }.rc-rate-row > b { font-size:12px; }.rc-rate-row > a { color:var(--rp-blue); font-size:9px; font-weight:700; text-align:right; }.rc-rate-note { color:var(--rp-muted); font-size:8px; margin:12px 0 0; }
.rc-process-section { background:#fff; }.rc-process-grid { display:grid; gap:25px; grid-template-columns:repeat(4,1fr); position:relative; }.rc-process-grid::before { border-top:1px dashed #cdd3df; content:''; left:12%; position:absolute; right:12%; top:27px; }.rc-process-grid article { background:#fff; padding:0 13px; position:relative; text-align:center; }.rc-process-grid article > span { align-items:center; background:var(--rp-navy); border:6px solid #eef1f7; border-radius:50%; color:#fff; display:flex; font-size:9px; font-weight:800; height:54px; justify-content:center; margin:0 auto 23px; position:relative; width:54px; z-index:1; }.rc-process-grid i { color:var(--rp-blue); }.rc-process-grid h3 { font-size:11px; margin:12px 0 6px; }.rc-process-grid p { color:var(--rp-muted); font-size:8px; line-height:1.65; }
.rc-testimonials { background:linear-gradient(120deg,#4f63ef,#765ce0); color:#fff; }.rc-testimonials .rc-public-container { display:grid; gap:80px; grid-template-columns:1.2fr .8fr; }.rc-testimonial-main { background:#fff; border-radius:17px; color:var(--rp-ink); padding:34px; position:relative; }.rc-quote-mark { color:#dfe4ff; font-family:Georgia,serif; font-size:90px; line-height:.5; position:absolute; right:28px; top:40px; }.rc-testimonial-main blockquote { font-size:20px; font-weight:650; letter-spacing:-.4px; line-height:1.55; margin:20px 0 27px; max-width:560px; }.rc-client { align-items:center; display:flex; gap:10px; }.rc-client > span { align-items:center; background:#e9edff; border-radius:50%; color:var(--rp-blue); display:flex; font-size:8px; font-weight:800; height:38px; justify-content:center; width:38px; }.rc-client strong,.rc-client small { display:block; }.rc-client strong { font-size:9px; }.rc-client small { color:var(--rp-muted); font-size:8px; }.rc-testimonial-aside h2 { color:#fff; font-size:31px; letter-spacing:-1.2px; margin:12px 0; }.rc-testimonial-aside > p { color:#d6d9f7; font-size:10px; line-height:1.8; }.rc-rating { align-items:center; display:flex; gap:12px; margin-top:24px; }.rc-rating > strong { font-size:34px; }.rc-rating span b,.rc-rating span small { display:block; }.rc-rating span b { color:#ffd160; letter-spacing:2px; }.rc-rating span small { color:#d0d5f6; font-size:8px; }
.rc-faq-grid { display:grid; gap:75px; grid-template-columns:.75fr 1.25fr; }.rc-faq-grid > div:first-child h2 { font-size:36px; letter-spacing:-1.4px; margin:12px 0; }.rc-faq-grid > div:first-child p { color:var(--rp-muted); font-size:10px; line-height:1.8; }.rc-outline-button { border:1px solid var(--rp-line); border-radius:9px; color:var(--rp-ink); font-size:9px; margin-top:15px; }.rc-faq .accordion-item { border:0; border-bottom:1px solid var(--rp-line); }.rc-faq .accordion-button { background:#fff; box-shadow:none; color:var(--rp-ink); font-size:11px; font-weight:700; padding:20px 0; }.rc-faq .accordion-body { color:var(--rp-muted); font-size:9px; line-height:1.75; padding:0 30px 20px 0; }
.rc-public-cta { background:var(--rp-navy); padding:55px 0; }.rc-public-cta .rc-public-container { align-items:center; display:flex; justify-content:space-between; }.rc-public-cta h2 { color:#fff; font-size:30px; letter-spacing:-1px; margin:8px 0 0; }.rc-public-footer { background:#0b1220; color:#8e9aaf; padding:65px 0 20px; }.rc-public-logo.light { color:#fff; }.rc-public-footer-grid { display:grid; gap:55px; grid-template-columns:1.4fr .7fr .9fr 1.2fr; }.rc-public-footer-grid h3 { color:#fff; font-size:10px; margin-bottom:18px; }.rc-public-footer-grid p,.rc-public-footer-grid a,.rc-public-footer-grid span { color:#8995a9; display:block; font-size:8px; line-height:1.8; margin-bottom:7px; }.rc-public-footer-grid > div:first-child p { margin-top:18px; max-width:280px; }.rc-footer-contact { align-items:center; display:flex!important; gap:7px; }.rc-public-footer-bottom { align-items:center; border-top:1px solid #202a3b; display:flex; font-size:8px; justify-content:space-between; margin-top:48px; padding-top:19px; }.rc-public-footer-bottom div { display:flex; gap:18px; }.rc-public-footer-bottom a { color:#8995a9; }.rc-service-area-notice { align-items:flex-start; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.17); border-radius:10px; color:#dce5f4; display:flex; font-size:9px; gap:9px; line-height:1.6; margin:18px 0 0; max-width:540px; padding:11px 13px; }.rc-service-area-notice i { color:#f7c84b; margin-top:1px; }.rc-service-area-notice strong { color:#fff; }.rc-public-footer-grid .rc-public-logo>span { color:#fff; display:inline; font-size:19px; line-height:1; margin:0; }.rc-public-footer-grid .rc-public-logo em { display:inline; font-size:19px; }
/* Booking wizard */
.rc-booking-page { background:var(--rp-soft); min-height:75vh; padding:54px 0 80px; }.rc-booking-shell { display:grid; gap:28px; grid-template-columns:1fr 300px; }.rc-booking-main,.rc-booking-aside { background:#fff; border:1px solid var(--rp-line); border-radius:16px; }.rc-booking-main { padding:30px; }.rc-booking-heading h1 { font-size:27px; letter-spacing:-.8px; margin:8px 0; }.rc-booking-heading p { color:var(--rp-muted); font-size:10px; }.rc-booking-progress { display:flex; margin:28px 0 34px; }.rc-booking-progress > div { color:#a0a9ba; flex:1; font-size:8px; font-weight:700; position:relative; text-align:center; }.rc-booking-progress > div::before { background:#e3e7ef; content:''; height:2px; left:-50%; position:absolute; top:14px; width:100%; }.rc-booking-progress > div:first-child::before { display:none; }.rc-booking-progress span { align-items:center; background:#edf0f5; border-radius:50%; color:#9ca6b8; display:flex; height:28px; justify-content:center; margin:0 auto 7px; position:relative; width:28px; z-index:1; }.rc-booking-progress .active,.rc-booking-progress .done { color:var(--rp-blue); }.rc-booking-progress .active span,.rc-booking-progress .done span { background:var(--rp-blue); color:#fff; }.rc-booking-progress .done::before { background:var(--rp-blue); }.rc-booking-step { display:none; }.rc-booking-step.active { display:block; }.rc-booking-step h2 { font-size:16px; margin:0 0 5px; }.rc-booking-step > p { color:var(--rp-muted); font-size:9px; margin-bottom:23px; }.rc-field label { color:var(--rp-ink); font-size:9px; font-weight:700; margin-bottom:7px; }.rc-field input,.rc-field select,.rc-field textarea { background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:9px; color:var(--rp-ink); font-size:10px; min-height:44px; padding:0 13px; width:100%; }.rc-field textarea { min-height:90px; padding-top:12px; }.rc-trip-type { display:flex; gap:8px; }.rc-trip-type label { flex:1; }.rc-trip-type input { display:none; }.rc-trip-type span { align-items:center; background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:9px; cursor:pointer; display:flex; font-size:9px; font-weight:700; gap:8px; justify-content:center; padding:13px; }.rc-trip-type input:checked + span { background:#eef1ff; border-color:var(--rp-blue); color:var(--rp-blue); }.rc-vehicle-options { display:grid; gap:12px; grid-template-columns:repeat(3,1fr); }.rc-vehicle-option input { display:none; }.rc-vehicle-option > div { background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:12px; cursor:pointer; padding:16px; text-align:center; }.rc-vehicle-option input:checked + div { background:#f0f2ff; border-color:var(--rp-blue); box-shadow:0 0 0 2px rgba(78,99,245,.08); }.rc-vehicle-option i { color:var(--rp-blue); font-size:52px; }.rc-vehicle-option strong,.rc-vehicle-option small { display:block; }.rc-vehicle-option strong { font-size:11px; margin:7px 0 3px; }.rc-vehicle-option small { color:var(--rp-muted); font-size:7px; }.rc-booking-actions { border-top:1px solid var(--rp-line); display:flex; justify-content:space-between; margin-top:28px; padding-top:20px; }.rc-booking-actions button { border-radius:8px; font-size:9px; font-weight:700; height:41px; padding:0 16px; }.rc-next-step,.rc-submit-booking { background:var(--rp-blue); border:0; color:#fff; margin-left:auto; }.rc-prev-step { background:#fff; border:1px solid var(--rp-line); color:var(--rp-ink); }.rc-booking-aside { height:max-content; overflow:hidden; }.rc-booking-aside-top { background:var(--rp-navy); color:#fff; padding:22px; }.rc-booking-aside-top h3 { color:#fff; font-size:13px; }.rc-booking-aside-top p { color:#9ca7ba; font-size:8px; margin:0; }.rc-booking-aside-body { padding:20px; }.rc-booking-aside-body > div { border-bottom:1px solid var(--rp-line); margin-bottom:13px; padding-bottom:13px; }.rc-booking-aside-body span,.rc-booking-aside-body strong { display:block; }.rc-booking-aside-body span { color:var(--rp-muted); font-size:7px; margin-bottom:3px; }.rc-booking-aside-body strong { font-size:9px; }.rc-booking-note { align-items:flex-start; background:#fff8e8; border-radius:8px; color:#9c711e; display:flex; font-size:8px; gap:7px; padding:10px; }.rc-booking-errors { background:#fff2f2; border:1px solid #ffd4d4; border-radius:9px; color:#b54444; font-size:9px; margin-bottom:20px; padding:12px 15px; }.rc-success-page { align-items:center; background:var(--rp-soft); display:flex; justify-content:center; min-height:72vh; padding:60px 20px; }.rc-success-card { background:#fff; border:1px solid var(--rp-line); border-radius:18px; box-shadow:0 20px 60px rgba(17,26,45,.08); max-width:560px; padding:45px; text-align:center; width:100%; }.rc-success-icon { align-items:center; background:#e9faf4; border-radius:50%; color:var(--rp-green); display:flex; height:70px; justify-content:center; margin:0 auto 22px; width:70px; }.rc-success-card h1 { font-size:25px; }.rc-success-card > p { color:var(--rp-muted); font-size:10px; line-height:1.8; }.rc-reference { background:var(--rp-soft); border:1px dashed #cfd5e1; border-radius:10px; margin:22px 0; padding:14px; }.rc-reference span,.rc-reference strong { display:block; }.rc-reference span { color:var(--rp-muted); font-size:8px; }.rc-reference strong { color:var(--rp-blue); font-size:16px; margin-top:3px; }
@media(max-width:991.98px){.rc-public-nav { background:#fff; border-top:1px solid var(--rp-line); box-shadow:0 14px 25px rgba(17,26,45,.08); display:none; flex-direction:column; gap:0; left:0; padding:12px 24px; position:absolute; right:0; top:76px; }.rc-public-nav.open { display:flex; }.rc-public-nav a { padding:12px 0; width:100%; }.rc-public-nav .rc-mobile-nav-link { display:flex; }.rc-hero-grid { gap:45px; grid-template-columns:1fr; padding-bottom:70px; padding-top:70px; }.rc-hero-copy { text-align:center; }.rc-hero-copy > p { margin-left:auto; margin-right:auto; }.rc-hero-actions,.rc-hero-trust { justify-content:center; }.rc-quick-book { margin:0 auto; max-width:520px; width:100%; }.rc-service-grid,.rc-fleet-grid { grid-template-columns:1fr 1fr; }.rc-service-grid article:last-child,.rc-fleet-grid article:last-child { grid-column:1/-1; }.rc-why-grid { gap:45px; }.rc-testimonials .rc-public-container { gap:40px; }.rc-faq-grid { gap:40px; }.rc-public-footer-grid { grid-template-columns:1.3fr 1fr 1fr; }.rc-public-footer-grid > div:last-child { grid-column:1/-1; }.rc-booking-shell { grid-template-columns:1fr; }}
@media(max-width:767.98px){.rc-public-container { padding-left:17px; padding-right:17px; }.rc-public-nav-wrap { height:66px; }.rc-public-nav { top:66px; }.rc-public-book-button { display:none; }.rc-hero-grid { min-height:auto; padding:65px 17px; }.rc-hero-copy h1 { font-size:45px; }.rc-hero-actions { align-items:stretch; flex-direction:column; }.rc-hero-secondary { justify-content:center; }.rc-public-section { padding:68px 0; }.rc-section-heading.split { align-items:flex-start; flex-direction:column; gap:14px; }.rc-service-grid,.rc-fleet-grid,.rc-why-grid,.rc-testimonials .rc-public-container,.rc-faq-grid { grid-template-columns:1fr; }.rc-service-grid article:last-child,.rc-fleet-grid article:last-child { grid-column:auto; }.rc-why-visual { height:300px; }.rc-big-car { font-size:180px; }.rc-rates-head { display:none; }.rc-rate-row { gap:7px; grid-template-columns:1fr auto; padding:15px; }.rc-rate-row > div { grid-column:1/-1; }.rc-rate-row > a { grid-column:2; grid-row:2; }.rc-process-grid { grid-template-columns:1fr 1fr; row-gap:35px; }.rc-process-grid::before { display:none; }.rc-public-cta .rc-public-container { align-items:flex-start; flex-direction:column; gap:25px; }.rc-public-footer-grid { grid-template-columns:1fr 1fr; }.rc-public-footer-grid > div:first-child,.rc-public-footer-grid > div:last-child { grid-column:1/-1; }.rc-public-footer-bottom { align-items:flex-start; flex-direction:column; gap:12px; }.rc-booking-page { padding-top:25px; }.rc-booking-main { padding:19px; }.rc-booking-progress > div { font-size:0; }.rc-vehicle-options { grid-template-columns:1fr; }.rc-vehicle-option > div { align-items:center; display:grid; grid-template-columns:55px 1fr; text-align:left; }.rc-vehicle-option i { grid-row:1/span 2; }.rc-success-card { padding:30px 22px; }}

/* Motion and interaction polish */
html { scroll-behavior:smooth; }
.rc-public-site { --rc-ease:cubic-bezier(.22,1,.36,1); --rc-ease-soft:cubic-bezier(.4,0,.2,1); }
.rc-public-section,.rc-why-section,.rc-faq-section,.rc-rates-section { scroll-margin-top:88px; }
.rc-scroll-progress { height:3px; left:0; pointer-events:none; position:fixed; right:0; top:0; z-index:2100; }
.rc-scroll-progress span { background:linear-gradient(90deg,#4e63f5,#9a68ef,#ffc450); box-shadow:0 0 12px rgba(78,99,245,.45); display:block; height:100%; transform:scaleX(0); transform-origin:left center; will-change:transform; }
.rc-scroll-navigator { align-items:flex-end; bottom:max(20px,env(safe-area-inset-bottom)); display:flex; flex-direction:column; gap:9px; pointer-events:none; position:fixed; right:24px; z-index:1550; }
.rc-scroll-control { align-items:center; backdrop-filter:blur(14px) saturate(150%); border:1px solid rgba(255,255,255,.45); border-radius:999px; box-shadow:0 12px 30px rgba(20,28,51,.18); display:flex; font:700 9px/1 Inter,sans-serif; gap:8px; height:44px; justify-content:center; min-width:78px; padding:0 15px; pointer-events:auto; transform:translateY(0) scale(1); transition:background .25s,border-color .25s,box-shadow .3s,opacity .28s,transform .35s var(--rc-ease),visibility .28s; }
.rc-scroll-control i { font-size:12px; transition:transform .3s var(--rc-ease); }
.rc-scroll-control:hover { box-shadow:0 16px 36px rgba(20,28,51,.26); transform:translateY(-3px); }
.rc-scroll-control:focus-visible { outline:3px solid color-mix(in srgb,var(--rp-accent) 62%,#fff); outline-offset:3px; }
.rc-scroll-control.is-hidden { opacity:0; pointer-events:none; transform:translateY(12px) scale(.88); visibility:hidden; }
.rc-scroll-next { background:linear-gradient(135deg,var(--rp-blue),var(--rp-secondary)); color:#fff; }
.rc-scroll-next:hover { color:#fff; }
.rc-scroll-top { background:color-mix(in srgb,#fff 88%,transparent); border-color:color-mix(in srgb,var(--rp-line) 82%,transparent); color:var(--rp-ink); }
.rc-scroll-top:hover { background:#fff; color:var(--rp-blue); }
.rc-public-header { position:sticky; top:0; transition:background .35s var(--rc-ease-soft),box-shadow .35s var(--rc-ease-soft),border-color .35s var(--rc-ease-soft); z-index:1000; }
.rc-public-header.is-scrolled { background:rgba(255,255,255,.88); border-color:rgba(218,224,236,.9); backdrop-filter:blur(18px) saturate(150%); box-shadow:0 12px 34px rgba(19,32,60,.1); }
.rc-public-logo,.rc-public-brand-logo { transition:transform .4s var(--rc-ease),box-shadow .4s var(--rc-ease); }
.rc-public-logo:hover .rc-public-brand-logo { box-shadow:0 9px 20px rgba(13,43,91,.2); transform:rotate(-4deg) scale(1.06); }
.rc-public-nav a { padding:8px 0; position:relative; }
.rc-public-nav a::after { background:linear-gradient(90deg,var(--rp-blue),#8c60e8); border-radius:999px; bottom:1px; content:''; height:2px; left:0; position:absolute; transform:scaleX(0); transform-origin:right center; transition:transform .35s var(--rc-ease); width:100%; }
.rc-public-nav a:hover::after { transform:scaleX(1); transform-origin:left center; }
.rc-public-menu-button { transition:background .25s,border-color .25s,color .25s,transform .25s var(--rc-ease); }
.rc-public-menu-button:hover,.rc-public-menu-button.is-active { background:#eef1ff; border-color:#cfd6ff; color:var(--rp-blue); transform:translateY(-1px); }
.rc-public-menu-button.is-active i { transform:rotate(90deg); }
.rc-public-menu-button i { transition:transform .3s var(--rc-ease); }
.rc-hero-orb { border-radius:50%; filter:blur(1px); pointer-events:none; position:absolute; z-index:0; }
.rc-hero-orb-one { background:radial-gradient(circle at 30% 30%,rgba(144,158,255,.42),rgba(78,99,245,.03) 68%); height:250px; right:5%; top:7%; width:250px; }
.rc-hero-orb-two { background:radial-gradient(circle at 40% 40%,rgba(255,196,80,.18),rgba(255,196,80,0) 70%); bottom:3%; height:190px; left:40%; width:190px; }
.rc-quick-book { border:0; overflow:visible; position:relative; transition:box-shadow .45s var(--rc-ease),transform .45s var(--rc-ease); }
.rc-quick-book:hover { box-shadow:0 34px 75px rgba(2,9,25,.32); transform:translateY(-5px); }
.rc-quick-book label>div,.rc-field input,.rc-field select,.rc-field textarea { transition:background .25s,border-color .25s,box-shadow .25s,transform .25s var(--rc-ease); }
.rc-quick-book label>div:focus-within { background:#fff; border-color:#9da9ff; box-shadow:0 0 0 4px rgba(78,99,245,.1); transform:translateY(-1px); }
.rc-field input:focus,.rc-field select:focus,.rc-field textarea:focus { background:#fff; border-color:#8f9dff; box-shadow:0 0 0 4px rgba(78,99,245,.1); outline:0; transform:translateY(-1px); }
.rc-public-book-button,.rc-hero-primary,.rc-quick-book button,.rc-next-step,.rc-submit-booking { overflow:hidden; position:relative; transition:background .25s,box-shadow .3s,transform .3s var(--rc-ease); }
.rc-public-book-button::before,.rc-hero-primary::before,.rc-quick-book button::before,.rc-next-step::before,.rc-submit-booking::before { background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.3) 48%,transparent 76%); content:''; inset:0; position:absolute; transform:translateX(-130%); transition:transform .65s var(--rc-ease); }
.rc-public-book-button:hover::before,.rc-hero-primary:hover::before,.rc-quick-book button:hover::before,.rc-next-step:hover::before,.rc-submit-booking:hover::before { transform:translateX(130%); }
.rc-public-book-button:hover,.rc-hero-primary:hover,.rc-quick-book button:hover,.rc-next-step:hover,.rc-submit-booking:hover { box-shadow:0 12px 24px rgba(61,80,213,.25); transform:translateY(-2px); }
.rc-public-book-button i,.rc-hero-primary i,.rc-quick-book button i,.rc-service-grid a i,.rc-fleet-grid a i,.rc-rate-row>a i { transition:transform .3s var(--rc-ease); }
.rc-public-book-button:hover i,.rc-hero-primary:hover i,.rc-quick-book button:hover i,.rc-service-grid a:hover i,.rc-fleet-grid a:hover i,.rc-rate-row>a:hover i { transform:translateX(4px); }
.rc-hero-secondary span { transition:background .3s,border-color .3s,transform .35s var(--rc-ease); }
.rc-hero-secondary:hover span { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.3); transform:rotate(-6deg) scale(1.06); }
.rc-route-strip a { transition:color .25s,transform .3s var(--rc-ease); }
.rc-route-strip a:hover { color:var(--rp-blue); transform:translateY(-2px); }
.rc-service-grid article,.rc-fleet-grid article { transition:border-color .35s,box-shadow .4s var(--rc-ease),transform .4s var(--rc-ease); }
.rc-service-grid article:hover { border-color:#d6dcff; box-shadow:0 22px 50px rgba(17,26,45,.11); transform:translateY(-8px); }
.rc-service-grid article.featured:hover { border-color:#34476e; box-shadow:0 25px 55px rgba(17,26,45,.2); }
.rc-service-grid article>span { transition:background .3s,color .3s,transform .4s var(--rc-ease); }
.rc-service-grid article:hover>span { background:#e3e8ff; transform:rotate(-7deg) scale(1.08); }
.rc-fleet-grid article:hover { border-color:#d6dcff; box-shadow:0 24px 55px rgba(17,26,45,.1); transform:translateY(-8px); }
.rc-fleet-visual i { transition:filter .4s,transform .5s var(--rc-ease); }
.rc-fleet-grid article:hover .rc-fleet-visual i { filter:drop-shadow(0 16px 15px rgba(78,99,245,.18)); transform:translateY(-6px) scale(1.06); }
.rc-floating-stat { transition:background .3s,border-color .3s,transform .4s var(--rc-ease); }
.rc-why-visual:hover .stat-one { background:rgba(255,255,255,.12); transform:translate(-4px,-4px); }
.rc-why-visual:hover .stat-two { background:rgba(255,255,255,.12); transform:translate(4px,-4px); }
.rc-why-list>div>span { transition:background .3s,transform .35s var(--rc-ease); }
.rc-why-list>div:hover>span { background:rgba(80,100,245,.34); transform:scale(1.08) rotate(-5deg); }
.rc-rate-row { transition:background .25s,box-shadow .25s; }
.rc-rate-row:hover { background:#f8f9ff; box-shadow:inset 3px 0 0 var(--rp-blue); }
.rc-rate-row:hover .rc-route-dot { box-shadow:0 0 0 5px rgba(78,99,245,.08); }
.rc-route-dot { transition:box-shadow .3s,transform .3s var(--rc-ease); }
.rc-process-grid article>span { transition:background .3s,box-shadow .3s,transform .4s var(--rc-ease); }
.rc-process-grid article:hover>span { background:var(--rp-blue); box-shadow:0 10px 25px rgba(78,99,245,.22); transform:translateY(-4px) scale(1.06); }
.rc-testimonial-main { transition:box-shadow .4s,transform .4s var(--rc-ease); }
.rc-testimonial-main:hover { box-shadow:0 24px 65px rgba(27,22,77,.2); transform:translateY(-5px); }
.rc-faq .accordion-button { transition:color .25s,padding .3s var(--rc-ease); }
.rc-faq .accordion-button:hover { color:var(--rp-blue); padding-left:8px; }
.rc-outline-button { transition:background .25s,border-color .25s,color .25s,transform .3s var(--rc-ease); }
.rc-outline-button:hover { background:var(--rp-ink); border-color:var(--rp-ink); color:#fff; transform:translateY(-2px); }
.rc-booking-main,.rc-booking-aside { box-shadow:0 18px 45px rgba(20,32,60,.055); min-width:0; }
.rc-booking-main { background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#dce1ff,#fff 45%,#ece5ff) border-box; border:1px solid transparent; }
.rc-booking-aside { transition:box-shadow .35s,transform .35s var(--rc-ease); }
.rc-booking-aside:hover { box-shadow:0 24px 55px rgba(20,32,60,.1); transform:translateY(-3px); }
.rc-booking-aside-top { background:linear-gradient(135deg,var(--rp-navy),#243b67); position:relative; }
.rc-booking-aside-top::after { background:radial-gradient(circle,rgba(152,165,255,.32),transparent 68%); content:''; height:110px; position:absolute; right:-32px; top:-42px; width:110px; }
.rc-booking-benefits { display:flex; flex-wrap:wrap; gap:7px; margin-top:15px; }
.rc-booking-benefits span { align-items:center; background:#f3f5ff; border:1px solid #e4e8ff; border-radius:999px; color:#59647a; display:inline-flex; font-size:8px; font-weight:650; gap:5px; padding:6px 9px; }
.rc-booking-benefits i { color:var(--rp-blue); font-size:12px; }
.rc-on-spot-booking-note { align-items:flex-start; background:linear-gradient(135deg,#f7f5ff 0%,#fff 72%); border:1px solid #ded8f5; border-left:4px solid var(--rp-blue); border-radius:14px; box-shadow:0 12px 28px rgba(50,31,82,.07); display:flex; gap:14px; padding:18px 20px; position:relative; }
.rc-on-spot-booking-note::after { background:var(--rp-blue); border-radius:999px; content:''; height:3px; left:18px; opacity:.18; position:absolute; right:18px; top:0; }
.rc-on-spot-booking-icon { align-items:center; background:linear-gradient(135deg,var(--rp-blue),var(--rp-violet)); border-radius:12px; box-shadow:0 10px 22px rgba(78,99,245,.2); color:#fff; display:flex; flex:0 0 42px; height:42px; justify-content:center; margin-top:2px; }
.rc-on-spot-booking-icon i { font-size:20px; }
.rc-on-spot-booking-note h1 { color:var(--rp-ink); font-size:18px; letter-spacing:-.35px; margin:4px 0 6px; }
.rc-on-spot-booking-note p { color:var(--rp-muted); font-size:9px; line-height:1.75; margin:0; max-width:750px; }
.rc-on-spot-booking-note p a { color:var(--rp-blue); font-weight:750; text-decoration:none; }
.rc-on-spot-booking-note p a:hover { text-decoration:underline; }
.rc-messaging-contact { background:linear-gradient(135deg,#f8f7ff,#fff); border:1px solid #e1ddf2; border-radius:13px; padding:16px; }
.rc-messaging-contact-heading { align-items:center; display:flex; gap:11px; margin-bottom:14px; }
.rc-messaging-contact-heading > span { align-items:center; background:#eee8ff; border-radius:10px; color:var(--rp-blue); display:flex; flex:0 0 38px; height:38px; justify-content:center; }
.rc-messaging-contact-heading > span i { font-size:18px; }
.rc-messaging-contact-heading strong,.rc-messaging-contact-heading small { display:block; }
.rc-messaging-contact-heading strong { color:var(--rp-ink); font-size:10px; }
.rc-messaging-contact-heading strong em { background:#eee8ff; border-radius:999px; color:var(--rp-blue); font-size:7px; font-style:normal; margin-left:5px; padding:3px 7px; text-transform:uppercase; }
.rc-messaging-contact-heading small { color:var(--rp-muted); font-size:8px; line-height:1.5; margin-top:2px; }
.rc-messaging-same-number { align-items:flex-start; cursor:pointer; display:flex; gap:8px; margin-top:8px; }
.rc-messaging-same-number > input { accent-color:var(--rp-blue); flex:0 0 auto; height:16px; margin-top:2px; width:16px; }
.rc-messaging-same-number > span { align-items:center; display:grid; gap:0 6px; grid-template-columns:auto 1fr; }
.rc-messaging-same-number i { color:var(--rp-blue); font-size:13px; grid-row:1 / span 2; }
.rc-messaging-same-number strong,.rc-messaging-same-number small { display:block; }
.rc-messaging-same-number strong { color:var(--rp-ink); font-size:8px; }
.rc-messaging-same-number small { color:var(--rp-muted); font-size:7px; }
.rc-messaging-contact input[readonly] { background:#f0eff8; color:#59647a; cursor:not-allowed; }
[data-messaging-number-panel][hidden] { display:none!important; }
.rc-booking-progress>div::before { transition:background .45s var(--rc-ease); }
.rc-booking-progress span { transition:background .35s,color .35s,box-shadow .35s,transform .4s var(--rc-ease); }
.rc-booking-progress .active span { box-shadow:0 0 0 6px rgba(78,99,245,.11),0 8px 18px rgba(78,99,245,.2); transform:scale(1.08); }
.rc-booking-progress .done span { box-shadow:0 6px 14px rgba(78,99,245,.16); }
.rc-trip-type span,.rc-vehicle-option>div { transition:background .3s,border-color .3s,box-shadow .3s,transform .35s var(--rc-ease); }
.rc-trip-type span:hover { background:#f0f3ff; border-color:#cfd6ff; transform:translateY(-2px); }
.rc-vehicle-option>div:hover { border-color:#cfd6ff; box-shadow:0 12px 25px rgba(78,99,245,.08); transform:translateY(-4px); }
.rc-vehicle-option input:checked+div { box-shadow:0 12px 28px rgba(78,99,245,.12),0 0 0 2px rgba(78,99,245,.08); transform:translateY(-3px); }
.rc-prev-step { transition:background .25s,border-color .25s,color .25s,transform .3s var(--rc-ease); }
.rc-prev-step:hover { background:#f5f7fb; border-color:#cfd5e1; transform:translateY(-2px); }
.rc-submit-booking.is-loading { cursor:wait; opacity:.82; pointer-events:none; }
.rc-booking-aside-body strong.is-updated,.rc-booking-review [data-summary].is-updated { animation:rcSummaryPulse .5s var(--rc-ease); }
.rc-return-visible { animation:rcReturnIn .42s var(--rc-ease) both; }
@media(min-width:992px){.rc-booking-aside { position:sticky; top:100px; }}

@media(prefers-reduced-motion:no-preference){
    .rc-motion-ready .rc-reveal { opacity:0; transform:translateY(28px) scale(.985); transition:opacity .75s var(--rc-ease) var(--rc-reveal-delay,0ms),transform .75s var(--rc-ease) var(--rc-reveal-delay,0ms); will-change:opacity,transform; }
    .rc-motion-ready .rc-reveal[data-reveal="left"] { transform:translateX(-34px); }
    .rc-motion-ready .rc-reveal[data-reveal="right"] { transform:translateX(34px); }
    .rc-motion-ready .rc-reveal.is-visible { opacity:1; transform:none; }
    .rc-motion-ready .rc-public-section:target .rc-reveal { opacity:1; transform:none; }
    .rc-motion-ready .rc-service-grid article.rc-reveal.is-visible:hover,.rc-motion-ready .rc-fleet-grid article.rc-reveal.is-visible:hover { transform:translateY(-8px); }
    .rc-hero-copy>* { animation:rcHeroIn .78s var(--rc-ease) both; }
    .rc-hero-copy>*:nth-child(1){animation-delay:.08s}.rc-hero-copy>*:nth-child(2){animation-delay:.16s}.rc-hero-copy>*:nth-child(3){animation-delay:.24s}.rc-hero-copy>*:nth-child(4){animation-delay:.31s}.rc-hero-copy>*:nth-child(5){animation-delay:.38s}.rc-hero-copy>*:nth-child(6){animation-delay:.45s}
    .rc-quick-book { animation:rcQuickBookIn .9s var(--rc-ease) .2s both; }
    .rc-hero-glow { animation:rcGlow 7s ease-in-out infinite alternate; }
    .rc-hero-orb-one { animation:rcFloatOne 8s ease-in-out infinite alternate; }
    .rc-hero-orb-two { animation:rcFloatTwo 10s ease-in-out infinite alternate; }
    .rc-hero-line-art { animation:rcLineDrift 12s ease-in-out infinite alternate; }
    .rc-floating-stat.stat-one { animation:rcStatFloat 4.8s ease-in-out infinite; }
    .rc-floating-stat.stat-two { animation:rcStatFloat 5.4s ease-in-out .8s infinite reverse; }
    .rc-stars { background:linear-gradient(90deg,#ffc450,#ffe29a,#ffc450); background-size:200% auto; background-clip:text; color:transparent; animation:rcStarShimmer 4s linear infinite; }
    .rc-public-nav.open { animation:rcMenuIn .28s var(--rc-ease) both; }
    .rc-booking-step.active { animation:rcStepIn .45s var(--rc-ease) both; }
    .rc-field-attention { animation:rcFieldShake .36s ease-in-out; }
    .rc-scroll-next:not(.is-hidden) i { animation:rcScrollNudge 1.8s ease-in-out infinite; }
}

@keyframes rcHeroIn { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:none} }
@keyframes rcQuickBookIn { from{opacity:0;transform:translateY(28px) scale(.97)} to{opacity:1;transform:none} }
@keyframes rcGlow { from{opacity:.12;transform:translate(-20px,-8px) scale(.92)} to{opacity:.22;transform:translate(25px,18px) scale(1.08)} }
@keyframes rcFloatOne { from{transform:translate3d(0,0,0) scale(.95)} to{transform:translate3d(-28px,30px,0) scale(1.08)} }
@keyframes rcFloatTwo { from{transform:translate3d(0,10px,0)} to{transform:translate3d(35px,-24px,0)} }
@keyframes rcLineDrift { from{transform:translateX(-1%) scale(1.02)} to{transform:translateX(1%) scale(1.045)} }
@keyframes rcStatFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
@keyframes rcStarShimmer { to{background-position:200% center} }
@keyframes rcMenuIn { from{opacity:0;transform:translateY(-8px)} to{opacity:1;transform:none} }
@keyframes rcStepIn { from{opacity:0;transform:translateX(18px)} to{opacity:1;transform:none} }
@keyframes rcReturnIn { from{opacity:0;transform:translateY(-8px)} to{opacity:1;transform:none} }
@keyframes rcSummaryPulse { 0%{color:var(--rp-blue);transform:translateY(2px)} 100%{transform:none} }
@keyframes rcFieldShake { 0%,100%{transform:translateX(0)} 30%{transform:translateX(-5px)} 60%{transform:translateX(5px)} }
@keyframes rcRouteStatusPulse { 0%,100%{opacity:.55;transform:scale(.82)} 50%{opacity:1;transform:scale(1.12)} }
@keyframes rcScrollNudge { 0%,100%{transform:translateY(-1px)} 50%{transform:translateY(3px)} }

@media(prefers-reduced-motion:reduce){
    html { scroll-behavior:auto; }
    .rc-public-site *,.rc-public-site *::before,.rc-public-site *::after { animation-duration:.001ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.001ms!important; }
    .rc-motion-ready .rc-reveal { opacity:1!important; transform:none!important; }
}

@media(max-width:767.98px){
    .rc-public-topbar .rc-public-container { gap:8px; height:38px; }
    .rc-topbar-copy-full,.rc-topbar-trust,.rc-topbar-hotline > span { display:none!important; }
    .rc-topbar-copy-mobile { display:inline!important; }
    .rc-topbar-assistance { flex:0 1 auto; min-width:0; white-space:nowrap; }
    .rc-topbar-hotline { flex:0 0 auto; gap:5px; margin-left:auto; padding:5px 0; white-space:nowrap; }
    .rc-topbar-hotline strong { font-size:9px; }
    .rc-public-brand-logo { height:48px; width:48px; }
    .rc-public-logo { font-size:17px; gap:8px; }
    .rc-scroll-navigator { bottom:max(14px,env(safe-area-inset-bottom)); gap:7px; right:14px; }
    .rc-scroll-control { border-radius:14px; height:44px; min-width:44px; padding:0; width:44px; }
    .rc-scroll-control span { display:none; }
    .rc-scroll-control i { font-size:14px; }
    .rc-service-area-notice { margin-left:auto; margin-right:auto; text-align:left; }
    .rc-quick-book:hover,.rc-booking-aside:hover { transform:none; }
    .rc-booking-benefits { gap:5px; }
    .rc-booking-benefits span { font-size:7px; padding:5px 7px; }
    .rc-on-spot-booking-note { border-left-width:3px; border-radius:12px; gap:10px; padding:14px; }
    .rc-on-spot-booking-icon { border-radius:10px; flex-basis:36px; height:36px; }
    .rc-on-spot-booking-icon i { font-size:17px; }
    .rc-on-spot-booking-note h1 { font-size:16px; margin-top:3px; }
    .rc-on-spot-booking-note p { font-size:8px; line-height:1.7; }
    .rc-messaging-contact { padding:13px; }
    .rc-messaging-contact-heading { align-items:flex-start; margin-bottom:12px; }
    .rc-messaging-contact-heading > span { flex-basis:34px; height:34px; }
}

/* Active brand palette and Google Places */
.rc-testimonials { background:linear-gradient(120deg,var(--rp-blue),var(--rp-secondary)); }
.rc-scroll-progress span { background:linear-gradient(90deg,var(--rp-blue),var(--rp-secondary),var(--rp-accent)); box-shadow:0 0 12px color-mix(in srgb,var(--rp-blue) 45%,transparent); }
.rc-booking-main { background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,color-mix(in srgb,var(--rp-blue) 30%,#fff),#fff 45%,color-mix(in srgb,var(--rp-secondary) 18%,#fff)) border-box; }
.rc-google-place-host { display:none; min-height:44px; }
.rc-place-field.is-google-enhanced .rc-google-place-host { display:block; }
.rc-place-native-hidden { display:none!important; }
.rc-google-place-widget,gmp-place-autocomplete { color-scheme:light; display:block; min-height:44px; width:100%; }
.rc-google-place-host { background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:9px; padding:2px 5px; transition:background .25s,border-color .25s,box-shadow .25s,transform .25s var(--rc-ease); }
.rc-google-place-host:focus-within { background:#fff; border-color:var(--rp-blue); box-shadow:0 0 0 4px color-mix(in srgb,var(--rp-blue) 12%,transparent); transform:translateY(-1px); }
.rc-place-field.is-place-selected .rc-google-place-host { border-color:color-mix(in srgb,var(--rp-green) 62%,var(--rp-line)); box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-green) 9%,transparent); }
.rc-google-place-note { align-items:center; color:var(--rp-muted); display:flex; font-size:7px; gap:5px; margin-top:6px; }
.rc-google-place-note i { color:var(--rp-blue); font-size:11px; }
.rc-place-field.is-place-selected .rc-google-place-note,.rc-place-field.is-place-selected .rc-google-place-note i { color:var(--rp-green); }
.google-places-unavailable .rc-google-place-note { display:none; }

/* Map-first booking route picker */
.rc-map-route-picker { background:linear-gradient(145deg,#fff,var(--rp-soft)); border:1px solid var(--rp-line); border-radius:16px; padding:18px; transition:border-color .3s,box-shadow .3s; }
.rc-distance-pricing-intro { align-items:center; background:linear-gradient(105deg,color-mix(in srgb,var(--rp-primary) 8%,#fff),#fff); border:1px solid color-mix(in srgb,var(--rp-primary) 24%,var(--rp-line)); border-radius:14px; color:var(--rp-ink); display:flex; gap:12px; margin-bottom:16px; padding:12px 14px; }
.rc-distance-pricing-intro>span { align-items:center; background:color-mix(in srgb,var(--rp-primary) 12%,#fff); border-radius:11px; color:var(--rp-primary); display:inline-flex; flex:0 0 36px; height:36px; justify-content:center; }
.rc-distance-pricing-intro i { font-size:20px; }
.rc-distance-pricing-intro strong,.rc-distance-pricing-intro small { display:block; }
.rc-distance-pricing-intro strong { font-size:13px; }
.rc-distance-pricing-intro small { color:var(--rp-muted); font-size:11px; line-height:1.55; margin-top:2px; }
.rc-map-picker-heading { align-items:flex-start; display:flex; gap:20px; justify-content:space-between; margin-bottom:16px; }
.rc-map-picker-heading h3 { color:var(--rp-ink); font-size:16px; margin:5px 0 4px; }
.rc-map-picker-heading p { color:var(--rp-muted); font-size:8px; line-height:1.6; margin:0; }
.rc-map-picker-actions { align-items:center; display:flex; flex:0 0 auto; gap:8px; }
.rc-map-live-badge { align-items:center; background:var(--rp-sky); border:1px solid color-mix(in srgb,var(--rp-blue) 18%,var(--rp-line)); border-radius:999px; color:var(--rp-blue); display:inline-flex; flex:0 0 auto; font-size:8px; font-weight:700; gap:6px; padding:7px 10px; }
.rc-map-clear-route { align-items:center; background:#fff; border:1px solid var(--rp-line); border-radius:999px; color:var(--rp-muted); display:inline-flex; font-size:8px; font-weight:700; gap:5px; padding:7px 10px; transition:background .2s,border-color .2s,color .2s,transform .2s var(--rc-ease); }
.rc-map-clear-route:hover { background:#fff6f4; border-color:color-mix(in srgb,var(--rp-secondary) 38%,var(--rp-line)); color:var(--rp-secondary); transform:translateY(-1px); }
.rc-map-clear-route:focus-visible { outline:3px solid color-mix(in srgb,var(--rp-blue) 18%,transparent); outline-offset:2px; }
.rc-map-clear-route[hidden] { display:none; }
.rc-map-search-host { align-items:center; background:#fff; border:1px solid var(--rp-line); border-radius:11px; display:flex; min-height:49px; overflow:visible; padding:3px 5px; position:relative; transition:border-color .25s,box-shadow .25s,transform .25s var(--rc-ease); z-index:7; }
.rc-map-search-host:focus-within { border-color:var(--rp-blue); box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-blue) 10%,transparent); transform:translateY(-1px); z-index:9; }
.rc-map-search-host > small { color:var(--rp-muted); font-size:8px; padding:0 10px; }
.rc-map-search-host gmp-place-autocomplete { color-scheme:light; display:block; min-height:42px; width:100%; }
.rc-map-search-host.is-unavailable { background:var(--rp-soft); }
.rc-road-route-status { align-items:center; background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:9px; color:var(--rp-muted); display:flex; font-size:8px; gap:8px; margin-bottom:12px; min-height:36px; padding:8px 11px; }
.rc-road-route-status > span { background:#a9b1c0; border-radius:50%; flex:0 0 auto; height:8px; width:8px; }
.rc-road-route-status[data-state="loading"] { color:var(--rp-blue); }
.rc-road-route-status[data-state="loading"] > span { animation:rcRouteStatusPulse .9s ease-in-out infinite; background:var(--rp-blue); box-shadow:0 0 0 4px color-mix(in srgb,var(--rp-blue) 10%,transparent); }
.rc-road-route-status[data-state="success"] { background:color-mix(in srgb,var(--rp-green) 7%,#fff); border-color:color-mix(in srgb,var(--rp-green) 22%,var(--rp-line)); color:#168b69; }
.rc-road-route-status[data-state="success"] > span { background:var(--rp-green); }
.rc-road-route-status[data-state="error"] { background:#fff7f4; border-color:#f3d3cb; color:#a95943; }
.rc-road-route-status[data-state="error"] > span { background:var(--rp-secondary); }
.rc-map-point-grid { display:grid; gap:9px; grid-template-columns:repeat(3,minmax(0,1fr)); margin-bottom:12px; }
.rc-map-primary-points { grid-template-columns:repeat(2,minmax(0,1fr)); }
.rc-map-point { align-items:center; background:#fff; border:1px solid var(--rp-line); border-radius:11px; color:var(--rp-ink); display:grid; gap:9px; grid-template-columns:31px minmax(0,1fr) 14px; min-height:65px; padding:10px; text-align:left; transition:background .25s,border-color .25s,box-shadow .25s,transform .25s var(--rc-ease); }
.rc-map-point:hover { border-color:color-mix(in srgb,var(--rp-blue) 38%,var(--rp-line)); transform:translateY(-2px); }
.rc-map-point.is-active { background:color-mix(in srgb,var(--rp-blue) 5%,#fff); border-color:var(--rp-blue); box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-blue) 9%,transparent); }
.rc-map-point > span:nth-child(2) { min-width:0; }
.rc-map-point small,.rc-map-point strong { display:block; }
.rc-map-point small { color:var(--rp-muted); font-size:7px; margin-bottom:3px; }
.rc-map-point small em { font-style:normal; opacity:.72; }
.rc-map-point strong { color:var(--rp-ink); display:-webkit-box; font-size:8px; font-weight:650; line-height:1.35; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.rc-map-point > i { color:#a5adbc; }
.rc-map-point.is-active > i { color:var(--rp-blue); }
.rc-map-point.is-set > i::before { content:"\2713"; font-family:Inter,sans-serif; font-weight:800; }
.rc-map-point-pin { align-items:center; background:var(--rp-blue); border:2px solid #fff; border-radius:50%; box-shadow:0 5px 12px rgba(20,32,60,.2); color:#fff; display:inline-flex; flex:0 0 auto; font-size:9px; font-weight:800; height:29px; justify-content:center; width:29px; }
.rc-map-point-pin.pickup { background:#164c9c; }.rc-map-point-pin.dropoff { background:#e1262f; }.rc-map-point-pin.waypoint { background:#d39a08; }
.rc-map-point-pin { font-style:normal; line-height:1; }
.rc-waypoint-manager { background:linear-gradient(135deg,#fffdf7,#fff); border:1px solid color-mix(in srgb,#d39a08 22%,var(--rp-line)); border-radius:12px; margin-bottom:12px; padding:11px; }
.rc-waypoint-manager-heading { align-items:center; display:flex; justify-content:space-between; margin-bottom:9px; }
.rc-waypoint-manager-heading > div span,.rc-waypoint-manager-heading > div small { display:block; }
.rc-waypoint-manager-heading > div span { color:var(--rp-ink); font-size:8px; font-weight:800; }
.rc-waypoint-manager-heading > div small { color:var(--rp-muted); font-size:6px; margin-top:2px; }
.rc-waypoint-manager-heading > strong { background:#fff5d9; border-radius:999px; color:#9d7200; font-size:7px; padding:5px 8px; }
.rc-waypoint-list { display:grid; gap:8px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.rc-waypoint-list:empty { display:none; }
.rc-waypoint-card { align-items:stretch; background:#fff; border:1px solid var(--rp-line); border-radius:10px; display:grid; grid-template-columns:minmax(0,1fr) 34px; min-width:0; overflow:hidden; transition:border-color .2s,box-shadow .2s,transform .2s var(--rc-ease); }
.rc-waypoint-card:hover { border-color:color-mix(in srgb,#d39a08 40%,var(--rp-line)); transform:translateY(-1px); }
.rc-waypoint-card.is-active { border-color:#d39a08; box-shadow:0 0 0 3px color-mix(in srgb,#d39a08 11%,transparent); }
.rc-waypoint-select { align-items:center; background:transparent; border:0; color:var(--rp-ink); display:grid; gap:8px; grid-template-columns:29px minmax(0,1fr) 13px; min-width:0; padding:9px; text-align:left; }
.rc-waypoint-select > span:nth-child(2) { min-width:0; }
.rc-waypoint-select small,.rc-waypoint-select strong { display:block; }
.rc-waypoint-select small { color:#a47500; font-size:6px; font-weight:750; margin-bottom:2px; }
.rc-waypoint-select strong { color:var(--rp-ink); display:-webkit-box; font-size:7px; line-height:1.35; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.rc-waypoint-select > i { color:#a5adbc; }
.rc-waypoint-card.is-set .rc-waypoint-select > i::before { content:"\2713"; font-family:Inter,sans-serif; font-weight:800; }
.rc-waypoint-remove { align-items:center; background:#fafbfe; border:0; border-left:1px solid var(--rp-line); color:#98a2b4; display:flex; justify-content:center; }
.rc-waypoint-remove:hover { background:#fff2ef; color:var(--rp-secondary); }
.rc-add-waypoint { align-items:center; background:#fff; border:1px dashed color-mix(in srgb,#d39a08 48%,var(--rp-line)); border-radius:10px; color:#9d7200; display:flex; gap:8px; justify-content:center; margin-top:8px; min-height:46px; padding:8px 11px; text-align:left; transition:background .2s,border-color .2s,transform .2s var(--rc-ease); width:100%; }
.rc-add-waypoint:hover { background:#fff9e9; border-color:#d39a08; transform:translateY(-1px); }
.rc-add-waypoint > i { font-size:16px; }
.rc-add-waypoint span strong,.rc-add-waypoint span small { display:block; }
.rc-add-waypoint span strong { color:var(--rp-ink); font-size:7px; }
.rc-add-waypoint span small { color:var(--rp-muted); font-size:6px; margin-top:2px; }
.rc-add-waypoint:disabled { cursor:not-allowed; opacity:.55; transform:none; }
.rc-booking-map-wrap { border:1px solid var(--rp-line); border-radius:13px; box-shadow:0 13px 30px rgba(20,32,60,.08); overflow:visible; position:relative; }
.rc-booking-map { background:#e8edf4; border-radius:13px; height:400px; overflow:hidden; width:100%; }
.rc-route-metrics { animation:rcMetricReveal .45s var(--rc-ease) both; background:#fff; border:1px solid var(--rp-line); border-radius:13px; box-shadow:0 13px 30px rgba(20,32,60,.07); display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:12px; overflow:hidden; }
.rc-route-metrics[hidden] { display:none; }
.rc-route-metric { align-items:center; display:grid; gap:13px; grid-template-columns:42px minmax(0,1fr); min-height:91px; padding:15px 20px; }
.rc-route-metric + .rc-route-metric { border-left:1px solid var(--rp-line); }
.rc-route-metric-icon { align-items:center; background:color-mix(in srgb,var(--rp-secondary) 8%,#fff); border:1px solid color-mix(in srgb,var(--rp-secondary) 18%,var(--rp-line)); border-radius:13px; color:var(--rp-secondary); display:flex; font-size:22px; height:42px; justify-content:center; width:42px; }
.rc-route-metric > span:last-child { min-width:0; }
.rc-route-metric small,.rc-route-metric strong,.rc-route-metric em { display:block; }
.rc-route-metric small { color:var(--rp-muted); font-size:7px; font-style:normal; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.rc-route-metric strong { color:var(--rp-ink); font-size:23px; font-weight:700; letter-spacing:-.045em; line-height:1.15; margin-top:4px; }
.rc-route-metric em { color:#9ba5b7; font-size:6px; font-style:normal; margin-top:3px; }
@keyframes rcMetricReveal { from { opacity:0; transform:translateY(-7px); } to { opacity:1; transform:translateY(0); } }
.rc-map-loading { align-items:center; color:var(--rp-blue); display:flex; flex-direction:column; height:100%; justify-content:center; }
.rc-map-loading strong { color:var(--rp-ink); font-size:10px; margin-top:10px; }.rc-map-loading small { color:var(--rp-muted); font-size:8px; margin-top:3px; }
.rc-map-search-control { --rc-search-accent:#164c9c; align-items:center; backdrop-filter:blur(16px); background:rgba(255,255,255,.97); border:1px solid rgba(255,255,255,.82); border-radius:13px; box-shadow:0 12px 30px rgba(20,32,60,.17); display:grid; gap:8px; grid-template-columns:30px minmax(0,1fr); left:12px; max-width:460px; padding:8px 9px; position:absolute; top:12px; width:calc(100% - 92px); z-index:8; }
.rc-map-search-control[data-active-point="dropoff"] { --rc-search-accent:#e1262f; }
.rc-map-search-control[data-active-point^="waypoint-"] { --rc-search-accent:#d39a08; }
.rc-map-search-control:focus-within { box-shadow:0 16px 40px rgba(20,32,60,.2); }
.rc-map-search-control > .rc-map-point-pin { height:28px; width:28px; }
.rc-map-search-control-body { min-width:0; }
.rc-map-search-control-body > small { align-items:center; color:var(--rp-muted); display:flex; font-size:6px; gap:4px; letter-spacing:.075em; margin:0 3px 5px; text-transform:uppercase; }
.rc-map-search-control-body > small::before { background:var(--rc-search-accent); border-radius:50%; content:""; height:4px; width:4px; }
.rc-map-search-control-body > small strong { color:var(--rp-ink); font-weight:800; }
.rc-map-search-control .rc-map-search-host { background:transparent; border:0; border-radius:9px; box-shadow:none; min-height:38px; overflow:visible; padding:0; transform:none; }
.rc-map-search-control .rc-map-search-host:focus-within { border:0; box-shadow:none; transform:none; }
.rc-map-search-control .rc-map-search-host gmp-place-autocomplete { background:#f7f9fc; border:1px solid #dbe2ed; border-radius:9px; color:var(--rp-ink); color-scheme:light; display:block; font:600 9px/1.35 Inter,sans-serif; min-height:38px; transition:background .2s,border-color .2s; width:100%; }
.rc-map-search-control .rc-map-search-host gmp-place-autocomplete:hover { background:#fff; border-color:color-mix(in srgb,var(--rc-search-accent) 34%,#dbe2ed); }
.rc-map-search-control .rc-map-search-host gmp-place-autocomplete:focus-within { background:#fff; border-color:var(--rc-search-accent); }
.rc-map-search-control gmp-place-autocomplete::part(input) { background:transparent; border:0; border-radius:8px; box-shadow:none; color:var(--rp-ink); font:600 9px/1.35 Inter,sans-serif; min-height:36px; outline:0; padding-block:0; }
.rc-map-search-control gmp-place-autocomplete::part(focus-ring) { border:0; box-shadow:none; outline:0; }
.rc-map-search-control gmp-place-autocomplete::part(prediction-list) { background:#fff; border:1px solid var(--rp-line); border-radius:12px; color:var(--rp-ink); font:500 9px/1.4 Inter,sans-serif; margin-top:7px; overflow:hidden; }
.rc-map-search-control gmp-place-autocomplete::part(prediction-item) { border-radius:8px; color:var(--rp-muted); margin:3px; min-height:42px; }
.rc-map-search-control gmp-place-autocomplete::part(prediction-item-selected) { background:color-mix(in srgb,var(--rc-search-accent) 9%,#fff); color:var(--rp-ink); }
.rc-map-search-control gmp-place-autocomplete::part(prediction-item-main-text) { color:var(--rp-ink); font-weight:700; }
.rc-map-search-control gmp-place-autocomplete::part(prediction-item-match) { color:var(--rc-search-accent); font-weight:800; }
.rc-map-search-control gmp-place-autocomplete::part(prediction-item-secondary-text) { color:var(--rp-muted); }
.rc-place-search-icon,.rc-place-clear-icon { align-items:center; border-radius:50%; display:inline-flex; height:22px; justify-content:center; pointer-events:none; width:22px; }
.rc-place-search-icon { background:color-mix(in srgb,var(--rc-search-accent) 9%,#fff); color:var(--rc-search-accent); }
.rc-place-clear-icon { background:#edf1f7; color:#6f7b90; font-size:8px; transition:background .2s,color .2s; }
.rc-map-search-host.is-loading gmp-place-autocomplete { opacity:.68; pointer-events:none; }
.rc-map-clear-waypoint { background:rgba(255,255,255,.95); border:1px solid var(--rp-line); border-radius:8px; bottom:26px; color:var(--rp-muted); font-size:7px; font-weight:650; left:12px; padding:7px 9px; position:absolute; z-index:5; }
.rc-map-clear-waypoint:hover { border-color:var(--rp-secondary); color:var(--rp-secondary); }
.rc-map-fallback { display:none; }
.rc-map-route-picker.is-map-unavailable .rc-map-point-grid,.rc-map-route-picker.is-map-unavailable .rc-waypoint-manager,.rc-map-route-picker.is-map-unavailable .rc-booking-map-wrap,.rc-map-route-picker.is-map-unavailable .rc-route-metrics,.rc-map-route-picker.is-map-unavailable .rc-map-live-badge { display:none; }
.rc-map-route-picker.is-map-unavailable .rc-road-route-status { display:none; }
.rc-map-route-picker.is-map-unavailable .rc-map-fallback { display:block; }
.rc-map-fallback > p { align-items:center; background:#fff5df; border:1px solid #f4dfb3; border-radius:9px; color:#90661d; display:flex; font-size:8px; gap:7px; padding:10px 12px; }
.rc-map-route-picker.rc-field-attention { border-color:var(--rp-secondary); box-shadow:0 0 0 4px color-mix(in srgb,var(--rp-secondary) 10%,transparent); }

@media(max-width:767.98px){
    .rc-map-route-picker { padding:13px; }
    .rc-distance-pricing-intro { align-items:flex-start; padding:11px 12px; }
    .rc-map-picker-heading { flex-direction:column; gap:10px; }
    .rc-map-picker-actions { flex-wrap:wrap; }
    .rc-map-point-grid { grid-template-columns:1fr; }
    .rc-waypoint-list { grid-template-columns:1fr; }
    .rc-map-point { min-height:58px; }
    .rc-booking-map { height:360px; }
    .rc-route-metric { min-height:82px; padding:13px 14px; }
    .rc-route-metric strong { font-size:19px; }
    .rc-map-live-badge { align-self:flex-start; }
    .rc-map-search-control { grid-template-columns:30px minmax(0,1fr); left:10px; max-width:none; padding:8px; right:10px; top:10px; width:auto; }
    .rc-map-search-control > .rc-map-point-pin { height:28px; width:28px; }
    .rc-map-search-control-body > small { font-size:7px; }
    .rc-map-search-control .rc-map-search-host gmp-place-autocomplete,.rc-map-search-control gmp-place-autocomplete::part(input) { font-size:12px; }
    .rc-map-search-control .rc-map-search-host,.rc-map-search-control .rc-map-search-host gmp-place-autocomplete { min-height:44px; }
    .rc-map-search-control gmp-place-autocomplete::part(input) { min-height:42px; }
    .rc-place-search-icon,.rc-place-clear-icon { height:25px; width:25px; }
}

@media(max-width:767.98px){
    .rc-public-logo > span { white-space:nowrap; }
    .rc-public-menu-button { height:44px; width:44px; }
    .rc-public-nav a { font-size:12px; min-height:44px; }
    .rc-hero-grid { padding-bottom:54px; padding-top:54px; }
    .rc-hero-copy h1 { font-size:clamp(38px,11.5vw,43px); letter-spacing:-2.2px; }
    .rc-hero-copy > p { font-size:12px; }
    .rc-quick-book { padding:14px 21px 21px; }
    .rc-public-section { padding:58px 0; }
    .rc-why-copy h2 { font-size:34px; letter-spacing:-1.2px; }
    .rc-testimonial-main { padding:25px; }
    .rc-testimonial-main blockquote { font-size:17px; }
    .rc-public-footer-grid p,.rc-public-footer-grid a,.rc-public-footer-grid span { font-size:10px; }
    .rc-booking-heading h1 { font-size:24px; }
    .rc-booking-main { padding:16px; }
    .rc-map-route-picker { padding:11px; }
    .rc-booking-map { height:340px; }
    .rc-route-metrics { grid-template-columns:1fr; }
    .rc-route-metric { grid-template-columns:38px minmax(0,1fr); min-height:76px; padding:12px 14px; }
    .rc-route-metric + .rc-route-metric { border-left:0; border-top:1px solid var(--rp-line); }
    .rc-route-metric-icon { border-radius:11px; font-size:19px; height:38px; width:38px; }
    .rc-route-metric strong { font-size:18px; }
    .rc-booking-actions { gap:10px; }
    .rc-booking-actions button { min-height:44px; }
}

@media(max-width:374.98px){
    .rc-public-container { padding-left:13px; padding-right:13px; }
    .rc-public-logo { font-size:15px; }
    .rc-public-brand-logo { height:44px; width:44px; }
    .rc-public-nav-wrap { height:62px; }
    .rc-public-nav { top:62px; }
    .rc-booking-main { padding:14px; }
    .rc-booking-benefits span { padding-left:6px; padding-right:6px; }
    .rc-map-point { padding:8px; }
}

/* Customer booking summary and manual payment portal */
.rc-vehicle-option b { color:var(--rp-blue); display:block; font-size:8px; margin-top:6px; }

/* Specific fleet models */
.rc-fleet-visual img { filter:drop-shadow(0 15px 16px rgba(17,26,45,.18)); height:145px; object-fit:contain; position:relative; transition:filter .4s,transform .5s var(--rc-ease); width:100%; z-index:1; }
.rc-fleet-grid article:hover .rc-fleet-visual img { filter:drop-shadow(0 20px 18px rgba(78,99,245,.2)); transform:translateY(-6px) scale(1.04); }
.rc-fleet-category,.rc-vehicle-category { background:color-mix(in srgb,var(--rp-blue) 10%,#fff); border:1px solid color-mix(in srgb,var(--rp-blue) 18%,#fff); border-radius:99px; color:var(--rp-blue); display:inline-flex; font-size:7px; font-weight:800; letter-spacing:.08em; padding:4px 8px; text-transform:uppercase; }
.rc-fleet-category { margin-bottom:7px; }
.rc-vehicle-options { align-items:stretch; grid-template-columns:repeat(3,minmax(0,1fr)); }
.rc-vehicle-option { height:100%; }
.rc-vehicle-option > div { display:flex; flex-direction:column; height:100%; padding:12px 14px 16px; }
.rc-vehicle-copy { align-items:center; display:flex; flex:1; flex-direction:column; min-width:0; width:100%; }
.rc-vehicle-artwork { align-items:center; display:flex; height:112px; justify-content:center; margin-bottom:5px; position:relative; }
.rc-vehicle-artwork::after { background:var(--rp-blue); border-radius:50%; content:''; filter:blur(22px); height:42px; opacity:.1; position:absolute; width:120px; }
.rc-vehicle-artwork img { filter:drop-shadow(0 11px 11px rgba(17,26,45,.16)); height:108px; object-fit:contain; position:relative; transition:transform .35s var(--rc-ease); width:100%; z-index:1; }
.rc-vehicle-artwork > i { position:relative; z-index:1; }
.rc-vehicle-option:hover .rc-vehicle-artwork img,.rc-vehicle-option input:checked + div .rc-vehicle-artwork img { transform:translateY(-3px) scale(1.04); }
.rc-vehicle-option .rc-vehicle-category { align-self:center; display:inline-flex; margin-bottom:1px; }
.rc-vehicle-option strong { line-height:1.3; }
.rc-vehicle-option small + small { margin-top:4px; }
.rc-vehicle-option b { margin-top:auto; padding-top:7px; }

@media(max-width:991.98px){
    .rc-vehicle-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767.98px){
    .rc-vehicle-options { grid-template-columns:1fr; }
    .rc-vehicle-option > div { align-items:center; display:grid; gap:14px; grid-template-columns:112px minmax(0,1fr); min-height:142px; padding:14px; text-align:left; }
    .rc-vehicle-artwork { grid-column:1; grid-row:1; height:90px; margin:0; width:112px; }
    .rc-vehicle-artwork::after { height:34px; width:90px; }
    .rc-vehicle-artwork img { height:86px; }
    .rc-vehicle-copy { align-items:flex-start; grid-column:2; min-width:0; width:100%; }
    .rc-vehicle-option .rc-vehicle-category { align-self:flex-start; }
    .rc-vehicle-option strong { margin:6px 0 3px; }
    .rc-vehicle-option b { margin-top:8px; padding-top:0; }
}
@media(max-width:399.98px){
    .rc-vehicle-option > div { gap:11px; grid-template-columns:96px minmax(0,1fr); padding:12px; }
    .rc-vehicle-artwork { height:78px; width:96px; }
    .rc-vehicle-artwork img { height:74px; }
}
.rc-customer-portal { background:var(--rp-soft); min-height:75vh; padding-bottom:78px; }
.rc-customer-hero { background:linear-gradient(130deg,var(--rp-navy),var(--rp-navy-2)); color:#fff; overflow:hidden; padding:45px 0 88px; position:relative; }
.rc-customer-hero::after { background:radial-gradient(circle,color-mix(in srgb,var(--rp-blue) 50%,transparent),transparent 68%); content:''; height:420px; opacity:.35; position:absolute; right:-100px; top:-180px; width:420px; }
.rc-customer-hero-grid { align-items:center; display:grid; gap:50px; grid-template-columns:minmax(0,1fr) 390px; position:relative; z-index:1; }
.rc-customer-hero .rc-section-kicker { color:var(--rp-accent); }
.rc-customer-hero h1 { color:#fff; font-size:35px; letter-spacing:-1.3px; margin:12px 0 10px; }.rc-customer-hero p { color:#bbc6d8; font-size:11px; line-height:1.75; margin:0; max-width:650px; }
.rc-customer-reference { align-items:center; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.13); border-radius:11px; display:inline-flex; gap:18px; margin-top:22px; padding:10px 11px 10px 15px; }.rc-customer-reference small,.rc-customer-reference strong { display:block; }.rc-customer-reference small { color:#9da9bd; font-size:7px; text-transform:uppercase; }.rc-customer-reference strong { color:#fff; font-size:13px; letter-spacing:.04em; margin-top:2px; }.rc-customer-reference button { align-items:center; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.12); border-radius:8px; color:#fff; display:flex; font-size:8px; gap:5px; height:34px; padding:0 10px; }
.rc-customer-status-card { align-items:center; background:rgba(255,255,255,.09); backdrop-filter:blur(12px); border:1px solid rgba(255,255,255,.13); border-radius:16px; display:grid; gap:11px; grid-template-columns:auto 1fr 1px auto 1fr; padding:19px; }.rc-customer-status-icon { align-items:center; background:rgba(255,255,255,.1); border-radius:10px; color:var(--rp-accent); display:flex; height:42px; justify-content:center; width:42px; }.rc-customer-status-icon.payment { color:#9ed0ff; }.rc-customer-status-card small,.rc-customer-status-card strong { display:block; }.rc-customer-status-card small { color:#9eabc0; font-size:7px; }.rc-customer-status-card strong { color:#fff; font-size:10px; margin-top:2px; }.rc-customer-status-divider { background:rgba(255,255,255,.15); height:40px; }
.rc-customer-layout { display:grid; gap:24px; grid-template-columns:minmax(0,1fr) 300px; margin-top:-52px; position:relative; z-index:2; }.rc-customer-alert { align-items:flex-start; border-radius:12px; display:flex; font-size:9px; gap:10px; grid-column:1/-1; padding:13px 15px; }.rc-customer-alert.success { background:#eaf9f3; border:1px solid #bcebd8; color:#147751; }.rc-customer-alert.error { background:#fff0f2; border:1px solid #fac8d0; color:#a82b42; }.rc-customer-alert small { display:block; margin-top:3px; }
.rc-customer-main,.rc-customer-aside { display:grid; gap:22px; height:max-content; }.rc-customer-panel { background:#fff; border:1px solid var(--rp-line); border-radius:17px; box-shadow:0 18px 45px rgba(20,32,60,.055); padding:25px; }
.rc-customer-panel-heading { align-items:flex-start; display:flex; gap:20px; justify-content:space-between; margin-bottom:23px; }.rc-customer-panel-heading > div > span { color:var(--rp-blue); display:block; font-size:8px; font-weight:800; letter-spacing:.09em; margin-bottom:6px; text-transform:uppercase; }.rc-customer-panel-heading h2 { color:var(--rp-ink); font-size:19px; letter-spacing:-.4px; margin:0 0 5px; }.rc-customer-panel-heading p { color:var(--rp-muted); font-size:9px; line-height:1.65; margin:0; max-width:570px; }
.rc-booking-stage-badge,.rc-manual-payment-badge { align-items:center; background:#eaf9f3; border:1px solid #c8ecdd; border-radius:999px; color:#16845b; display:flex; flex:0 0 auto; font-size:7px; font-weight:750; gap:5px; padding:6px 9px; }.rc-manual-payment-badge { background:#eef3ff; border-color:#dce5fa; color:var(--rp-blue); }
.rc-trip-route { display:grid; gap:0; grid-template-columns:28px 1fr; margin-bottom:23px; position:relative; }.rc-trip-route-line { align-items:center; display:flex; flex-direction:column; grid-row:1/span 20; padding-top:3px; }.rc-trip-route-line i,.rc-trip-route-line b { background:#fff; border:3px solid var(--rp-blue); border-radius:50%; height:12px; width:12px; z-index:1; }.rc-trip-route-line b { border-color:var(--rp-secondary); }.rc-trip-route-line span { background:repeating-linear-gradient(to bottom,#cbd4e5 0,#cbd4e5 4px,transparent 4px,transparent 8px); flex:1; min-height:32px; width:2px; }.rc-trip-route > div:not(.rc-trip-route-line) { border-bottom:1px solid var(--rp-line); min-height:55px; padding:0 0 13px 7px; }.rc-trip-route > div:not(.rc-trip-route-line) + div:not(.rc-trip-route-line) { padding-top:13px; }.rc-trip-route > div:last-child { border:0; }.rc-trip-route small,.rc-trip-route strong { display:block; }.rc-trip-route small { color:var(--rp-muted); font-size:7px; margin-bottom:3px; text-transform:uppercase; }.rc-trip-route strong { color:var(--rp-ink); font-size:10px; line-height:1.45; }.rc-trip-route .waypoint small { color:#ad790d; }
.rc-trip-detail-grid { display:grid; gap:1px; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:hidden; }.rc-trip-detail-grid > div { background:var(--rp-soft); min-height:86px; padding:14px; }.rc-trip-detail-grid > div:first-child { border-radius:11px 0 0 0; }.rc-trip-detail-grid > div:nth-child(3) { border-radius:0 11px 0 0; }.rc-trip-detail-grid > div > span { align-items:center; background:#fff; border:1px solid var(--rp-line); border-radius:8px; color:var(--rp-blue); display:flex; height:27px; justify-content:center; margin-bottom:9px; width:27px; }.rc-trip-detail-grid small,.rc-trip-detail-grid strong { display:block; }.rc-trip-detail-grid small { color:var(--rp-muted); font-size:7px; }.rc-trip-detail-grid strong { color:var(--rp-ink); font-size:9px; line-height:1.45; margin-top:3px; }
.rc-payment-method-grid { display:grid; gap:10px; grid-template-columns:repeat(4,minmax(0,1fr)); }.rc-payment-method-card { background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:13px; cursor:pointer; min-height:190px; padding:15px; position:relative; transition:.25s; }.rc-payment-method-card:hover { background:#fff; border-color:color-mix(in srgb,var(--rp-blue) 34%,var(--rp-line)); transform:translateY(-2px); }.rc-payment-method-card.is-selected { background:color-mix(in srgb,var(--rp-blue) 5%,#fff); border-color:var(--rp-blue); box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-blue) 9%,transparent); }.rc-payment-method-card > input { height:1px; opacity:0; position:absolute; width:1px; }.rc-payment-method-check { align-items:center; background:#fff; border:1px solid var(--rp-line); border-radius:50%; color:transparent; display:flex; height:21px; justify-content:center; position:absolute; right:12px; top:12px; width:21px; }.rc-payment-method-card.is-selected .rc-payment-method-check { background:var(--rp-blue); border-color:var(--rp-blue); color:#fff; }.rc-payment-method-icon { align-items:center; background:#fff; border:1px solid var(--rp-line); border-radius:9px; color:var(--rp-blue); display:flex; height:38px; justify-content:center; margin-bottom:13px; width:38px; }.rc-payment-method-card > strong,.rc-payment-method-card > small { display:block; }.rc-payment-method-card > strong { color:var(--rp-ink); font-size:10px; }.rc-payment-method-card > small { color:var(--rp-muted); font-size:7px; margin-top:2px; }.rc-payment-method-account { border-top:1px solid var(--rp-line); display:block; margin-top:11px; padding-top:10px; }.rc-payment-method-account em,.rc-payment-method-account b,.rc-payment-method-account i { display:block; font-style:normal; }.rc-payment-method-account em { color:var(--rp-ink); font-size:7px; font-weight:700; }.rc-payment-method-account b { color:var(--rp-blue); font-size:9px; margin-top:3px; overflow-wrap:anywhere; }.rc-payment-method-account i { color:var(--rp-muted); font-size:6.5px; line-height:1.45; margin-top:5px; }
.rc-dummy-account-notice { align-items:flex-start; background:#fff8e8; border:1px solid #f2dcaa; border-radius:10px; color:#92671a; display:flex; font-size:8px; gap:8px; line-height:1.6; margin:15px 0 20px; padding:11px 12px; }.rc-dummy-account-notice strong { color:#7a5311; }
.rc-payment-fee-badge { background:#fff2d4; border:1px solid #efd18a; border-radius:999px; color:#936513; display:inline-flex; font-size:6.5px; font-weight:800; margin-top:8px; padding:4px 7px; text-transform:uppercase; }
.rc-payment-fee-summary { background:linear-gradient(120deg,#f3efff,#fff); border:1px solid color-mix(in srgb,var(--rp-blue) 26%,var(--rp-line)); border-radius:13px; display:grid; gap:0; grid-template-columns:repeat(3,minmax(0,1fr)); margin:-5px 0 20px; overflow:hidden; }.rc-payment-fee-summary[hidden] { display:none; }.rc-payment-fee-summary > div { border-right:1px solid var(--rp-line); padding:13px 15px; }.rc-payment-fee-summary > div:last-of-type { border:0; }.rc-payment-fee-summary span,.rc-payment-fee-summary strong { display:block; }.rc-payment-fee-summary span { color:var(--rp-muted); font-size:7px; }.rc-payment-fee-summary strong { color:var(--rp-ink); font-size:13px; margin-top:3px; }.rc-payment-fee-summary .total { background:var(--rp-navy); }.rc-payment-fee-summary .total span { color:#aebbd0; }.rc-payment-fee-summary .total strong { color:#fff; }.rc-payment-fee-summary > p { color:var(--rp-muted); font-size:7px; grid-column:1/-1; margin:0; padding:8px 15px; text-align:right; }
.rc-payment-form-grid { display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); }.rc-payment-field { display:block; min-width:0; }.rc-payment-field.span-2 { grid-column:1/-1; }.rc-payment-field > span:first-child { color:var(--rp-ink); display:block; font-size:8px; font-weight:750; margin-bottom:7px; }.rc-payment-field > span b { color:var(--rp-secondary); }.rc-payment-field > span em { color:var(--rp-muted); font-style:normal; font-weight:500; }.rc-payment-field > input,.rc-payment-field > textarea,.rc-payment-input-prefix { background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:10px; color:var(--rp-ink); font-size:10px; min-height:45px; outline:0; padding:0 13px; width:100%; }.rc-payment-field > textarea { min-height:84px; padding-top:12px; resize:vertical; }.rc-payment-field > input:focus,.rc-payment-field > textarea:focus,.rc-payment-input-prefix:focus-within { background:#fff; border-color:var(--rp-blue); box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-blue) 8%,transparent); }.rc-payment-input-prefix { align-items:center; display:flex; padding:0; }.rc-payment-input-prefix i { border-right:1px solid var(--rp-line); color:var(--rp-muted); font-style:normal; padding:0 13px; }.rc-payment-input-prefix input { background:transparent; border:0; color:var(--rp-ink); height:43px; outline:0; padding:0 12px; width:100%; }
.rc-proof-upload { position:relative; }.rc-proof-upload > input { cursor:pointer; inset:23px 0 0; opacity:0; position:absolute; z-index:2; }.rc-proof-upload-inner { align-items:center; background:var(--rp-soft); border:1px dashed #c8d0df; border-radius:10px; color:var(--rp-blue); display:flex!important; gap:10px; min-height:84px; padding:12px; }.rc-proof-upload-inner strong,.rc-proof-upload-inner small { display:block; }.rc-proof-upload-inner strong { color:var(--rp-ink); font-size:9px; }.rc-proof-upload-inner small { color:var(--rp-muted); font-size:7px; margin-top:2px; }
.rc-payment-submit-row { align-items:center; border-top:1px solid var(--rp-line); display:flex; gap:20px; justify-content:space-between; margin-top:21px; padding-top:19px; }.rc-payment-submit-row p { align-items:center; color:var(--rp-muted); display:flex; font-size:8px; gap:6px; margin:0; }.rc-payment-submit-row p i { color:var(--rp-blue); }.rc-payment-submit-row .rc-public-book-button { flex:0 0 auto; }
.rc-submission-status { align-items:center; background:#eef4ff; border:1px solid #d9e5fb; border-radius:13px; display:flex; gap:15px; padding:20px; }.rc-submission-status > span { align-items:center; background:#fff; border-radius:50%; color:var(--rp-blue); display:flex; flex:0 0 auto; height:52px; justify-content:center; width:52px; }.rc-submission-status small { color:var(--rp-blue); display:block; font-size:7px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.rc-submission-status h3 { color:var(--rp-ink); font-size:15px; margin:4px 0; }.rc-submission-status p { color:var(--rp-muted); font-size:9px; margin:0; }.rc-submission-status strong { color:var(--rp-ink); display:block; font-size:9px; margin-top:8px; }.rc-submission-status.is-verified { background:#eaf9f3; border-color:#c9eddf; }.rc-submission-status.is-verified > span { color:#16845b; }.rc-submission-status.is-rejected { background:#fff1f3; border-color:#f8ccd3; margin-bottom:18px; }.rc-submission-status.is-rejected > span { color:#c52f49; }
.rc-admin-payment-note { align-items:center; background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:10px; display:flex; gap:10px; margin-top:12px; padding:12px; }.rc-admin-payment-note > i { color:var(--rp-blue); }.rc-admin-payment-note small,.rc-admin-payment-note strong { display:block; }.rc-admin-payment-note small { color:var(--rp-muted); font-size:7px; }.rc-admin-payment-note strong { color:var(--rp-ink); font-size:9px; margin-top:2px; }
.rc-fare-card { background:linear-gradient(145deg,var(--rp-navy),var(--rp-navy-2)); border:0; color:#fff; }.rc-fare-card .rc-section-kicker { color:var(--rp-accent); }.rc-fare-card > strong { color:#fff; display:block; font-size:31px; letter-spacing:-1px; margin:10px 0 5px; }.rc-fare-card > p { color:#aebbd0; font-size:8px; line-height:1.65; }.rc-fare-card > div { border-top:1px solid rgba(255,255,255,.12); margin-top:16px; padding-top:13px; }.rc-fare-card > div > span { align-items:center; display:flex; justify-content:space-between; margin-top:8px; }.rc-fare-card small { color:#96a6be; font-size:7px; }.rc-fare-card b { color:#fff; font-size:8px; }
.rc-contact-card > span { align-items:center; background:#eef3ff; border-radius:10px; color:var(--rp-blue); display:flex; height:40px; justify-content:center; width:40px; }.rc-contact-card h3 { color:var(--rp-ink); font-size:13px; margin:13px 0 5px; }.rc-contact-card p { color:var(--rp-muted); font-size:8px; line-height:1.65; }.rc-contact-card a { color:var(--rp-blue); font-size:8px; font-weight:700; overflow-wrap:anywhere; }
.rc-secure-link-card { align-items:flex-start; background:#fff; border:1px solid var(--rp-line); border-radius:13px; display:flex; gap:10px; padding:15px; }.rc-secure-link-card > i { color:var(--rp-green); }.rc-secure-link-card strong { color:var(--rp-ink); display:block; font-size:9px; }.rc-secure-link-card p { color:var(--rp-muted); font-size:7px; line-height:1.6; margin:3px 0 0; }

@media(max-width:991.98px){.rc-customer-hero-grid { gap:30px; grid-template-columns:1fr; }.rc-customer-status-card { max-width:520px; }.rc-customer-layout { grid-template-columns:1fr; }.rc-customer-aside { grid-template-columns:repeat(3,minmax(0,1fr)); }.rc-payment-method-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }}
@media(max-width:767.98px){.rc-customer-hero { padding:34px 0 78px; }.rc-customer-hero h1 { font-size:29px; }.rc-customer-layout { margin-top:-45px; }.rc-customer-panel { padding:18px; }.rc-customer-panel-heading { flex-direction:column; gap:11px; }.rc-trip-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.rc-customer-aside { grid-template-columns:1fr; }.rc-payment-submit-row { align-items:stretch; flex-direction:column; }.rc-payment-submit-row .rc-public-book-button { display:inline-flex; justify-content:center; width:100%; }}
@media(max-width:575.98px){.rc-customer-status-card { grid-template-columns:auto 1fr; }.rc-customer-status-divider { display:none; }.rc-customer-reference { display:flex; justify-content:space-between; width:100%; }.rc-customer-panel { border-radius:14px; padding:15px; }.rc-payment-method-grid,.rc-payment-form-grid { grid-template-columns:1fr; }.rc-payment-field.span-2 { grid-column:auto; }.rc-payment-method-card { min-height:auto; }.rc-trip-detail-grid { grid-template-columns:1fr; }.rc-submission-status { align-items:flex-start; }.rc-booking-stage-badge,.rc-manual-payment-badge { align-self:flex-start; }}

/* Customer trip reopening */
.rc-public-trip-button { align-items:center; background:color-mix(in srgb,var(--rp-blue) 7%,#fff); border:1px solid color-mix(in srgb,var(--rp-blue) 22%,var(--rp-line)); border-radius:9px; color:var(--rp-blue); display:inline-flex; font-size:9px; font-weight:750; gap:7px; height:42px; padding:0 13px; transition:background .25s,border-color .25s,box-shadow .3s,transform .3s var(--rc-ease); white-space:nowrap; }
.rc-public-trip-button:hover { background:color-mix(in srgb,var(--rp-blue) 12%,#fff); border-color:var(--rp-blue); box-shadow:0 10px 22px color-mix(in srgb,var(--rp-blue) 14%,transparent); color:var(--rp-blue); transform:translateY(-2px); }
.rc-public-mobile-contact { align-items:center; background:color-mix(in srgb,var(--rp-blue) 7%,#fff); border:1px solid color-mix(in srgb,var(--rp-blue) 22%,var(--rp-line)); border-radius:9px; color:var(--rp-blue); display:inline-flex; height:42px; justify-content:center; transition:background .25s,border-color .25s,box-shadow .3s,transform .3s var(--rc-ease); width:42px; }
.rc-public-mobile-contact:hover { background:color-mix(in srgb,var(--rp-blue) 12%,#fff); border-color:var(--rp-blue); box-shadow:0 10px 22px color-mix(in srgb,var(--rp-blue) 14%,transparent); color:var(--rp-blue); transform:translateY(-2px); }
.rc-public-nav .rc-mobile-nav-link { align-items:center; color:var(--rp-blue); display:none; font-weight:750; gap:8px; }
.rc-find-trip-page { align-items:center; background:var(--rp-soft); display:flex; justify-content:center; min-height:65vh; padding:70px 20px; }
.rc-find-trip-card { background:#fff; border:1px solid var(--rp-line); border-radius:20px; box-shadow:0 24px 70px rgba(17,26,45,.09); max-width:620px; padding:48px; text-align:center; width:100%; }
.rc-find-trip-icon { align-items:center; background:color-mix(in srgb,var(--rp-blue) 9%,#fff); border-radius:50%; color:var(--rp-blue); display:flex; height:70px; justify-content:center; margin:0 auto 20px; width:70px; }
.rc-find-trip-card h1 { color:var(--rp-ink); font-size:27px; letter-spacing:-.8px; margin:10px 0; }
.rc-find-trip-card > p { color:var(--rp-muted); font-size:10px; line-height:1.8; margin:0 auto; max-width:500px; }
.rc-find-trip-actions { align-items:center; display:flex; gap:18px; justify-content:center; margin:26px 0 20px; }
.rc-find-trip-contact { align-items:center; color:var(--rp-blue); display:inline-flex; font-size:9px; font-weight:750; gap:7px; }
.rc-find-trip-card > small { align-items:center; color:var(--rp-muted); display:flex; font-size:7px; gap:6px; justify-content:center; }
.rc-find-trip-card > small i { color:var(--rp-green); }

@media(max-width:767.98px){
    .rc-public-nav-actions { gap:8px; }
    .rc-public-mobile-contact { height:42px; width:42px; }
    .rc-public-trip-button { display:none; }
    .rc-find-trip-card { padding:34px 22px; }
    .rc-find-trip-actions { align-items:stretch; flex-direction:column; }
    .rc-find-trip-actions .rc-public-book-button { display:inline-flex; justify-content:center; }
    .rc-find-trip-contact { justify-content:center; min-height:40px; }
}

/* Same-day booking notice */
.rc-same-day-inline-note { align-items:center; background:linear-gradient(110deg,color-mix(in srgb,var(--rp-accent) 14%,#fff),#fff); border:1px solid color-mix(in srgb,var(--rp-accent) 42%,var(--rp-line)); border-radius:12px; display:grid; gap:12px; grid-template-columns:auto minmax(0,1fr) auto; padding:13px 14px; }
.rc-same-day-inline-note > span { align-items:center; background:var(--rp-accent); border-radius:10px; color:var(--rp-navy); display:flex; height:39px; justify-content:center; width:39px; }
.rc-same-day-inline-note strong,.rc-same-day-inline-note p { display:block; margin:0; }.rc-same-day-inline-note strong { color:var(--rp-ink); font-size:9px; }.rc-same-day-inline-note p { color:var(--rp-muted); font-size:8px; line-height:1.55; margin-top:2px; }
.rc-same-day-inline-note p a { color:var(--rp-blue); font-weight:800; white-space:nowrap; }
.rc-same-day-inline-note > a { align-items:center; background:var(--rp-blue); border-radius:8px; color:#fff; display:inline-flex; font-size:8px; font-weight:750; gap:6px; min-height:36px; padding:0 12px; white-space:nowrap; }.rc-same-day-inline-note > a:hover { background:var(--rp-blue-dark); color:#fff; }
.rc-same-day-modal { background:#fff; border:1px solid color-mix(in srgb,var(--rp-accent) 48%,var(--rp-line)); border-radius:20px; box-shadow:0 30px 90px rgba(13,28,58,.24); box-sizing:border-box; color:var(--rp-ink); max-height:calc(100dvh - 32px); max-width:470px; overflow-x:hidden; overflow-y:auto; padding:38px; text-align:center; width:calc(100% - 34px); }
.rc-same-day-modal[open] { animation:rcSameDayModalIn .35s var(--rc-ease); }
.rc-same-day-modal::backdrop { backdrop-filter:blur(7px); background:rgba(10,19,38,.55); }
.rc-same-day-modal-close { align-items:center; background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:50%; color:var(--rp-muted); display:flex; height:34px; justify-content:center; position:absolute; right:14px; top:14px; width:34px; }
.rc-same-day-modal-icon { align-items:center; background:color-mix(in srgb,var(--rp-accent) 20%,#fff); border:1px solid color-mix(in srgb,var(--rp-accent) 38%,#fff); border-radius:50%; color:color-mix(in srgb,var(--rp-accent) 65%,#8a5b00); display:flex; height:68px; justify-content:center; margin:0 auto 18px; width:68px; }
.rc-same-day-modal h2 { color:var(--rp-ink); font-size:23px; letter-spacing:-.7px; margin:10px 0 8px; }.rc-same-day-modal > p { color:var(--rp-muted); font-size:10px; line-height:1.7; margin:0 auto 20px; max-width:375px; }
.rc-same-day-call { align-items:center; background:linear-gradient(120deg,var(--rp-blue),var(--rp-navy-2)); border-radius:13px; box-shadow:0 14px 30px color-mix(in srgb,var(--rp-blue) 22%,transparent); color:#fff; display:flex; gap:12px; justify-content:center; margin:0 auto; padding:13px 18px; }.rc-same-day-call:hover { color:#fff; transform:translateY(-2px); }.rc-same-day-call > i { color:var(--rp-accent); }.rc-same-day-call small,.rc-same-day-call strong { display:block; text-align:left; }.rc-same-day-call small { color:#cbd7eb; font-size:7px; text-transform:uppercase; }.rc-same-day-call strong { color:#fff; font-size:18px; letter-spacing:.04em; margin-top:2px; }
.rc-same-day-continue { align-items:center; background:color-mix(in srgb,var(--rp-blue) 7%,#fff); border:1px solid color-mix(in srgb,var(--rp-blue) 28%,var(--rp-line)); border-radius:10px; color:var(--rp-blue); display:inline-flex; font-size:9px; font-weight:800; gap:8px; justify-content:center; margin-top:18px; min-height:42px; padding:0 18px; transition:background .2s,border-color .2s,box-shadow .2s,transform .2s; }.rc-same-day-continue:hover { background:color-mix(in srgb,var(--rp-blue) 13%,#fff); border-color:var(--rp-blue); box-shadow:0 9px 22px color-mix(in srgb,var(--rp-blue) 14%,transparent); color:var(--rp-blue); transform:translateY(-1px); }.rc-same-day-continue i { font-size:13px; }
@keyframes rcSameDayModalIn { from{opacity:0;transform:translateY(18px) scale(.96)} to{opacity:1;transform:none} }

@media(max-width:575.98px){
    .rc-same-day-inline-note { align-items:start; grid-template-columns:auto 1fr; }
    .rc-same-day-inline-note > a { grid-column:1/-1; justify-content:center; width:100%; }
    .rc-same-day-modal { margin:auto; max-width:calc(100vw - 32px); padding:34px 22px 26px; width:calc(100vw - 32px); }
    .rc-same-day-modal h2 { font-size:20px; line-height:1.25; }
    .rc-same-day-call { padding-inline:12px; }
    .rc-same-day-continue { width:100%; }
}

/* Private recent trip list */
.rc-my-trips-page { background:var(--rp-soft); min-height:70vh; padding-bottom:75px; }
.rc-my-trips-hero { background:linear-gradient(130deg,var(--rp-navy),var(--rp-navy-2)); padding:45px 0 85px; }
.rc-my-trips-hero .rc-section-kicker { color:var(--rp-accent); }
.rc-my-trips-hero .rc-public-container > div { align-items:end; display:flex; gap:30px; justify-content:space-between; }
.rc-my-trips-hero h1 { color:#fff; font-size:34px; letter-spacing:-1px; margin:11px 0 6px; }
.rc-my-trips-hero p { color:#b7c3d6; font-size:10px; margin:0; }
.rc-my-trips-content { margin-top:-47px; position:relative; }
.rc-my-trips-heading { align-items:center; background:#fff; border:1px solid var(--rp-line); border-radius:14px; display:flex; justify-content:space-between; margin-bottom:15px; padding:15px 18px; }
.rc-my-trips-heading strong,.rc-my-trips-heading span { display:block; }.rc-my-trips-heading strong { color:var(--rp-ink); font-size:11px; }.rc-my-trips-heading span,.rc-my-trips-heading small { color:var(--rp-muted); font-size:7px; }.rc-my-trips-heading small { align-items:center; display:flex; gap:6px; }.rc-my-trips-heading small i { color:var(--rp-green); }
.rc-my-trips-list { display:grid; gap:15px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.rc-my-trip-card { background:#fff; border:1px solid var(--rp-line); border-radius:16px; box-shadow:0 16px 40px rgba(17,28,52,.05); padding:20px; }
.rc-my-trip-top { align-items:center; display:grid; gap:11px; grid-template-columns:auto 1fr auto; }.rc-my-trip-icon { align-items:center; background:color-mix(in srgb,var(--rp-blue) 9%,#fff); border-radius:10px; color:var(--rp-blue); display:flex; height:42px; justify-content:center; width:42px; }.rc-my-trip-top small,.rc-my-trip-top strong,.rc-my-trip-top div > span { display:block; }.rc-my-trip-top small { color:var(--rp-muted); font-size:6.5px; }.rc-my-trip-top strong { color:var(--rp-ink); font-size:11px; letter-spacing:.04em; margin-top:2px; }.rc-my-trip-top div > span { color:var(--rp-muted); font-size:6.5px; margin-top:2px; }.rc-my-trip-top > em { background:#fff6dd; border-radius:999px; color:#9a6b17; font-size:6.5px; font-style:normal; font-weight:800; padding:5px 8px; text-transform:uppercase; }.rc-my-trip-top > em.is-confirmed,.rc-my-trip-top > em.is-completed { background:#e8f8f1; color:#147a55; }
.rc-my-trip-route { border-bottom:1px solid var(--rp-line); border-top:1px solid var(--rp-line); display:grid; gap:10px; grid-template-columns:18px 1fr; margin:17px 0; padding:15px 0; }.rc-my-trip-route > span { align-items:center; display:flex; flex-direction:column; grid-row:1/3; }.rc-my-trip-route > span i,.rc-my-trip-route > span b { background:#fff; border:2px solid var(--rp-blue); border-radius:50%; height:9px; width:9px; }.rc-my-trip-route > span b { border-color:var(--rp-secondary); }.rc-my-trip-route > span::after { background:#d2d9e7; content:''; flex:1; width:1px; }.rc-my-trip-route > div small,.rc-my-trip-route > div strong { display:block; }.rc-my-trip-route > div small { color:var(--rp-muted); font-size:6px; text-transform:uppercase; }.rc-my-trip-route > div strong { color:var(--rp-ink); font-size:8.5px; line-height:1.4; margin-top:2px; }
.rc-my-trip-meta { display:grid; gap:8px; grid-template-columns:repeat(2,minmax(0,1fr)); }.rc-my-trip-meta > span { background:var(--rp-soft); border-radius:9px; display:grid; gap:2px 8px; grid-template-columns:auto 1fr; padding:9px; }.rc-my-trip-meta i { color:var(--rp-blue); grid-row:1/3; }.rc-my-trip-meta small,.rc-my-trip-meta strong { display:block; }.rc-my-trip-meta small { color:var(--rp-muted); font-size:6px; }.rc-my-trip-meta strong { color:var(--rp-ink); font-size:7.5px; text-transform:capitalize; }.rc-my-trip-open { align-items:center; background:var(--rp-blue); border-radius:9px; color:#fff; display:flex; font-size:8px; font-weight:800; justify-content:center; margin-top:15px; min-height:39px; }.rc-my-trip-open:hover { background:var(--rp-blue-dark); color:#fff; }.rc-my-trip-open i { margin-left:7px; }

@media(max-width:767.98px){.rc-my-trips-hero { padding:35px 0 75px; }.rc-my-trips-hero .rc-public-container > div { align-items:stretch; flex-direction:column; }.rc-my-trips-hero .rc-public-book-button { justify-content:center; }.rc-my-trips-list { grid-template-columns:1fr; }.rc-my-trips-heading { align-items:flex-start; flex-direction:column; gap:8px; }}
@media(max-width:575.98px){.rc-payment-fee-summary { grid-template-columns:1fr; }.rc-payment-fee-summary > div { border-bottom:1px solid var(--rp-line); border-right:0; }.rc-payment-fee-summary > p { text-align:left; }.rc-my-trip-meta { grid-template-columns:1fr; }}

/* Business contact details */
.rc-footer-contact-list { display:grid; gap:2px; }
.rc-contact-availability { color:#dce5f4!important; font-size:8px!important; font-weight:700; margin:13px 0 7px!important; }
.rc-contact-channels { display:flex; flex-wrap:wrap; gap:6px; }
.rc-public-footer-grid .rc-contact-channels a,.rc-public-footer-grid .rc-contact-channels span { align-items:center; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); border-radius:999px; color:#cbd5e4; display:inline-flex; font-size:7px; font-weight:700; gap:4px; line-height:1; margin:0; padding:6px 8px; transition:background .2s,border-color .2s,color .2s,transform .2s; }.rc-public-footer-grid .rc-contact-channels a:hover { background:var(--rp-blue); border-color:var(--rp-blue); color:#fff; transform:translateY(-1px); }.rc-public-footer-grid .rc-contact-channels a i { font-size:9px; }.rc-public-footer-grid .rc-contact-channels .is-awaiting-link { cursor:help; opacity:.55; }.rc-public-footer-grid .rc-contact-link-note { color:#69778e; display:block; font-size:6.5px; line-height:1.5; margin-top:9px; }
.rc-contact-card a { display:block; margin-top:5px; }
.rc-contact-card small { color:var(--rp-muted); display:block; font-size:7px; line-height:1.5; margin-top:9px; }
.rc-social-heading { margin-top:17px!important; }
.rc-social-links { display:flex; flex-wrap:wrap; gap:7px; }
.rc-public-footer-grid .rc-social-links a { align-items:center; background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.04)); border:1px solid rgba(255,255,255,.13); border-radius:9px; color:#dce5f4; display:inline-flex; font-size:7px; font-weight:800; gap:7px; line-height:1; margin:0; min-height:30px; padding:0 9px; transition:border-color .2s,color .2s,transform .2s; }
.rc-public-footer-grid .rc-social-links a span { color:inherit; display:inline; font-size:inherit; line-height:1; margin:0; }
.rc-public-footer-grid .rc-social-links a:hover { border-color:var(--rp-accent); color:#fff; transform:translateY(-2px); }
.rc-public-footer-grid .rc-social-links i { color:var(--rp-accent); font-size:9px; }
.rc-footer-branches { border-top:1px solid rgba(255,255,255,.11); display:grid; gap:7px; margin-top:15px; padding-top:12px; }
.rc-public-footer-grid .rc-footer-branches > p { color:#dce5f4; font-size:8px; font-weight:700; line-height:1.2; margin:0 0 2px; }
.rc-public-footer-grid .rc-footer-branches > a { align-items:center; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.1); border-radius:8px; color:#dce5f4; display:grid; font-size:8px; gap:8px; grid-template-columns:auto minmax(0,1fr) auto; line-height:1.25; margin:0; padding:8px 9px; transition:background .2s,border-color .2s,transform .2s; }
.rc-public-footer-grid .rc-footer-branches > a:hover { background:rgba(255,255,255,.09); border-color:rgba(213,160,255,.6); transform:translateY(-1px); }
.rc-public-footer-grid .rc-footer-branches > a > i:first-child { color:var(--rp-accent); font-size:14px; }
.rc-public-footer-grid .rc-footer-branches > a > i:last-child { color:#b8c2d4; font-size:9px; }
.rc-public-footer-grid .rc-footer-branches span { display:block; margin:0; min-width:0; }
.rc-public-footer-grid .rc-footer-branches strong,.rc-public-footer-grid .rc-footer-branches small { display:block; line-height:1.35; }
.rc-public-footer-grid .rc-footer-branches strong { color:#fff; font-size:8px; }
.rc-public-footer-grid .rc-footer-branches small { color:#93a0b5; font-size:7px; }

/* Booking price mode and flat-rate route picker */
.rc-pricing-tabs { background:#f4f6fb; border:1px solid var(--rp-line); border-radius:15px; display:grid; gap:6px; grid-template-columns:1fr 1fr; margin-bottom:18px; padding:6px; }
.rc-pricing-tabs button { background:transparent; border:1px solid transparent; border-radius:11px; color:var(--rp-muted); min-height:62px; padding:10px 14px; transition:background .25s var(--rc-ease),border-color .25s var(--rc-ease),box-shadow .25s var(--rc-ease),transform .25s var(--rc-ease); }
.rc-pricing-tabs button:not(:disabled):hover { color:var(--rp-blue); transform:translateY(-1px); }
.rc-pricing-tabs button.is-active { background:#fff; border-color:color-mix(in srgb,var(--rp-blue) 28%,var(--rp-line)); box-shadow:0 7px 22px rgba(29,40,75,.08); color:var(--rp-blue); }
.rc-pricing-tabs button:disabled { cursor:not-allowed; opacity:.48; }
.rc-pricing-tabs button > span { align-items:center; display:grid; gap:2px 10px; grid-template-columns:32px 1fr; text-align:left; }
.rc-pricing-tabs button i { font-size:21px; grid-row:1/3; }
.rc-pricing-tabs button strong { color:var(--rp-ink); font-size:10px; }
.rc-pricing-tabs button small { font-size:7px; }
.rc-flat-rate-picker { background:linear-gradient(145deg,#fff,#f8f6ff); border:1px solid color-mix(in srgb,var(--rp-blue) 20%,var(--rp-line)); border-radius:16px; padding:17px; }
.rc-flat-rate-heading { align-items:flex-start; display:flex; gap:18px; justify-content:space-between; margin-bottom:13px; }
.rc-flat-rate-heading h3 { color:var(--rp-ink); font-size:15px; margin:4px 0 5px; }
.rc-flat-rate-heading p { color:var(--rp-muted); font-size:8px; margin:0; }
.rc-flat-rate-badge { align-items:center; background:#f0e9ff; border:1px solid #decdfd; border-radius:999px; color:var(--rp-blue); display:inline-flex; flex:0 0 auto; font-size:7px; font-weight:800; gap:6px; padding:8px 11px; }
.rc-flat-rate-options { display:grid; gap:8px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.rc-flat-rate-option { cursor:pointer; min-width:0; }
.rc-flat-rate-option > input { height:1px; opacity:0; position:absolute; width:1px; }
.rc-flat-rate-option-body { background:#fff; border:1px solid var(--rp-line); border-radius:14px; display:block; min-height:100%; overflow:hidden; transition:border-color .25s var(--rc-ease),box-shadow .25s var(--rc-ease),transform .25s var(--rc-ease); }
.rc-flat-rate-option:hover .rc-flat-rate-option-body { border-color:color-mix(in srgb,var(--rp-blue) 42%,var(--rp-line)); transform:translateY(-2px); }
.rc-flat-rate-option > input:checked + .rc-flat-rate-option-body { border-color:var(--rp-blue); box-shadow:0 0 0 3px color-mix(in srgb,var(--rp-blue) 10%,transparent),0 14px 28px rgba(45,35,89,.08); }
.rc-flat-rate-option > input:focus-visible + .rc-flat-rate-option-body { outline:3px solid color-mix(in srgb,var(--rp-blue) 30%,transparent); outline-offset:2px; }
.rc-flat-rate-route { align-items:center; display:flex; gap:10px; min-height:54px; padding:9px 12px; }
.rc-flat-rate-route > i { align-items:center; background:#f1eaff; border-radius:10px; color:var(--rp-blue); display:flex; flex:0 0 auto; font-size:16px; height:35px; justify-content:center; width:35px; }
.rc-flat-rate-route > span { min-width:0; flex:1; }.rc-flat-rate-route small,.rc-flat-rate-route strong { display:block; }
.rc-flat-rate-route small { color:var(--rp-muted); font-size:6px; text-transform:uppercase; }.rc-flat-rate-route strong { color:var(--rp-ink); font-size:9px; line-height:1.35; margin-top:2px; }
.rc-flat-rate-route > b { align-items:center; background:var(--rp-blue); border-radius:50%; color:#fff; display:flex; height:22px; justify-content:center; opacity:0; transform:scale(.7); transition:opacity .2s,transform .2s; width:22px; }
.rc-flat-rate-option > input:checked + .rc-flat-rate-option-body .rc-flat-rate-route > b { opacity:1; transform:scale(1); }
.rc-flat-rate-direction { align-items:center; appearance:none; background:#f8f5ff; border:0; border-top:1px solid #e9e0fa; color:var(--rp-blue); cursor:pointer; display:flex; font-size:7px; gap:7px; justify-content:center; min-height:27px; padding:5px 10px; width:100%; }
.rc-flat-rate-direction:hover,.rc-flat-rate-direction:focus-visible { background:#f0e9ff; outline:0; }.rc-flat-rate-direction:focus-visible { box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--rp-blue) 35%,transparent); }.rc-flat-rate-direction strong { font-size:7px; }
.rc-flat-rate-custom-note { align-items:center; background:#fff9e9; border:1px solid #f2dfaa; border-radius:13px; display:grid; gap:12px; grid-template-columns:auto 1fr auto; margin-top:14px; padding:13px; }
.rc-flat-rate-custom-note > span { align-items:center; background:#fff1bd; border-radius:10px; color:#9c711e; display:flex; height:38px; justify-content:center; width:38px; }
.rc-flat-rate-custom-note strong { color:var(--rp-ink); display:block; font-size:8px; }.rc-flat-rate-custom-note p { color:#987424; font-size:7px; margin:2px 0 0; }
.rc-flat-rate-custom-note button { align-items:center; background:#fff; border:1px solid #e8d49a; border-radius:9px; color:#8f6817; display:flex; font-size:7px; font-weight:800; gap:6px; min-height:36px; padding:0 11px; white-space:nowrap; }
.rc-flat-rate-custom-note button:hover { border-color:#d1ab4b; transform:translateY(-1px); }
.rc-vehicle-option [data-vehicle-price-copy] { color:var(--rp-blue); font-size:8px; margin-top:9px; }
@media(max-width:767.98px){
    .rc-pricing-tabs button { min-height:56px; padding:9px; }.rc-pricing-tabs button > span { grid-template-columns:24px 1fr; }.rc-pricing-tabs button small { display:none; }
    .rc-flat-rate-picker { padding:14px; }.rc-flat-rate-heading { align-items:flex-start; flex-direction:column; gap:9px; }.rc-flat-rate-badge { align-self:flex-start; }
    .rc-flat-rate-options { grid-template-columns:1fr; }.rc-flat-rate-custom-note { grid-template-columns:auto 1fr; }.rc-flat-rate-custom-note button { grid-column:1/-1; justify-content:center; }
}

/* Landing-page service overview: featured trip types plus a compact service directory. */
.rc-featured-services-heading { margin-bottom:36px; }
.rc-service-highlights { display:grid; gap:20px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.rc-service-highlights article { background:#fff; border:1px solid var(--rp-line); border-radius:17px; display:flex; flex-direction:column; min-height:290px; overflow:hidden; padding:28px; position:relative; transition:border-color .35s,box-shadow .4s var(--rc-ease),transform .4s var(--rc-ease); }
.rc-service-highlights article:hover { border-color:#d6dcff; box-shadow:0 22px 50px rgba(17,26,45,.11); transform:translateY(-8px); }
.rc-service-highlights article > span { align-items:center; background:#eef1ff; border-radius:11px; color:var(--rp-blue); display:flex; height:48px; justify-content:center; transition:background .3s,color .3s,transform .4s var(--rc-ease); width:48px; }
.rc-service-highlights article:hover > span { background:#e3e8ff; transform:rotate(-7deg) scale(1.08); }
.rc-service-highlights article > small { color:#c6ccd8; font-size:9px; font-weight:800; position:absolute; right:28px; top:29px; }
.rc-service-highlights h3 { font-size:17px; margin:29px 0 8px; text-transform:capitalize; }
.rc-service-highlights p { color:var(--rp-muted); font-size:10px; line-height:1.75; margin:0; }
.rc-service-highlights a { align-items:center; color:var(--rp-blue); display:inline-flex; font-size:10px; font-weight:750; gap:8px; margin-top:auto; padding-top:22px; }
.rc-service-highlights article.featured { background:var(--rp-navy); border-color:var(--rp-navy); }
.rc-service-highlights article.featured h3 { color:#fff; }
.rc-service-highlights article.featured p { color:#acb5c8; }
.rc-service-highlights article.featured > span { background:rgba(92,111,247,.2); color:#b5c0ff; }
.rc-service-directory { background:rgba(255,255,255,.76); border:1px solid var(--rp-line); border-radius:18px; display:block; margin-top:28px; padding:27px; }
.rc-service-directory-heading { align-items:end; display:flex; gap:24px; justify-content:space-between; margin-bottom:22px; }
.rc-service-directory-heading h3 { color:var(--rp-ink); font-size:20px; letter-spacing:-.5px; margin:7px 0 0; }
.rc-service-directory-heading p { color:var(--rp-muted); font-size:10px; line-height:1.7; margin:0; max-width:365px; }
.rc-service-list { display:grid; gap:10px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.rc-service-list-item { align-items:center; background:#fff; border:1px solid #e8ebf3; border-radius:11px; display:flex; gap:10px; min-height:58px; padding:10px 12px; transition:border-color .25s,box-shadow .3s var(--rc-ease),transform .3s var(--rc-ease); }
.rc-service-list-item:hover { border-color:#cfd8ff; box-shadow:0 10px 22px rgba(37,52,93,.08); transform:translateY(-2px); }
.rc-service-list-item span { align-items:center; background:#f0f2ff; border-radius:8px; color:var(--rp-blue); display:flex; flex:0 0 auto; height:31px; justify-content:center; width:31px; }
.rc-service-list-item strong { color:var(--rp-ink); font-size:10px; line-height:1.35; }
.rc-service-directory-cta { align-items:center; color:var(--rp-blue); display:flex; font-size:10px; font-weight:800; gap:8px; justify-content:center; margin-top:22px; }
.rc-service-directory-cta:hover { color:var(--rp-blue-dark); }
@media(max-width:991.98px){
    .rc-service-highlights { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .rc-service-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767.98px){
    .rc-featured-services-heading { margin-bottom:29px; }
    .rc-service-highlights { grid-template-columns:1fr; }
    .rc-service-highlights article { min-height:230px; padding:23px; }
    .rc-service-highlights h3 { font-size:16px; margin-top:22px; }
    .rc-service-directory { margin-top:20px; padding:20px 16px; }
    .rc-service-directory-heading { align-items:flex-start; flex-direction:column; gap:10px; }
    .rc-service-directory-heading p { max-width:none; }
    .rc-service-list { gap:8px; grid-template-columns:1fr; }
    .rc-service-list-item { min-height:52px; }
}

/* Category artwork, shared flat-rate data, and written office addresses. */
.rc-fleet-visual.has-artwork { background:#10141d; border-radius:12px; overflow:hidden; }
.rc-fleet-visual.has-artwork img { filter:drop-shadow(0 11px 12px rgba(0,0,0,.35)); height:100%; object-fit:contain; padding:7px; width:100%; }
.rc-rates-head,.rc-rate-row { grid-template-columns:minmax(215px,1.25fr) minmax(330px,1.85fr) auto; }
.rc-rate-route { min-width:0; }
.rc-rate-route-copy { display:grid; gap:4px; min-width:0; }
.rc-rate-route-copy > span { align-items:center; display:flex; flex-wrap:wrap; gap:7px; }
.rc-rate-route-copy strong { color:var(--rp-ink); font-size:10px; line-height:1.3; }
.rc-rate-route-copy i { color:var(--rp-blue); font-size:11px; }
.rc-rate-route-copy small { color:var(--rp-muted); font-size:7px; line-height:1.35; }
.rc-rate-row[data-estimate-state="ready"] .rc-rate-route-copy small { color:#1b8d6a; }
.rc-rate-row[data-estimate-state="unavailable"] .rc-rate-route-copy small { color:#9b6b1d; }
.rc-route-category-prices { display:grid; gap:0; grid-template-columns:repeat(3,minmax(0,1fr)); }
.rc-route-category-prices > span { border-left:1px solid var(--rp-line); display:grid; gap:3px; padding:5px 13px; }
.rc-route-category-prices > span:first-child { border-left:0; }
.rc-route-category-prices small { color:var(--rp-muted); font-size:7px; font-weight:700; }
.rc-route-category-prices b { color:var(--rp-ink); font-size:10px; line-height:1.25; }
.rc-public-footer-grid .rc-footer-branches > .rc-footer-address { align-items:flex-start; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.1); border-radius:8px; color:#dce5f4; display:grid; font-size:8px; gap:8px; grid-template-columns:auto minmax(0,1fr); line-height:1.25; margin:0; padding:8px 9px; }
.rc-public-footer-grid .rc-footer-branches > .rc-footer-address > i { color:var(--rp-accent); font-size:14px; }
.rc-public-footer-grid .rc-footer-branches > .rc-footer-address span { display:block; margin:0; min-width:0; }
.rc-public-footer-grid .rc-footer-branches > .rc-footer-address strong,.rc-public-footer-grid .rc-footer-branches > .rc-footer-address small { display:block; line-height:1.35; }
.rc-public-footer-grid .rc-footer-branches > .rc-footer-address strong { color:#fff; font-size:8px; }
.rc-public-footer-grid .rc-footer-branches > .rc-footer-address small { color:#93a0b5; font-size:7px; }
@media(max-width:767.98px){
    .rc-rates-head { display:none; }
    .rc-rate-row { gap:10px; grid-template-columns:1fr auto; }
    .rc-rate-route-copy strong { font-size:11px; }
    .rc-rate-route-copy small { font-size:8px; }
    .rc-route-category-prices { grid-column:1/-1; width:100%; }
    .rc-route-category-prices > span { background:var(--rp-soft); border-radius:7px; border-left:0; padding:8px 9px; }
    .rc-route-category-prices b { font-size:10px; }
}

/* Search-friendly Luzon service-area directory and local landing pages. */
.rc-area-directory-section { background:#fff; }
.rc-area-directory-grid { display:grid; gap:12px; grid-template-columns:repeat(4,minmax(0,1fr)); }
.rc-area-directory-link { align-items:center; background:var(--rp-soft); border:1px solid var(--rp-line); border-radius:14px; color:var(--rp-ink); display:grid; gap:11px; grid-template-columns:auto minmax(0,1fr) auto; min-height:76px; padding:15px 17px; transition:border-color .25s,box-shadow .35s var(--rc-ease),transform .35s var(--rc-ease); }
.rc-area-directory-link:hover { border-color:#cbd4ff; box-shadow:0 15px 30px rgba(27,38,69,.1); color:var(--rp-blue); transform:translateY(-4px); }
.rc-area-directory-link > span { align-items:center; background:#fff; border:1px solid #e8ebf5; border-radius:10px; color:var(--rp-blue); display:flex; flex:0 0 auto; height:39px; justify-content:center; transition:background .25s,color .25s; width:39px; }
.rc-area-directory-link:hover > span { background:var(--rp-blue); color:#fff; }
.rc-area-directory-link div { display:grid; gap:3px; min-width:0; }
.rc-area-directory-link small { color:var(--rp-muted); font-size:7px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.rc-area-directory-link strong { color:inherit; font-size:10px; line-height:1.35; }
.rc-area-directory-link > i { color:#a8b1c5; font-size:12px; }

.rc-area-page { background:var(--rp-soft); }
.rc-area-hero { background:linear-gradient(120deg,#221338 0%,#3b2057 56%,#283e77 100%); color:#fff; overflow:hidden; padding:30px 0 82px; position:relative; }
.rc-area-hero::before { background:linear-gradient(90deg,var(--rp-blue),#d35dbd); content:""; height:3px; left:0; position:absolute; right:0; top:0; }
.rc-area-hero-orb { background:radial-gradient(circle,rgba(213,93,189,.3),rgba(91,111,247,.04) 57%,transparent 72%); border-radius:50%; height:520px; position:absolute; right:-85px; top:-215px; width:520px; }
.rc-area-breadcrumb { align-items:center; color:#aeb8ce; display:flex; font-size:8px; gap:8px; margin-bottom:42px; position:relative; }
.rc-area-breadcrumb a { color:#d9dfed; }
.rc-area-breadcrumb a:hover { color:#fff; }
.rc-area-breadcrumb i { font-size:9px; }
.rc-area-hero-grid { align-items:end; display:grid; gap:74px; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); position:relative; }
.rc-area-hero-copy { max-width:720px; }
.rc-area-hero-copy .rc-section-kicker.light { color:#d9a7f4; }
.rc-area-hero-copy h1 { color:#fff; font-size:clamp(36px,5vw,66px); letter-spacing:-2.6px; line-height:1; margin:18px 0 22px; max-width:700px; }
.rc-area-hero-copy > p { color:#c4ccdc; font-size:13px; line-height:1.8; margin:0; max-width:650px; }
.rc-area-actions { align-items:center; display:flex; flex-wrap:wrap; gap:22px; margin-top:30px; }
.rc-area-call { align-items:center; color:#fff; display:flex; gap:11px; }
.rc-area-call > i { align-items:center; border:1px solid rgba(255,255,255,.18); border-radius:10px; display:flex; height:43px; justify-content:center; width:43px; }
.rc-area-call span { display:grid; gap:2px; }
.rc-area-call small { color:#aeb8ce; font-size:7px; text-transform:uppercase; }
.rc-area-call strong { font-size:11px; letter-spacing:.02em; }
.rc-area-hero-panel { backdrop-filter:blur(18px); background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.15); border-radius:18px; box-shadow:0 24px 55px rgba(5,8,19,.22); display:grid; gap:0; overflow:hidden; }
.rc-area-panel-icon { align-items:center; background:rgba(141,84,219,.35); display:flex; font-size:21px; height:68px; justify-content:center; }
.rc-area-hero-panel > div { border-top:1px solid rgba(255,255,255,.1); display:grid; gap:4px; padding:17px 20px; }
.rc-area-hero-panel small { color:#99a6c1; font-size:7px; text-transform:uppercase; }
.rc-area-hero-panel strong { color:#fff; font-size:10px; line-height:1.45; }

.rc-area-content-section { margin-top:-38px; position:relative; z-index:2; }
.rc-area-content-grid { display:grid; gap:20px; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); }
.rc-area-card { background:#fff; border:1px solid var(--rp-line); border-radius:18px; box-shadow:0 16px 38px rgba(26,37,68,.06); padding:30px; }
.rc-area-card h2,.rc-area-services-section h2 { color:var(--rp-ink); font-size:29px; letter-spacing:-1px; margin:12px 0 13px; }
.rc-area-card p,.rc-area-services-section article > p { color:var(--rp-muted); font-size:10px; line-height:1.75; margin:0; }
.rc-area-trust-row { display:flex; flex-wrap:wrap; gap:9px; margin-top:24px; }
.rc-area-trust-row span { align-items:center; background:#f3f4ff; border:1px solid #e1e5ff; border-radius:999px; color:#59647b; display:flex; font-size:8px; font-weight:700; gap:6px; padding:8px 11px; }
.rc-area-trust-row i { color:var(--rp-blue); }
.rc-area-chip-grid { display:grid; gap:9px; margin-top:17px; }
.rc-area-chip-grid span { align-items:center; background:var(--rp-soft); border:1px solid #e8ebf3; border-radius:10px; color:var(--rp-ink); display:flex; font-size:9px; font-weight:700; gap:9px; min-height:44px; padding:10px 12px; }
.rc-area-chip-grid i { color:var(--rp-blue); }

.rc-area-routes-section { padding-top:20px; }
.rc-area-route-list { background:#fff; border:1px solid var(--rp-line); border-radius:18px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); overflow:hidden; }
.rc-area-route-list a { align-items:center; border-bottom:1px solid var(--rp-line); color:var(--rp-ink); display:grid; gap:12px; grid-template-columns:auto minmax(0,1fr) auto auto; min-height:78px; padding:17px 20px; transition:background .25s,color .25s; }
.rc-area-route-list a:nth-child(odd) { border-right:1px solid var(--rp-line); }
.rc-area-route-list a:nth-last-child(-n+2) { border-bottom:0; }
.rc-area-route-list a:hover { background:#f5f3ff; color:var(--rp-blue); }
.rc-area-route-list .rc-route-dot { background:var(--rp-blue); border:6px solid #eee9ff; border-radius:50%; height:17px; width:17px; }
.rc-area-route-list strong { color:inherit; font-size:10px; }
.rc-area-route-list small { color:var(--rp-blue); font-size:8px; font-weight:800; }
.rc-area-route-list i { color:#a8b1c5; }

.rc-area-services-section { background:#fff; }
.rc-area-services-section .rc-area-content-grid { align-items:center; }
.rc-area-services-section article > p { max-width:620px; }
.rc-area-services-section article > a { margin-top:24px; }
.rc-area-immediate-note { align-items:start; background:linear-gradient(135deg,#2a1740,#3f225e); border-radius:18px; color:#fff; display:grid; gap:18px; grid-template-columns:auto minmax(0,1fr); padding:26px; }
.rc-area-immediate-note > span { align-items:center; background:rgba(255,255,255,.1); border-radius:12px; display:flex; font-size:20px; height:52px; justify-content:center; width:52px; }
.rc-area-immediate-note small { color:#d7a8ee; font-size:7px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.rc-area-immediate-note h3 { color:#fff; font-size:19px; margin:7px 0 7px; }
.rc-area-immediate-note p { color:#b6c0d2; font-size:9px; line-height:1.65; margin:0 0 15px; }
.rc-area-immediate-note a { color:#fff; font-size:11px; font-weight:800; }

.rc-area-related-section { padding-top:38px; }
.rc-area-related-grid { display:grid; gap:12px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.rc-area-related-grid a { align-items:center; background:#fff; border:1px solid var(--rp-line); border-radius:14px; color:var(--rp-ink); display:grid; gap:4px; grid-template-columns:1fr auto; min-height:82px; padding:18px; transition:box-shadow .3s,transform .3s; }
.rc-area-related-grid a:hover { box-shadow:0 14px 30px rgba(27,38,69,.09); transform:translateY(-3px); }
.rc-area-related-grid span { color:var(--rp-muted); font-size:7px; grid-column:1; text-transform:uppercase; }
.rc-area-related-grid strong { color:inherit; font-size:11px; grid-column:1; }
.rc-area-related-grid i { color:var(--rp-blue); grid-column:2; grid-row:1/3; }

@media(max-width:991.98px){
    .rc-area-directory-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .rc-area-hero-grid,.rc-area-content-grid { gap:26px; grid-template-columns:1fr; }
    .rc-area-hero-panel { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .rc-area-panel-icon { display:none; }
    .rc-area-hero-panel > div { border-left:1px solid rgba(255,255,255,.1); border-top:0; }
    .rc-area-hero-panel > div:first-of-type { border-left:0; }
}
@media(max-width:767.98px){
    .rc-area-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .rc-area-directory-link { gap:8px; min-height:67px; padding:12px; }
    .rc-area-directory-link > span { height:34px; width:34px; }
    .rc-area-directory-link > i { display:none; }
    .rc-area-hero { padding:22px 0 64px; }
    .rc-area-breadcrumb { margin-bottom:28px; }
    .rc-area-hero-copy h1 { font-size:38px; letter-spacing:-1.7px; }
    .rc-area-hero-copy > p { font-size:11px; }
    .rc-area-actions { align-items:stretch; flex-direction:column; }
    .rc-area-actions .btn { justify-content:center; width:100%; }
    .rc-area-call { justify-content:center; }
    .rc-area-hero-panel { grid-template-columns:1fr; }
    .rc-area-hero-panel > div { border-left:0; border-top:1px solid rgba(255,255,255,.1); }
    .rc-area-content-section { margin-top:-30px; }
    .rc-area-card { padding:22px 18px; }
    .rc-area-card h2,.rc-area-services-section h2 { font-size:24px; }
    .rc-area-route-list { grid-template-columns:1fr; }
    .rc-area-route-list a,.rc-area-route-list a:nth-child(odd),.rc-area-route-list a:nth-last-child(-n+2) { border-bottom:1px solid var(--rp-line); border-right:0; }
    .rc-area-route-list a:last-child { border-bottom:0; }
    .rc-area-route-list a { grid-template-columns:auto minmax(0,1fr) auto; }
    .rc-area-route-list small { display:none; }
    .rc-area-immediate-note { grid-template-columns:1fr; }
    .rc-area-related-grid { grid-template-columns:1fr; }
}