.rsr-booking,.rsr-reservation,.rsr-account-banner{--rsr-ink:#182b25;--rsr-green:#214735;--rsr-lime:#dafa71;--rsr-line:#d9e1d8;box-sizing:border-box;color:var(--rsr-ink);font:inherit;border:1px solid var(--rsr-line);border-radius:20px;overflow:hidden;background:#fff;margin:24px 0;max-width:100%}.rsr-booking *{box-sizing:border-box}.rsr-booking [hidden],.rsr-agency-fields[hidden]{display:none!important}.rsr-hero{padding:28px;background:var(--rsr-green);color:#fff}.rsr-kicker{font-size:11px;letter-spacing:3px;font-weight:800;color:var(--rsr-lime)}.rsr-hero h2{color:#fff!important;font-size:clamp(25px,3vw,34px)!important;line-height:1.15;margin:10px 0!important}.rsr-hero p{margin:0;opacity:.9;font-size:15px}.rsr-progress{list-style:none!important;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:18px 22px!important;margin:0!important;background:#f4f7f1;font-size:12px;font-weight:700}.rsr-progress li{padding:8px 3px;text-align:center;border-bottom:3px solid #d9e1d8;line-height:1.3}.rsr-progress li.active{border-color:#447e45;color:#245830}.rsr-step{padding:24px}.rsr-step h3{font-size:21px!important;margin:0 0 16px!important;color:var(--rsr-ink)!important}.rsr-step h4{font-size:17px!important;color:var(--rsr-ink)!important;margin:0!important}.rsr-step p{font-size:14px;line-height:1.6}.rsr-booking input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.rsr-booking select,.rsr-booking textarea{border:1px solid #b7c5b7;border-radius:9px;padding:10px 12px;background:#fff;color:#182b25;max-width:100%;min-height:44px;font-size:16px}.rsr-booking label{display:block;font-size:14px}.rsr-quantity{display:flex!important;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--rsr-line);padding:15px 0}.rsr-quantity span{flex:1}.rsr-quantity small{display:block;color:#5d6d62;font-size:12px;margin-top:5px}.rsr-quantity input{width:85px!important;flex:0 0 85px;text-align:center}.rsr-activity{padding:20px;border:1px solid var(--rsr-line);border-radius:13px;margin:16px 0;background:#fafbf7}.rsr-card-title{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.rsr-card-title span{font-weight:700;font-size:13px}.rsr-activity select{display:block;width:100%;margin-top:7px}.rsr-activity label{margin-bottom:10px}.rsr-slot-stock{display:block;color:#4c6255}.rsr-note{font-size:12px!important;color:#5d6d62}.rsr-unavailable{background:#f7f7f7}.rsr-lodging-note{padding:18px;background:#fff5dc;border-radius:12px;margin-top:20px;font-size:14px}.rsr-lodging-note p{margin:8px 0 0}.rsr-totals{padding:20px 24px;background:#f0f5e9;border-top:1px solid var(--rsr-line);display:grid;gap:14px}.rsr-totals>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.rsr-totals span{font-size:13px}.rsr-totals strong{font-size:21px;white-space:nowrap}.rsr-totals .rsr-request-total strong{font-size:16px}.rsr-navigation{display:none;justify-content:space-between;gap:12px;padding:18px 24px}.rsr-enhanced .rsr-navigation{display:flex}.rsr-booking button,.rsr-dietary button{cursor:pointer;border-radius:9px;border:1px solid #becabc;padding:11px 18px;background:#fff;color:#213e2e;font-weight:700;line-height:1.3;min-height:44px;font-size:14px}.rsr-booking button:hover{filter:brightness(.96)}.rsr-booking .rsr-primary{background:var(--rsr-green);color:white;border-color:var(--rsr-green)}.rsr-booking button:focus-visible,.rsr-booking a:focus-visible,.rsr-booking input:focus-visible,.rsr-booking select:focus-visible{outline:3px solid #6f983b;outline-offset:3px}.rsr-booking button:disabled{opacity:.4;cursor:not-allowed}.rsr-submit{width:100%;margin-top:20px}.rsr-alert:empty{display:none}.rsr-alert{padding:14px 24px;background:#fff3d6;font-size:14px}.rsr-calendar{margin-bottom:18px;border:1px solid var(--rsr-line);border-radius:12px;padding:12px}.rsr-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.rsr-cal-head strong{text-transform:capitalize;font-size:16px}.rsr-cal-head button{padding:4px 15px;font-size:24px}.rsr-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.rsr-weekday{text-align:center;font-size:12px;color:#607466;padding:5px}.rsr-calendar-grid .rsr-day{padding:8px 0;min-width:0;border:0;background:#edf4e5;color:#254633;border-radius:8px}.rsr-calendar-grid .rsr-day.selected{background:var(--rsr-green);color:#fff}.rsr-calendar-grid .rsr-day:disabled{background:#eee;color:#888}.rsr-date-label input{display:block;width:100%;margin-top:7px}.rsr-reservation,.rsr-account-banner{padding:24px}.rsr-reservation h3{margin:0}.rsr-reservation dl{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:8px 20px;font-size:14px}.rsr-reservation dt{font-weight:700}.rsr-reservation dd{margin:0}.rsr-badge{border-radius:20px;padding:6px 10px;background:#eaf1df}.rsr-conditions{padding:16px;background:#f5f7f1;border:1px solid #d9e1d8;border-radius:10px;margin:20px 0;font-size:14px}.rsr-condition{margin:12px 0}.rsr-condition input[type=checkbox]{margin-right:8px;width:18px;height:18px;vertical-align:middle}.rsr-condition a{color:#215a35;text-decoration:underline}.rsr-missing-terms{color:#933b18}.rsr-dietary{padding:18px 0}.rsr-dietary-row{border:1px solid #cdd9c8;background:#f8faf5;padding:15px;margin:15px 0;border-radius:10px}.rsr-dietary-row input,.rsr-dietary-row textarea,.rsr-dietary-row select{display:block;width:100%;margin:7px 0 12px}.rsr-agency-intro,.rsr-agency-fields{padding:16px;border:1px solid #d9e1d8;background:#f6f8f1;margin:20px 0}.rsr-summary-details li{margin-bottom:8px;font-size:14px}@media(max-width:540px){.rsr-hero,.rsr-step,.rsr-totals,.rsr-navigation{padding:18px}.rsr-progress{padding:12px 10px!important;font-size:10px}.rsr-activity{padding:15px}.rsr-quantity{gap:8px}.rsr-quantity strong{font-size:14px}.rsr-reservation dl{grid-template-columns:1fr}.rsr-reservation dd{margin-bottom:8px}.rsr-card-title{gap:8px}}@media(prefers-reduced-motion:reduce){.rsr-booking *{scroll-behavior:auto!important;transition:none!important}}
.rsr-product-page .summary .woocommerce-product-details__short-description,.rsr-product-page form.cart:not(.rsr-booking){display:none!important}.rsr-agency-rate{padding:18px 24px;background:#eef6dd;border-bottom:1px solid #d9e1d8}.rsr-agency-rate p{margin:4px 0 0;font-size:13px}.rsr-agency-login{padding:16px 24px!important;margin:0!important;font-size:13px!important;background:#f5f7f1}.rsr-countdown{padding:20px 24px;border-radius:12px;background:#edf4df;color:#214735;margin:20px 0;border:1px solid #c8d8b7}.rsr-countdown h3{margin:0 0 8px!important;font-size:18px!important}.rsr-countdown-clock{font-variant-numeric:tabular-nums;font-size:32px;font-weight:800;display:block;margin:8px 0}.rsr-countdown p{margin:8px 0;font-size:14px}.rsr-countdown.rsr-expired{background:#fff0dc;color:#8b351f;border-color:#e6c6a6}.rsr-expired-payment{pointer-events:none!important;opacity:.5!important}.rsr-countdown a{color:inherit;text-decoration:underline}
body.rsr-simple-checkout .woocommerce-billing-fields>h3{display:none}body.rsr-simple-checkout .col2-set .col-1{float:none;width:100%}body.rsr-simple-checkout .col2-set .col-2{display:none}body.rsr-simple-checkout .woocommerce-additional-fields{display:none}

/* Reservation portal and deferred amounts: presentation only, never WooCommerce fees. */
.rsr-future-total th small,.rsr-lodging-total th small{display:block;font-size:12px;font-weight:400;line-height:1.5;margin-top:5px}.rsr-future-total{background:#edf4df;color:#214735}.rsr-step h3:focus{outline:none}
.rsr-account-shell{--rsr-ink:#182b25;--rsr-green:#214735;--rsr-lime:#dafa71;--rsr-line:#d9e1d8;background:#f3f5ed;border:1px solid #dce3d6;border-radius:24px;overflow:hidden;color:var(--rsr-ink);margin:24px 0}.rsr-account-shell *{box-sizing:border-box}.rsr-area-hero{background:#214735;padding:38px;color:#fff}.rsr-area-hero h2{font-size:clamp(30px,5vw,46px)!important;letter-spacing:-1px;line-height:1.1;color:#fff!important;margin:14px 0!important}.rsr-area-hero p{font-size:15px;margin:0;line-height:1.6}.rsr-area-nav{display:flex;flex-wrap:wrap;gap:8px;padding:18px 28px;border-bottom:1px solid #dce3d6;background:#fff}.rsr-area-nav a{padding:10px 16px;border-radius:30px;text-decoration:none!important;font-size:13px;font-weight:700;color:#214735!important}.rsr-area-nav a[aria-current=page]{background:#214735;color:#fff!important}.rsr-area-nav a:hover{background:#e4eecf}.woocommerce .rsr-area-content{float:none!important;width:100%!important;padding:28px;min-width:0}.rsr-area-content>h2{font-size:26px!important;color:#214735;margin:0 0 20px!important}.rsr-account-overview{display:grid;grid-template-columns:1fr 2fr;gap:12px;margin:20px 0}.rsr-account-overview>div{background:#e4ecd7;border:1px solid #d5dfc6;border-radius:14px;padding:20px}.rsr-account-overview span,.rsr-account-overview small{display:block;font-size:12px}.rsr-account-overview strong{display:block;font-size:30px;line-height:1.4}.rsr-account-shell .rsr-reservation{margin:18px 0;border:1px solid #d9e1d8;padding:26px;box-shadow:0 4px 14px #19341f06}.rsr-card-eyebrow{font-size:10px!important;letter-spacing:1.3px;color:#5b705d;display:block;margin-bottom:9px}.rsr-reservation h3{font-size:24px!important;color:#214735}.rsr-visit-date{font-size:22px;font-weight:700;line-height:1.5;margin:20px 0}.rsr-visit-date span{font-size:14px;font-weight:400;color:#596b5b;white-space:nowrap}.rsr-plan-details summary{cursor:pointer;font-size:14px;font-weight:600;padding:12px 0}.rsr-account-totals{background:#f3f6ed;border:1px solid #e1e7d9;border-radius:12px;padding:6px 18px;margin:18px 0}.rsr-account-totals>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;font-size:14px}.rsr-account-totals>div+div{border-top:1px solid #d9e1d8}.rsr-account-totals strong{white-space:nowrap;font-size:19px}.rsr-account-totals small{display:block;color:#63745c;font-size:12px;font-weight:400;margin-top:4px}.rsr-balance{color:#214735;font-weight:700}.rsr-reservation-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;font-size:13px}.rsr-reservation-actions a{color:#214735}.rsr-action-primary,.woocommerce .rsr-area-content a.button,.woocommerce .rsr-area-content button.button{display:inline-block;padding:13px 20px!important;background:#214735!important;color:#fff!important;border:0;border-radius:9px!important;text-decoration:none!important;font-size:14px;font-weight:700}.rsr-edit-help{font-size:12px;color:#60715f;margin:16px 0 0;line-height:1.6}.rsr-area-content table.shop_table{background:#fff;border-radius:12px;border-color:#d9e1d8;font-size:14px}.rsr-area-content input.input-text{border:1px solid #bac9b6;border-radius:8px;padding:12px;font-size:16px}.rsr-area-content a:focus-visible,.rsr-area-content summary:focus-visible,.rsr-area-nav a:focus-visible{outline:3px solid #7c9c39;outline-offset:3px}
@media(max-width:600px){.rsr-area-hero{padding:26px 20px}.rsr-area-nav{padding:12px;gap:3px}.rsr-area-nav a{padding:10px 12px}.woocommerce .rsr-area-content{padding:18px 12px}.rsr-account-shell .rsr-reservation{padding:18px}.rsr-account-overview{grid-template-columns:1fr}.rsr-account-overview>div{padding:16px}.rsr-account-totals{padding:4px 12px}.rsr-account-totals>div{font-size:13px}.rsr-account-totals strong{font-size:17px}.rsr-reservation-actions{gap:14px}.rsr-visit-date{font-size:20px}.rsr-badge{font-size:12px!important}}
/* Conversational reservation banners. Native content remains usable without JavaScript. */
.rsr-progress{grid-template-columns:repeat(6,minmax(0,1fr))}.rsr-choices,.rsr-entry-only{display:none!important}.rsr-enhanced .rsr-choices{display:flex!important;flex-wrap:wrap;gap:12px;margin:22px 0}.rsr-enhanced .rsr-entry-only{display:inline-block!important;margin-top:12px}.rsr-booking .rsr-step{background:linear-gradient(145deg,#f5f8ee 0%,#fff 65%)}.rsr-step>h3{font-size:clamp(23px,3vw,31px)!important;line-height:1.2}.rsr-card-title>span{background:#e6f0d3;color:#224b32;padding:8px 12px;border-radius:9px;font-size:17px}.rsr-quantity small{font-size:14px;color:#305d3d;font-weight:600}.rsr-person-prices{background:#214735;color:#fff;padding:20px;border-radius:14px;margin:20px 0}.rsr-person-prices:empty{display:none}.rsr-person-prices h4{color:#dafa71!important;margin-bottom:12px!important}.rsr-person-prices p{margin:10px 0;font-size:15px}.rsr-summary-details ul{padding-left:20px}.rsr-checkout-edit{padding:18px;background:#f0f5e9;border:1px solid #d9e1d8;border-radius:12px;margin:18px 0}.rsr-checkout-edit a{display:inline-block;margin:5px 18px 5px 0}.rsr-booking input[aria-invalid=true]{border:2px solid #b84624}.rsr-option-panel{animation:rsr-reveal .18s ease-out}@keyframes rsr-reveal{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:540px){.rsr-progress{grid-template-columns:repeat(3,minmax(0,1fr))}.rsr-choices>button{width:100%}.rsr-person-prices{padding:16px}.rsr-quantity small{font-size:13px}}@media(prefers-reduced-motion:reduce){.rsr-option-panel{animation:none}}
.rsr-catering-info{padding:14px;background:#eaf2dc;border-radius:10px;margin:18px 0;font-size:14px}.rsr-menu-allocation{border:1px solid #cbdabc;padding:16px;border-radius:12px;margin:18px 0;min-width:0}.rsr-menu-allocation legend{font-weight:700;padding:0 6px}.rsr-menu-count{font-weight:700;color:#315836}.rsr-menu-description{border:1px solid #d8e2ce;border-radius:10px;padding:14px;margin:12px 0;background:#fff}.rsr-menu-description summary{font-weight:700;cursor:pointer}.rsr-menu-description h5{margin:16px 0 8px;font-size:15px}.rsr-menu-description ul{font-size:14px;padding-left:20px}
/* Dedicated product template: no gallery, tabs, sidebar or related products. */
.rsr-product-page .ast-container,.rsr-product-page .site-content,.rsr-product-page #content{max-width:none!important;width:100%!important;padding-left:0!important;padding-right:0!important}.rsr-reservation-page{width:100%;max-width:none;padding:clamp(12px,3vw,42px);margin:0;box-sizing:border-box}.rsr-reservation-page>.rsr-booking{width:100%;max-width:none;margin:0}.rsr-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rsr-navigation{align-items:stretch;flex-wrap:wrap}.rsr-navigation .rsr-next{flex:1;font-size:17px;padding:16px 22px;box-shadow:0 4px 14px #21473530}.rsr-navigation .rsr-entry-only{flex:1;margin:0!important;padding:16px 22px}.rsr-booking [hidden]{display:none!important}.rsr-calendar-grid .rsr-day:disabled{background:#fce6e3;color:#a82d26;opacity:1;text-decoration:line-through}.rsr-buffet-ages{padding:16px;background:#f0f5e8;border-radius:12px;margin:16px 0}.rsr-buffet-ages>p{margin-top:0}@media(max-width:540px){.rsr-navigation .rsr-entry-only,.rsr-navigation .rsr-next{font-size:14px;padding:14px 10px;min-width:0}.rsr-navigation{gap:8px}}
.rsr-booking button{font-family:inherit}

/* 1.7: every stage opens directly; all navigation follows the totals. */
.rsr-navigation{display:flex}.rsr-booking:not(.rsr-enhanced) .rsr-navigation>button:not(.rsr-submit){display:none!important}.rsr-navigation .rsr-submit{flex:1;width:auto;margin:0;font-size:17px;padding:16px 22px}.rsr-meal-card{border:1px solid #d9e1d8;background:#fff;border-radius:13px;padding:18px;margin:16px 0}.rsr-meal-selected{border-color:#3d7148;background:#f4f8ec}.rsr-booking .rsr-add-meal{background:#214735;color:#fff;width:100%}.rsr-remove-meal{margin-top:12px}.rsr-booking:not(.rsr-enhanced) .rsr-add-meal,.rsr-booking:not(.rsr-enhanced) .rsr-remove-meal{display:none}.rsr-activity-ages{font-weight:700;color:#305d3d}.rsr-condition-scope{display:block;line-height:1.5;margin:6px 0 6px 26px}.rsr-conditions [hidden]{display:none!important}@media(max-width:540px){.rsr-navigation .rsr-submit{font-size:14px;padding:14px 10px}}
/* 1.8: compact meals, readable conditions and a notebook-style itinerary. */
.rsr-split-control{background:#edf3e6;border-radius:12px;padding:14px}.rsr-split-control small{display:block;margin:6px 0 0 25px;color:#56705a}.rsr-meal-card h4{margin-bottom:8px!important}.rsr-meal-summary{font-weight:700;font-size:15px!important}.rsr-meal-adjustments>summary,.rsr-price-details>summary,.rsr-checkout-agenda>summary,.rsr-contract>summary{cursor:pointer;color:#27573b;font-weight:650;padding:12px 0}.rsr-meal-card .rsr-menu-allocation{margin:10px 0;padding:12px}.rsr-menu-auto{padding:10px;background:#eaf2de;border-radius:8px}.rsr-conditions .rsr-contract-text{max-height:320px;overflow:auto;padding:12px 16px;background:#fff;border:1px solid #dce5d3;border-radius:8px;font-size:14px;line-height:1.65}.rsr-contract-text h3{font-size:17px!important;margin:20px 0 8px!important}.rsr-condition{padding:12px 0;border-bottom:1px solid #d9e1d8}.rsr-condition:last-child{border:0}.rsr-condition label{display:block;margin-top:10px;line-height:1.6}.rsr-agenda{color:#243c2c;margin:20px 0;border-radius:16px;border:1px solid #dfdcc8;background:repeating-linear-gradient(#fffdf5,#fffdf5 31px,#eceadb 32px);padding:22px 26px;box-shadow:4px 5px 0 #dddcc95c;position:relative;overflow:hidden}.rsr-agenda:before{content:"";position:absolute;left:24px;top:0;bottom:0;border-left:2px solid #dda38d66}.rsr-agenda-heading{position:relative;padding-left:16px}.rsr-agenda-heading>span{font-size:11px;font-weight:800;letter-spacing:2px;color:#517042}.rsr-agenda-heading h3{font-family:Georgia,serif!important;font-size:29px!important;margin:8px 0!important;color:#25452e}.rsr-agenda-heading p{margin:4px 0 18px;font-size:14px}.rsr-agenda ol{list-style:none!important;margin:0!important;padding:0!important;position:relative}.rsr-agenda-date{font-weight:800;background:#264c36;color:#fff;border-radius:7px;padding:7px 12px;margin:18px 0 10px;font-size:13px}.rsr-agenda-item{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:12px 0;margin:0!important}.rsr-agenda-icon{display:grid;place-items:center;align-self:start;font-size:25px;background:#fffdf5;border-radius:50%;min-height:38px}.rsr-agenda-item time{display:block;color:#a25a27;font-size:14px;font-weight:800;line-height:1.5}.rsr-agenda-item strong{display:block;font-size:17px;line-height:1.5}.rsr-agenda-item small{display:block;font-size:12px;color:#59705a;line-height:1.5}.rsr-agenda-activity>div{border-left:3px solid #a6c366;padding-left:12px}.rsr-agenda-note{margin:18px 0 0 16px;font-size:12px!important;color:#60725b}.rsr-share{padding:20px;border:1px solid #d7e3cf;background:#f2f7eb;border-radius:14px;margin:20px 0}.rsr-share h4{margin:0 0 8px}.rsr-share p{font-size:13px}.rsr-share>div{display:flex;flex-wrap:wrap;gap:10px}.rsr-share button,.rsr-share a{border:1px solid #315c3c;border-radius:9px;padding:11px 15px;background:#fff;color:#214735;font:600 14px/1.4 system-ui;cursor:pointer;text-decoration:none}.rsr-share .rsr-share-native{background:#214735;color:#fff}.rsr-share textarea{width:100%;min-height:230px;padding:12px}.rsr-share [hidden]{display:none!important}.rsr-share-feedback:empty{display:none}.rsr-meal-previews{margin-top:16px}@media(max-width:540px){.rsr-agenda{padding:18px 14px}.rsr-agenda:before{left:17px}.rsr-agenda-heading{padding-left:12px}.rsr-agenda-item{gap:8px;grid-template-columns:34px 1fr}.rsr-agenda-item strong{font-size:16px}.rsr-share{padding:15px}.rsr-share button,.rsr-share a{flex:1;text-align:center}.rsr-meal-card{padding:14px}}@media print{.rsr-share{display:none}.rsr-agenda{box-shadow:none;break-inside:auto}.rsr-agenda-item{break-inside:avoid}}

.rsr-agenda-icon svg{width:30px;height:30px;fill:none;stroke:#48633d;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

.rsr-meal-drawing svg{width:23px;height:23px;fill:none;stroke:#48633d;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;margin-right:8px}
/* Unified reservation confirmation */
.rsr-confirmation{max-width:1060px;margin:24px auto;color:#203c30}.rsr-confirmation>header{border-bottom:2px solid #cf9e50;padding-bottom:18px}.rsr-economic,.rsr-customer{background:#fffaf0;border:1px solid #e7decf;border-radius:18px;padding:clamp(16px,4vw,30px);margin:24px 0}.rsr-price-table{overflow-x:auto}.rsr-price-table table{width:100%;border-collapse:collapse;font-size:15px}.rsr-price-table th,.rsr-price-table td{padding:12px 8px;border-bottom:1px solid #e5dece;text-align:left}.rsr-price-table td:last-child{white-space:nowrap}.rsr-money-summary{margin-top:24px}.rsr-money-summary>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #ddd}.rsr-money-summary dd{margin:0;font-weight:750;white-space:nowrap}.rsr-extension{margin:24px 0;padding:24px;border:2px solid #bfa264;border-radius:18px;background:#fffbf2}.rsr-extension label{display:block;margin:12px 0}.rsr-extension select,.rsr-extension input[type=number]{padding:10px;max-width:100%}.rsr-extension input[type=checkbox]{margin-right:8px}.rsr-extension button{margin-top:16px}.rsr-extension-services label{padding:8px;border-bottom:1px solid #e7decf}

.rsr-cancel-service{padding:8px 12px;margin:12px 0 0;border:1px solid #bfcbbc;background:#fff;border-radius:7px;color:#37523b;font:600 13px/1.4 system-ui;cursor:pointer}.rsr-services-editor .rsr-step+.rsr-step{border-top:1px solid #d9e1d8}.rsr-services-editor .rsr-totals{position:static}#rsr-edit-services{scroll-margin-top:100px}.rsr-services-editor .rsr-alert:not([hidden]){padding:15px;margin:16px;background:#fff1dc;color:#703e12}
/* Explicit touch controls; never depend on browser-native number spinners. */
.rsr-booking .rsr-quantity{display:grid!important;grid-template-columns:minmax(0,1fr) 152px;gap:12px;min-width:0}.rsr-stepper{display:inline-grid!important;grid-template-columns:44px minmax(44px,1fr) 44px;align-items:center;width:152px;max-width:100%;gap:0;flex:none}.rsr-stepper input[type=number]{width:100%!important;max-width:100%!important;min-width:0!important;text-align:center;padding:8px 2px!important;margin:0!important;border-radius:0!important;appearance:textfield;-moz-appearance:textfield;height:44px!important}.rsr-stepper input::-webkit-inner-spin-button,.rsr-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.rsr-stepper .rsr-stepper-button{display:flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0!important;margin:0!important;font:700 24px/1 system-ui!important;border:1px solid #9aae98!important;border-radius:8px 0 0 8px!important;background:#214735!important;color:#fff!important;cursor:pointer;touch-action:manipulation}.rsr-stepper .rsr-stepper-button:last-child{border-radius:0 8px 8px 0!important}.rsr-stepper .rsr-stepper-button:disabled{opacity:.4;cursor:default}.rsr-stepper button:focus-visible{outline:3px solid #93ae42;outline-offset:2px}.rsr-booking input,.rsr-booking select,.rsr-booking textarea{max-width:100%;min-width:0}.rsr-booking .rsr-quantity>span:first-child{min-width:0;overflow-wrap:anywhere}.rsr-summary-details,.rsr-agenda,.rsr-confirmation,.rsr-economic,.rsr-area-content{min-width:0;overflow-wrap:anywhere}.rsr-saved-plan{margin:24px 0}.rsr-saved-plan>summary{cursor:pointer;padding:14px;background:#e6eddb;border-radius:10px;font-weight:700}.rsr-simple-checkout .woocommerce-additional-fields,.rsr-simple-checkout #order_comments_field,.rsr-simple-checkout .wc-block-checkout__add-note{display:none!important}
@media(max-width:680px){.rsr-booking .rsr-quantity{grid-template-columns:minmax(0,1fr) 140px;gap:8px}.rsr-stepper{width:140px}.rsr-area-content,.rsr-confirmation,.rsr-economic{max-width:100%!important}.rsr-price-table{overflow:visible!important}.rsr-stack-table,.rsr-kv-table{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;table-layout:auto}.rsr-stack-table thead,.rsr-stack-table .rsr-table-head{display:none!important}.rsr-stack-table tbody,.rsr-kv-table tbody{display:block!important;width:100%}.rsr-stack-table tr:not(.rsr-table-head){display:block!important;padding:12px;margin:0 0 12px;border:1px solid #d9e1d8;border-radius:10px;background:#fff;break-inside:avoid}.rsr-stack-table td{display:grid!important;grid-template-columns:minmax(84px,34%) minmax(0,1fr);gap:10px;width:auto!important;max-width:100%;padding:9px 0!important;white-space:normal!important;overflow-wrap:anywhere;min-width:0;border:0!important;border-bottom:1px solid #edf0e8!important;text-align:left!important}.rsr-stack-table td:before{content:attr(data-label);font-weight:700;color:#31543a}.rsr-stack-table td[colspan]{display:block!important}.rsr-stack-table td[colspan]:before{content:none}.rsr-stack-table td>*{min-width:0;max-width:100%}.rsr-kv-table tr{display:grid;grid-template-columns:1fr;gap:4px;border-bottom:1px solid #d9e1d8;padding:10px}.rsr-kv-table th,.rsr-kv-table td{display:block!important;padding:4px!important;white-space:normal!important;overflow-wrap:anywhere;width:auto!important}.rsr-money-summary>div,.rsr-account-totals>div{flex-wrap:wrap;gap:6px}.rsr-totals{grid-template-columns:1fr!important}.rsr-card-title{flex-wrap:wrap}.rsr-summary-details ul{padding-left:20px}.rsr-booking .rsr-totals>div{min-width:0}}
@media(max-width:360px){.rsr-booking .rsr-quantity{grid-template-columns:1fr}.rsr-booking .rsr-quantity .rsr-stepper{justify-self:end}}

@media(max-width:680px){.rsr-stack-table tr.rsr-total-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.rsr-stack-table .rsr-total-row th,.rsr-stack-table .rsr-total-row td{display:block!important;width:auto!important;margin:0;padding:0!important;border:0!important;background:transparent;text-align:left!important}.rsr-stack-table .rsr-total-row td:before{content:none}.rsr-stack-table .rsr-total-row td{white-space:nowrap!important}}
/* Compact reservation picker, notes and package options. */
.rsr-reservation-compact{padding:22px;margin:14px 0}.rsr-reservation-compact h3{margin:0}.rsr-reservation-compact .rsr-action-primary{display:inline-block;margin-top:8px}.rsr-observations{display:block;margin:22px 0;font-weight:700}.rsr-observations textarea{display:block;width:100%;box-sizing:border-box;margin-top:8px;font-weight:400}.rsr-pack-options{padding:18px;border:1px solid #d4decb;border-radius:14px;margin-top:20px;background:#f6f8f0}.rsr-pack-options>label{display:block;margin:18px 0}.rsr-agency-commission:not(:empty){padding:18px;border-radius:12px;background:#e7f1df;font-weight:700}.rsr-pack-preview{font-weight:700}.rsr-previous-menus[hidden]{display:none!important}
.rsr-age-dialog{border:0;border-radius:22px;padding:30px;max-width:520px;width:calc(100% - 32px);color:#193d30;box-shadow:0 24px 90px #0004}.rsr-age-dialog::backdrop{background:#132b27aa;backdrop-filter:blur(3px)}.rsr-age-dialog form{display:grid;gap:18px}.rsr-age-dialog h3,.rsr-age-dialog p{margin:0}.rsr-age-dialog small{font-weight:700;letter-spacing:.12em;color:#84682b}.rsr-age-dialog label{display:block}.rsr-age-dialog input[type=number]{display:block;width:100%;margin-top:10px;padding:12px;border:1px solid #b9cec1;border-radius:8px}.rsr-age-dialog footer{display:flex;gap:12px;flex-wrap:wrap}.rsr-age-dialog button{padding:12px 18px;border-radius:10px;border:1px solid #245443;background:white;color:#245443}.rsr-age-dialog button[type=submit]{background:#245443;color:white}.rsr-pack-banner{padding:20px;border-radius:14px;background:#eaf2df;border:1px solid #c3d6ac;color:#204431;margin:20px 0}.rsr-pack-banner strong{display:block;font-size:1.12em}
.rsr-stay-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.rsr-stay-choices>label{display:grid;grid-template-columns:22px 1fr;gap:6px 10px;border:2px solid #dce5d8;border-radius:14px;background:#fff;padding:18px;cursor:pointer}.rsr-stay-choices>label:has(input:checked){border-color:#245b3b;background:#edf5e8}.rsr-stay-choices>label:has(input:disabled){opacity:.55;cursor:not-allowed}.rsr-stay-choices input{grid-row:span 2;align-self:start;margin-top:4px;accent-color:#245b3b}.rsr-stay-choices span{grid-column:2;font-size:.9em;color:#526653}.rsr-booking .rsr-legacy-friday{display:none}.rsr-two-night-help{color:#5c633e}.rsr-stay-benefit{padding:14px;border-radius:10px;background:#e8f3df;color:#194b31;font-weight:700}.rsr-stay-details[hidden]{display:none!important}.rsr-booking [data-remove-meal]:disabled{opacity:.65;cursor:not-allowed}.rsr-pack-banner button{margin-top:8px}@media(max-width:650px){.rsr-stay-choices{grid-template-columns:1fr}}

/* Fixed-price plans share the same presentation in client, agency and sales forms. */
.rsr-package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
.rsr-booking .rsr-package-card{display:grid;grid-template-columns:22px 1fr;gap:10px 12px;padding:22px;border:2px solid #dce5d8;border-radius:16px;background:#fff;cursor:pointer;margin:0}
.rsr-package-card input{grid-column:1;grid-row:1/5;align-self:start;accent-color:#245b3b;width:18px;height:18px;margin:3px 0}
.rsr-package-card>strong,.rsr-package-card>b,.rsr-package-card>span,.rsr-package-card>em{grid-column:2}
.rsr-package-card>b{font-size:28px;line-height:1.2;color:#163c2b}.rsr-package-card small{font-size:13px;font-weight:500}
.rsr-package-card span{font-size:14px;line-height:1.6;color:#425945}.rsr-package-card em{font-size:13px;font-style:normal;font-weight:700;color:#315c24}
.rsr-package-card:has(input:checked){border-color:#245b3b;background:#edf5e8;box-shadow:0 0 0 1px #245b3b}.rsr-package-card:has(input:disabled){opacity:.55;cursor:not-allowed}
.rsr-booking .rsr-legacy-friday{display:none}
.rsr-progress{grid-template-columns:repeat(var(--rsr-step-count,6),minmax(0,1fr))}
@media(max-width:680px){.rsr-package-grid{grid-template-columns:1fr}.rsr-progress{grid-template-columns:repeat(4,minmax(0,1fr))}.rsr-booking .rsr-package-card{padding:18px}}

/* One checkout layout, independent of theme columns and duplicate product metadata. */
.rsr-checkout-shell{max-width:1160px;margin:0 auto;color:#163c2b;font:15px/1.55 system-ui,sans-serif}
.rsr-app-main .rsr-checkout-shell form.checkout{width:100%!important;max-width:none!important;margin:24px 0!important;padding:0!important;float:none!important;display:block!important}
.rsr-checkout-plan,.rsr-checkout-customer,.rsr-checkout-payment,.rsr-checkout-empty{background:#fff;border:1px solid #d9e1d8;border-radius:16px;padding:24px;margin-bottom:20px;min-width:0}
.rsr-checkout-plan-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.rsr-checkout-plan-head h2{font-size:24px!important;margin:6px 0!important;color:#214735}.rsr-checkout-plan-head p{margin:0}.rsr-checkout-plan .rsr-kicker{color:#47652f}
.rsr-checkout-plan-actions{display:flex;gap:12px;flex-wrap:wrap}.rsr-checkout-plan-actions a{padding:8px 12px;border:1px solid #bacbb6;border-radius:8px;color:#214735;font-weight:600;text-decoration:none}
.rsr-checkout-pack{padding:14px 18px;background:#f0f5e9;border-radius:10px}.rsr-checkout-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
.rsr-checkout-shell #customer_details,.rsr-checkout-shell #order_review{float:none!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;position:static!important}
.rsr-checkout-shell h2#rsr-customer-heading,.rsr-checkout-shell #order_review_heading{float:none!important;width:auto!important;font-size:22px!important;color:#214735;margin:0 0 20px!important;padding:0!important;border:0!important}
.rsr-checkout-shell .woocommerce-billing-fields>h3{display:none!important}.rsr-checkout-shell .form-row{float:none!important;width:100%!important;margin:0 0 16px!important;padding:0!important;display:block!important}
.rsr-checkout-shell label{display:block;margin-bottom:6px;font-weight:600}.rsr-checkout-shell .input-text,.rsr-checkout-shell select{width:100%;min-height:46px;padding:11px 12px;border:1px solid #b7c5b7;border-radius:8px;background:#fff;color:#182b25;font:inherit}
.rsr-checkout-shell table.rsr-checkout-money{width:100%;border-collapse:collapse;border:0;margin:0 0 20px;table-layout:auto}.rsr-checkout-money th,.rsr-checkout-money td{padding:14px 10px;border:0;border-bottom:1px solid #d9e1d8;text-align:left;vertical-align:top}.rsr-checkout-money td{text-align:right;white-space:nowrap;font-weight:700}.rsr-checkout-money small{display:block;font-size:12px;color:#526653;font-weight:400}.rsr-checkout-money .order-total{background:#edf4e5;font-size:18px}
.rsr-checkout-shell #payment{background:#f7f9f3!important;border-radius:12px}.rsr-checkout-shell #payment .payment_methods{padding:18px!important}.rsr-checkout-shell #payment .payment_methods label{display:inline}.rsr-checkout-shell #payment .place-order{padding:18px!important}.rsr-checkout-shell #place_order,.rsr-checkout-empty .button{display:block;width:100%;padding:15px 20px;background:#214735!important;color:#fff!important;border:0;border-radius:9px;font-weight:700;text-align:center;white-space:normal}
.rsr-checkout-shell .rsr-countdown{margin:16px 0;max-width:none}.rsr-checkout-shell .rsr-countdown h3{font-size:17px}.rsr-checkout-shell .rsr-countdown p{font-size:13px}.rsr-checkout-fee{font-size:12px}
@media(max-width:780px){.rsr-checkout-columns{grid-template-columns:1fr;gap:0}.rsr-checkout-plan,.rsr-checkout-customer,.rsr-checkout-payment{padding:18px}.rsr-checkout-money th,.rsr-checkout-money td{padding:12px 6px}.rsr-checkout-plan-head h2{font-size:21px!important}}
