/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.resize-none{resize:none;}.resize-vertical{min-height:2em;resize:vertical;}.resize-horizontal{max-width:100%;resize:horizontal;}.resize-both{max-width:100%;min-height:2em;resize:both;}
.text-align-left{text-align:left;}.text-align-right{text-align:right;}.text-align-center{text-align:center;}.text-align-justify{text-align:justify;}.align-left{float:left;}.align-right{float:right;}.align-center{display:block;margin-right:auto;margin-left:auto;}
.container-inline div,.container-inline label{display:inline-block;}.container-inline .details-wrapper{display:block;}
.clearfix::after{display:table;clear:both;content:"";}.nowrap{white-space:nowrap;}
.hidden{display:none;}.visually-hidden{position:absolute !important;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;word-wrap:normal;}.visually-hidden.focusable:active,.visually-hidden.focusable:focus-within{position:static !important;overflow:visible;clip:auto;width:auto;height:auto;}.invisible{visibility:hidden;}
.js .js-hide{display:none;}.js-show{display:none;}.js .js-show{display:block;}
.bookings-toolbar{margin-bottom:1.5rem;}.bookings-toolbar .btn-success{background:#27ae60;border-color:#27ae60;font-weight:600;letter-spacing:0.3px;}.bookings-toolbar .btn-success:hover{background:#219a52;border-color:#219a52;}.booking-toolbar .btn{font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;}.booking-toolbar .btn-primary{background:#3498db;border-color:#3498db;}.booking-toolbar .btn-primary:hover{background:#2980b9;border-color:#2980b9;}.node--type-booking{max-width:800px;margin:0 auto;padding:2rem;}.node--type-booking .field{display:flex;flex-wrap:wrap;padding:0.75rem 0;border-bottom:1px solid #e8e8e8;}.node--type-booking .field:last-child{border-bottom:none;}.node--type-booking .field__label{flex:0 0 180px;font-size:0.7rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#666;padding-top:0.25rem;}.node--type-booking .field__item{flex:1;font-size:1rem;color:#0a0a0a;}.booking-details-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,0.06);overflow:hidden;}.booking-details-header{background:#0a0a0a;color:#fff;padding:1.5rem 2rem;}.booking-details-header h1{margin:0;font-size:1.5rem;font-weight:700;}.booking-details-header .booking-status{display:inline-block;margin-top:0.75rem;padding:0.35rem 1rem;font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;border-radius:20px;}.booking-status--pending{background:#f39c12;color:#fff;}.booking-status--confirmed{background:#27ae60;color:#fff;}.booking-status--in-progress{background:#3498db;color:#fff;}.booking-status--completed{background:#2c3e50;color:#fff;}.booking-status--cancelled{background:#e74c3c;color:#fff;}.booking-details-body{padding:2rem;}.booking-section{margin-bottom:2rem;}.booking-section:last-child{margin-bottom:0;}.booking-section-title{font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#999;margin-bottom:1rem;padding-bottom:0.5rem;border-bottom:2px solid #e8e8e8;}.booking-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;}.booking-field{display:flex;flex-direction:column;}.booking-field-label{font-size:0.7rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#888;margin-bottom:0.25rem;}.booking-field-value{font-size:1rem;color:#0a0a0a;}.booking-field-value a{color:#3498db;text-decoration:none;}.booking-field-value a:hover{text-decoration:underline;}.booking-field--full{grid-column:1 / -1;}.booking-notes{background:#f8f9fa;padding:1rem;border-radius:6px;font-size:0.95rem;line-height:1.6;}.booking-actions{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e8e8e8;display:flex;gap:1rem;}.booking-actions .button,.booking-actions a{display:inline-block;padding:0.75rem 1.5rem;font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;text-decoration:none;border-radius:4px;transition:all 0.3s ease;}.booking-actions .button--primary{background:#0a0a0a;color:#fff;}.booking-actions .button--primary:hover{background:#333;}.booking-actions .button--secondary{background:#fff;color:#0a0a0a;border:2px solid #0a0a0a;}.booking-actions .button--secondary:hover{background:#0a0a0a;color:#fff;}@media (max-width:600px){.booking-grid{grid-template-columns:1fr;}.node--type-booking .field{flex-direction:column;}.node--type-booking .field__label{flex:none;margin-bottom:0.25rem;}}
.rw-hp-field{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden;}.path-book .page-title,.path-book .block-page-title-block,.path-book-thank-you .page-title,.path-book-thank-you .block-page-title-block{display:none;}.rw-book-hero{text-align:center;padding:2.5rem 1rem 1.5rem;margin-bottom:1rem;}.rw-book-hero h1{font-size:2rem;font-weight:800;color:#1a1a1a;margin-bottom:0.75rem;display:flex;align-items:center;justify-content:center;gap:0.6rem;}.rw-book-hero h1 i{color:#c41e3a;}.rw-book-hero p{font-size:1rem;color:#6c757d;margin:0;line-height:1.6;}.rw-book-hero p a{color:#1a1a1a;text-decoration:none;}.rw-book-hero p a:hover{color:#c41e3a;}@media (max-width:576px){.rw-book-hero h1{font-size:1.5rem;}.rw-book-hero p{font-size:0.9rem;}}.rw-booking-form{max-width:680px;margin:0 auto 3rem;padding:0 1rem;}.rw-booking-form .form-item{margin-bottom:1.25rem;}.rw-booking-form label{font-weight:600;font-size:0.9rem;margin-bottom:0.35rem;color:#1a1a1a;}.rw-booking-form .description{font-size:0.8rem;color:#6c757d;margin-top:0.25rem;}.rw-booking-form .form-control,.rw-booking-form .form-select{border-radius:6px;border:1.5px solid #d0d5dd;padding:0.6rem 0.85rem;font-size:0.95rem;transition:border-color 0.2s ease,box-shadow 0.2s ease;}.rw-booking-form .form-control:focus,.rw-booking-form .form-select:focus{border-color:#c41e3a;box-shadow:0 0 0 3px rgba(196,30,58,0.12);}.rw-form-section-title{font-size:1.1rem;font-weight:700;color:#1a1a1a;margin:2rem 0 1.25rem;padding-bottom:0.5rem;border-bottom:2px solid #e9ecef;display:flex;align-items:center;gap:0.5rem;}.rw-form-section-title:first-of-type{margin-top:0;}.rw-form-section-title i{color:#c41e3a;font-size:1.1rem;}.rw-reg-actions{margin-top:0.5rem;margin-bottom:0.25rem;}.rw-reg-input{text-transform:uppercase;font-family:'Courier New',Courier,monospace;font-weight:700;letter-spacing:1.5px;font-size:1.1rem !important;}.rw-lookup-btn{margin-top:0.5rem;font-weight:600;font-size:0.85rem;padding:0.5rem 1.25rem;display:inline-flex;align-items:center;gap:0.5rem;border-radius:6px;}.rw-lookup-results{margin-top:1rem;padding:1.25rem;border-radius:8px;animation:rwSlideIn 0.3s ease;}@keyframes rwSlideIn{from{opacity:0;transform:translateY(-8px);}to{opacity:1;transform:translateY(0);}}.rw-lookup-success{background:#f0fdf4;border:1px solid #bbf7d0;}.rw-lookup-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-weight:500;font-size:0.9rem;display:flex;align-items:center;}.rw-plate{display:inline-block;background:#ffd500;color:#1a1a1a;font-family:'Courier New',Courier,monospace;font-size:1.3rem;font-weight:700;letter-spacing:2px;padding:0.4rem 1rem;border-radius:5px;border:2px solid #1a1a1a;margin-bottom:1rem;}.rw-submit-btn{background:#c41e3a !important;color:#fff !important;border:none !important;font-weight:700;padding:0.85rem 2.5rem !important;font-size:1rem !important;border-radius:6px !important;width:100%;margin-top:1rem;transition:background 0.2s ease,transform 0.1s ease;}.rw-submit-btn:hover{background:#a3172f !important;transform:translateY(-1px);}.rw-submit-btn:active{transform:translateY(0);}.rw-thank-you{max-width:600px;margin:2rem auto;text-align:center;padding:0 1rem;}.rw-thank-you-icon{font-size:4rem;color:#22c55e;margin-bottom:1rem;}.rw-thank-you h2{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin-bottom:0.5rem;}.rw-thank-you .rw-ty-subtitle{color:#6c757d;font-size:1rem;margin-bottom:2rem;}.rw-thank-you-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;padding:1.5rem;margin-bottom:2rem;text-align:left;}.rw-thank-you-card h4{font-size:0.85rem;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:#6c757d;margin-bottom:1rem;}.rw-ty-detail{display:flex;justify-content:space-between;padding:0.5rem 0;border-bottom:1px solid #e9ecef;font-size:0.95rem;}.rw-ty-detail:last-child{border-bottom:none;}.rw-ty-label{color:#6c757d;}.rw-ty-value{font-weight:600;color:#1a1a1a;}.rw-track-btn{display:inline-flex;align-items:center;gap:0.5rem;background:#1a1a1a;color:#fff;padding:0.75rem 2rem;border-radius:6px;font-weight:600;font-size:0.95rem;text-decoration:none;transition:background 0.2s ease;}.rw-track-btn:hover{background:#333;color:#fff;}.rw-ty-footer{margin-top:2rem;font-size:0.85rem;color:#6c757d;}.rw-booking-form .is-invalid{border-color:#dc3545 !important;box-shadow:0 0 0 3px rgba(220,53,69,0.12) !important;}.rw-booking-form .messages--status{background:#f0fdf4;border-color:#bbf7d0;color:#166534;border-radius:8px;}.rw-booking-form .messages--error{background:#fef2f2;border-color:#fecaca;color:#991b1b;border-radius:8px;}@media (max-width:576px){.rw-booking-form{padding:0 0.75rem;}.rw-submit-btn{padding:0.75rem 1.5rem !important;}.rw-plate{font-size:1.1rem;}.rw-ty-detail{flex-direction:column;gap:0.15rem;}}
