/* KTP /car-rental/ hub + vehicle detail extras. Chinar tokens as booking.css; prefix vp- / vc- / vq- / vt-. */
.vp{--r:#7A2E1E;--rd:#5E2216;--pine:#2F4B3F;--gold:#C8912F;--paper:#FBF7F2;--sand:#F3EBE0;--ink:#1F1E1D;--mut:#6B6660;--bd:#E6DDD1;font-family:Inter,system-ui,sans-serif;color:var(--ink)}
.vp [hidden]{display:none!important}
.vp *,.vp *::before,.vp *::after{box-sizing:border-box}
.vp .bk-wrap{max-width:1200px;margin:0 auto;padding:0 16px}
@media(min-width:760px){.vp .bk-wrap{padding:0 24px}}
.vp a{color:var(--r)}
.vp-h2{font:600 clamp(22px,2.8vw,30px)/1.2 Fraunces,Georgia,serif;margin:0 0 6px;color:var(--ink)}
.vp h3{font:600 18px/1.3 Fraunces,Georgia,serif;margin:0 0 8px;color:var(--ink)}
.vp p{line-height:1.6}
.vp-sec{padding:clamp(32px,4.5vw,56px) 0}
.vp-sec--sand{background:var(--sand)}
.vp-sec--pine{background:var(--pine);color:#fff}
.vp-sec--pine .vp-h2,.vp-sec--pine p{color:#fff}
.vp-sec .bk-muted{max-width:760px}
.vp__note{margin:8px 0 0;font-size:13px;line-height:1.5;color:var(--mut)}
.vp-two{display:grid;gap:24px}
@media(min-width:860px){.vp-two{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:start}}
.vp-grid2{display:grid;gap:16px;margin-top:14px}
@media(min-width:760px){.vp-grid2{grid-template-columns:1fr 1fr}}
.vp-grid3{display:grid;gap:16px;margin-top:14px;list-style:none;padding:0}
@media(min-width:700px){.vp-grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1040px){.vp-grid3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.vp-card{background:#fff;border:1px solid var(--bd);border-radius:16px;padding:18px 18px 16px;min-width:0}
.vp-card p{margin:0 0 8px;font-size:15px}
.vp-card--tint{background:#fff8ec;border-color:#E9D6B0}
.vp-check{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.vp-check li{position:relative;padding-left:24px;font-size:15px;line-height:1.5}
.vp-check li::before{content:"";position:absolute;left:4px;top:.5em;width:9px;height:5px;border-left:2px solid var(--pine);border-bottom:2px solid var(--pine);transform:rotate(-45deg)}
.vp-check--plain li::before{width:6px;height:6px;border:0;border-radius:50%;background:#B9A88F;transform:none;top:.62em;left:6px}
.vp-check--ask li::before{background:#C9C0B2}
.vp-links{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px}
.vp-links a,.vp-link{font-weight:600}
.vp__pick{display:flex;flex-wrap:wrap;gap:6px 12px;margin:10px 0 0!important;font-size:14px}
.vp__pick a{font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* hero */
.vp-hero{padding:18px 0 26px;background:linear-gradient(180deg,#F6EFE6,var(--paper));border-bottom:1px solid var(--bd)}
.vp-hero .ktp-crumbs{margin-bottom:8px}
.vp-hero .bk-h1{margin:6px 0 8px;font:600 clamp(30px,4.4vw,46px)/1.12 Fraunces,Georgia,serif}
.vp-hero .bk-intro{margin:0 0 8px;max-width:720px;font-size:17px;line-height:1.55}
.vp-hero__note{margin:0 0 16px;font-size:14px;color:var(--mut)}
.vp-hero__btns,.vp-cta__btns{display:flex;flex-wrap:wrap;gap:10px}

/* quote form */
.vp-quote{display:grid;gap:20px}
@media(min-width:900px){.vp-quote{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:40px;align-items:start}}
.vq{background:#fff;border:1px solid var(--bd);border-radius:16px;padding:18px}
.vq__grid{display:grid;gap:12px}
@media(min-width:620px){.vq__grid{grid-template-columns:1fr 1fr}.vq__f--wide{grid-column:1/-1}}
.vq__f{display:flex;flex-direction:column;gap:5px;min-width:0}
.vq__f label,.vq__lab{font-size:13px;font-weight:600;color:var(--mut)}
.vq input[type=text],.vq input[type=tel],.vq input[type=date],.vq input[type=number],.vq select,.vq textarea{width:100%;min-height:46px;border:1px solid #CFC3B4;border-radius:10px;padding:10px 12px;font:500 16px Inter,system-ui,sans-serif;background:#fff;color:var(--ink)}
.vq textarea{min-height:84px;resize:vertical}
.vq input:focus-visible,.vq select:focus-visible,.vq textarea:focus-visible,.vq button:focus-visible{outline:3px solid #C8912F;outline-offset:2px}
.vq [aria-invalid=true]{border-color:var(--r);background:#fff7f5}
.vq__veh{margin:0;font:600 17px Fraunces,Georgia,serif}
.vq__chk{display:flex;align-items:center;gap:10px;min-height:44px;font-size:15px}
.vq__chk input{width:20px;height:20px;accent-color:var(--r)}
.vq__act{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-top:14px}
.vq__small{font-size:13px;color:var(--mut);max-width:420px;line-height:1.45}
.vq__warn{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#FFF3DD;border:1px solid #E9D6B0;font-size:14px}
.vq__err{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#FBEAE6;border:1px solid #E7B9AE;color:#5E2216;font-size:14px}
.vq__ok{margin-top:14px;padding:16px;border-radius:12px;background:#E9F1EC;border:1px solid #BFD3C8}
.vq__ok b{display:inline-block;font:700 18px Inter,sans-serif;letter-spacing:.04em;margin:2px 0 8px}
.vq__ok p{margin:0 0 10px;font-size:15px}
.vq.is-sending [data-vq-submit]{opacity:.65;pointer-events:none}

/* categories */
.vp-cats{display:grid;gap:10px;margin-top:14px}
@media(min-width:620px){.vp-cats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1040px){.vp-cats{grid-template-columns:repeat(6,minmax(0,1fr))}}
.vp-cat{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;min-height:64px;padding:12px 14px;border:1.5px solid var(--bd);border-radius:14px;background:#fff;cursor:pointer;font:inherit;color:var(--ink)}
.vp-cat b{font:600 15px/1.25 Inter,sans-serif}
.vp-cat span{font-size:13px;color:var(--mut);line-height:1.35}
.vp-cat:hover{border-color:#C9A79F}
.vp-cat[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.vp-cat[aria-pressed=true] span{color:#E8E2D9}
.vp-cat:focus-visible{outline:3px solid #C8912F;outline-offset:2px}
.vp-cats__note{margin:12px 0 0;font-size:14px;color:var(--mut)}

/* cards */
.vc-grid{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.vc{display:flex}
.vc article{display:flex;flex-direction:column;width:100%;background:#fff;border:1px solid var(--bd);border-radius:16px;overflow:hidden}
.vc__img{position:relative;display:block;aspect-ratio:16/9;background:#fff;border-bottom:1px solid var(--bd)}
.vc__img img{width:100%;height:100%;object-fit:contain;display:block;padding:6px}
.vc__model{position:absolute;left:8px;bottom:8px;max-width:calc(100% - 16px);padding:2px 9px;border-radius:999px;background:rgba(20,20,20,.72);color:#fff;font-size:11px;line-height:16px;font-weight:600}
.vc__b{display:flex;flex-direction:column;gap:8px;padding:14px 16px 16px;flex:1}
.vc__cat{margin:0;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--pine)}
.vc__t{font:600 20px/1.25 Fraunces,Georgia,serif;margin:0}
.vc__t a{color:var(--ink);text-decoration:none}
.vc__t a:hover{color:var(--r)}
.vc__d{margin:0;display:grid;gap:8px}
.vc__d div{display:grid;gap:1px}
.vc__d dt{font-size:12px;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.04em}
.vc__d dd{margin:0;font-size:14.5px;line-height:1.45}
.vc__d em{font-style:normal;color:#8A5A00;font-size:13px;font-weight:600}
.vc__act{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:6px}
.vc__act .bk-btn{flex:1 1 130px;min-height:44px}
.vc[hidden]{display:none!important}

/* comparison table */
.vt{overflow-x:auto;border:1px solid var(--bd);border-radius:14px;background:#fff;margin-top:14px;-webkit-overflow-scrolling:touch}
.vt:focus-visible{outline:3px solid #C8912F;outline-offset:2px}
.vt__t{border-collapse:separate;border-spacing:0;width:100%;min-width:860px;font-size:14px;line-height:1.45}
.vt__t th,.vt__t td{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--bd)}
.vt__t thead th{position:sticky;top:0;background:#FAF4EA;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);white-space:nowrap}
.vt__t tbody th{position:sticky;left:0;background:#fff;font-weight:600;min-width:170px;z-index:1;box-shadow:1px 0 0 var(--bd)}
.vt__t tbody th small,.vt__t td small{display:block;font-weight:500;font-size:12px;color:var(--mut)}
.vt__t td b{font-size:16px}
.vt__t tbody tr:last-child th,.vt__t tbody tr:last-child td{border-bottom:0}
.vp .vt__t a{font-weight:600}
@media(max-width:620px){.vt__t{min-width:760px}.vt__t tbody th{min-width:132px;max-width:150px}}

/* services */
.vp-svc{padding:0;list-style:none}
.vp-svc li{margin:0}
.vp-svc__l{font-size:14px}

/* operator */
.vp-op{max-width:100%}

/* detail: spec list */
.vp-spec{display:grid;gap:0;margin:14px 0 0;border:1px solid var(--bd);border-radius:14px;background:#fff;overflow:hidden}
.vp-spec>div{display:grid;gap:3px;padding:12px 16px;border-bottom:1px solid var(--bd)}
.vp-spec>div:last-child{border-bottom:0}
@media(min-width:760px){.vp-spec>div{grid-template-columns:minmax(200px,.45fr) 1fr;gap:16px}}
.vp-spec dt{font-size:13px;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.04em}
.vp-spec dd{margin:0;font-size:15.5px;line-height:1.55}
.vp-disc{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:#FFF3DD;border:1px solid #E9D6B0;font-size:13.5px;line-height:1.5;color:#4A3A12}
.vp-rates{display:grid;gap:0;margin:8px 0 12px;border:1px solid var(--bd);border-radius:12px;background:#fff;overflow:hidden}
.vp-rates>div{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--bd);font-size:15px}
.vp-rates>div:last-child{border-bottom:0}
.vp-rates dt{color:var(--mut)}
.vp-rates dd{margin:0;font-weight:600;text-align:right}
.vp-alts{list-style:none;margin:14px 0;padding:0;display:grid;gap:14px}
@media(min-width:760px){.vp-alts{grid-template-columns:repeat(3,minmax(0,1fr))}}
.vp-alt{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--bd);border-radius:14px;padding:12px}
.vp-alt__img{display:block;aspect-ratio:16/9;border-radius:10px;background:#fff;border:1px solid var(--bd);overflow:hidden}
.vp-alt__img img{width:100%;height:100%;object-fit:contain;display:block}
.vp-alt h3{margin:0 0 2px}
.vp-alt h3 a{color:var(--ink);text-decoration:none}
.vp-alt p{margin:0 0 6px;font-size:14.5px}
.vp-alt__p{color:var(--mut)}

/* shared FAQ sits inside .vp pages */
.vp .ktp-sec{padding:clamp(32px,4.5vw,56px) 0}
.vp-hub .ktp-faq,.vp-det .ktp-faq{max-width:1200px;margin:0 auto;padding:0 16px}
@media(min-width:760px){.vp-hub .ktp-faq,.vp-det .ktp-faq{padding:0 24px}}

/* keep fixed site controls from covering the last content on phones */
@media(max-width:700px){.vp-hub,.vp-det{padding-bottom:72px}}
@media(prefers-reduced-motion:reduce){.vp *{scroll-behavior:auto!important;transition:none!important}}

/* The legacy "KTP Car Photos" snippet pairs any /car-rental/ link (e.g. the menu) with a card image by position. Our cards carry their own image: keep it. */
.vc__img .ktp-real-photo,.vp-alt__img .ktp-real-photo{display:none!important}
.vc__img>img,.vp-alt__img>img{visibility:visible!important}

/* detail-page comparison, scope and consider-if blocks */
.vp-consider,.vp-scope{list-style:none;margin:18px 0 0;padding:0}
.vp-consider .vp-card p{margin:6px 0 0}
.vt__me th,.vt__me td{background:#FBF7F2}
.vp-cmpq{margin:20px 0 0;border:1px solid #E6DDD1;border-radius:12px;padding:12px 16px;background:#fff}
.vp-cmpq legend{padding:0 6px;font-weight:700;font-size:15px}
.vp-cmpq__l{list-style:none;margin:6px 0;padding:0;display:grid;gap:4px}
.vp-cmpq .vq__chk{display:flex;gap:8px;align-items:center;min-height:44px}
.vp-scope__l{margin-top:16px}
@media(max-width:759px){.vp .vt.ui-tc-wrap{overflow-x:clip!important;max-width:100%}.vp .vt__t thead th{position:static}.vp .vt__t tbody th{position:static;min-width:0;max-width:none}}
@media(max-width:759px){.vp .vt.ui-tc-wrap{contain:paint}}
