/* Pavlo booking app. Uses the glass design tokens when present. */
.pvb{--pvb-ink:var(--g-ink,#f6f2ea);--pvb-soft:var(--g-soft,#cfc7ba);--pvb-muted:var(--g-muted,#9d9588);--pvb-gold:var(--g-gold,#e2b04a);--pvb-gold2:var(--g-gold2,#b8841c);
 --pvb-line:var(--g-line,rgba(255,255,255,.14));--pvb-line2:var(--g-line2,rgba(255,255,255,.24));
 font-family:"Cairo",Tahoma,Arial,sans-serif;color:var(--pvb-ink);text-align:right}
.pvb *{box-sizing:border-box}
.pvb [hidden]{display:none!important}
.pvb-step{animation:none}
@keyframes pvbIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Trip type: underline tabs */
.pvb-trip{display:flex;gap:28px;border-bottom:1px solid var(--pvb-line);margin:0 0 22px}
.pvb-trip button{appearance:none;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;padding:10px 2px;color:var(--pvb-muted);font:700 16px/1.4 inherit;font-family:inherit;cursor:pointer;transition:color .2s,border-color .2s}
.pvb-trip button.on{color:var(--pvb-ink);border-bottom-color:var(--pvb-gold)}
.pvb-trip button:hover{color:var(--pvb-ink)}

/* Fields */
.pvb-form{display:flex;flex-direction:column;gap:18px}
.pvb-field{display:flex;flex-direction:column;gap:7px;position:relative;margin:0}
.pvb-field>span{font-size:14px;font-weight:700;color:#e8e1d4}
.pvb input,.pvb select,.pvb textarea{width:100%;min-height:54px;padding:12px 16px;border-radius:14px;border:1px solid var(--pvb-line);background:rgba(255,255,255,.06);color:#fff;
 font:600 15.5px/1.5 inherit;font-family:inherit;outline:0;transition:border-color .2s,background .2s,box-shadow .2s;color-scheme:dark;-webkit-appearance:none;appearance:none}
.pvb textarea{min-height:0;resize:vertical}
.pvb select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23e2b04a' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 16px center;padding-left:40px}
.pvb select option{background:#14161c;color:#fff}
.pvb input::placeholder,.pvb textarea::placeholder{color:#8f887c}
.pvb input:focus,.pvb select:focus,.pvb textarea:focus{border-color:rgba(226,176,74,.75);background:rgba(255,255,255,.1);box-shadow:0 0 0 4px rgba(226,176,74,.16)}
.pvb-route{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:end}
.pvb-swap{width:46px;height:54px;border-radius:14px;border:1px solid var(--pvb-line);background:rgba(255,255,255,.05);color:var(--pvb-gold);cursor:pointer;display:flex;align-items:center;justify-content:center;transform:rotate(90deg);transition:background .2s}
.pvb-swap:hover{background:rgba(255,255,255,.12)}
.pvb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pvb-grid-2{grid-template-columns:1fr 1fr}
.pvb .pvb-ret{display:none}
.pvb.pvb-round .pvb-ret{display:flex}
.pvb-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}

/* Suggestions */
.pvb-sug{position:absolute;top:100%;right:0;left:0;z-index:30;margin:6px 0 0;padding:6px;list-style:none;border-radius:16px;border:1px solid var(--pvb-line2);
 background:rgba(16,18,24,.96);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 50px rgba(0,0,0,.5)}
.pvb-sug li{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;cursor:pointer}
.pvb-sug li+li{border-top:1px solid rgba(255,255,255,.06)}
.pvb-sug li:hover{background:rgba(255,255,255,.08)}
.pvb-sug strong{font-size:14.5px;color:#fff}
.pvb-sug small{font-size:12.5px;color:var(--pvb-muted)}

/* Buttons */
.pvb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:58px;padding:12px 22px;border:0;border-radius:14px;cursor:pointer;text-decoration:none!important;
 background:linear-gradient(135deg,#f3cd70,var(--pvb-gold) 45%,var(--pvb-gold2));color:#1a1308!important;font:800 17px/1.3 inherit;font-family:inherit;
 box-shadow:0 14px 34px rgba(226,176,74,.28),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .2s,box-shadow .2s,opacity .2s}
.pvb-btn:hover{transform:translateY(-2px)}
.pvb-btn:disabled{opacity:.65;cursor:wait;transform:none}
.pvb-btn.busy{position:relative;color:transparent!important}
.pvb-btn.busy:after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;border:3px solid rgba(26,19,8,.3);border-top-color:#1a1308;animation:pvbSpin .7s linear infinite}
@keyframes pvbSpin{to{transform:rotate(360deg)}}
.pvb-btn-wa{background:linear-gradient(135deg,#34d178,#1fae5b);color:#fff!important;box-shadow:0 14px 34px rgba(37,211,102,.25),inset 0 1px 0 rgba(255,255,255,.35)}
.pvb-btn-wa.busy:after{border-color:rgba(255,255,255,.35);border-top-color:#fff}
.pvb-link{appearance:none;background:none;border:0;padding:4px 0;color:var(--pvb-gold);font:700 14.5px/1.4 inherit;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(226,176,74,.45)}
.pvb-err{margin:0;color:#ffb4a8;font-weight:700;font-size:14.5px}
.pvb-note{margin:0;text-align:center;color:var(--pvb-muted)!important;font-size:13.5px}

/* Summary line */
.pvb-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:0 0 18px;margin:0 0 20px;border-bottom:1px solid var(--pvb-line)}
.pvb-sum-text{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;line-height:1.6}
.pvb-sum-text strong{font-size:18px;color:#fff}
.pvb-to{color:var(--pvb-gold);font-weight:700}
.pvb-sum-text small{flex-basis:100%;color:var(--pvb-soft);font-size:14px}
.pvb-sum-car{color:#fff!important;font-weight:700}

/* Cars */
.pvb-cars{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.pvb-car{display:flex;flex-direction:column;border-radius:22px;border:1px solid var(--pvb-line);background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.03));overflow:hidden;transition:border-color .2s,transform .2s}
.pvb-car:hover{border-color:rgba(226,176,74,.45);transform:translateY(-3px)}
.pvb-car-img{height:150px;display:flex;align-items:center;justify-content:center;padding:14px;background:radial-gradient(70% 70% at 50% 80%,rgba(226,176,74,.16),transparent 70%)}
.pvb-car-img img{max-height:124px;max-width:100%;width:auto;object-fit:contain;filter:drop-shadow(0 16px 14px rgba(0,0,0,.55))}
.pvb-car-body{padding:4px 20px 12px;flex:1}
.pvb-car h3{margin:0 0 2px;font-size:20px!important;font-weight:800!important;color:#fff!important}
.pvb-car-class{margin:0 0 6px;color:var(--pvb-gold)!important;font-size:14px;font-weight:700}
.pvb-car-cap{margin:0 0 8px;color:var(--pvb-soft)!important;font-size:14.5px}
.pvb-car ul{margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.07)}
.pvb-car li{padding:7px 0;border-bottom:1px solid rgba(255,255,255,.07);color:var(--pvb-soft)!important;font-size:14px}
.pvb-car li:last-child{border-bottom:0}
.pvb-car .pvb-pick{width:auto;margin:0 20px 20px;min-height:50px;font-size:15.5px}
.pvb-car-small{opacity:.72}
.pvb-warn{margin:8px 0 0;color:#ffcf8a!important;font-size:13.5px}
.pvb-empty{color:var(--pvb-soft)}

/* Done */
.pvb-done{text-align:center;padding:10px 0;display:flex;flex-direction:column;align-items:center;gap:14px}
.pvb-done h3{margin:0;font-size:26px!important;font-weight:900!important;color:#fff!important}
.pvb-done p{margin:0;color:var(--pvb-soft)!important;font-size:16px;line-height:1.9}
.pvb-done strong{color:var(--pvb-gold)}
.pvb-done .pvb-btn{max-width:360px}

@media (max-width:900px){.pvb-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
 .pvb-route{grid-template-columns:1fr;gap:10px}
 .pvb-swap{transform:none;width:100%;height:40px}
 .pvb-grid-2{grid-template-columns:1fr}
 .pvb-summary{flex-direction:column;gap:6px}
 .pvb-trip{gap:22px}
}
@media (prefers-reduced-motion:reduce){.pvb-step{animation:none}.pvb *{transition:none!important}}

/* Guards against theme and glass-layer rules */
html body .pvb svg{flex:none}
html body .pvb .pvb-swap svg{width:18px!important;height:18px!important}
html body .pvb .pvb-btn-wa svg{width:20px!important;height:20px!important}
html body .pvb .pvb-car-img img{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;height:auto!important}
html body .pvb a.pvb-btn{color:#1a1308!important;text-decoration:none!important}
html body .pvb a.pvb-btn-wa{color:#fff!important}
html body .pvb .pvb-swap{width:30px;height:54px;padding:0;border:0!important;border-radius:0;background:none!important;box-shadow:none!important;color:var(--pvb-gold);opacity:.85;transition:opacity .2s,color .2s}
html body .pvb .pvb-swap:hover,html body .pvb .pvb-swap:focus-visible{background:none!important;color:#fff;opacity:1;outline:0}
html body .pvb .pvb-swap svg{width:20px!important;height:20px!important}
@media (max-width:640px){html body .pvb .pvb-swap{width:100%;height:24px;margin:-4px 0}}

/* Joined from/to field with the swap control on the seam */
html body .pvb .pvb-route{display:grid;grid-template-columns:1fr 1fr;gap:0;position:relative;border:1px solid var(--pvb-line);border-radius:16px;background:rgba(255,255,255,.06);transition:border-color .2s,box-shadow .2s}
html body .pvb .pvb-route:focus-within{border-color:rgba(226,176,74,.75);box-shadow:0 0 0 4px rgba(226,176,74,.16)}
html body .pvb .pvb-place{position:relative;display:flex;flex-direction:column;gap:2px;margin:0;padding:10px 20px 8px;cursor:text}
html body .pvb .pvb-route>label:last-child{border-inline-start:1px solid var(--pvb-line)}
html body .pvb .pvb-place small{font-size:12.5px;font-weight:700;color:var(--pvb-gold)}
html body .pvb .pvb-place input{min-height:0;height:32px;padding:0;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;font-size:16px}
html body .pvb .pvb-place .pvb-sug{margin-top:10px}
html body .pvb .pvb-place .pvb-sug li{flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 12px}
html body .pvb .pvb-place .pvb-sug small{font-weight:500;color:var(--pvb-muted);white-space:nowrap}
html body .pvb .pvb-swap{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:34px;height:34px;padding:0;border-radius:50%;
 border:1px solid var(--pvb-line2)!important;background:#1d1f26!important;color:var(--pvb-gold);opacity:1;display:flex;align-items:center;justify-content:center;margin:0}
html body .pvb .pvb-swap:hover,html body .pvb .pvb-swap:focus-visible{border-color:rgba(226,176,74,.7)!important;color:#fff}
html body .pvb .pvb-swap svg{width:16px!important;height:16px!important}

/* Passenger and bag counters */
html body .pvb .pvb-count{display:flex;align-items:center;height:54px;padding:0 6px;border:1px solid var(--pvb-line);border-radius:14px;background:rgba(255,255,255,.06)}
html body .pvb .pvb-count input{flex:1;min-width:0;min-height:0;height:100%;padding:0;border:0!important;background:transparent!important;box-shadow:none!important;text-align:center;font-size:17px;font-weight:800;cursor:default}
html body .pvb .pvb-count button{flex:none;width:40px;height:40px;padding:0;border:0;border-radius:10px;background:none;color:var(--pvb-gold);cursor:pointer;display:flex;align-items:center;justify-content:center}
html body .pvb .pvb-count button:hover{background:rgba(255,255,255,.08)}
html body .pvb .pvb-count button:disabled{opacity:.3;cursor:default;background:none}
html body .pvb .pvb-count svg{width:18px!important;height:18px!important}

@media (max-width:640px){
 html body .pvb .pvb-route{grid-template-columns:1fr}
 html body .pvb .pvb-route>label:last-child{border-inline-start:0;border-top:1px solid var(--pvb-line)}
 html body .pvb .pvb-swap{left:22px;right:auto;width:34px;height:34px;margin:0;transform:translateY(-50%) rotate(90deg)}
}

/* One joined bar: departure, return and passengers */
html body .pvb .pvb-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));border:1px solid var(--pvb-line);border-radius:16px;background:rgba(255,255,255,.06)}
html body .pvb .pvb-pick{display:flex;flex-direction:column;gap:2px;padding:10px 20px 8px;cursor:pointer;min-width:0;transition:background .2s}
html body .pvb .pvb-pick+.pvb-pick{border-inline-start:1px solid var(--pvb-line)}
html body .pvb .pvb-pick:hover,html body .pvb .pvb-pick.open{background:rgba(255,255,255,.05)}
html body .pvb .pvb-pick:first-child{border-radius:0 16px 16px 0}
html body .pvb .pvb-pick:last-child{border-radius:16px 0 0 16px}
html body .pvb .pvb-pick small{font-size:12.5px;font-weight:700;color:var(--pvb-gold)}
html body .pvb .pvb-val{appearance:none;background:none!important;border:0!important;box-shadow:none!important;padding:0;min-height:32px;color:#fff!important;font:700 15.5px/1.4 "Cairo",Tahoma,sans-serif;text-align:right;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:0;transform:none!important}
html body .pvb .pvb-val.is-empty{color:#8f887c!important;font-weight:600}
html body .pvb .pvb-pick.open{box-shadow:inset 0 -2px 0 var(--pvb-gold)}

/* Picker panel (dropdown on wide screens, bottom sheet on phones) */
.pvb-pop{position:absolute;z-index:100000;padding:18px;border-radius:20px;border:1px solid var(--pvb-line2);background:rgba(17,19,25,.98);box-shadow:0 30px 70px rgba(0,0,0,.55);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.pvb-pop.sheet{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto!important;max-height:88vh;overflow:auto;border-radius:22px 22px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom))}
.pvb-scrim{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.55)}
.pvb-pop-title{font-size:16px;font-weight:800;color:#fff;margin:0 0 12px}
.pvb-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.pvb-cal-head strong{font-size:15px;color:#fff}
.pvb-cal-head button,.pvb-pop .pvb-count button{width:38px;height:38px;border:0;border-radius:10px;background:none;color:var(--pvb-gold);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.pvb-cal-head button:hover{background:rgba(255,255,255,.08)}
.pvb-cal-head button:disabled{opacity:.25;cursor:default;background:none}
.pvb-cal-head svg{width:18px;height:18px}
.pvb-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}
.pvb-wd{font-size:12px;color:var(--pvb-muted);padding:4px 0 6px}
.pvb-day{height:40px;border:0;border-radius:10px;background:none;color:#eee8dc;font:700 14.5px "Cairo",sans-serif;cursor:pointer}
.pvb-day:hover{background:rgba(255,255,255,.08)}
.pvb-day.today{box-shadow:inset 0 0 0 1px rgba(226,176,74,.55)}
.pvb-day.on{background:var(--pvb-gold);color:#1a1308}
.pvb-day:disabled{color:#4d4a44;cursor:default;background:none;box-shadow:none}
.pvb-times-wrap{margin-top:14px;padding-top:12px;border-top:1px solid var(--pvb-line)}
.pvb-times-wrap small{display:block;font-size:12.5px;font-weight:700;color:var(--pvb-gold);margin-bottom:8px}
.pvb-times{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;max-height:168px;overflow-y:auto;padding-inline-end:2px}
.pvb-time{height:38px;border:1px solid var(--pvb-line);border-radius:10px;background:rgba(255,255,255,.04);color:#eee8dc;font:700 13.5px "Cairo",sans-serif;cursor:pointer}
.pvb-time:hover{border-color:rgba(226,176,74,.6)}
.pvb-time.on{background:var(--pvb-gold);border-color:var(--pvb-gold);color:#1a1308}
.pvb-time:disabled{opacity:.3;cursor:default}
.pvb-pop .pvb-pop-done{margin-top:16px;min-height:52px;font-size:16px}
.pvb-pax-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--pvb-line)}
.pvb-pax-row:last-of-type{border-bottom:0}
.pvb-pax-row strong{display:block;color:#fff;font-size:15.5px}
.pvb-pax-row small{color:var(--pvb-muted);font-size:13px}
.pvb-pop .pvb-count{display:flex;align-items:center;gap:6px;height:auto;padding:0;border:0;background:none}
.pvb-pop .pvb-count output{min-width:30px;text-align:center;font:800 18px "Cairo",sans-serif;color:#fff}
.pvb-pop .pvb-count button{border:1px solid var(--pvb-line2)}
.pvb-pop .pvb-count button:disabled{opacity:.3;cursor:default}
.pvb-pop .pvb-count svg{width:18px;height:18px}

@media (max-width:640px){
 html body .pvb .pvb-bar{grid-template-columns:1fr}
 html body .pvb .pvb-pick+.pvb-pick{border-inline-start:0;border-top:1px solid var(--pvb-line)}
 html body .pvb .pvb-pick:first-child{border-radius:16px 16px 0 0}
 html body .pvb .pvb-pick:last-child{border-radius:0 0 16px 16px}
 .pvb-times{grid-template-columns:repeat(3,1fr);max-height:200px}
}
.pvb-pop button{padding:0;line-height:1.2;text-transform:none;letter-spacing:0;min-width:0}
.pvb-pop .pvb-pop-done{padding:12px 22px}
html body .pvb:not(.pvb-round) .pvb-pick.pvb-ret{display:none}

/* Booking heading: keep the gold bar next to the text */
html body.pv-glass .elementor-element-c823cd2.elementor-widget-heading .elementor-heading-title{text-align:right!important}

/* Phones: compact car cards (details beside the photo, button below) */
@media (max-width:640px){
 html body.pv-glass .elementor-element-c823cd2.elementor-widget-heading .elementor-heading-title{font-size:24px!important}
 html body .pvb .pvb-cars{grid-template-columns:1fr;gap:12px}
 html body .pvb .pvb-car{display:grid;grid-template-columns:1fr 40%;grid-template-areas:"body img" "btn btn";border-radius:18px}
 html body .pvb .pvb-car:hover{transform:none}
 html body .pvb .pvb-car-img{grid-area:img;height:auto;min-height:112px;padding:10px 12px 0 10px}
 html body .pvb .pvb-car-img img{max-height:84px}
 html body .pvb .pvb-car-body{grid-area:body;padding:14px 16px 10px 0}
 html body .pvb .pvb-car h3{font-size:17px!important;line-height:1.35}
 html body .pvb .pvb-car-class{font-size:12.5px;margin:0 0 4px}
 html body .pvb .pvb-car-cap{font-size:13px;margin:0 0 4px}
 html body .pvb .pvb-car ul{display:flex;flex-wrap:wrap;border:0}
 html body .pvb .pvb-car li{padding:0;border:0;font-size:12.5px}
 html body .pvb .pvb-car li:not(:last-child)::after{content:"\00B7";margin:0 6px;color:var(--pvb-muted)}
 html body .pvb .pvb-car .pvb-warn{font-size:12.5px;margin:4px 0 0}
 html body .pvb .pvb-car .pvb-pick{grid-area:btn;width:auto;margin:0 14px 14px;min-height:46px;border-radius:14px;font-size:15px}
}
html body.pv-glass .elementor-element-23e6551d.elementor-widget-heading .elementor-heading-title{text-align:right!important}
/* Car buttons share .pvb-pick with the step-1 pickers; undo the joined-bar corner rounding on them */
html body .pvb .pvb-car .pvb-pick{border-radius:14px!important;flex-direction:row;align-items:center;justify-content:center;padding:12px 22px}
