/* Paraisord Booking - frontend styles */
:root{
        --pwb-navy:#1a3a5c;
        --pwb-cyan:#00bcd4;
        --pwb-orange:#ff9800;
}

/* Booking form */
.pwb-booking-form{background:#fff;border-radius:16px;padding:22px;box-shadow:0 20px 60px rgba(26,58,92,.25);}
.pwb-form .pwb-row,.pwb-wizard .pwb-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px;}
.pwb-form .pwb-field,.pwb-wizard .pwb-field{flex:1;min-width:150px;display:flex;flex-direction:column;}
.pwb-form label,.pwb-wizard .pwb-field label{font-size:12px;font-weight:600;color:var(--pwb-navy);margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px;}
.pwb-wizard .pwb-input,.pwb-wizard textarea.pwb-input{width:100%;}
.pwb-input{padding:11px 12px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14px;background:#f8fafc;transition:border-color .2s;color:#1a3a5c;}
.pwb-input:focus{outline:none;border-color:var(--pwb-cyan);background:#fff;}
.pwb-contact-row{border-top:1px dashed #e2e8f0;padding-top:14px;}

.pwb-quote{background:linear-gradient(135deg,var(--pwb-navy),#12283f);border-radius:12px;padding:16px;margin-bottom:14px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;}
.pwb-quote-item{display:flex;flex-direction:column;color:#cbd5e1;}
.pwb-quote-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;opacity:.8;}
.pwb-quote-value{font-size:16px;font-weight:700;color:#fff;}
.pwb-quote-total .pwb-quote-value{color:var(--pwb-orange);font-size:22px;}

.pwb-actions{text-align:center;}
.pwb-btn{cursor:pointer;border:none;border-radius:50px;font-weight:700;font-size:16px;padding:14px 34px;transition:transform .15s,box-shadow .15s;}
.pwb-btn-primary{background:#25d366;color:#fff;box-shadow:0 8px 24px rgba(37,211,102,.4);}
.pwb-btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(37,211,102,.5);}
.pwb-wa-icon{font-size:18px;}
.pwb-msg{margin-top:10px;font-weight:600;min-height:20px;}

/* Fleet */
.pwb-fleet{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;}
.pwb-fleet-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(26,58,92,.1);transition:transform .2s;}
.pwb-fleet-card:hover{transform:translateY(-6px);}
.pwb-fleet-img{height:190px;background:linear-gradient(135deg,#e0f7fa,#e3f2fd);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.pwb-fleet-img img{width:100%;height:100%;object-fit:cover;}
.pwb-fleet-placeholder{font-size:64px;opacity:.35;}
.pwb-fleet-body{padding:22px;}
.pwb-fleet-body h3{margin:0 0 12px;color:var(--pwb-navy);font-size:22px;}
.pwb-fleet-specs{list-style:none;padding:0;margin:0 0 12px;display:flex;gap:18px;color:var(--pwb-navy);font-weight:600;font-size:14px;}
.pwb-fleet-desc{color:#64748b;font-size:14px;margin-bottom:12px;}
.pwb-fleet-features{list-style:none;padding:0;margin:0;}
.pwb-fleet-features li{color:#334155;font-size:13px;padding:3px 0;}
.pwb-fleet-price{margin-top:16px;padding-top:14px;border-top:1px dashed #e2e8f0;display:flex;align-items:baseline;gap:8px;}
.pwb-fleet-from{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;font-weight:600;}
.pwb-fleet-amount{font-size:26px;font-weight:800;color:var(--pwb-orange);font-family:'Poppins',sans-serif;}

/* Destinations */
.pwb-destinations{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;}
.pwb-dest-card{position:relative;display:block;height:240px;border-radius:16px;overflow:hidden;text-decoration:none;background-size:cover;background-position:center;background-color:#1a3a5c;box-shadow:0 10px 30px rgba(26,58,92,.15);}
.pwb-dest-card:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(26,58,92,.9),rgba(26,58,92,.1));}
.pwb-dest-overlay{position:absolute;bottom:0;left:0;right:0;padding:18px;color:#fff;z-index:1;}
.pwb-dest-overlay h3{margin:0 0 6px;font-size:22px;color:#fff !important;text-shadow:0 2px 10px rgba(0,0,0,.6),0 1px 3px rgba(0,0,0,.5);}
.pwb-dest-time{margin:0;font-size:13px;opacity:.9;}
.pwb-dest-price{margin:6px 0 0;font-size:14px;}
.pwb-dest-price strong{color:var(--pwb-orange);font-size:18px;}
.pwb-dest-card:hover{transform:translateY(-4px);transition:transform .2s;}

/* Testimonials */
.pwb-testimonials{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;}
.pwb-testi-card{background:#fff;border-radius:16px;padding:26px;box-shadow:0 10px 30px rgba(26,58,92,.1);}
.pwb-stars{color:var(--pwb-orange);font-size:20px;letter-spacing:2px;margin-bottom:10px;}
.pwb-testi-text{color:#475569;font-style:italic;font-size:15px;line-height:1.6;margin-bottom:14px;}
.pwb-testi-author{font-weight:700;color:var(--pwb-navy);}
.pwb-testi-author span{font-weight:400;color:#94a3b8;}

/* FAQs */
.pwb-faqs{max-width:820px;margin:0 auto;}
.pwb-faq-item{background:#fff;border-radius:12px;margin-bottom:12px;box-shadow:0 4px 16px rgba(26,58,92,.08);overflow:hidden;}
.pwb-faq-q{width:100%;text-align:left;background:none;border:none;padding:18px 22px;font-size:16px;font-weight:600;color:var(--pwb-navy);cursor:pointer;display:flex;justify-content:space-between;align-items:center;}
.pwb-faq-toggle{font-size:24px;color:var(--pwb-cyan);transition:transform .2s;}
.pwb-faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0 22px;color:#64748b;line-height:1.6;}
.pwb-faq-item.pwb-open .pwb-faq-a{max-height:400px;padding:0 22px 18px;}
.pwb-faq-item.pwb-open .pwb-faq-toggle{transform:rotate(45deg);}

@media(max-width:640px){
        .pwb-form .pwb-field{min-width:100%;}
        .pwb-quote{flex-direction:column;}
}

/* ============================================================
   BOOKING WIZARD (multi-step, daytrip-style)
   ============================================================ */
.pwb-wizard{background:#fff;border-radius:18px;box-shadow:0 20px 60px rgba(26,58,92,.22);overflow:hidden;max-width:100%;}
.pwb-wizard *{box-sizing:border-box;}

/* Progress steps */
.pwb-steps{display:flex;background:linear-gradient(135deg,var(--pwb-navy),#12283f);padding:18px 20px;gap:6px;overflow-x:auto;}
.pwb-step{display:flex;align-items:center;gap:8px;flex:1;min-width:max-content;position:relative;opacity:.55;transition:opacity .25s;}
.pwb-step:not(:last-child)::after{content:"";flex:1;height:2px;background:rgba(255,255,255,.25);margin:0 6px;min-width:16px;}
.pwb-step.is-active,.pwb-step.is-done{opacity:1;}
.pwb-step-num{width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;border:2px solid transparent;transition:all .25s;}
.pwb-step.is-active .pwb-step-num{background:var(--pwb-cyan);border-color:#fff;box-shadow:0 0 0 4px rgba(0,188,212,.25);}
.pwb-step.is-done .pwb-step-num{background:var(--pwb-orange);}
.pwb-step.is-done .pwb-step-num::after{content:"\2713";}
.pwb-step.is-done .pwb-step-num span{display:none;}
.pwb-step-label{color:#fff;font-size:13px;font-weight:600;white-space:nowrap;}

/* Body layout */
.pwb-wizard-body{display:grid;grid-template-columns:1fr 320px;gap:0;max-width:100%;}
.pwb-wizard-body>*{min-width:0;}
.pwb-wizard-main{padding:26px 28px;min-height:340px;display:flex;flex-direction:column;min-width:0;max-width:100%;}
.pwb-panel{display:none;animation:pwbFade .3s ease;}
.pwb-panel.is-active{display:block;}
@keyframes pwbFade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
.pwb-panel-title{font-family:'Poppins',sans-serif;font-size:20px;font-weight:700;color:var(--pwb-navy);margin:0 0 18px;}
.pwb-hint{color:#94a3b8;font-size:14px;margin:0 0 14px;}

/* No-price / contact support notice (route not in catalog) */
.pwb-noprice{background:#fff7ed;border:1px solid #fed7aa;border-radius:14px;padding:26px 22px;text-align:center;margin:6px 0 14px;}
.pwb-noprice-icon{font-size:34px;line-height:1;margin-bottom:8px;}
.pwb-noprice-title{margin:0 0 8px;font-size:17px;font-weight:800;color:#b45309;}
.pwb-noprice-text{margin:0 auto 16px;max-width:460px;color:#7c5314;font-size:14px;line-height:1.55;}
.pwb-noprice-btn{display:inline-block;background:#25d366;color:#fff;font-weight:700;font-size:14px;text-decoration:none;padding:12px 22px;border-radius:999px;transition:background .2s,transform .15s;}
.pwb-noprice-btn:hover{background:#1ebe57;transform:translateY(-1px);}

/* Route picker */
.pwb-route-picker{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:22px;}
.pwb-route-picker .pwb-field{flex:1;min-width:180px;display:flex;flex-direction:column;}
.pwb-route-picker .pwb-field-sm{min-width:90px;flex:0 0 auto;}
.pwb-route-picker label{font-size:12px;font-weight:600;color:var(--pwb-navy);margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px;}

/* Vehicle cards */
.pwb-vehicle-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;}
.pwb-vcard{border:2px solid #e2e8f0;border-radius:14px;overflow:hidden;cursor:pointer;background:#fff;transition:border-color .2s,box-shadow .2s,transform .2s;position:relative;display:flex;flex-direction:column;}
.pwb-vcard:hover{border-color:var(--pwb-cyan);box-shadow:0 10px 26px rgba(26,58,92,.14);transform:translateY(-3px);}
.pwb-vcard.is-selected{border-color:var(--pwb-cyan);box-shadow:0 0 0 3px rgba(0,188,212,.25);}
.pwb-vcard.is-disabled{opacity:.5;pointer-events:none;filter:grayscale(.6);}
.pwb-vcard-img{width:100%;height:130px;background:#f1f5f9;display:block;overflow:hidden;}
.pwb-vcard-img img{width:100%;height:100%;object-fit:cover;display:block;}
.pwb-vcard-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px;flex:1;}
.pwb-vcard-body h4{font-weight:700;color:var(--pwb-navy);font-size:16px;font-family:'Poppins',sans-serif;margin:0;}
.pwb-vcard-desc{font-size:12.5px;color:#94a3b8;line-height:1.4;margin:0;}
.pwb-vcard-specs{font-size:13px;color:#64748b;display:flex;gap:14px;margin-top:auto;padding-top:4px;}
.pwb-vcard-price{padding:0 16px 16px;display:flex;align-items:center;justify-content:space-between;}
.pwb-vcard-amount{font-size:20px;font-weight:800;color:var(--pwb-orange);font-family:'Poppins',sans-serif;line-height:1;}
.pwb-vcard-check{width:26px;height:26px;border-radius:50%;border:2px solid #cbd5e1;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;transition:all .2s;flex:0 0 26px;}
.pwb-vcard.is-selected .pwb-vcard-check{background:var(--pwb-cyan);border-color:var(--pwb-cyan);}
.pwb-vcard-na{position:absolute;top:10px;right:10px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px;text-transform:uppercase;letter-spacing:.3px;}

/* Pickup / drop-off location boxes */
.pwb-locbox{border:1.5px solid #e2e8f0;border-radius:12px;padding:16px 18px;margin-bottom:16px;background:#f8fafc;}
.pwb-locbox-title{font-family:'Poppins',sans-serif;font-size:15px;font-weight:700;color:var(--pwb-navy);margin:0 0 12px;display:flex;flex-wrap:wrap;gap:4px;align-items:center;}
.pwb-locbox-title .pwb-loc-name{color:var(--pwb-cyan);font-weight:600;}
.pwb-loc-hint{font-size:13px;color:#64748b;margin:0 0 12px;line-height:1.5;}
.pwb-loc-badge{display:inline-block;background:var(--pwb-orange);color:#fff;font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px;margin-right:6px;}
.pwb-loc-place .pwb-field{margin-bottom:12px;}
.pwb-loc-place .pwb-field:last-child{margin-bottom:0;}

/* Stops */
.pwb-stop-row{display:flex;gap:10px;align-items:center;margin-bottom:10px;}
.pwb-stop-input{flex:1;padding:11px 12px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14px;background:#f8fafc;color:#1a3a5c;}
.pwb-stop-input:focus{outline:none;border-color:var(--pwb-cyan);background:#fff;}
.pwb-stop-del{width:40px;height:40px;flex:0 0 40px;border:none;border-radius:10px;background:#fee2e2;color:#ef4444;font-size:18px;cursor:pointer;transition:background .2s;}
.pwb-stop-del:hover{background:#fecaca;}
.pwb-add-stop{background:none;border:2px dashed var(--pwb-cyan);color:var(--pwb-navy);font-weight:600;padding:12px 18px;border-radius:10px;cursor:pointer;transition:background .2s;width:100%;}
.pwb-add-stop:hover{background:rgba(0,188,212,.08);}

/* Nav buttons */
.pwb-nav-btns{display:flex;gap:12px;margin-top:auto;padding-top:24px;}
.pwb-btn{padding:13px 26px;border:none;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s;font-family:'Poppins',sans-serif;}
.pwb-btn-ghost{background:#f1f5f9;color:var(--pwb-navy);}
.pwb-btn-ghost:hover{background:#e2e8f0;}
.pwb-btn-next{background:var(--pwb-cyan);color:#fff;margin-left:auto;}
.pwb-btn-next:hover{background:#00a5bb;}
/* Compact "Atrás" back button so it doesn't dominate the row */
.pwb-nav-btns #pwb-back{flex:0 0 auto;padding:10px 18px;font-size:14px;}
.pwb-btn-primary{background:linear-gradient(135deg,var(--pwb-orange),#f57c00);color:#fff;margin-left:auto;box-shadow:0 8px 22px rgba(255,152,0,.4);}
.pwb-btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(255,152,0,.5);}
.pwb-wa-icon{font-size:16px;}
/* Pago con tarjeta (PayPal Advanced Card Fields) */
.pwb-card-fields-wrap{border:1.5px solid #e2e8f0;border-radius:10px;padding:10px 12px;margin-top:6px;background:#f8fafc;}
.pwb-card-fields-wrap .card-field,.pwb-card-fields-wrap>div{margin-bottom:8px;}
.pwb-pay-card-btn{width:100%;margin-top:12px;background:var(--pwb-navy);color:#fff;border:none;border-radius:10px;padding:13px 20px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .15s,box-shadow .15s;}
.pwb-pay-card-btn:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(26,58,92,.35);}
.pwb-pay-card-btn:disabled{opacity:.65;cursor:default;transform:none;box-shadow:none;}
.pwb-msg{margin-top:14px;font-size:14px;font-weight:600;color:var(--pwb-navy);}
.pwb-msg.pwb-error{color:#ef4444;}

/* Summary sidebar */
.pwb-summary{background:linear-gradient(160deg,var(--pwb-navy),#12283f);color:#fff;padding:26px 24px;display:flex;flex-direction:column;}
.pwb-summary-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;}
.pwb-summary-badge{background:var(--pwb-orange);color:#fff;font-size:11px;font-weight:700;padding:5px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px;}
.pwb-summary-pax{font-size:13px;color:#cbd5e1;}
.pwb-summary-route{position:relative;padding-left:6px;margin-bottom:16px;}
.pwb-summary-point{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;padding:6px 0;}
.pwb-dot{width:11px;height:11px;border-radius:50%;background:var(--pwb-cyan);flex:0 0 11px;position:relative;z-index:1;}
.pwb-dot-end{background:var(--pwb-orange);}
.pwb-summary-route::before{content:"";position:absolute;left:11px;top:20px;bottom:20px;width:2px;background:rgba(255,255,255,.2);}
.pwb-summary-meta{font-size:13px;color:#cbd5e1;margin-bottom:8px;}
.pwb-summary-vehicle{font-size:14px;font-weight:600;color:#fff;margin-bottom:8px;}
.pwb-summary hr{border:none;border-top:1px solid rgba(255,255,255,.15);margin:16px 0;}
.pwb-summary h4{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;margin:0 0 12px;font-weight:600;}
.pwb-summary-line{display:flex;justify-content:space-between;font-size:14px;margin-bottom:10px;color:#e2e8f0;}
.pwb-summary-total{display:flex;justify-content:space-between;align-items:center;font-size:19px;font-weight:800;padding-top:14px;margin-top:6px;border-top:1px solid rgba(255,255,255,.15);font-family:'Poppins',sans-serif;}
.pwb-summary-total span:last-child{color:var(--pwb-orange);}
.pwb-summary-note{margin-top:16px;font-size:12px;color:#94a3b8;}

/* Full summary (step 5) */
.pwb-sumcard{border:1.5px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:16px;}
.pwb-sumcard-row{display:flex;justify-content:space-between;gap:14px;font-size:14px;padding:8px 0;border-bottom:1px dashed #eef2f6;color:#475569;}
.pwb-sumcard-row:last-child{border-bottom:none;}
.pwb-sumcard-row strong{color:var(--pwb-navy);font-weight:600;}
.pwb-sumcard-row span{text-align:right;}
.pwb-sumcard-prices{background:linear-gradient(135deg,var(--pwb-navy),#12283f);color:#fff;border:none;}
.pwb-sumcard-prices .pwb-sumcard-row{border-color:rgba(255,255,255,.15);color:#cbd5e1;}
.pwb-sumcard-row.pwb-sumcard-total{border-bottom:none;padding-top:14px;margin-top:6px;border-top:1px solid rgba(255,255,255,.2);font-size:20px;font-weight:800;color:#fff;font-family:'Poppins',sans-serif;}
.pwb-sumcard-row.pwb-sumcard-total span:last-child{color:var(--pwb-orange);}

/* Responsive */
@media(max-width:860px){
        .pwb-wizard-body{grid-template-columns:1fr;}
        .pwb-summary{order:-1;}
        .pwb-step-label{display:none;}
        .pwb-step{flex:1 1 auto;}
        .pwb-step:not(:last-child)::after{min-width:12px;}
}
@media(max-width:560px){
        .pwb-wizard-main{padding:20px 16px;}
        .pwb-summary{padding:20px 16px;}
        .pwb-route-picker .pwb-field{min-width:100%;}
        .pwb-vehicle-list{grid-template-columns:1fr;}
        .pwb-nav-btns{flex-wrap:wrap;}
        .pwb-btn{flex:1;}
        /* Compact step bar so all 5 steps fit without cutting off */
        .pwb-steps{padding:14px 12px;gap:2px;justify-content:space-between;}
        .pwb-step{gap:0;}
        .pwb-step-num{width:26px;height:26px;flex:0 0 26px;font-size:13px;}
        .pwb-step:not(:last-child)::after{min-width:6px;margin:0 2px;}
        .pwb-summary-total,.pwb-sumcard-row.pwb-sumcard-total{font-size:17px;}
        .pwb-summary-line,.pwb-sumcard-row{font-size:13px;}
}

/* ============================================================
   VEHICLE RENTAL MODULE
   ============================================================ */
.pwb-rentals{max-width:1100px;margin:0 auto;}
.pwb-rental-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-bottom:40px;}
.pwb-rental-card{background:#fff;border:2px solid #e2e8f0;border-radius:16px;overflow:hidden;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;flex-direction:column;}
.pwb-rental-card:hover{box-shadow:0 12px 30px rgba(26,58,92,.14);transform:translateY(-4px);}
.pwb-rental-card.is-selected{border-color:var(--pwb-cyan);box-shadow:0 0 0 3px rgba(0,188,212,.25);}
.pwb-rental-img{position:relative;height:190px;background:linear-gradient(135deg,#e0f7fa,#e3f2fd);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.pwb-rental-img img{width:100%;height:100%;object-fit:cover;}
.pwb-rental-cat{position:absolute;top:12px;left:12px;background:var(--pwb-navy);color:#fff;font-size:11px;font-weight:700;padding:5px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px;}
.pwb-rental-body{padding:20px;display:flex;flex-direction:column;flex:1;}
.pwb-rental-body h3{margin:0 0 12px;color:var(--pwb-navy);font-size:20px;font-family:'Poppins',sans-serif;}
.pwb-rental-specs{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-wrap:wrap;gap:14px;color:var(--pwb-navy);font-weight:600;font-size:13.5px;}
.pwb-rental-desc{color:#64748b;font-size:14px;margin-bottom:12px;}
.pwb-rental-features{list-style:none;padding:0;margin:0 0 14px;}
.pwb-rental-features li{color:#334155;font-size:13px;padding:3px 0;}
.pwb-rental-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px dashed #e2e8f0;}
.pwb-rental-price{display:flex;align-items:baseline;gap:4px;}
.pwb-rental-amount{font-size:26px;font-weight:800;color:var(--pwb-orange);font-family:'Poppins',sans-serif;}
.pwb-rental-per{font-size:13px;color:#94a3b8;font-weight:600;}
.pwb-rental-pick{white-space:nowrap;padding:10px 16px;font-size:14px;}
.pwb-rental-form-wrap{background:#fff;border-radius:18px;padding:30px;box-shadow:0 16px 44px rgba(26,58,92,.14);max-width:820px;margin:0 auto;}
.pwb-rental-form-wrap .pwb-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:16px;}
.pwb-rental-form-wrap .pwb-field{flex:1;min-width:180px;display:flex;flex-direction:column;}
.pwb-rental-form-wrap label{font-size:12px;font-weight:600;color:var(--pwb-navy);margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px;}
.pwb-rental-subtitle{font-family:'Poppins',sans-serif;font-size:16px;font-weight:700;color:var(--pwb-navy);margin:22px 0 14px;padding-top:16px;border-top:1px solid #eef2f6;}
.pwb-rental-agehint{font-size:12.5px;color:#64748b;margin:2px 0 16px;}
.pwb-rental-summary{margin:8px 0 16px;}
.pwb-rental-summary .pwb-sumcard-row{display:flex;justify-content:space-between;font-size:15px;padding:8px 0;border-bottom:1px dashed #eef2f6;color:#475569;}
.pwb-rental-summary .pwb-sumcard-row strong{color:var(--pwb-navy);}
@media(max-width:560px){
        .pwb-rental-foot{flex-direction:column;align-items:stretch;}
        .pwb-rental-form-wrap{padding:20px;}
        .pwb-rental-form-wrap .pwb-field{min-width:100%;}
}

/* ============================================================
   CLIENT ACCOUNTS (login / register / my bookings)
   ============================================================ */
.pwb-auth-card{background:#fff;border-radius:16px;padding:30px;max-width:440px;margin:0 auto;box-shadow:0 16px 44px rgba(26,58,92,.14);}
.pwb-auth-title{font-family:'Poppins',sans-serif;font-size:24px;color:var(--pwb-navy);margin:0 0 4px;}
.pwb-auth-optional{color:#94a3b8;font-size:13px;margin:0 0 20px;}
.pwb-auth-form{display:flex;flex-direction:column;}
.pwb-auth-form label{font-size:12px;font-weight:600;color:var(--pwb-navy);margin:12px 0 5px;text-transform:uppercase;letter-spacing:.4px;}
.pwb-auth-check{display:flex;align-items:center;gap:8px;text-transform:none!important;font-weight:500!important;margin-top:14px!important;}
.pwb-auth-check input{width:auto;}
.pwb-auth-btn{margin-top:20px;width:100%;justify-content:center;}
.pwb-auth-links{margin-top:18px;text-align:center;font-size:14px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;}
.pwb-auth-links a{color:var(--pwb-cyan);text-decoration:none;font-weight:600;}
.pwb-auth-links a:hover{text-decoration:underline;}
.pwb-auth-reset{border-top:1px dashed #e2e8f0;margin-top:18px;padding-top:14px;}
.pwb-auth-notice{max-width:440px;margin:0 auto 14px;padding:12px 16px;border-radius:10px;font-size:14px;}
.pwb-auth-error{background:#fee2e2;color:#b91c1c;}
.pwb-auth-success{background:#dcfce7;color:#15803d;}

/* Account area */
.pwb-account{background:#fff;border-radius:16px;padding:30px;max-width:820px;margin:0 auto;box-shadow:0 16px 44px rgba(26,58,92,.12);}
.pwb-account-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid #eef2f6;padding-bottom:20px;margin-bottom:8px;}
.pwb-account-head h3{font-family:'Poppins',sans-serif;color:var(--pwb-navy);margin:0;font-size:22px;}
.pwb-account-email{color:#94a3b8;font-size:14px;margin:4px 0 0;}
.pwb-account-section{font-family:'Poppins',sans-serif;color:var(--pwb-navy);font-size:17px;margin:26px 0 14px;}
.pwb-account-list{display:flex;flex-direction:column;gap:12px;}
.pwb-account-item{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;border:1.5px solid #e2e8f0;border-radius:12px;padding:16px 18px;transition:border-color .2s;}
.pwb-account-item:hover{border-color:var(--pwb-cyan);}
.pwb-account-item-main{display:flex;flex-direction:column;gap:4px;}
.pwb-account-code{font-weight:800;color:var(--pwb-orange);font-family:'Poppins',sans-serif;font-size:14px;}
.pwb-account-route{font-weight:600;color:var(--pwb-navy);font-size:15px;}
.pwb-account-date{color:#94a3b8;font-size:13px;}
.pwb-account-item-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;}
.pwb-account-total{font-weight:800;color:var(--pwb-navy);font-family:'Poppins',sans-serif;}
.pwb-status{font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.3px;}
.pwb-status-pending{background:#fef3c7;color:#b45309;}
.pwb-status-confirmed{background:#dbeafe;color:#1d4ed8;}
.pwb-status-active{background:#e0f2fe;color:#0369a1;}
.pwb-status-completed{background:#dcfce7;color:#15803d;}
.pwb-status-cancelled{background:#fee2e2;color:#b91c1c;}
.pwb-account-empty{color:#94a3b8;font-size:14px;background:#f8fafc;border-radius:10px;padding:16px;text-align:center;}
@media(max-width:480px){
        .pwb-auth-card,.pwb-account{padding:20px;}
}



/* ---------------- WhatsApp confirmation ---------------- */
.pwb-wa-done{margin-top:8px;text-align:center;}
.pwb-wa-ok{margin:0 0 10px;font-size:15px;color:#2e7d32;font-weight:600;}
.pwb-wa-btn{display:inline-flex;align-items:center;gap:8px;background:#25d366;color:#fff!important;text-decoration:none;font-weight:700;font-size:16px;padding:13px 26px;border-radius:30px;box-shadow:0 6px 18px rgba(37,211,102,.4);transition:transform .15s,box-shadow .15s;}
.pwb-wa-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(37,211,102,.5);}
.pwb-wa-hint{margin:10px 0 0;font-size:12px;color:#64748b;}

/* ---------------- Popular photo/video gallery (carousel) ---------------- */
.pwb-gallery{position:relative;margin-top:10px;}
.pwb-gallery-track{display:flex;gap:18px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;padding:6px 2px 18px;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.pwb-gallery-track::-webkit-scrollbar{display:none;}
.pwb-gallery-item{position:relative;flex:0 0 auto;width:min(340px,80vw);aspect-ratio:4/3;border-radius:16px;overflow:hidden;scroll-snap-align:start;box-shadow:0 10px 30px rgba(26,58,92,.14);background:#0b1f33;cursor:pointer;}
.pwb-gallery-item img,.pwb-gallery-item video{width:100%;height:100%;object-fit:cover;display:block;}
.pwb-gallery-item iframe{width:100%;height:100%;border:0;display:block;}
.pwb-gallery-cap{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 12px;color:#fff;font-weight:600;font-size:15px;background:linear-gradient(transparent,rgba(6,20,36,.8));}
.pwb-gallery-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;}
.pwb-gallery-play span{width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.9);color:#1a3a5c;display:flex;align-items:center;justify-content:center;font-size:24px;padding-left:5px;box-shadow:0 6px 20px rgba(0,0,0,.3);}
.pwb-gallery-nav{position:absolute;top:calc(50% - 30px);transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:none;background:#fff;color:#1a3a5c;font-size:22px;cursor:pointer;box-shadow:0 4px 16px rgba(26,58,92,.25);display:flex;align-items:center;justify-content:center;z-index:3;transition:background .2s,color .2s;}
.pwb-gallery-nav:hover{background:#00bcd4;color:#fff;}
.pwb-gallery-prev{left:-6px;}
.pwb-gallery-next{right:-6px;}
@media(max-width:640px){
        .pwb-gallery-nav{display:none;}
        .pwb-gallery-item{width:82vw;}
}

/* Lightbox for gallery items */
.pwb-lightbox{position:fixed;inset:0;background:rgba(6,15,26,.92);z-index:100000;display:none;align-items:center;justify-content:center;padding:20px;}
.pwb-lightbox.is-open{display:flex;}
.pwb-lightbox-inner{position:relative;width:min(960px,96vw);max-height:90vh;}
.pwb-lightbox-inner img,.pwb-lightbox-inner video,.pwb-lightbox-inner iframe{width:100%;max-height:90vh;border-radius:12px;display:block;background:#000;}
.pwb-lightbox-inner iframe{aspect-ratio:16/9;height:auto;}
.pwb-lightbox-close{position:absolute;top:-14px;right:-14px;width:42px;height:42px;border-radius:50%;border:none;background:#fff;color:#1a3a5c;font-size:24px;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.4);}



/* =========================================================
   TOURS ("Qué hacer")
   ========================================================= */
.pwb-tours{max-width:1180px;margin:0 auto;padding:10px 0 40px;}
.pwb-tours-head{text-align:center;margin-bottom:22px;}
.pwb-tours-title{font-size:30px;color:var(--pwb-navy);margin:0 0 6px;font-weight:800;}
.pwb-tours-sub{color:#64748b;margin:0;font-size:15px;}
.pwb-tours-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:26px;}
.pwb-tab{border:1.5px solid #e2e8f0;background:#fff;color:var(--pwb-navy);padding:8px 16px;border-radius:50px;font-weight:600;font-size:13px;cursor:pointer;transition:all .18s;}
.pwb-tab:hover{border-color:var(--pwb-cyan);}
.pwb-tab.active{background:var(--pwb-navy);color:#fff;border-color:var(--pwb-navy);}
.pwb-tours-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.pwb-tours-grid--sm{grid-template-columns:repeat(4,1fr);gap:16px;}
.pwb-tour-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(26,58,92,.10);display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s;}
.pwb-tour-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(26,58,92,.18);}
.pwb-tour-card-media{position:relative;display:block;aspect-ratio:4/3;background:#e2e8f0;overflow:hidden;}
.pwb-tour-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.pwb-tour-card:hover .pwb-tour-card-media img{transform:scale(1.06);}
.pwb-tour-noimg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:52px;background:linear-gradient(135deg,#a5f3fc,#67e8f9);}
.pwb-tour-badge{position:absolute;top:10px;left:10px;background:rgba(37,211,102,.95);color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:50px;text-transform:uppercase;letter-spacing:.4px;}
.pwb-tour-badge--out{background:rgba(148,163,184,.95);}
.pwb-tour-card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1;}
.pwb-tour-dest{font-size:12px;color:var(--pwb-cyan);font-weight:700;}
.pwb-tour-name{font-size:17px;margin:0;line-height:1.25;color:var(--pwb-navy);}
.pwb-tour-name a{color:inherit;text-decoration:none;}
.pwb-tour-name a:hover{color:var(--pwb-cyan);}
.pwb-tour-meta{display:flex;gap:12px;font-size:13px;color:#64748b;flex-wrap:wrap;}
.pwb-tour-rate{color:#f59e0b;font-weight:700;}
.pwb-tour-rate small{color:#94a3b8;font-weight:500;}
.pwb-tour-activity{font-size:12px;color:#94a3b8;}
.pwb-tour-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:6px;gap:10px;}
.pwb-tour-price{display:flex;flex-direction:column;line-height:1.1;}
.pwb-tour-price small{font-size:11px;color:#94a3b8;}
.pwb-tour-price strong{font-size:22px;color:var(--pwb-navy);}
.pwb-tour-price span{font-size:11px;color:#94a3b8;}
.pwb-btn-ghost{border:1.5px solid var(--pwb-navy);color:var(--pwb-navy);background:#fff;border-radius:50px;padding:7px 14px;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap;transition:all .18s;}
.pwb-btn-ghost:hover{background:var(--pwb-navy);color:#fff;}
.pwb-btn-wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#25d366;color:#fff;border:none;border-radius:50px;padding:11px 16px;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s;width:100%;}
.pwb-btn-wa:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(37,211,102,.45);color:#fff;}
.pwb-tours-empty,.pwb-forum-empty{grid-column:1/-1;text-align:center;color:#64748b;padding:40px 0;}

/* Single tour */
.pwb-single-tour{padding:24px 0 50px;}
.pwb-single-tour .pw-container{max-width:1180px;}
.pwb-tour-crumbs{font-size:13px;color:#94a3b8;margin-bottom:14px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.pwb-tour-crumbs a{color:var(--pwb-cyan);text-decoration:none;}
.pwb-tour-header h1{font-size:32px;color:var(--pwb-navy);margin:0 0 8px;}
.pwb-tour-header-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:14px;color:#64748b;margin-bottom:18px;}
.pwb-tour-stars{color:#f59e0b;font-weight:600;}
.pwb-tour-gallery{margin-bottom:26px;}
.pwb-tour-gallery-main{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:16/9;background:#e2e8f0;}
.pwb-tour-gallery-main img{width:100%;height:100%;object-fit:cover;}
.pwb-tg-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:none;background:rgba(255,255,255,.9);color:var(--pwb-navy);font-size:26px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.2);}
.pwb-tg-prev{left:12px;}
.pwb-tg-next{right:12px;}
.pwb-tour-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;padding-bottom:4px;}
.pwb-tour-thumb{flex:0 0 96px;height:66px;border-radius:10px;overflow:hidden;border:2px solid transparent;background:none;padding:0;cursor:pointer;}
.pwb-tour-thumb.active{border-color:var(--pwb-cyan);}
.pwb-tour-thumb img{width:100%;height:100%;object-fit:cover;}
.pwb-tour-gallery-main{cursor:zoom-in;}
.pwb-tg-zoom{position:absolute;top:12px;right:12px;background:rgba(15,23,42,.55);color:#fff;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:17px;pointer-events:none;}
.pwb-tg-count{position:absolute;bottom:12px;right:14px;background:rgba(15,23,42,.6);color:#fff;font-size:13px;font-weight:600;padding:4px 10px;border-radius:20px;}
/* Lightbox */
.pwb-tour-lightbox{position:fixed;inset:0;z-index:100001;display:none;align-items:center;justify-content:center;background:rgba(10,15,25,.92);padding:24px;}
.pwb-tour-lightbox.open{display:flex;}
.pwb-tour-lightbox img{max-width:94vw;max-height:88vh;border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.5);}
.pwb-tlb-close{position:absolute;top:16px;right:22px;color:#fff;font-size:40px;line-height:1;cursor:pointer;opacity:.85;}
.pwb-tlb-close:hover{opacity:1;}
.pwb-tlb-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:none;background:rgba(255,255,255,.9);color:var(--pwb-navy);font-size:30px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.pwb-tlb-prev{left:20px;}
.pwb-tlb-next{right:20px;}
.pwb-tlb-data{display:none;}
body.pwb-lb-open{overflow:hidden;}
.pwb-tour-layout{display:grid;grid-template-columns:1fr 340px;gap:30px;align-items:start;}
.pwb-tour-layout>.pwb-tour-content,.pwb-tour-layout>.pwb-tour-side{min-width:0;}
.pwb-tour-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:22px;}
.pwb-fact{display:flex;gap:10px;align-items:center;background:#f8fafc;border-radius:12px;padding:12px 14px;}
.pwb-fact span{font-size:22px;}
.pwb-fact small{display:block;font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.4px;}
.pwb-fact strong{color:var(--pwb-navy);font-size:14px;}
.pwb-tour-desc{color:#475569;line-height:1.7;margin-bottom:24px;}
.pwb-tour-sec{margin-bottom:28px;}
.pwb-tour-sec h2{font-size:21px;color:var(--pwb-navy);margin:0 0 14px;padding-bottom:8px;border-bottom:2px solid #f1f5f9;}
.pwb-tour-highlights{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.pwb-tour-highlights li{color:#475569;font-size:14px;}
.pwb-tour-incl{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.pwb-incl-yes,.pwb-incl-no{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;font-size:14px;}
.pwb-incl-yes li{color:#15803d;}
.pwb-incl-no li{color:#b91c1c;}
.pwb-tour-itin{list-style:none;padding:0;margin:0;position:relative;}
.pwb-tour-itin li{display:flex;gap:14px;padding:0 0 16px 4px;border-left:2px solid #e2e8f0;margin-left:8px;padding-left:18px;position:relative;}
.pwb-tour-itin li:before{content:"";position:absolute;left:-7px;top:2px;width:12px;height:12px;border-radius:50%;background:var(--pwb-cyan);}
.pwb-itin-time{font-weight:700;color:var(--pwb-navy);min-width:88px;font-size:13px;}
.pwb-itin-text{color:#475569;font-size:14px;}
.pwb-tour-faq{border:1px solid #e2e8f0;border-radius:12px;margin-bottom:10px;overflow:hidden;}
.pwb-tour-faq-q{width:100%;text-align:left;background:#fff;border:none;padding:14px 16px;font-size:15px;font-weight:600;color:var(--pwb-navy);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;}
.pwb-tour-faq-q span{font-size:22px;color:var(--pwb-cyan);transition:transform .2s;}
.pwb-tour-faq.open .pwb-tour-faq-q span{transform:rotate(45deg);}
.pwb-tour-faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;}
.pwb-tour-faq.open .pwb-tour-faq-a{max-height:400px;}
.pwb-tour-faq-a p{padding:0 16px 14px;margin:0;color:#475569;line-height:1.6;}
.pwb-tour-reviews{background:#f8fafc;border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:6px;}
.pwb-tour-review-score{display:flex;align-items:center;gap:12px;}
.pwb-tour-review-score strong{font-size:40px;color:var(--pwb-navy);}
.pwb-tour-review-note{color:#64748b;margin:0;font-size:14px;}
/* Sticky sidebar */
.pwb-tour-side{position:sticky;top:96px;}
.pwb-tour-side-box{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:20px;box-shadow:0 14px 40px rgba(26,58,92,.12);}
.pwb-tour-side-price{display:flex;flex-direction:column;line-height:1.15;margin-bottom:6px;}
.pwb-tour-side-price small{color:#94a3b8;font-size:12px;}
.pwb-tour-side-price strong{font-size:34px;color:var(--pwb-navy);}
.pwb-tour-side-price span{color:#94a3b8;font-size:13px;}
.pwb-tour-side-child{color:#64748b;font-size:13px;margin:0 0 14px;}
.pwb-tour-book-btn{margin-bottom:16px;}
.pwb-tour-trust{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;font-size:14px;color:#334155;}
.pwb-tour-similar{margin-top:36px;}
.pwb-tour-similar h2{font-size:22px;color:var(--pwb-navy);margin:0 0 16px;}
/* Booking modal */
.pwb-tour-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:16px;}
.pwb-tour-modal.open{display:flex;}
.pwb-tour-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.6);}
.pwb-tour-modal-box{position:relative;background:#fff;border-radius:18px;padding:24px;width:min(560px,100%);max-height:92vh;overflow-y:auto;z-index:1;}
.pwb-tour-modal-box h3{margin:0 0 4px;color:var(--pwb-navy);font-size:22px;}
.pwb-tour-modal-name{color:var(--pwb-cyan);font-weight:700;margin:0 0 16px;}
.pwb-tour-modal-close{position:absolute;top:12px;right:14px;background:none;border:none;font-size:28px;color:#94a3b8;cursor:pointer;line-height:1;}
.pwb-tour-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;}
.pwb-tour-modal-grid label{display:flex;flex-direction:column;font-size:13px;font-weight:600;color:var(--pwb-navy);gap:5px;}
.pwb-tour-modal-grid input,.pwb-tour-modal-grid textarea{padding:10px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14px;background:#f8fafc;}
.pwb-tour-modal-full{grid-column:1/-1;}
.pwb-tour-billing-title{margin:6px 0 12px;color:var(--pwb-navy);font-size:15px;font-family:'Poppins',sans-serif;padding-top:14px;border-top:1px solid #eef2f6;}
.pwb-tour-pay-note{background:#e8f7fb;border:1.5px solid #bde9f2;color:#0d5566;border-radius:10px;padding:12px 14px;font-size:13.5px;font-weight:600;margin:4px 0 16px;line-height:1.45;}
.pwb-pay-methods{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 14px;}
.pwb-pay-opt{flex:1 1 140px;display:flex;align-items:center;gap:9px;padding:12px 14px;border:1.5px solid #e2e8f0;border-radius:12px;background:#f8fafc;cursor:pointer;font-size:14px;font-weight:600;color:var(--pwb-navy);transition:border-color .15s,background .15s,box-shadow .15s;}
.pwb-pay-opt input{accent-color:var(--pwb-cyan);width:17px;height:17px;margin:0;cursor:pointer;}
.pwb-pay-opt:has(input:checked){border-color:var(--pwb-cyan);background:#e8f7fb;box-shadow:0 0 0 1px var(--pwb-cyan) inset;}

/* =========================================================
   FORUM / BLOG
   ========================================================= */
.pwb-forum{max-width:1180px;margin:0 auto;padding:10px 0 40px;}
.pwb-forum-head{text-align:center;margin-bottom:20px;}
.pwb-forum-title{font-size:30px;color:var(--pwb-navy);margin:0 0 6px;font-weight:800;}
.pwb-forum-sub{color:#64748b;margin:0;}
.pwb-forum-tools{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:26px;}
.pwb-forum-tools input[type=search],.pwb-forum-tools select{padding:10px 14px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14px;background:#f8fafc;min-width:200px;}
.pwb-btn-primary{background:var(--pwb-navy);color:#fff;border:none;border-radius:10px;padding:10px 20px;font-weight:700;cursor:pointer;}
.pwb-forum-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.pwb-forum-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(26,58,92,.10);display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s;}
.pwb-forum-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(26,58,92,.18);}
.pwb-forum-card-media{position:relative;display:block;aspect-ratio:16/9;background:#e2e8f0;overflow:hidden;}
.pwb-forum-card-media img{width:100%;height:100%;object-fit:cover;}
.pwb-forum-noimg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:46px;background:linear-gradient(135deg,#c7d2fe,#a5b4fc);}
.pwb-forum-cat{position:absolute;top:10px;left:10px;background:rgba(26,58,92,.92);color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:50px;}
.pwb-forum-card-body{padding:16px;display:flex;flex-direction:column;gap:9px;flex:1;}
.pwb-forum-card-title{font-size:18px;margin:0;color:var(--pwb-navy);line-height:1.3;}
.pwb-forum-card-title a{color:inherit;text-decoration:none;}
.pwb-forum-card-title a:hover{color:var(--pwb-cyan);}
.pwb-forum-excerpt{color:#64748b;font-size:14px;margin:0;line-height:1.6;}
.pwb-forum-card-foot{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:#94a3b8;margin-top:auto;}
.pwb-forum-card .pwb-btn-ghost{align-self:flex-start;margin-top:6px;}
.pwb-forum-pagination{display:flex;gap:6px;justify-content:center;margin-top:30px;flex-wrap:wrap;}
.pwb-forum-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 8px;border-radius:10px;border:1.5px solid #e2e8f0;color:var(--pwb-navy);text-decoration:none;font-weight:600;}
.pwb-forum-pagination .page-numbers.current{background:var(--pwb-navy);color:#fff;border-color:var(--pwb-navy);}

/* =========================================================
   CONTACT
   ========================================================= */
.pwb-contact{max-width:1080px;margin:0 auto;padding:10px 0 40px;}
.pwb-contact-head{text-align:center;margin-bottom:26px;}
.pwb-contact-head h2{font-size:30px;color:var(--pwb-navy);margin:0 0 6px;font-weight:800;}
.pwb-contact-head p{color:#64748b;margin:0;}
.pwb-contact-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:26px;align-items:start;}
.pwb-contact-info{display:flex;flex-direction:column;gap:14px;}
.pwb-contact-item{display:flex;gap:14px;align-items:center;background:#f8fafc;border-radius:14px;padding:16px;text-decoration:none;color:var(--pwb-navy);transition:background .18s;}
.pwb-contact-item:hover{background:#eef6f8;}
.pwb-contact-ic{font-size:26px;}
.pwb-contact-social{display:flex;gap:14px;padding:4px 4px 0;}
.pwb-contact-social a{color:var(--pwb-cyan);font-weight:700;text-decoration:none;}
.pwb-contact-form{background:#fff;border-radius:16px;padding:22px;box-shadow:0 14px 40px rgba(26,58,92,.12);display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.pwb-contact-form label{display:flex;flex-direction:column;font-size:13px;font-weight:600;color:var(--pwb-navy);gap:5px;}
.pwb-contact-form input,.pwb-contact-form textarea{padding:10px 12px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14px;background:#f8fafc;}
.pwb-contact-full{grid-column:1/-1;}

/* =========================================================
   ABOUT (Quién Soy)
   ========================================================= */
.pwb-about{max-width:1080px;margin:0 auto;padding:10px 0 40px;}
.pwb-about-hero{display:grid;grid-template-columns:280px 1fr;gap:30px;align-items:center;margin-bottom:34px;}
.pwb-about-photo{border-radius:18px;overflow:hidden;aspect-ratio:1/1;box-shadow:0 16px 44px rgba(26,58,92,.2);}
.pwb-about-photo img{width:100%;height:100%;object-fit:cover;}
.pwb-about-photo--ph{display:flex;align-items:center;justify-content:center;font-size:80px;background:linear-gradient(135deg,#a5f3fc,#67e8f9);}
.pwb-about-tag{display:inline-block;background:#eef6f8;color:var(--pwb-cyan);font-weight:700;font-size:12px;padding:5px 12px;border-radius:50px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;}
.pwb-about-intro h2{font-size:30px;color:var(--pwb-navy);margin:0 0 10px;}
.pwb-about-intro p{color:#475569;line-height:1.7;margin:0 0 16px;}
.pwb-about-mv{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.pwb-about-card{background:#fff;border-radius:16px;padding:22px;box-shadow:0 10px 30px rgba(26,58,92,.10);}
.pwb-about-ic{font-size:34px;}
.pwb-about-card h3{font-size:19px;color:var(--pwb-navy);margin:10px 0 8px;}
.pwb-about-card p{color:#64748b;line-height:1.6;margin:0;font-size:14px;}
.pwb-about-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;color:#334155;font-size:14px;}

/* =========================================================
   RECOMMENDED TOURS carousel (home)
   ========================================================= */
.pwb-rec-tours{max-width:1180px;margin:0 auto;}
.pwb-rec-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 16px;scroll-behavior:smooth;}
.pwb-rec-track .pwb-tour-card{flex:0 0 300px;scroll-snap-align:start;}
.pwb-rec-nav{display:flex;gap:10px;justify-content:center;margin-top:6px;}
.pwb-rec-nav button{width:44px;height:44px;border-radius:50%;border:1.5px solid #e2e8f0;background:#fff;color:var(--pwb-navy);font-size:22px;cursor:pointer;}
.pwb-rec-nav button:hover{background:var(--pwb-navy);color:#fff;}

/* Responsive */
@media(max-width:920px){
        .pwb-tours-grid,.pwb-forum-grid,.pwb-tours-grid--sm{grid-template-columns:repeat(2,1fr);}
        .pwb-tour-layout{grid-template-columns:1fr;}
        .pwb-tour-side{position:static;}
        .pwb-about-hero{grid-template-columns:1fr;text-align:center;}
        .pwb-about-photo{max-width:240px;margin:0 auto;}
        .pwb-about-mv{grid-template-columns:1fr;}
        .pwb-contact-grid{grid-template-columns:1fr;}
}
@media(max-width:560px){
        .pwb-tours-grid,.pwb-forum-grid,.pwb-tours-grid--sm{grid-template-columns:1fr;}
        .pwb-tour-facts,.pwb-tour-highlights,.pwb-tour-incl{grid-template-columns:1fr;}
        .pwb-tour-modal-grid,.pwb-contact-form{grid-template-columns:1fr;}
}



/* ============ Rental vehicle photo carousel (.pwb-rc-*) ============ */
.pwb-rc-gallery{position:relative;height:230px;overflow:hidden;background:#fff;}
.pwb-rc-track{position:relative;width:100%;height:100%;}
.pwb-rc-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .35s ease;display:flex;align-items:center;justify-content:center;background:#fff;}
.pwb-rc-slide.active{opacity:1;visibility:visible;position:relative;}
/* Force full vehicle to be visible (never cropped) */
.pwb-rc-slide img,.pwb-rental-img.pwb-rc-gallery img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;display:block;padding:6px;}
.pwb-rc-nav{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border:none;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;transition:background .2s;}
.pwb-rc-nav:hover{background:rgba(0,0,0,.7);}
.pwb-rc-prev{left:8px;}
.pwb-rc-next{right:8px;}
.pwb-rc-dots{position:absolute;bottom:10px;left:0;right:0;display:flex;gap:6px;justify-content:center;z-index:3;}
.pwb-rc-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer;transition:background .2s,transform .2s;}
.pwb-rc-dot.active{background:#fff;transform:scale(1.25);}



/* ===================== Google Sign-In button ===================== */
.pwb-google-wrap{margin-top:16px;}
.pwb-auth-or{display:flex;align-items:center;gap:12px;color:#94a3b8;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:4px 0 14px;}
.pwb-auth-or::before,.pwb-auth-or::after{content:"";flex:1;height:1px;background:#e2e8f0;}
.pwb-gbtn{display:flex;justify-content:center;}
.pwb-google-form{display:none;}

/* ===================== Account (Viator-style profile) ===================== */
.pwb-acc{display:grid;grid-template-columns:260px 1fr;gap:24px;align-items:start;max-width:960px;margin:0 auto;}
.pwb-acc-side{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(26,58,92,.06);position:sticky;top:90px;}
.pwb-acc-user{display:flex;align-items:center;gap:12px;padding-bottom:16px;margin-bottom:12px;border-bottom:1px solid #eef2f6;}
.pwb-acc-avatar{width:46px;height:46px;flex:0 0 46px;border-radius:50%;background:linear-gradient(135deg,var(--pwb-navy),var(--pwb-cyan));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;}
.pwb-acc-user-txt{min-width:0;}
.pwb-acc-user-txt strong{display:block;color:var(--pwb-navy);font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pwb-acc-user-txt .pwb-account-email{font-size:12px;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;}
.pwb-acc-nav{display:flex;flex-direction:column;gap:4px;}
.pwb-acc-tab{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:none;padding:11px 12px;border-radius:10px;font-size:15px;font-weight:600;color:var(--pwb-navy);cursor:pointer;transition:background .15s,color .15s;}
.pwb-acc-tab:hover{background:#f1f5f9;}
.pwb-acc-tab.is-active{background:var(--pwb-navy);color:#fff;}
.pwb-acc-ic{font-size:17px;line-height:1;width:20px;text-align:center;}
.pwb-acc-count{margin-left:auto;background:var(--pwb-cyan);color:#fff;font-size:12px;font-weight:700;min-width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;}
.pwb-acc-tab.is-active .pwb-acc-count{background:#fff;color:var(--pwb-navy);}
.pwb-acc-logout{color:#b91c1c;}
.pwb-acc-logout:hover{background:#fef2f2;}
.pwb-acc-main{min-width:0;}
.pwb-acc-panel{display:none;}
.pwb-acc-panel.is-active{display:block;animation:pwbAccFade .2s ease;}
@keyframes pwbAccFade{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:none;}}
.pwb-acc-h{color:var(--pwb-navy);font-size:22px;margin:0 0 18px;}
.pwb-acc-profile{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:6px 20px;}
.pwb-acc-field{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid #eef2f6;}
.pwb-acc-field:last-of-type{border-bottom:none;}
.pwb-acc-label{color:#64748b;font-weight:600;}
.pwb-acc-value{color:var(--pwb-navy);font-weight:700;text-align:right;word-break:break-word;}
.pwb-acc-note{margin-top:14px;}
.pwb-acc-help-lead{color:#475569;margin:0 0 18px;}
.pwb-acc-help-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;}
.pwb-acc-help-card{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px;text-align:center;color:var(--pwb-navy);transition:border-color .2s,box-shadow .2s,transform .1s;}
.pwb-acc-help-card:hover{border-color:var(--pwb-cyan);box-shadow:0 8px 20px rgba(0,188,212,.15);transform:translateY(-2px);}
.pwb-acc-help-card .pwb-acc-help-ic{font-size:26px;}
.pwb-acc-help-card strong{font-size:15px;}
.pwb-acc-help-card span{font-size:13px;color:#64748b;}
@media(max-width:760px){
        .pwb-acc{grid-template-columns:1fr;}
        .pwb-acc-side{position:static;}
        .pwb-acc-nav{flex-direction:row;flex-wrap:wrap;}
        .pwb-acc-tab{width:auto;}
        .pwb-acc-count{margin-left:6px;}
}

/* ===================== Help Center page ===================== */
.pwb-help{max-width:860px;margin:0 auto;padding:10px 0 40px;}
.pwb-help-head{text-align:center;margin-bottom:26px;}
.pwb-help-head h2{color:var(--pwb-navy);font-size:30px;margin:0 0 8px;}
.pwb-help-head p{color:#475569;font-size:16px;margin:0;}
.pwb-help-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:36px;}
.pwb-help-card{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:22px 18px;text-align:center;color:var(--pwb-navy);transition:border-color .2s,box-shadow .2s,transform .1s;}
.pwb-help-card:hover{border-color:var(--pwb-cyan);box-shadow:0 8px 20px rgba(0,188,212,.15);transform:translateY(-2px);}
.pwb-help-card .pwb-help-ic{font-size:30px;}
.pwb-help-card strong{font-size:16px;}
.pwb-help-card span{font-size:14px;color:#64748b;}
.pwb-help-faq-title{color:var(--pwb-navy);font-size:22px;margin:0 0 16px;}
.pwb-help-faqs{display:flex;flex-direction:column;gap:10px;}
.pwb-help-faq{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:0 20px;overflow:hidden;}
.pwb-help-faq summary{cursor:pointer;padding:16px 0;font-weight:700;color:var(--pwb-navy);font-size:16px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;}
.pwb-help-faq summary::-webkit-details-marker{display:none;}
.pwb-help-faq summary::after{content:"+";font-size:24px;color:var(--pwb-cyan);font-weight:400;transition:transform .2s;}
.pwb-help-faq[open] summary::after{transform:rotate(45deg);}
.pwb-help-faq p{margin:0 0 16px;color:#475569;line-height:1.6;}



/* ==========================================================
   HOTELS module (drtraveldmc-style cards + single + form)
   ========================================================== */
.pwb-hotels-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media(max-width:960px){.pwb-hotels-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.pwb-hotels-grid{grid-template-columns:1fr;}}

.pwb-hotel-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(26,58,92,.10);display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s;}
.pwb-hotel-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(26,58,92,.18);}
.pwb-hotel-media{position:relative;display:block;aspect-ratio:16/10;background:#e6eef5;overflow:hidden;}
.pwb-hotel-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.pwb-hotel-card:hover .pwb-hotel-media img{transform:scale(1.05);}
.pwb-hotel-noimg{display:flex;align-items:center;justify-content:center;height:100%;font-size:46px;}
.pwb-hotel-body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1;}
.pwb-hotel-name{margin:0;font-family:'Poppins',sans-serif;font-size:19px;font-weight:800;color:var(--pwb-navy);line-height:1.25;}
.pwb-hotel-name a{color:inherit;text-decoration:none;}
.pwb-hotel-name a:hover{color:var(--pwb-cyan);}
.pwb-hotel-loc{color:#5b6b7c;font-size:13px;display:flex;align-items:center;gap:4px;}
.pwb-hotel-amen{display:flex;flex-wrap:wrap;gap:10px;font-size:18px;margin:2px 0;}
.pwb-hotel-amen span{line-height:1;}
.pwb-hotel-rate{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.pwb-hotel-reviews{background:#1a1a1a;color:#fff;font-size:11px;font-weight:700;padding:3px 9px;border-radius:6px;}
.pwb-hotel-stars{color:var(--pwb-orange);font-size:15px;letter-spacing:1px;}
.pwb-hotel-checks{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:5px;}
.pwb-hotel-checks li{font-size:13px;color:#33475b;display:flex;align-items:flex-start;gap:7px;}
.pwb-hotel-checks li::before{content:"\2714";color:var(--pwb-orange);font-weight:800;}
.pwb-hotel-price{margin-top:6px;color:var(--pwb-navy);font-weight:700;}
.pwb-hotel-price small{display:block;font-size:11px;color:#7a8aa0;font-weight:600;text-transform:uppercase;letter-spacing:.4px;}
.pwb-hotel-price strong{font-size:22px;color:var(--pwb-orange);font-family:'Poppins',sans-serif;}
.pwb-hotel-book{margin-top:auto;display:block;width:100%;text-align:center;background:var(--pwb-navy);color:#fff;border:none;border-radius:50px;padding:13px 16px;font-size:15px;font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.4px;cursor:pointer;transition:background .18s,transform .15s;}
.pwb-hotel-book:hover{background:var(--pwb-orange);transform:translateY(-2px);color:#fff;}

/* Single hotel: amenity row + services + policies */
.pwb-single-hotel{padding:24px 0 60px;}
.pwb-hotel-amen-row{display:flex;flex-wrap:wrap;gap:16px;margin:0 0 20px;padding:14px 18px;background:#f4f8fb;border-radius:12px;}
.pwb-hotel-amen-row .pwb-hotel-amen{flex-direction:column;align-items:center;gap:3px;font-size:22px;color:var(--pwb-navy);}
.pwb-hotel-amen-row .pwb-hotel-amen small{font-size:11px;color:#5b6b7c;font-weight:600;}
.pwb-hotel-policies{color:#475569;line-height:1.6;}
.pwb-hotel-services li{color:#33475b;}

/* Single hotel: booking form (side box) */
.pwb-hotel-book-box{position:sticky;top:100px;}
.pwb-hotel-form-title{margin:0 0 12px;font-family:'Poppins',sans-serif;font-size:18px;font-weight:800;color:var(--pwb-navy);}
.pwb-hotel-form{display:flex;flex-direction:column;gap:10px;min-width:0;}
.pwb-hotel-form label{font-size:12px;font-weight:600;color:var(--pwb-navy);display:flex;flex-direction:column;gap:4px;text-transform:uppercase;letter-spacing:.3px;min-width:0;}
.pwb-hotel-form input,.pwb-hotel-form select,.pwb-hotel-form textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box;border:2px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-size:14px;background:#f8fafc;color:#1a3a5c;text-transform:none;font-weight:500;}
.pwb-hotel-form input:focus,.pwb-hotel-form select:focus,.pwb-hotel-form textarea:focus{outline:none;border-color:var(--pwb-cyan);background:#fff;}
.pwb-hotel-form-2{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0;}
.pwb-hotel-form-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;min-width:0;}
.pwb-hotel-form-2>label,.pwb-hotel-form-3>label{min-width:0;}
.pwb-hotel-submit{margin-top:6px;background:var(--pwb-navy)!important;}
.pwb-hotel-submit:hover{box-shadow:0 10px 26px rgba(26,58,92,.4)!important;}
.pwb-hotel-form-msg{font-size:13px;font-weight:600;margin:6px 0 0;min-height:16px;color:var(--pwb-navy);}
.pwb-hotel-form-msg.pwb-error{color:#b32d2e;}
.pwb-hotel-form-msg.pwb-ok{color:#1a7f37;}



/* ============================================================
   SUMMER 2.0 — Home hero, tabs, sections, slider, map, chat
   ============================================================ */

/* ---------- Hero (centered, NexusTours-style) ---------- */
.pwb-hero{position:relative;padding:74px 20px 84px;background:linear-gradient(180deg,rgba(15,40,66,.45) 0%,rgba(15,40,66,.15) 40%,rgba(15,40,66,.35) 100%),url('../img/hero/summer-hero.jpg') center/cover no-repeat;color:#fff;overflow:hidden;}
.pwb-hero-inner{max-width:760px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:26px;}
.pwb-hero-copy{max-width:680px;text-align:center;}
.pwb-hero-eyebrow{display:inline-block;background:rgba(255,152,0,.95);color:#fff;font-weight:700;font-size:12px;letter-spacing:1.2px;text-transform:uppercase;padding:6px 14px;border-radius:999px;margin-bottom:16px;}
.pwb-hero-title{font-size:42px;line-height:1.1;font-weight:800;margin:0 0 14px;text-shadow:0 3px 22px rgba(0,0,0,.45);}
.pwb-hero-sub{font-size:18px;line-height:1.5;opacity:.97;margin:0;text-shadow:0 2px 14px rgba(0,0,0,.4);}
.pwb-hero-card{width:100%;max-width:640px;background:transparent;border-radius:16px;overflow:visible;}

/* ---------- Hero tabs (dark bar merging into white card) ---------- */
.pwb-hero-tabs{display:flex;gap:0;}
.pwb-hero-tab{flex:1;border:0;background:rgba(15,30,45,.55);color:#fff;font-size:15px;font-weight:700;padding:15px 12px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px;transition:background .2s,color .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.pwb-hero-tab:first-child{border-top-left-radius:14px;}
.pwb-hero-tab:last-child{border-top-right-radius:14px;}
.pwb-hero-tab svg{opacity:.9;}
.pwb-hero-tab{text-transform:uppercase;letter-spacing:.5px;font-size:14px;}
.pwb-hero-tab:hover{background:rgba(15,30,45,.72);}
.pwb-hero-tab.is-active{background:#fff;color:var(--pwb-orange);}
.pwb-hero-tab.is-active svg{color:var(--pwb-orange);opacity:1;}
.pwb-hero-panel{display:none;padding:26px 24px;background:#fff;border-radius:0 0 16px 16px;box-shadow:0 30px 70px rgba(0,0,0,.35);}
.pwb-hero-panel.is-active{display:block;}
.pwb-hero-panel .pwb-booking-form{box-shadow:none;padding:0;background:transparent;}

/* Actividades / búsqueda (estilo NexusTours) */
.pwb-hero-searchq{margin:0 0 16px;font-family:'Poppins',sans-serif;font-size:22px;line-height:1.25;font-weight:800;color:var(--pwb-navy);text-align:left;}
.pwb-hero-search{display:flex;align-items:stretch;gap:12px;}
.pwb-hero-searchfield{flex:1;display:flex;align-items:center;gap:10px;border:1.5px solid #e2e8f0;border-radius:12px;padding:0 14px;background:#fff;transition:border-color .2s,box-shadow .2s;min-width:0;}
.pwb-hero-searchfield:focus-within{border-color:var(--pwb-cyan);box-shadow:0 0 0 3px rgba(0,188,212,.15);}
.pwb-hero-searchico{display:flex;align-items:center;color:#94a3b8;flex-shrink:0;}
.pwb-hero-searchfield input{flex:1;border:0;outline:none;background:transparent;font-size:16px;color:#1a3a5c;padding:15px 0;min-width:0;}
.pwb-hero-searchfield input::placeholder{color:#94a3b8;}
.pwb-hero-searchbtn{flex:0 0 auto;width:60px;border:0;border-radius:12px;background:var(--pwb-orange);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .15s,box-shadow .2s;box-shadow:0 8px 22px rgba(255,152,0,.4);}
.pwb-hero-searchbtn:hover{background:#f57c00;transform:translateY(-1px);box-shadow:0 12px 28px rgba(255,152,0,.5);}
.pwb-hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
.pwb-hero-chip{display:inline-block;background:#f1f5f9;color:var(--pwb-navy);font-size:13px;font-weight:600;text-decoration:none;padding:8px 14px;border-radius:999px;transition:background .2s,color .2s;}
.pwb-hero-chip:hover{background:var(--pwb-cyan);color:#fff;}
.pwb-tours-searchnote{max-width:1180px;margin:0 auto 14px;padding:10px 16px;background:#f1f5f9;border-radius:10px;color:var(--pwb-navy);font-weight:600;font-size:14px;}

/* ---------- Home sections ---------- */
.pwb-home-section{max-width:1180px;margin:0 auto;padding:56px 20px;}
.pwb-home-head{text-align:center;max-width:640px;margin:0 auto 34px;}
.pwb-home-h2{font-size:32px;font-weight:800;color:var(--pwb-navy);margin:0 0 10px;}
.pwb-home-lead{font-size:16px;color:#64748b;margin:0;line-height:1.5;}

/* ---------- Destinations slider ---------- */
.pwb-dest-slider{position:relative;max-width:1180px;margin:0 auto;}
.pwb-dest-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:var(--pwb-navy);font-size:20px;font-weight:700;cursor:pointer;box-shadow:0 8px 24px rgba(26,58,92,.25);display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s;}
.pwb-dest-nav:hover{background:var(--pwb-cyan);color:#fff;transform:translateY(-50%) scale(1.08);}
.pwb-dest-prev{left:-8px;}
.pwb-dest-next{right:-8px;}
.pwb-dest-track{display:flex;gap:18px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;padding:6px 4px 18px;-ms-overflow-style:none;scrollbar-width:none;}
.pwb-dest-track::-webkit-scrollbar{display:none;}
.pwb-dest-track .pwb-dest-card{flex:0 0 clamp(240px,28%,300px);scroll-snap-align:start;}

/* ---------- Map ---------- */
.pwb-map-wrap{margin:14px 0 6px;border-radius:14px;overflow:hidden;border:1.5px solid #e2e8f0;box-shadow:0 12px 30px rgba(26,58,92,.12);}
.pwb-map{width:100%;height:320px;background:#e8eef3;}
.pwb-map-info{display:flex;gap:12px;flex-wrap:wrap;padding:12px 14px;background:#f8fafc;border-top:1px solid #e2e8f0;}
.pwb-map-badge{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--pwb-navy);background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:6px 14px;}
.pwb-map-badge span{color:var(--pwb-cyan);}

/* ---------- Qué hacer ---------- */
.pwb-qh{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.pwb-qh-block{background:#fff;border-radius:18px;padding:28px;box-shadow:0 16px 44px rgba(26,58,92,.1);border:1px solid #eef3f8;}
.pwb-qh-head{display:flex;align-items:center;gap:14px;margin-bottom:16px;}
.pwb-qh-ico{font-size:34px;line-height:1;}
.pwb-qh-title{font-size:22px;font-weight:800;color:var(--pwb-navy);margin:0;}
.pwb-qh-list{list-style:none;margin:0 0 20px;padding:0;}
.pwb-qh-list li{position:relative;padding:9px 0 9px 30px;border-bottom:1px dashed #eef3f8;color:#334155;font-size:15px;}
.pwb-qh-list li:last-child{border-bottom:0;}
.pwb-qh-list li::before{content:"☀";position:absolute;left:0;top:9px;color:var(--pwb-orange);font-size:15px;}
.pwb-qh-cta{display:inline-block;background:var(--pwb-cyan);color:#fff;font-weight:700;text-decoration:none;padding:12px 24px;border-radius:999px;transition:background .2s,transform .2s;}
.pwb-qh-cta:hover{background:#00a5bb;transform:translateY(-2px);}

/* ---------- Maintenance notice (hoteles) ---------- */
.pwb-maintenance{max-width:640px;margin:40px auto;text-align:center;background:#fff;border-radius:18px;padding:44px 30px;box-shadow:0 16px 44px rgba(26,58,92,.1);border:1px solid #eef3f8;}
.pwb-maintenance-ico{font-size:52px;margin-bottom:14px;}
.pwb-maintenance h3{font-size:24px;color:var(--pwb-navy);margin:0 0 10px;}
.pwb-maintenance p{color:#64748b;font-size:16px;margin:0;line-height:1.5;}

/* ============================================================
   Floating widgets — WhatsApp + Chatbot
   ============================================================ */
.pwb-fab-stack{position:fixed;right:22px;bottom:22px;z-index:99990;display:flex;flex-direction:column;align-items:flex-end;gap:14px;}
.pwb-wa-float{width:58px;height:58px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(37,211,102,.45);transition:transform .2s;}
.pwb-wa-float:hover{transform:scale(1.08);}
.pwb-wa-float svg{width:32px;height:32px;fill:#fff;}
.pwb-chat-launcher{width:58px;height:58px;border-radius:50%;border:0;cursor:pointer;background:linear-gradient(135deg,var(--pwb-cyan),var(--pwb-navy));display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(26,58,92,.4);transition:transform .2s;}
.pwb-chat-launcher:hover{transform:scale(1.08);}
.pwb-chat-launcher svg{width:30px;height:30px;fill:#fff;}

/* Chat panel */
.pwb-chat{position:fixed;right:22px;bottom:92px;z-index:99991;width:350px;max-width:calc(100vw - 44px);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.35);display:flex;flex-direction:column;animation:pwbChatIn .25s ease;}
.pwb-chat[hidden]{display:none;}
@keyframes pwbChatIn{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}
.pwb-chat-head{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,var(--pwb-navy),#12283f);color:#fff;}
.pwb-chat-avatar{width:40px;height:40px;border-radius:50%;background:var(--pwb-cyan);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;flex-shrink:0;overflow:hidden;padding:0;}
.pwb-chat-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block;}
.pwb-chat-head-txt{flex:1;line-height:1.3;}
.pwb-chat-head-name{font-weight:700;font-size:15px;}
.pwb-chat-status{display:flex;align-items:center;gap:6px;font-size:12px;opacity:.9;}
.pwb-chat-dot{width:8px;height:8px;border-radius:50%;background:#25d366;box-shadow:0 0 0 0 rgba(37,211,102,.7);animation:pwbPulse 1.8s infinite;}
@keyframes pwbPulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.6);}70%{box-shadow:0 0 0 8px rgba(37,211,102,0);}100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}}
.pwb-chat-close{background:transparent;border:0;color:#fff;font-size:22px;cursor:pointer;opacity:.8;line-height:1;}
.pwb-chat-close:hover{opacity:1;}
.pwb-chat-body{padding:16px;height:320px;overflow-y:auto;background:#f4f7fa;display:flex;flex-direction:column;gap:10px;}
.pwb-msg-bubble{max-width:82%;padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.45;word-wrap:break-word;}
.pwb-msg-bot{align-self:flex-start;background:#fff;color:#334155;border-bottom-left-radius:4px;box-shadow:0 2px 8px rgba(26,58,92,.08);}
.pwb-msg-user{align-self:flex-end;background:var(--pwb-cyan);color:#fff;border-bottom-right-radius:4px;}
.pwb-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 14px;background:#fff;border-radius:14px;box-shadow:0 2px 8px rgba(26,58,92,.08);}
.pwb-typing span{width:7px;height:7px;border-radius:50%;background:#cbd5e1;animation:pwbTyping 1.2s infinite;}
.pwb-typing span:nth-child(2){animation-delay:.2s;}
.pwb-typing span:nth-child(3){animation-delay:.4s;}
@keyframes pwbTyping{0%,60%,100%{transform:translateY(0);opacity:.4;}30%{transform:translateY(-5px);opacity:1;}}
.pwb-chat-quick{display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px;background:#f4f7fa;border-top:1px solid #e6edf3;}
.pwb-chat-chip{border:1.5px solid var(--pwb-cyan);background:#fff;color:var(--pwb-cyan);font-size:12.5px;font-weight:600;padding:7px 13px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s;}
.pwb-chat-chip:hover{background:var(--pwb-cyan);color:#fff;}
.pwb-chat-input{display:flex;gap:8px;padding:12px 14px;background:#fff;border-top:1px solid #e6edf3;}
#pwb-chat-text{flex:1;border:1.5px solid #e2e8f0;border-radius:999px;padding:10px 16px;font-size:14px;outline:none;transition:border-color .2s;}
#pwb-chat-text:focus{border-color:var(--pwb-cyan);}
#pwb-chat-send{border:0;background:var(--pwb-cyan);color:#fff;width:42px;height:42px;border-radius:50%;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s;}
#pwb-chat-send:hover{background:#00a5bb;}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width:860px){
        .pwb-hero-inner{grid-template-columns:1fr;gap:26px;}
        .pwb-hero-title{font-size:34px;}
        .pwb-qh{grid-template-columns:1fr;}
}
@media (max-width:600px){
        .pwb-hero{padding:44px 16px 54px;}
        .pwb-hero-title{font-size:28px;}
        .pwb-hero-sub{font-size:16px;}
        .pwb-home-h2{font-size:26px;}
        .pwb-hero-searchq{font-size:19px;}
        .pwb-hero-tab{font-size:12px;letter-spacing:.3px;padding:13px 8px;gap:6px;}
        .pwb-hero-tab span{font-size:12px;}
        .pwb-hero-searchbtn{width:52px;}
        .pwb-hero-searchfield input{font-size:15px;padding:13px 0;}
        .pwb-chat{right:12px;left:12px;bottom:88px;width:auto;max-width:none;}
        .pwb-fab-stack{right:16px;bottom:16px;}
        .pwb-dest-prev{left:2px;}
        .pwb-dest-next{right:2px;}
}


/* =====================================================
   PARAISORD BOOKING — AUTUMN EDITION 🍂
   Visual overlay only · zero PHP / JS logic changes
   ===================================================== */

:root {
  --pwb-cyan:  #d97706;
  --pwb-orange:#f59e0b;
}

/* Booking form — warm card tint */
.pwb-booking-form { background:#fdf8f2; }

/* ── Wizard steps header — autumn gradient ─────────── */
.pwb-steps { background:linear-gradient(135deg,#78350f,#b45309); }

.pwb-step.is-active .pwb-step-num {
  background:var(--pwb-orange);
  border-color:#fff;
  box-shadow:0 0 0 4px rgba(245,158,11,.30);
}

/* ── Inputs ─────────────────────────────────────────── */
.pwb-input:focus      { border-color:var(--pwb-cyan); }
.pwb-stop-input:focus { border-color:var(--pwb-cyan); }

/* ── Add-stop button ───────────────────────────────── */
.pwb-add-stop       { border-color:var(--pwb-cyan); }
.pwb-add-stop:hover { background:rgba(217,119,6,.08); }

/* ── Vehicle cards ─────────────────────────────────── */
.pwb-vcard:hover { border-color:var(--pwb-cyan); }
.pwb-vcard.is-selected {
  border-color:var(--pwb-cyan);
  box-shadow:0 0 0 3px rgba(217,119,6,.20);
}
.pwb-vcard.is-selected .pwb-vcard-check { background:var(--pwb-cyan); border-color:var(--pwb-cyan); }

/* ── Rental cards ──────────────────────────────────── */
.pwb-rental-card.is-selected {
  border-color:var(--pwb-cyan);
  box-shadow:0 0 0 3px rgba(217,119,6,.20);
}

/* ── Tour tabs ─────────────────────────────────────── */
.pwb-tab:hover { border-color:var(--pwb-cyan); }
.pwb-tab.active { background:#78350f; border-color:#78350f; }

/* ── Hover links ───────────────────────────────────── */
.pwb-tour-name a:hover        { color:var(--pwb-cyan); }
.pwb-forum-card-title a:hover { color:var(--pwb-cyan); }

/* ── Pagination ────────────────────────────────────── */
.pwb-forum-pagination .page-numbers.current { background:#78350f; border-color:#78350f; }

/* ── Auth ──────────────────────────────────────────── */
.pwb-auth-links a { color:var(--pwb-cyan); }

/* ── Account item hover ────────────────────────────── */
.pwb-account-item:hover { border-color:var(--pwb-cyan); }

/* ── Tour FAQ toggle ───────────────────────────────── */
.pwb-tour-faq-q span { color:var(--pwb-cyan); }

/* ── Itinerary dot ─────────────────────────────────── */
.pwb-tour-itin li:before { background:var(--pwb-cyan); }

/* ── Gallery nav hover ─────────────────────────────── */
.pwb-gallery-nav:hover { background:var(--pwb-cyan); color:#fff; }

/* ── Payment option checked ────────────────────────── */
.pwb-pay-opt:has(input:checked) {
  border-color:var(--pwb-cyan);
  background:#fdf4e7;
  box-shadow:0 0 0 1px var(--pwb-cyan) inset;
}

/* ── Tour thumb active ─────────────────────────────── */
.pwb-tour-thumb.active { border-color:var(--pwb-cyan); }
