:root{--sand:#f5ecd7;--amber:#c8843a;--ocean:#0b3954;--teal:#0d7377;--coral:#e05a3a;--white:#fdfaf5}body,html{margin:0;padding:0;min-height:100%;font-family:DM Sans,system-ui,sans-serif;background:linear-gradient(180deg,var(--sand) 0,var(--white) 100%);color:var(--ocean)}*{box-sizing:border-box}h1,h2,h3{font-family:Playfair Display,Georgia,serif;font-weight:600;line-height:1.2}.portal-layout{min-height:100vh}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:0 32px;height:64px;background:#1b4d6e;position:-webkit-sticky;position:sticky;top:0;z-index:100;width:100%}.brand-link{text-decoration:none;color:inherit}.brand-name{font-family:Playfair Display,Georgia,serif;font-size:22px;font-weight:700;color:#fff}.nav-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.nav-links a{color:hsla(0,0%,100%,.85);text-decoration:none;padding:8px 16px;border-radius:999px;font-size:14px;font-weight:500;transition:background .2s,color .2s}.nav-links a:hover{background:hsla(0,0%,100%,.1);color:#fff}.nav-btn{border-radius:6px!important;font-size:13px!important;padding:6px 16px!important}.nav-btn-signin{border:1px solid hsla(0,0%,100%,.4)!important}.nav-btn-signup{background:var(--amber)!important;color:#fff!important}.nav-btn-signup:hover{background:#b3752f!important}.portal-shell{min-height:100vh;padding:40px 24px 64px;max-width:1120px;margin:0 auto;display:grid;grid-gap:24px;gap:24px}.narrow-shell{max-width:520px;margin:0 auto}.hero-card{background:linear-gradient(135deg,var(--ocean),var(--teal) 60%,var(--amber));color:#fff;border-radius:16px;padding:48px 36px;box-shadow:0 4px 32px rgba(11,57,84,.1);position:relative;overflow:hidden}.hero-card:before{content:"";position:absolute;top:-40%;right:-10%;width:300px;height:300px;border-radius:50%;background:hsla(0,0%,100%,.06)}.hero-heading{font-size:2.2rem;margin:0 0 12px;color:#fff}.hero-subtitle{font-size:1.05rem;opacity:.9;line-height:1.6;max-width:560px}.hero-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.stat-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;background:hsla(0,0%,100%,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:14px;font-weight:500}.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.primary-link,.secondary-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:999px;text-decoration:none;font-weight:600;font-size:15px;transition:transform .15s,box-shadow .15s}.primary-link:hover,.secondary-link:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(11,57,84,.15)}.primary-link{background:#fff;color:var(--ocean)}.secondary-link{color:#fff;border:1.5px solid hsla(0,0%,100%,.5)}.dark-link{background:var(--ocean);color:#fff}.button-link{border:0;font:inherit;cursor:pointer}.button-sm{min-height:38px;padding:0 16px;font-size:14px}.center-cta{text-align:center;margin:8px 0}.section-heading{margin:8px 0 0;font-size:1.5rem}.panel-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 32px rgba(11,57,84,.1)}.welcome-card{background:linear-gradient(135deg,rgba(13,115,119,.06),rgba(200,132,58,.06));border:1px solid rgba(200,132,58,.12)}.notice-card{border:1px solid rgba(200,132,58,.2);background:rgba(200,132,58,.06);font-size:14px;color:var(--amber)}.grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.listing-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 32px rgba(11,57,84,.1);transition:transform .2s,box-shadow .2s}.listing-card:hover{transform:translateY(-4px);box-shadow:0 8px 40px rgba(11,57,84,.16)}.listing-image-placeholder{height:180px;background:linear-gradient(135deg,var(--sand),rgba(13,115,119,.15));position:relative}.listing-image-placeholder:after{content:"\1F3D6";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;opacity:.3}.listing-card-body{padding:20px;display:grid;grid-gap:8px;gap:8px}.listing-card-body h2,.listing-card-body h3{margin:0;font-size:1.15rem}.listing-card-body p{margin:0;font-size:14px;line-height:1.5;color:rgba(11,57,84,.7)}.category-tag{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--teal);background:rgba(13,115,119,.08);padding:4px 10px;border-radius:999px;width:-moz-fit-content;width:fit-content}.listing-location{display:flex;align-items:center;gap:4px;font-size:13px;color:rgba(11,57,84,.55)}.listing-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding-top:12px;border-top:1px solid rgba(11,57,84,.08)}.listing-price{color:var(--amber);font-size:1rem}.view-link{color:var(--teal);text-decoration:none;font-weight:600;font-size:14px;transition:color .15s}.hero-eyebrow,.view-link:hover{color:var(--amber)}.hero-eyebrow{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;margin-bottom:.8rem}.listings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.listings-header-title{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;margin:0}.sort-select{padding:.5rem 1rem;border:1.5px solid #e5e7eb;border-radius:8px;font-family:Inter,DM Sans,system-ui,sans-serif;font-size:.85rem;color:#6b7280;background:#fff;cursor:pointer}.listings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:1.75rem;gap:1.75rem}.listings-grid .listing-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.05);transition:transform .3s,box-shadow .3s}.listings-grid .listing-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(0,0,0,.1)}.card-img{position:relative;height:210px;overflow:hidden;display:flex;align-items:center;justify-content:center;color:hsla(0,0%,100%,.25);font-size:3rem}.card-badge{left:1rem;background:var(--amber);font-size:.7rem;padding:.3rem .8rem}.card-badge,.card-slots-badge{position:absolute;top:1rem;color:var(--ocean);font-weight:600;border-radius:20px}.card-slots-badge{right:1rem;background:hsla(0,0%,100%,.9);font-size:.72rem;padding:.3rem .7rem;display:flex;align-items:center;gap:.3rem}.card-body{padding:1.5rem}.card-body h3{font-family:Playfair Display,Georgia,serif;font-size:1.2rem;margin:0 0 .4rem}.card-location{font-size:.82rem;color:#6b7280;margin-bottom:.6rem;display:flex;align-items:center;gap:.4rem}.card-desc{font-size:.85rem;color:#6b7280;line-height:1.5;margin:0 0 1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid #e5e7eb}.card-price{font-size:1.05rem;font-weight:700}.card-price span{font-size:.78rem;font-weight:400;color:#6b7280}.card-rating{display:flex;align-items:center;gap:.3rem;color:var(--amber);font-size:.85rem;font-weight:600}.card-rating span{color:#6b7280;font-size:.78rem;font-weight:400}.btn-details{display:block;text-align:center;margin-top:1rem;padding:.7rem;background:var(--ocean);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .2s;cursor:pointer}.btn-details:hover{background:#164060}@media (max-width:768px){.listings-grid{grid-template-columns:1fr}}.stack{display:grid;grid-gap:16px;gap:16px}.booking-card{display:grid;grid-gap:12px;gap:12px}.split-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.status-chip{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:rgba(13,115,119,.1);color:var(--teal);font-weight:700;font-size:13px;white-space:nowrap}.booking-date{font-size:14px;color:rgba(11,57,84,.6)}.booking-ref{font-size:13px;color:rgba(11,57,84,.45);font-family:monospace}.booking-amount{font-size:1.1rem;font-weight:700;color:var(--ocean)}.booking-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.detail-link{color:var(--teal);text-decoration:none;font-weight:700;transition:color .15s}.detail-link:hover{color:var(--amber)}.auth-card{padding:36px 32px}.auth-card h1{font-size:1.6rem;margin:0 0 8px}.auth-card>p{color:rgba(11,57,84,.65);margin:0 0 24px}.auth-form{display:grid;grid-gap:16px;gap:16px}.auth-form label{display:grid;grid-gap:6px;gap:6px}.auth-form label span{font-size:14px;font-weight:500;color:rgba(11,57,84,.7)}.auth-form input,.auth-form select,.auth-form textarea{width:100%;border:1.5px solid rgba(11,57,84,.12);border-radius:12px;padding:12px 14px;font:inherit;background:var(--white);color:inherit;transition:border-color .2s,box-shadow .2s}.auth-form input:focus,.auth-form select:focus,.auth-form textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(13,115,119,.1)}.auth-footer{margin-top:20px;text-align:center}.inline-notice{padding:12px 14px;border-radius:12px;background:rgba(224,90,58,.08);color:var(--coral);font-size:14px}.dev-hint{margin:20px 0 0;font-size:11px;color:rgba(11,57,84,.3);text-align:center}.footnote{margin:8px 0 0;font-size:14px}.review-card{padding:14px;border-radius:16px;background:rgba(13,115,119,.06)}.receipt-card{display:grid;grid-gap:18px;gap:18px}.receipt-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.receipt-grid p{margin:6px 0 0}.nav-cart-link-pill{position:relative}.pp{--pp-primary:#1b4d6e;--pp-accent:#e8a838;--pp-white:#fff;--pp-off-white:#f8f6f3;--pp-warm-gray:#6b7280;--pp-light-gray:#e5e7eb;--pp-navy:#0a1628;--pp-green:#10b981;--pp-red:#ef4444;font-family:Inter,sans-serif;color:var(--pp-navy);background:var(--pp-off-white)}.pp h1,.pp h2,.pp h3{font-family:Playfair Display,serif}.cp-footer{background:var(--pp-primary);padding:2.5rem 2rem;text-align:center;margin-top:3rem}.cp-footer-brand{font-family:Playfair Display,serif;font-size:1.1rem;color:var(--pp-white)}.cp-footer-brand,.cp-footer-links{margin-bottom:.5rem}.cp-footer-links a{color:hsla(0,0%,100%,.6);text-decoration:none;font-size:.82rem;margin:0 .8rem;transition:color .2s}.cp-footer-links a:hover{color:var(--pp-accent)}.cp-footer p{font-size:.78rem;color:hsla(0,0%,100%,.4);margin:0}.cp-footer p a{color:var(--pp-accent);text-decoration:none}.cart-container{max-width:1100px;margin:0 auto;padding:3rem 2rem 4rem}.cart-header{margin-bottom:2rem}.cart-header h1{font-size:2rem;margin-bottom:.3rem}.cart-header p{color:var(--pp-warm-gray);font-size:.9rem;margin:0}.cart-layout{display:grid;grid-template-columns:1fr 360px;grid-gap:2rem;gap:2rem;align-items:start}.cart-item{display:flex;background:var(--pp-white);border-radius:14px;overflow:hidden;margin-bottom:1rem;box-shadow:0 2px 8px rgba(0,0,0,.04);transition:transform .2s,box-shadow .2s}.cart-item:hover{transform:translateX(4px);box-shadow:0 4px 16px rgba(0,0,0,.08)}.cart-item-img{width:160px;height:140px;flex-shrink:0;overflow:hidden}.cart-item-img img{width:100%;height:100%;object-fit:cover}.cart-item-body{flex:1 1;padding:1.2rem;display:flex;flex-direction:column;justify-content:center}.cart-item-body h3{font-size:1.05rem;margin-bottom:.4rem}.cart-item-meta{font-size:.82rem;color:var(--pp-warm-gray);line-height:1.6}.cart-item-meta span{display:flex;align-items:center;gap:.3rem;margin-bottom:.15rem}.cart-item-meta i{font-size:.75rem;color:var(--pp-accent);width:14px}.cart-item-actions{display:flex;gap:1rem;margin-top:.6rem}.cart-item-actions a,.cart-item-actions button{font-size:.78rem;font-family:Inter,sans-serif;cursor:pointer;background:none;border:none;display:flex;align-items:center;gap:.3rem;transition:color .2s}.btn-edit{color:var(--pp-primary);text-decoration:none}.btn-edit:hover{color:var(--pp-accent)}.btn-remove{color:var(--pp-warm-gray)}.btn-remove:hover{color:var(--pp-red)}.cart-item-right{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding:1.2rem 1.5rem}.cart-item-price{font-family:Playfair Display,serif;font-size:1.2rem;font-weight:700}.order-summary{background:var(--pp-white);border-radius:16px;padding:2rem;box-shadow:0 4px 24px rgba(0,0,0,.08);border:2px solid var(--pp-primary);position:-webkit-sticky;position:sticky;top:92px}.order-summary h2{font-size:1.2rem;margin-bottom:1.2rem}.summary-row{display:flex;justify-content:space-between;font-size:.88rem;margin-bottom:.6rem}.summary-row label{color:var(--pp-warm-gray)}.summary-divider{border:none;border-top:1px solid var(--pp-light-gray);margin:1rem 0}.summary-total{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:700;margin-bottom:1.5rem}.btn-checkout{display:block;width:100%;padding:1rem;background:var(--pp-accent);color:var(--pp-primary);border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif;text-decoration:none;text-align:center}.btn-checkout:hover{background:#d49730;transform:translateY(-1px);box-shadow:0 6px 20px rgba(232,168,56,.3)}.btn-continue{display:block;width:100%;padding:.8rem;margin-top:.8rem;background:transparent;color:var(--pp-primary);border:1.5px solid var(--pp-light-gray);border-radius:10px;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif;text-decoration:none;text-align:center}.btn-continue:hover{border-color:var(--pp-primary)}.cart-empty{text-align:center;padding:5rem 2rem}.cart-empty i{font-size:3rem;color:var(--pp-light-gray);margin-bottom:1.5rem}.cart-empty h2{font-size:1.5rem;margin-bottom:.8rem}.cart-empty p{color:var(--pp-warm-gray);margin-bottom:2rem}.cart-empty a{display:inline-block;padding:1rem 2rem;background:var(--pp-accent);color:var(--pp-primary);border-radius:10px;font-weight:700;text-decoration:none;transition:all .2s}.cart-empty a:hover{background:#d49730}.checkout-container{max-width:880px;margin:0 auto;padding:3rem 2rem 4rem}.checkout-steps{justify-content:center;margin-bottom:2.5rem}.checkout-steps,.step{display:flex;align-items:center;gap:.5rem}.step{font-size:.82rem;color:var(--pp-warm-gray)}.step.active{color:var(--pp-navy);font-weight:600}.step.completed{color:var(--pp-green)}.step-number{width:28px;height:28px;border-radius:50%;border:2px solid var(--pp-light-gray);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.step.active .step-number{border-color:var(--pp-accent);background:var(--pp-accent);color:var(--pp-primary)}.step.completed .step-number{border-color:var(--pp-green);background:var(--pp-green);color:var(--pp-white)}.step-divider{width:40px;height:2px;background:var(--pp-light-gray)}.checkout-header h1{font-size:2rem;margin-bottom:.5rem}.checkout-subtitle{color:var(--pp-warm-gray);font-size:.9rem;margin-bottom:2rem}.checkout-grid{display:grid;grid-template-columns:1fr 340px;grid-gap:2rem;gap:2rem;align-items:start}.section-card{background:var(--pp-white);border-radius:16px;padding:1.8rem;box-shadow:0 2px 12px rgba(0,0,0,.04);margin-bottom:1.5rem}.section-card h2{font-size:1.15rem;margin-bottom:1.2rem;display:flex;align-items:center;gap:.5rem}.section-card h2 i{color:var(--pp-accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.form-field,.form-row{margin-bottom:1rem}.form-field label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.4rem}.form-input{width:100%;padding:.8rem 1rem;border:1.5px solid var(--pp-light-gray);border-radius:8px;font-family:Inter,sans-serif;font-size:.88rem;background:var(--pp-off-white);transition:border-color .2s}.form-input:focus{outline:none;border-color:var(--pp-primary);background:var(--pp-white)}.checkout-item{display:flex;align-items:center;padding:1rem 0;border-bottom:1px solid var(--pp-light-gray)}.checkout-item:last-child{border-bottom:none}.checkout-item-img{width:60px;height:60px;border-radius:10px;overflow:hidden;flex-shrink:0;margin-right:1rem}.checkout-item-img img{width:100%;height:100%;object-fit:cover}.checkout-item-info{flex:1 1}.checkout-item-info h4{font-size:.9rem;margin-bottom:.2rem}.checkout-item-info span{font-size:.78rem;color:var(--pp-warm-gray)}.checkout-item-price{font-weight:700;font-size:1rem;white-space:nowrap}.order-sidebar{position:-webkit-sticky;position:sticky;top:92px}.order-sidebar-card{background:var(--pp-white);border-radius:16px;padding:2rem;box-shadow:0 4px 24px rgba(0,0,0,.08);border:2px solid var(--pp-primary)}.order-sidebar-card h2{font-size:1.15rem;margin-bottom:1.2rem}.sidebar-row{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:.5rem}.sidebar-row label{color:var(--pp-warm-gray)}.sidebar-divider{border:none;border-top:1px solid var(--pp-light-gray);margin:1rem 0}.sidebar-total{justify-content:space-between;font-size:1.2rem;margin-bottom:1.5rem}.btn-pay,.sidebar-total{display:flex;font-weight:700}.btn-pay{align-items:center;justify-content:center;gap:.6rem;width:100%;background:var(--pp-green);color:var(--pp-white);border:none;padding:1.1rem 2rem;border-radius:12px;font-size:1.1rem;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif;box-shadow:0 4px 20px rgba(16,185,129,.3);text-decoration:none}.btn-pay:hover{background:#059669;transform:translateY(-1px)}.payment-note{display:flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:.78rem;color:var(--pp-warm-gray);justify-content:center}.payment-note i{color:var(--pp-green)}.back-link{display:flex;align-items:center;gap:.5rem;color:var(--pp-warm-gray);text-decoration:none;font-size:.88rem;margin-top:1.5rem;transition:color .2s}.back-link:hover{color:var(--pp-accent)}.confirmation-container{max-width:700px;margin:0 auto;padding:4rem 2rem;text-align:center}.checkmark-circle{width:100px;height:100px;background:var(--pp-green);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;animation:scaleIn .5s ease}.checkmark-circle i{color:var(--pp-white);font-size:2.5rem;animation:checkIn .3s ease .3s both}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes checkIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.confirmation-container h1{font-size:2.5rem;margin-bottom:.5rem;animation:fadeUp .5s ease .2s both}.confirmation-container .subtitle{color:var(--pp-warm-gray);font-size:1rem;margin-bottom:2.5rem;animation:fadeUp .5s ease .3s both}.bookings-list{text-align:left;margin-bottom:2rem;animation:fadeUp .5s ease .4s both}.booking-confirmed-card{background:var(--pp-white);border-radius:14px;padding:1.2rem 1.5rem;margin-bottom:.8rem;box-shadow:0 2px 8px rgba(0,0,0,.04);display:flex;align-items:center;gap:1rem}.booking-confirmed-card .check-icon{width:40px;height:40px;background:rgba(16,185,129,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--pp-green);font-size:1rem;flex-shrink:0}.booking-confirmed-card .booking-info{flex:1 1}.booking-confirmed-card .booking-info h3{font-size:.95rem;font-weight:600;margin-bottom:.2rem}.booking-confirmed-card .booking-info span{font-size:.82rem;color:var(--pp-warm-gray)}.booking-confirmed-card .booking-price-val{font-family:Playfair Display,serif;font-size:1.1rem;font-weight:700;white-space:nowrap}.total-paid{background:var(--pp-white);border-radius:14px;padding:1.2rem 1.5rem;display:flex;justify-content:space-between;align-items:center;border:2px solid var(--pp-green);margin-bottom:2rem;animation:fadeUp .5s ease .45s both}.total-paid label{font-weight:600;color:var(--pp-warm-gray)}.total-paid span{font-family:Playfair Display,serif;font-size:1.3rem;font-weight:700;color:var(--pp-green)}.whats-next{background:var(--pp-white);border-radius:16px;padding:2rem;text-align:left;box-shadow:0 2px 12px rgba(0,0,0,.04);margin-bottom:2rem;animation:fadeUp .5s ease .5s both}.whats-next h3{font-size:1.2rem;margin-bottom:1rem}.next-step{display:flex;align-items:flex-start;gap:1rem;padding:.8rem 0}.next-step-icon{width:40px;height:40px;background:rgba(232,168,56,.1);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--pp-accent);flex-shrink:0}.next-step-text h4{font-size:.9rem;margin-bottom:.2rem}.next-step-text p{font-size:.82rem;color:var(--pp-warm-gray);line-height:1.5;margin:0}.action-buttons{display:flex;gap:1rem;justify-content:center;animation:fadeUp .5s ease .6s both}.btn-primary-action{display:inline-flex;align-items:center;gap:.5rem;background:var(--pp-primary);color:var(--pp-white);text-decoration:none;padding:1rem 2rem;border-radius:10px;font-weight:700;font-size:.95rem;transition:all .3s}.btn-primary-action:hover{background:#164060;transform:translateY(-2px);box-shadow:0 8px 24px rgba(27,77,110,.3)}.btn-secondary-action{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:var(--pp-navy);text-decoration:none;padding:1rem 2rem;border-radius:10px;font-weight:600;font-size:.95rem;transition:all .3s;border:1.5px solid var(--pp-light-gray)}.btn-secondary-action:hover{border-color:var(--pp-accent);color:var(--pp-accent)}.fp-layout{display:flex;min-height:calc(100vh - 60px)}.fp-image{flex:1 1;background:linear-gradient(135deg,rgba(27,77,110,.75),rgba(10,22,40,.6)),url(https://images.unsplash.com/photo-1506929562872-bb421503ef21?w=1200&q=80) 50%/cover;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem}.fp-image h2{font-size:2.5rem;color:var(--pp-white);margin-bottom:.8rem;line-height:1.2}.fp-image p{color:hsla(0,0%,100%,.7);font-size:1rem;line-height:1.6;max-width:400px;margin:0}.fp-form-panel{width:500px;flex-shrink:0;background:var(--pp-white);display:flex;flex-direction:column;justify-content:center;padding:3rem}.tenant-brand{gap:.7rem;margin-bottom:3rem}.tenant-brand,.tenant-logo{display:flex;align-items:center}.tenant-logo{width:48px;height:48px;background:var(--pp-primary);border-radius:12px;justify-content:center;color:var(--pp-white);font-size:1.3rem}.tenant-brand h3{font-size:1.2rem;color:var(--pp-navy);margin:0}.tenant-brand span{font-size:.75rem;color:var(--pp-warm-gray)}.fp-title{font-size:1.8rem;color:var(--pp-navy);margin-bottom:.5rem}.fp-subtitle{color:var(--pp-warm-gray);font-size:.9rem;margin-bottom:2.5rem;line-height:1.5}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.82rem;font-weight:600;color:var(--pp-navy);margin-bottom:.5rem}.btn-reset{width:100%;padding:1rem;background:var(--pp-primary);color:var(--pp-white);border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif}.btn-reset:hover{background:#164060;transform:translateY(-1px);box-shadow:0 6px 20px rgba(27,77,110,.3)}.fp-back-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:2rem;font-size:.88rem;color:var(--pp-primary);text-decoration:none;font-weight:600}.fp-back-link:hover{text-decoration:underline}.powered-by{margin-top:3rem;text-align:center;font-size:.72rem;color:#9ca3af}.powered-by a{color:var(--pp-accent);text-decoration:none;font-weight:600}.success-state{display:none;text-align:center}.success-state.show{display:block}.success-icon{width:80px;height:80px;background:rgba(16,185,129,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:var(--pp-green);font-size:2rem}.success-state h2{font-size:1.5rem;color:var(--pp-navy);margin-bottom:.5rem}.success-state p{color:var(--pp-warm-gray);font-size:.9rem;line-height:1.6;margin:0}.form-state.hide{display:none}.login-layout{display:flex;min-height:calc(100vh - 60px)}.login-image{flex:1 1;background:linear-gradient(135deg,rgba(27,77,110,.75),rgba(10,22,40,.6)),url(https://images.unsplash.com/photo-1507525428034-b723cf961d3e?w=1200&q=80) 50%/cover;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem}.login-image h2{font-size:2.5rem;color:var(--pp-white);margin-bottom:.8rem;line-height:1.2}.login-image p{color:hsla(0,0%,100%,.7);font-size:1rem;line-height:1.6;max-width:400px;margin:0}.login-form-panel{width:500px;flex-shrink:0;background:var(--pp-white);display:flex;flex-direction:column;justify-content:center;padding:3rem}.login-title{font-size:1.8rem;color:var(--pp-navy);margin-bottom:.5rem}.login-subtitle{color:var(--pp-warm-gray);font-size:.9rem;margin-bottom:2.5rem;line-height:1.5}.form-row{justify-content:space-between;margin-bottom:2rem}.form-row,.remember-me{display:flex;align-items:center}.remember-me{gap:.4rem;font-size:.82rem;color:var(--pp-warm-gray);cursor:pointer}.forgot-link{font-size:.82rem;color:var(--pp-primary);text-decoration:none;font-weight:500}.forgot-link:hover{text-decoration:underline}.btn-signin{width:100%;padding:1rem;background:var(--pp-primary);color:var(--pp-white);border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif}.btn-signin:hover{background:#164060;transform:translateY(-1px);box-shadow:0 6px 20px rgba(27,77,110,.3)}.divider{display:flex;align-items:center;gap:1rem;margin:2rem 0;color:var(--pp-warm-gray);font-size:.78rem}.divider:after,.divider:before{content:"";flex:1 1;height:1px;background:var(--pp-light-gray)}.signup-link{text-align:center;font-size:.88rem;color:var(--pp-warm-gray)}.signup-link a{color:var(--pp-primary);text-decoration:none;font-weight:600}.signup-link a:hover{text-decoration:underline}.reg-layout{display:flex;min-height:calc(100vh - 60px)}.reg-image{flex:1 1;background:linear-gradient(135deg,rgba(27,77,110,.75),rgba(10,22,40,.6)),url(https://images.unsplash.com/photo-1519046904884-53103b34b206?w=1200&q=80) 50%/cover;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem}.reg-image h2{font-size:2.5rem;color:var(--pp-white);margin-bottom:.8rem;line-height:1.2}.reg-image p{color:hsla(0,0%,100%,.7);font-size:1rem;line-height:1.6;max-width:400px;margin:0}.reg-form-panel{width:520px;flex-shrink:0;background:var(--pp-white);display:flex;flex-direction:column;justify-content:center;padding:3rem;overflow-y:auto}.reg-title{font-size:1.8rem;color:var(--pp-navy);margin-bottom:.5rem}.reg-subtitle{font-size:.9rem;margin-bottom:2rem;line-height:1.5}.form-hint,.reg-subtitle{color:var(--pp-warm-gray)}.form-hint{font-size:.75rem;margin-top:.3rem}.optional{color:var(--pp-warm-gray);font-weight:400}.strength-fill{width:75%;background:var(--pp-accent);transition:width .3s}.strength-text{color:var(--pp-accent)}.terms{display:flex;align-items:flex-start;gap:.5rem;margin:1.5rem 0;font-size:.82rem;color:var(--pp-warm-gray);line-height:1.5;cursor:pointer}.terms a{color:var(--pp-primary);text-decoration:none}.terms a:hover{text-decoration:underline}.terms input{margin-top:.15rem}.btn-register{width:100%;padding:1rem;background:var(--pp-primary);color:var(--pp-white);border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif}.btn-register:hover{background:#164060;transform:translateY(-1px);box-shadow:0 6px 20px rgba(27,77,110,.3)}.signin-link{text-align:center;margin-top:1.5rem;font-size:.88rem;color:var(--pp-warm-gray)}.signin-link a{color:var(--pp-primary);text-decoration:none;font-weight:600}.signin-link a:hover{text-decoration:underline}.profile-container{max-width:700px;margin:0 auto;padding:3rem 2rem 4rem}.profile-container h1{font-size:2rem;margin-bottom:.3rem}.profile-container>p{color:var(--pp-warm-gray);font-size:.9rem;margin-bottom:2.5rem}.profile-avatar-section{display:flex;align-items:center;gap:1.5rem;margin-bottom:2.5rem}.profile-avatar{width:80px;height:80px;background:var(--pp-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--pp-white);font-family:Playfair Display,serif;font-size:1.8rem;font-weight:700}.profile-avatar-info h3{font-size:1.1rem;margin-bottom:.2rem}.profile-avatar-info p{font-size:.82rem;color:var(--pp-warm-gray);margin:0}.profile-card{background:var(--pp-white);border-radius:14px;padding:2rem;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}.profile-card h2{font-size:1.2rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.profile-card h2 i{color:var(--pp-accent);font-size:1rem}.form-row-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.email-verified{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:600;color:var(--pp-green);margin-left:.5rem}.btn-save{width:100%;padding:1rem;background:var(--pp-primary);color:var(--pp-white);border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif}.btn-save:hover{background:#164060;transform:translateY(-1px);box-shadow:0 6px 20px rgba(27,77,110,.3)}.toast{position:fixed;bottom:2rem;right:2rem;background:var(--pp-green);color:var(--pp-white);padding:1rem 1.5rem;border-radius:10px;font-size:.88rem;font-weight:600;display:flex;align-items:center;gap:.5rem;box-shadow:0 8px 24px rgba(16,185,129,.3);transform:translateY(120%);transition:transform .3s;z-index:200}.toast.show{transform:translateY(0)}.home-hero{background:linear-gradient(135deg,rgba(27,77,110,.7),rgba(10,22,40,.55)),url(https://images.unsplash.com/photo-1507525428034-b723cf961d3e?w=1600&q=80) 50%/cover;padding:8rem 2rem 6rem;text-align:center;min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center}.home-hero-eyebrow{font-size:.82rem;color:var(--pp-accent);letter-spacing:.25em;text-transform:uppercase;font-weight:600;margin-bottom:1rem}.home-hero h1{font-size:3.5rem;color:var(--pp-white);margin-bottom:1rem;line-height:1.15;max-width:700px}.home-hero p{color:hsla(0,0%,100%,.8);font-size:1.15rem;max-width:550px;line-height:1.7;margin-bottom:2rem}.home-hero-cta{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2.5rem;background:var(--pp-accent);color:var(--pp-primary);border-radius:10px;text-decoration:none;font-size:1rem;font-weight:700;transition:all .2s}.home-hero-cta:hover{background:#d49730;transform:translateY(-2px);box-shadow:0 8px 24px rgba(232,168,56,.3)}.home-about{max-width:1100px;margin:0 auto;padding:5rem 2rem;display:grid;grid-template-columns:1fr 1fr;grid-gap:4rem;gap:4rem;align-items:center}.home-about-img{border-radius:16px;overflow:hidden;height:360px}.home-about-img img{width:100%;height:100%;object-fit:cover}.home-about-content h2{font-size:2rem;margin-bottom:1rem}.home-about-content p{color:var(--pp-warm-gray);font-size:.95rem;line-height:1.8;margin-bottom:1.5rem}.about-details{display:flex;flex-direction:column;gap:.6rem}.about-detail{display:flex;align-items:center;gap:.6rem;font-size:.9rem;color:var(--pp-navy)}.about-detail i{color:var(--pp-accent);width:20px;text-align:center}.home-featured{max-width:1200px;margin:0 auto;padding:0 2rem 5rem}.home-section-header{text-align:center;margin-bottom:3rem}.home-section-header h2{font-size:2rem;margin-bottom:.5rem}.home-section-header p{color:var(--pp-warm-gray);font-size:.95rem;margin:0}.featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1.75rem;gap:1.75rem}.featured-card{background:var(--pp-white);border-radius:16px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.05);transition:transform .3s,box-shadow .3s}.featured-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(0,0,0,.1)}.featured-card-img{height:200px;overflow:hidden}.featured-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.featured-card:hover .featured-card-img img{transform:scale(1.05)}.featured-card-body{padding:1.5rem}.featured-card-body h3{font-size:1.15rem;margin-bottom:.3rem}.featured-card-body .price{font-size:1.05rem;font-weight:700;color:var(--pp-primary);margin-bottom:.3rem}.featured-card-body .price span{font-size:.78rem;font-weight:400;color:var(--pp-warm-gray)}.featured-card-body .rating{font-size:.82rem;color:var(--pp-accent);margin-bottom:1rem}.featured-card-body .rating span{color:var(--pp-warm-gray)}.btn-view-exp{display:block;text-align:center;padding:.7rem;background:var(--pp-primary);color:var(--pp-white);border-radius:8px;text-decoration:none;font-size:.85rem;font-weight:600;transition:all .2s}.btn-view-exp:hover{background:#164060}.home-testimonials{background:var(--pp-white);padding:5rem 2rem}.home-testimonials-inner{max-width:1100px;margin:0 auto}.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:2rem;gap:2rem;margin-top:3rem}.testimonial-card{background:var(--pp-off-white);border-radius:14px;padding:2rem;position:relative}.testimonial-card:before{content:"\201C";font-family:Playfair Display,serif;font-size:4rem;color:var(--pp-accent);opacity:.3;position:absolute;top:.5rem;left:1.5rem;line-height:1}.testimonial-text{font-size:.92rem;color:#374151;line-height:1.7;margin-bottom:1.2rem;font-style:italic}.testimonial-author{display:flex;align-items:center;gap:.8rem}.testimonial-avatar{width:40px;height:40px;border-radius:50%;background:var(--pp-primary);display:flex;align-items:center;justify-content:center;color:var(--pp-white);font-weight:700;font-size:.75rem}.testimonial-name{font-weight:600;font-size:.88rem}.testimonial-rating{color:var(--pp-accent);font-size:.75rem}.home-cta-section{background:linear-gradient(135deg,var(--pp-primary),#0a1628);padding:5rem 2rem;text-align:center}.home-cta-section h2{font-size:2.2rem;color:var(--pp-white);margin-bottom:.8rem}.home-cta-section p{color:hsla(0,0%,100%,.7);font-size:1rem;margin-bottom:2rem}.home-cta-btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2.5rem;background:var(--pp-accent);color:var(--pp-primary);border-radius:10px;text-decoration:none;font-size:1rem;font-weight:700;transition:all .2s}.home-cta-btn:hover{background:#d49730;transform:translateY(-2px)}.detail-breadcrumb{max-width:1100px;margin:1rem auto 0;padding:0 2rem;font-size:.82rem;color:var(--pp-warm-gray)}.detail-breadcrumb a{color:var(--pp-primary);text-decoration:none}.detail-breadcrumb a:hover{text-decoration:underline}.detail-reviews-cta{margin-top:1rem}.detail-reviews-cta a{color:var(--pp-primary);font-weight:600;text-decoration:none;font-size:.88rem}.detail-reviews-cta a:hover{text-decoration:underline}.detail-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:240px 240px;grid-gap:4px;gap:4px}.detail-gallery-main{grid-row:1/3;overflow:hidden}.detail-gallery img{width:100%;height:100%;object-fit:cover;cursor:pointer;transition:opacity .3s}.detail-gallery img:hover{opacity:.9}.detail-wrapper{max-width:1100px;margin:0 auto;padding:2.5rem 2rem 4rem;display:grid;grid-template-columns:1fr 400px;grid-gap:3rem;gap:3rem}.detail-main-col h1{font-size:2.2rem;margin-bottom:.5rem}.detail-meta{display:flex;gap:1.5rem;margin-bottom:2rem;flex-wrap:wrap;font-size:.88rem;color:var(--pp-warm-gray)}.detail-meta-item{display:flex;align-items:center;gap:.4rem}.detail-meta-item i{color:var(--pp-accent)}.detail-description{font-size:.95rem;line-height:1.8;color:#374151}.availability-overview,.detail-description{margin-bottom:2.5rem}.availability-overview h2{font-size:1.3rem;margin-bottom:1rem}.slot-overview-item{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;background:var(--pp-white);border-radius:10px;margin-bottom:.5rem}.slot-overview-item h4{font-size:.88rem;margin-bottom:.15rem}.slot-overview-item span{font-size:.78rem;color:var(--pp-warm-gray)}.booking-sidebar-card{position:-webkit-sticky;position:sticky;top:92px;height:-moz-fit-content;height:fit-content}.booking-form-card{background:var(--pp-white);border-radius:16px;padding:2rem;box-shadow:0 4px 24px rgba(0,0,0,.08);border:2px solid var(--pp-primary)}.booking-form-price{font-family:Playfair Display,serif;font-size:2rem;font-weight:700;margin-bottom:.2rem}.booking-form-price span{font-size:1rem;font-weight:400;color:var(--pp-warm-gray)}.booking-unit-note{font-size:.78rem;color:var(--pp-warm-gray);margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--pp-light-gray)}.booking-field{margin-bottom:1.2rem}.booking-field label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.4rem}.booking-input{width:100%;padding:.8rem 1rem;border:1.5px solid var(--pp-light-gray);border-radius:8px;font-family:Inter,sans-serif;font-size:.88rem;background:var(--pp-off-white);transition:border-color .2s}.booking-input:focus{outline:none;border-color:var(--pp-primary);background:var(--pp-white)}.slot-picker{margin-bottom:1.2rem}.slot-picker label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.5rem}.slot-option{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;border:1.5px solid var(--pp-light-gray);border-radius:10px;margin-bottom:.5rem;cursor:pointer;transition:all .2s}.slot-option.selected,.slot-option:hover{border-color:var(--pp-primary)}.slot-option.selected{background:rgba(27,77,110,.05)}.slot-option.sold-out{opacity:.5;cursor:not-allowed;background:#f9fafb}.slot-option-info h4{font-size:.85rem;margin-bottom:.1rem}.slot-option-info span{font-size:.75rem;color:var(--pp-warm-gray)}.slot-spots{font-size:.78rem;font-weight:600;color:var(--pp-green)}.slot-spots.low{color:var(--pp-accent)}.slot-spots.sold-out-text{color:var(--pp-red)}.slot-radio{width:18px;height:18px;accent-color:var(--pp-primary);margin-right:.8rem;flex-shrink:0}.price-summary{padding:1rem;background:var(--pp-off-white);border-radius:10px;margin-bottom:1.2rem}.price-row{display:flex;justify-content:space-between;font-size:.85rem;margin-bottom:.4rem}.price-row label{color:var(--pp-warm-gray)}.price-total{display:flex;justify-content:space-between;font-size:1.05rem;font-weight:700;padding-top:.5rem;border-top:1px solid var(--pp-light-gray)}.btn-add-to-cart{width:100%;padding:1rem;background:var(--pp-accent);color:var(--pp-primary);border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif;text-decoration:none;display:block;text-align:center}.btn-add-to-cart:hover{background:#d49730;transform:translateY(-1px);box-shadow:0 6px 20px rgba(232,168,56,.3)}.booking-note{font-size:.75rem;color:var(--pp-warm-gray);text-align:center;margin-top:.8rem;line-height:1.5}.booking-note i{color:var(--pp-accent)}.detail-review-section h2{font-size:1.3rem;margin-bottom:1rem}.detail-review-summary{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.2rem;background:var(--pp-white);border-radius:12px}.detail-review-avg{font-family:Playfair Display,serif;font-size:2.5rem;font-weight:700;color:var(--pp-primary)}.detail-review-stars{color:var(--pp-accent);font-size:1rem;margin-bottom:.2rem}.detail-review-count{font-size:.82rem;color:var(--pp-warm-gray)}.detail-review-card{background:var(--pp-white);padding:1.2rem;border-radius:12px;margin-bottom:.6rem}.detail-review-header{display:flex;justify-content:space-between;margin-bottom:.4rem}.detail-review-author{font-weight:600;font-size:.88rem}.detail-review-date{font-size:.75rem;color:var(--pp-warm-gray)}.detail-review-rating{color:var(--pp-accent);font-size:.8rem;margin-bottom:.4rem}.detail-review-text{font-size:.85rem;color:#374151;line-height:1.6}.confetti{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:50;overflow:hidden}.confetti-piece{position:absolute;width:10px;height:10px;top:-10px;animation:confettiFall 3s ease-in forwards}@keyframes confettiFall{0%{transform:translateY(0) rotate(0deg);opacity:1}to{transform:translateY(100vh) rotate(2turn);opacity:0}}@media (max-width:900px){.cart-layout{grid-template-columns:1fr}.order-summary{position:static}.cart-item{flex-direction:column}.cart-item-img{width:100%;height:180px}.cart-item-right{flex-direction:row;justify-content:space-between;padding:0 1.2rem 1rem}.checkout-grid{grid-template-columns:1fr}.order-sidebar{position:static}.detail-gallery,.detail-wrapper,.form-row{grid-template-columns:1fr}.detail-gallery{grid-template-rows:280px}.detail-gallery>div:not(.detail-gallery-main){display:none}.home-about{grid-template-columns:1fr;gap:2rem}.home-about-img{height:240px}.home-hero h1{font-size:2.2rem}.fp-layout{flex-direction:column}.fp-image{min-height:250px}.fp-form-panel{width:100%}.login-layout{flex-direction:column}.login-image{min-height:250px}.login-form-panel{width:100%}.reg-layout{flex-direction:column}.reg-image{min-height:200px}.reg-form-panel{width:100%}}@media (max-width:768px){.topbar{flex-direction:column;gap:12px;padding:12px 16px}.hero-card{padding:32px 20px}.hero-heading{font-size:1.6rem}.portal-shell{padding:24px 16px 48px}.grid{grid-template-columns:1fr}.confirmation-container h1{font-size:1.8rem}.action-buttons{flex-direction:column}.form-row-2{grid-template-columns:1fr}.profile-avatar-section{flex-direction:column;text-align:center}.featured-grid,.testimonial-grid{grid-template-columns:1fr}}.loading-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#1b4d6e;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.cdb-dashboard-container{max-width:900px;margin:0 auto;padding:3rem 2rem 4rem}.cdb-welcome-section{margin-bottom:2.5rem}.cdb-welcome-section h1{font-family:Playfair Display,Georgia,serif;font-size:2rem;margin-bottom:.3rem;color:#0a1628}.cdb-welcome-section p{color:#6b7280;font-size:.9rem}.cdb-notice-banner{background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.2);border-radius:10px;padding:1rem 1.2rem;margin-bottom:2rem;display:flex;align-items:center;gap:.6rem;font-size:.88rem;color:#0a1628}.cdb-notice-banner i{color:#10b981}.cdb-tabs{display:flex;gap:0;margin-bottom:2rem;border-bottom:2px solid #e5e7eb}.cdb-tab{padding:.8rem 1.5rem;font-size:.88rem;font-weight:600;color:#6b7280;cursor:pointer;margin-bottom:-2px;transition:all .2s;background:none;border:none;border-bottom:2px solid transparent;font-family:Inter,DM Sans,system-ui,sans-serif}.cdb-tab:hover{color:#1b4d6e}.cdb-tab.active{color:#1b4d6e;border-bottom-color:#1b4d6e}.cdb-count{background:#1b4d6e;color:#fff;padding:.15rem .5rem;border-radius:10px;font-size:.7rem;margin-left:.4rem}.cdb-booking-list{display:grid;grid-gap:1rem;gap:1rem}.cdb-booking-card{background:#fff;border-radius:14px;padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.04);display:flex;align-items:center;gap:1.2rem;transition:transform .2s,box-shadow .2s}.cdb-booking-card:hover{transform:translateX(4px);box-shadow:0 4px 16px rgba(0,0,0,.08)}.cdb-booking-card-img{width:90px;height:90px;border-radius:12px;overflow:hidden;flex-shrink:0}.cdb-booking-card-img img{width:100%;height:100%;object-fit:cover}.cdb-booking-card-body{flex:1 1}.cdb-booking-card-header{display:flex;align-items:center;gap:.6rem;margin-bottom:.3rem}.cdb-booking-card-header h3{font-size:1rem;font-weight:600;font-family:Inter,DM Sans,system-ui,sans-serif;color:#0a1628}.cdb-status-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .7rem;border-radius:20px;font-size:.7rem;font-weight:600;letter-spacing:.02em;white-space:nowrap}.cdb-status-confirmed{background:rgba(16,185,129,.1);color:#10b981}.cdb-status-pending{background:rgba(245,158,11,.1);color:#f59e0b}.cdb-status-completed{background:rgba(59,130,246,.1);color:#3b82f6}.cdb-status-cancelled{background:rgba(239,68,68,.1);color:#ef4444}.cdb-booking-card-meta{display:flex;gap:1.5rem;font-size:.82rem;color:#6b7280;margin-top:.3rem}.cdb-booking-card-meta span{display:flex;align-items:center;gap:.3rem}.cdb-booking-card-meta i{font-size:.75rem}.cdb-booking-card-right{text-align:right;flex-shrink:0}.cdb-booking-amount{font-size:1.1rem;font-weight:700;margin-bottom:.3rem;color:#0a1628}.cdb-booking-ref{font-size:.72rem;color:#6b7280;margin-bottom:.5rem}.cdb-booking-card-buttons{display:flex;gap:.5rem;justify-content:flex-end}.cdb-btn-view{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem 1rem;background:#1b4d6e;color:#fff;border:none;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .2s}.cdb-btn-view:hover{background:#164060}.cdb-btn-pay{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem 1rem;background:#e8a838;color:#0a1628;border:none;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .2s}.cdb-btn-pay:hover{background:#d49730}.cdb-btn-receipt{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem 1rem;background:#f8f6f3;color:#0a1628;border:1px solid #e5e7eb;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .2s}.cdb-btn-receipt:hover{border-color:#1b4d6e;color:#1b4d6e}@media (max-width:768px){.cdb-booking-card{flex-direction:column;align-items:flex-start}.cdb-booking-card-img{width:100%;height:160px}.cdb-booking-card-right{text-align:left;width:100%;display:flex;align-items:center;gap:1rem}.cdb-booking-card-meta{flex-wrap:wrap;gap:.8rem}}.cbd-detail-container{max-width:900px;margin:0 auto;padding:3rem 2rem 4rem}.cbd-back-link{display:inline-flex;align-items:center;gap:.4rem;color:#6b7280;text-decoration:none;font-size:.85rem;margin-bottom:1.5rem;transition:color .2s}.cbd-back-link:hover{color:#1b4d6e}.cbd-detail-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:2rem}.cbd-detail-header h1{font-family:Playfair Display,Georgia,serif;font-size:1.8rem;margin-bottom:.3rem;color:#0a1628}.cbd-ref{font-size:.85rem;color:#6b7280}.cbd-status-badges{display:flex;gap:.5rem}.cbd-badge{padding:.3rem .9rem;border-radius:20px;font-size:.75rem;font-weight:600;display:inline-flex;align-items:center;gap:.3rem}.cbd-badge-confirmed,.cbd-badge-paid{background:rgba(16,185,129,.1);color:#10b981}.cbd-detail-actions{display:flex;gap:.8rem;margin-bottom:2rem;flex-wrap:wrap}.cbd-btn-action{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.2rem;border-radius:8px;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .2s;cursor:pointer;border:none;font-family:Inter,DM Sans,system-ui,sans-serif}.cbd-btn-action-primary{background:#1b4d6e;color:#fff}.cbd-btn-action-primary:hover{background:#164060}.cbd-btn-action-outline{background:#fff;color:#0a1628;border:1.5px solid #e5e7eb}.cbd-btn-action-outline:hover{border-color:#1b4d6e;color:#1b4d6e}.cbd-btn-action-danger{background:#fff;color:#ef4444;border:1.5px solid rgba(239,68,68,.3)}.cbd-btn-action-danger:hover{background:rgba(239,68,68,.05);border-color:#ef4444}.cbd-info-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}.cbd-info-card{background:#fff;border-radius:14px;padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}.cbd-info-card h3{font-size:.82rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.08em;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;font-family:Inter,DM Sans,system-ui,sans-serif}.cbd-info-card h3 i{color:#e8a838}.cbd-info-row{display:flex;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid #e5e7eb;font-size:.88rem}.cbd-info-row:last-child{border-bottom:none}.cbd-info-row label{color:#6b7280}.cbd-value{font-weight:500;color:#0a1628}.cbd-notes-text{font-size:.88rem;color:#374151;line-height:1.6}.cbd-manifest-note{font-size:.82rem;color:#6b7280;margin-top:.5rem}.cbd-receipt-card{background:#fff;border-radius:14px;padding:2rem;box-shadow:0 2px 8px rgba(0,0,0,.04);margin-bottom:1.5rem;border-top:4px solid #1b4d6e}.cbd-receipt-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.cbd-receipt-header h2{font-family:Playfair Display,Georgia,serif;font-size:1.3rem;color:#0a1628}.cbd-btn-print{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.2rem;background:#f8f6f3;border:1px solid #e5e7eb;border-radius:8px;color:#0a1628;font-size:.82rem;font-weight:500;cursor:pointer;text-decoration:none;transition:all .2s}.cbd-btn-print:hover{border-color:#1b4d6e;color:#1b4d6e}.cbd-receipt-total{display:flex;justify-content:space-between;padding:1rem 0;font-size:1.2rem;font-weight:700;border-top:2px solid #0a1628;margin-top:.5rem;color:#0a1628}.cbd-qr-section{background:#fff;border-radius:14px;padding:2rem;text-align:center;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}.cbd-qr-section h3{font-family:Playfair Display,Georgia,serif;font-size:1.1rem;margin-bottom:.3rem;color:#0a1628;text-transform:none;letter-spacing:normal;justify-content:center}.cbd-qr-placeholder,.cbd-qr-section p{font-size:.82rem;color:#6b7280}.cbd-qr-placeholder{width:160px;height:160px;background:#f8f6f3;border:2px dashed #e5e7eb;border-radius:12px;margin:1rem auto;display:flex;flex-direction:column;align-items:center;justify-content:center}.cbd-qr-placeholder i{font-size:2rem;margin-bottom:.5rem;color:#e5e7eb}@media (max-width:768px){.cbd-info-grid{grid-template-columns:1fr}.cbd-detail-header{flex-direction:column;gap:1rem}}.crc-receipt-container{max-width:700px;margin:0 auto;padding:3rem 2rem 4rem}.crc-receipt-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.crc-back-link{display:inline-flex;align-items:center;gap:.4rem;color:#6b7280;text-decoration:none;font-size:.85rem;transition:color .2s}.crc-back-link:hover{color:#1b4d6e}.crc-btn-print{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.5rem;background:#1b4d6e;color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:Inter,DM Sans,system-ui,sans-serif}.crc-btn-print:hover{background:#164060}.crc-receipt-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,.08)}.crc-receipt-header{background:#1b4d6e;padding:2rem;text-align:center;color:#fff}.crc-receipt-header-brand{gap:.6rem;margin-bottom:.8rem}.crc-receipt-header-brand,.crc-receipt-header-icon{display:flex;align-items:center;justify-content:center}.crc-receipt-header-icon{width:40px;height:40px;background:#e8a838;border-radius:10px;color:#1b4d6e;font-size:1.1rem}.crc-receipt-header-brand h2{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;color:#fff}.crc-receipt-header p{font-size:.82rem;color:hsla(0,0%,100%,.6)}.crc-receipt-status{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem;background:rgba(16,185,129,.08);border-bottom:1px solid #e5e7eb;font-size:.88rem;font-weight:600;color:#10b981}.crc-receipt-body{padding:2rem}.crc-receipt-row{display:flex;justify-content:space-between;align-items:center;padding:.8rem 0;border-bottom:1px solid #e5e7eb;font-size:.88rem}.crc-receipt-row:last-child{border-bottom:none}.crc-receipt-row label{color:#6b7280}.crc-value{font-weight:500;text-align:right;color:#0a1628}.crc-receipt-total{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 2rem;background:#f8f6f3;font-size:1.2rem;font-weight:700;border-top:2px solid #0a1628;color:#0a1628}.crc-receipt-qr{text-align:center;padding:2rem;border-top:1px solid #e5e7eb}.crc-qr-placeholder{width:140px;height:140px;background:#f8f6f3;border:2px dashed #e5e7eb;border-radius:12px;margin:0 auto .8rem;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6b7280;font-size:.78rem}.crc-qr-placeholder i{font-size:2rem;margin-bottom:.3rem;color:#e5e7eb}.crc-receipt-footer-note,.crc-receipt-qr p{font-size:.78rem;color:#6b7280}.crc-receipt-footer-note{text-align:center;padding:1.5rem 2rem;background:#f8f6f3;border-radius:0 0 16px 16px;line-height:1.5}@media print{.crc-receipt-actions{display:none!important}.crc-receipt-container{padding:0;max-width:100%}.crc-receipt-card{box-shadow:none;border:1px solid #ddd}}@media (max-width:768px){.crc-receipt-row{flex-direction:column;gap:.2rem;align-items:flex-start}.crc-value{text-align:left}}.contact-hero{background:linear-gradient(135deg,rgba(27,77,110,.82),rgba(10,22,40,.6)),url(https://images.unsplash.com/photo-1507525428034-b723cf961d3e?w=1600&q=80) 50%/cover;padding:4rem 2rem;text-align:center}.contact-hero h1{font-size:2.5rem;color:var(--pp-white);margin-bottom:.5rem}.contact-hero p{color:hsla(0,0%,100%,.7);font-size:1rem;margin:0}.contact-wrapper{max-width:1100px;margin:0 auto;padding:3rem 2rem 4rem;display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem}.venue-card{background:var(--pp-white);border-radius:14px;padding:2rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}.venue-card h2{font-size:1.4rem;margin-bottom:1.5rem}.venue-info-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--pp-light-gray)}.venue-info-item:last-of-type{border-bottom:none}.venue-info-icon{width:40px;height:40px;border-radius:10px;background:rgba(27,77,110,.08);display:flex;align-items:center;justify-content:center;color:var(--pp-primary);flex-shrink:0}.venue-info-item h4{font-size:.85rem;margin-bottom:.2rem}.venue-info-item p{font-size:.85rem;color:var(--pp-warm-gray);line-height:1.5;margin:0}.map-placeholder{width:100%;height:200px;background:var(--pp-off-white);border:2px dashed var(--pp-light-gray);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--pp-warm-gray);font-size:.88rem;margin-top:1.5rem;gap:.5rem}.map-placeholder i{font-size:1.5rem;color:var(--pp-light-gray)}.social-links{display:flex;gap:.8rem;margin-top:1.5rem}.social-link{width:40px;height:40px;border-radius:10px;background:var(--pp-off-white);display:flex;align-items:center;justify-content:center;color:var(--pp-primary);text-decoration:none;transition:all .2s;font-size:1.1rem}.social-link:hover{background:var(--pp-primary);color:var(--pp-white)}.contact-form-card{background:var(--pp-white);border-radius:14px;padding:2rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}.contact-form-card h2{font-size:1.4rem;margin-bottom:.3rem}.contact-form-card>p{font-size:.88rem;color:var(--pp-warm-gray);margin-bottom:1.5rem}.btn-send{width:100%;padding:1rem;background:var(--pp-primary);color:var(--pp-white);border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif}.btn-send:hover{background:#164060;transform:translateY(-1px);box-shadow:0 6px 20px rgba(27,77,110,.3)}.notif-container{max-width:750px;margin:0 auto;padding:3rem 2rem 4rem}.notif-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.notif-header h1{font-size:2rem;margin-bottom:.3rem}.notif-header p{color:var(--pp-warm-gray);font-size:.9rem;margin:0}.btn-mark-read{padding:.5rem 1.2rem;background:var(--pp-off-white);border:1.5px solid var(--pp-light-gray);border-radius:8px;font-size:.82rem;font-weight:600;color:var(--pp-navy);cursor:pointer;transition:all .2s;font-family:Inter,sans-serif}.btn-mark-read:hover{border-color:var(--pp-primary);color:var(--pp-primary)}.notif-card{background:var(--pp-white);border-radius:12px;padding:1.3rem 1.5rem;margin-bottom:.6rem;display:flex;align-items:flex-start;gap:1rem;box-shadow:0 1px 4px rgba(0,0,0,.04);transition:transform .2s;border-left:4px solid transparent}.notif-card:hover{transform:translateX(4px)}.notif-card.unread{background:rgba(27,77,110,.03);border-left-color:var(--pp-primary)}.notif-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem}.notif-icon.confirmed{background:rgba(16,185,129,.1);color:var(--pp-green)}.notif-icon.reminder{background:rgba(59,130,246,.1);color:#3b82f6}.notif-icon.payment{background:rgba(232,168,56,.1);color:var(--pp-accent)}.notif-icon.review-type{background:rgba(245,158,11,.1);color:#f59e0b}.notif-icon.cancelled{background:rgba(239,68,68,.1);color:var(--pp-red)}.notif-icon.welcome{background:rgba(27,77,110,.1);color:var(--pp-primary)}.notif-icon.promo{background:rgba(232,168,56,.1);color:var(--pp-accent)}.notif-body{flex:1 1}.notif-body h4{font-size:.9rem;font-weight:600;margin-bottom:.2rem}.notif-body p{font-size:.82rem;color:var(--pp-warm-gray);line-height:1.5;margin:0}.notif-time{font-size:.72rem;color:#9ca3af;flex-shrink:0;white-space:nowrap}.unread-dot{width:8px;height:8px;background:var(--pp-primary);border-radius:50%;display:inline-block;margin-left:.3rem;vertical-align:middle}.rp-layout{display:flex;min-height:calc(100vh - 60px)}.rp-image{flex:1 1;background:linear-gradient(135deg,rgba(27,77,110,.75),rgba(10,22,40,.6)),url(https://images.unsplash.com/photo-1520454974749-611b7248ffdb?w=1200&q=80) 50%/cover;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem}.rp-image h2{font-size:2.5rem;color:var(--pp-white);margin-bottom:.8rem;line-height:1.2}.rp-image p{color:hsla(0,0%,100%,.7);font-size:1rem;line-height:1.6;max-width:400px;margin:0}.rp-form-panel{width:500px;flex-shrink:0;background:var(--pp-white);display:flex;flex-direction:column;justify-content:center;padding:3rem}.rp-title{font-size:1.8rem;color:var(--pp-navy);margin-bottom:.5rem}.rp-subtitle{color:var(--pp-warm-gray);font-size:.9rem;margin-bottom:2.5rem;line-height:1.5}.password-strength{margin-top:.4rem}.strength-bar{height:4px;border-radius:2px;background:var(--pp-light-gray);overflow:hidden}.strength-fill{height:100%;width:0;border-radius:2px;transition:width .3s,background .3s}.strength-text{font-size:.72rem;margin-top:.2rem;color:var(--pp-warm-gray)}.requirements{margin-top:.5rem}.req-item{font-size:.75rem;color:var(--pp-warm-gray);display:flex;align-items:center;gap:.3rem;margin-bottom:.2rem}.req-item i{font-size:.65rem}.req-item.met{color:var(--pp-green)}.req-item.unmet{color:var(--pp-warm-gray)}.success-state a.rp-signin-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.5rem;padding:.8rem 2rem;background:var(--pp-primary);color:var(--pp-white);border-radius:10px;text-decoration:none;font-weight:600;font-size:.9rem;transition:all .2s}.success-state a.rp-signin-link:hover{background:#164060}.review-container{max-width:800px;margin:0 auto;padding:3rem 2rem 4rem}.review-back-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--pp-warm-gray);text-decoration:none;font-size:.85rem;margin-bottom:1.5rem}.review-back-link:hover{color:var(--pp-primary)}.listing-context{display:flex;gap:1.2rem;background:var(--pp-white);border-radius:14px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}.listing-context-img{width:100px;height:100px;border-radius:12px;overflow:hidden;flex-shrink:0}.listing-context-img img{width:100%;height:100%;object-fit:cover}.listing-context-body h2{font-size:1.2rem;margin-bottom:.3rem}.listing-context-body p{font-size:.82rem;color:var(--pp-warm-gray);display:flex;align-items:center;gap:.3rem;margin:0}.review-form-card{background:var(--pp-white);border-radius:16px;padding:2rem;box-shadow:0 2px 12px rgba(0,0,0,.06);margin-bottom:2.5rem}.review-form-card h2{font-size:1.4rem;margin-bottom:.3rem}.review-form-card>p{font-size:.88rem;color:var(--pp-warm-gray);margin-bottom:2rem}.star-rating{margin-bottom:1.5rem}.star-rating .field-label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.6rem}.stars{display:flex;gap:.4rem}.star{font-size:2rem;cursor:pointer;color:var(--pp-light-gray);transition:color .15s,transform .15s}.star:hover{transform:scale(1.15)}.star.active{color:var(--pp-accent)}.star-text{font-size:.82rem;color:var(--pp-warm-gray);margin-top:.4rem}.form-textarea{width:100%;padding:1rem;border:1.5px solid var(--pp-light-gray);border-radius:10px;font-family:Inter,sans-serif;font-size:.9rem;resize:vertical;min-height:120px;transition:border-color .2s;background:var(--pp-off-white)}.form-textarea:focus{outline:none;border-color:var(--pp-primary);background:var(--pp-white)}.char-count{text-align:right;font-size:.75rem;color:var(--pp-warm-gray);margin-top:.3rem}.btn-submit-review{width:100%;padding:1rem;background:var(--pp-primary);color:var(--pp-white);border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif}.btn-submit-review:hover{background:#164060;transform:translateY(-1px)}.reviews-section h2{font-size:1.4rem;margin-bottom:.3rem}.reviews-section>p{font-size:.88rem;color:var(--pp-warm-gray);margin-bottom:1.5rem}.review-summary{display:flex;align-items:center;gap:1.5rem;background:var(--pp-white);border-radius:14px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}.review-avg{font-family:Playfair Display,serif;font-size:3rem;font-weight:700;color:var(--pp-primary)}.review-stars-lg{color:var(--pp-accent);font-size:1.2rem;margin-bottom:.2rem}.review-total{font-size:.85rem;color:var(--pp-warm-gray)}.rating-bars{flex:1 1}.rating-bar-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem;font-size:.78rem;color:var(--pp-warm-gray)}.rating-bar-row .label{width:18px;text-align:center}.rating-bar{flex:1 1;height:6px;background:var(--pp-light-gray);border-radius:3px;overflow:hidden}.rating-bar-fill{height:100%;background:var(--pp-accent);border-radius:3px}.rating-bar-row .count{width:20px;text-align:right}.rv-review-card{background:var(--pp-white);padding:1.3rem;border-radius:12px;margin-bottom:.8rem;box-shadow:0 1px 4px rgba(0,0,0,.04)}.rv-review-header{display:flex;justify-content:space-between;margin-bottom:.4rem}.rv-review-author{font-weight:600;font-size:.9rem}.rv-review-date{font-size:.75rem;color:var(--pp-warm-gray)}.rv-review-rating{color:var(--pp-accent);font-size:.82rem;margin-bottom:.5rem}.rv-review-text{font-size:.88rem;color:#374151;line-height:1.6;margin:0}.terms-hero{background:var(--pp-primary);padding:3rem 2rem;text-align:center}.terms-hero h1{font-size:2.2rem;color:var(--pp-white);margin-bottom:.3rem}.terms-hero p{color:hsla(0,0%,100%,.6);font-size:.88rem;margin:0}.terms-container{max-width:850px;margin:0 auto;padding:2rem 2rem 4rem}.tabs{display:flex;gap:0;margin-bottom:2.5rem;border-bottom:2px solid var(--pp-light-gray)}.tab-btn{padding:.8rem 2rem;font-size:.9rem;font-weight:600;color:var(--pp-warm-gray);cursor:pointer;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s;font-family:Inter,sans-serif}.tab-btn.active,.tab-btn:hover{color:var(--pp-primary)}.tab-btn.active{border-bottom-color:var(--pp-primary)}.tab-content{display:none}.tab-content.active{display:block}.legal-content h2{font-size:1.4rem;margin:2rem 0 .8rem;padding-bottom:.5rem;border-bottom:1px solid var(--pp-light-gray)}.legal-content h2:first-child{margin-top:0}.legal-content h3{font-size:1rem;margin:1.2rem 0 .5rem}.legal-content p{margin-bottom:.8rem}.legal-content p,.legal-content ul{font-size:.9rem;color:#374151;line-height:1.8}.legal-content ul{margin:.5rem 0 1rem 1.5rem}.legal-content .effective-date{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem 1rem;background:rgba(27,77,110,.06);border-radius:6px;font-size:.82rem;color:var(--pp-primary);font-weight:500;margin-bottom:1.5rem}.cancel-container{max-width:700px;margin:0 auto;padding:3rem 2rem 4rem}.cancel-back-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--pp-warm-gray);text-decoration:none;font-size:.85rem;margin-bottom:1.5rem;transition:color .2s}.cancel-back-link:hover{color:var(--pp-primary)}.cancel-container h1{font-size:1.8rem;margin-bottom:.3rem}.cancel-container>p{color:var(--pp-warm-gray);font-size:.9rem;margin-bottom:2rem}.booking-summary{background:var(--pp-white);border-radius:14px;padding:1.5rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:1.2rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}.booking-summary-img{width:90px;height:90px;border-radius:12px;overflow:hidden;flex-shrink:0}.booking-summary-img img{width:100%;height:100%;object-fit:cover}.booking-summary-body h3{font-size:1rem;margin-bottom:.3rem}.booking-summary-meta{font-size:.82rem;color:var(--pp-warm-gray);display:flex;flex-wrap:wrap;gap:1rem}.booking-summary-meta span{display:flex;align-items:center;gap:.3rem}.booking-summary-meta i{font-size:.75rem}.booking-summary-amount{font-size:1.1rem;font-weight:700;flex-shrink:0}.policy-card{background:var(--pp-white);border-radius:14px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.04);border-left:4px solid var(--pp-accent)}.policy-card h3{font-size:.88rem;font-weight:600;display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.policy-card h3 i{color:var(--pp-accent)}.policy-item{display:flex;align-items:center;gap:.8rem;padding:.6rem 0;font-size:.85rem;border-bottom:1px solid var(--pp-light-gray)}.policy-item:last-child{border-bottom:none}.policy-badge{padding:.2rem .6rem;border-radius:6px;font-size:.72rem;font-weight:600;flex-shrink:0}.policy-badge.full{background:rgba(16,185,129,.1);color:var(--pp-green)}.policy-badge.partial{background:rgba(245,158,11,.1);color:#f59e0b}.policy-badge.none{background:rgba(239,68,68,.1);color:var(--pp-red)}.policy-refund{background:rgba(16,185,129,.06);border-radius:8px;padding:.8rem 1rem;margin-top:1rem;font-size:.85rem;color:var(--pp-green);display:flex;align-items:center;gap:.5rem}.cancel-form-card{background:var(--pp-white);border-radius:14px;padding:2rem;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.04)}.cancel-form-card h3{font-size:1rem;font-weight:600;margin-bottom:1.2rem}.cancel-actions{display:flex;gap:1rem}.btn-cancel-booking{flex:1 1;padding:1rem;background:var(--pp-red);color:var(--pp-white);border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif}.btn-cancel-booking:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 6px 20px rgba(239,68,68,.3)}.btn-keep{flex:1 1;padding:1rem;background:var(--pp-white);color:var(--pp-navy);border:1.5px solid var(--pp-light-gray);border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif;text-decoration:none;text-align:center;display:flex;align-items:center;justify-content:center}.btn-keep:hover{border-color:var(--pp-primary);color:var(--pp-primary)}.cancel-success-icon{width:80px;height:80px;background:rgba(239,68,68,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:var(--pp-red);font-size:2rem}.success-state a.cancel-back-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.8rem 2rem;background:var(--pp-primary);color:var(--pp-white);border-radius:10px;text-decoration:none;font-weight:600;font-size:.9rem;transition:all .2s}.success-state a.cancel-back-btn:hover{background:#164060}@media (max-width:900px){.contact-wrapper{grid-template-columns:1fr}.rp-layout{flex-direction:column}.rp-image{min-height:250px}.rp-form-panel{width:100%}}@media (max-width:768px){.notif-header{gap:1rem;align-items:flex-start}.listing-context,.notif-header{flex-direction:column}.listing-context-img{width:100%;height:160px}.review-summary{flex-direction:column;text-align:center}.booking-summary{align-items:flex-start}.booking-summary,.cancel-actions{flex-direction:column}.tab-btn{padding:.8rem 1rem;font-size:.82rem}}