.calendar-section{padding:75px 5% 85px;border-bottom:1px solid var(--line);scroll-margin-top:30px}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:35px;max-width:1450px;margin:auto}.calendar-surface{background:#fff;border:1px solid #dde2d8;border-radius:12px;padding:30px;min-width:0}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px}.calendar-kicker{font-size:12px;letter-spacing:1.3px;color:#71816c;margin-bottom:7px}.calendar-toolbar h3{font:400 32px Georgia,serif;margin:0}.month-nav{display:flex;gap:8px}.month-nav button{width:42px;height:42px;border:1px solid #d9dfd3;border-radius:50%;background:#fff;font-size:20px;color:#284435}.calendar-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin:25px 0;font-size:12px;color:#546250}.calendar-legend span{display:flex;gap:7px;align-items:center}.calendar-legend i{width:11px;height:11px;border:1px solid #c8d4c3;border-radius:3px}.key-free{background:#eff4eb}.key-sale{background:#f5dcab!important;border-color:#d2ad69!important}.key-busy{background:#e4e6e1!important}.key-selected{background:#294b38!important}.months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.calendar-month h4{font-size:17px;font-weight:500;text-transform:capitalize;margin:0 0 19px}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.weekdays{margin-bottom:9px;font-size:12px;color:#76816f;text-align:center}.calendar-day{position:relative;min-height:63px;border-radius:6px;padding:8px 2px 5px;border:1px solid #e1e8dc;background:#f5f8f1;color:#354936;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:6px;min-width:0}.calendar-day:hover:not(:disabled){border-color:#476345;box-shadow:0 0 0 1px #476345}.day-number{font-size:15px;font-weight:600}.day-price{font-size:10px;white-space:nowrap}.day-discount{font-size:9px;color:#895e20}.calendar-day.sale{background:#fff2d9;border-color:#e8ce99}.calendar-day.occupied{background:repeating-linear-gradient(135deg,#f0f1ee,#f0f1ee 5px,#e7eae4 5px,#e7eae4 6px);color:#899083}.calendar-day.occupied .day-number{text-decoration:line-through}.calendar-day.past{background:#fafbf9;border-color:transparent;color:#b5bbae;cursor:default}.calendar-day.selected{background:#294b38;color:white;border-color:#294b38}.calendar-day.selected .day-discount{color:#e4cf9f}.calendar-day.in-range{background:#e1ebdb;border-color:#c3d2b8}.calendar-day.checkout-only{border-bottom:3px solid #355b41;color:#34533a}.calendar-day.checkout-only.selected{color:#fff}.calendar-feedback{font-size:14px;color:#9b5733;line-height:1.6;margin-top:15px;min-height:23px}.calendar-help{font-size:12px;line-height:1.7;color:#73816d;margin-top:7px}.stay-summary{background:#e9ecdf;border:1px solid #d9dfcf;border-radius:12px;padding:28px;align-self:start;position:sticky;top:24px}.stay-summary h3{font:400 30px Georgia,serif;margin:0 0 10px}.stay-summary .summary-caption{font-size:14px;color:#73806b;line-height:1.6;margin-bottom:25px}.summary-dates{display:grid;grid-template-columns:1fr 1fr;gap:14px;border-top:1px solid #cbd4c1;border-bottom:1px solid #cbd4c1;padding:19px 0}.summary-dates span{font-size:12px;color:#73806b;display:block;margin-bottom:6px}.summary-dates strong{font-size:14px;font-weight:500}.summary-guests{display:flex;align-items:center;justify-content:space-between;font-size:14px;margin:22px 0;gap:10px}.summary-guests select{border:1px solid #cbd4c1;background:#f7f8f1;padding:10px;border-radius:5px;max-width:115px}.quote-empty{color:#6a7863;font-size:14px;line-height:1.8}.quote-total{border-top:1px solid #cbd4c1;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:10px}.quote-total strong{font:400 28px Georgia,serif}.quote-row{display:flex;justify-content:space-between;gap:12px;font-size:14px;line-height:1.7;margin:10px 0}.quote-saving{color:#6c672e}.quote-note{font-size:12px;color:#6c7765;line-height:1.7;margin-top:18px}.quote-error{color:#954724;background:#fff3e8;padding:14px;border-radius:6px;font-size:14px;line-height:1.7}.demo-banner{padding:11px 18px;background:#fff0cc;border:1px solid #e4d3a1;border-radius:6px;color:#755b24;font-size:13px;line-height:1.7;margin-bottom:20px}.calendar-loading,.calendar-error{grid-column:1/-1;padding:35px 0;font-size:15px;line-height:1.8}.calendar-error button{display:block;margin-top:15px}.summary-reset{display:block;background:none;text-decoration:underline;color:#65745d;font-size:13px;margin-top:20px;padding:0}.quote-details{font-size:12px;margin-top:15px;color:#5d6b54}.quote-details summary{cursor:pointer}.quote-details ul{padding:0;list-style:none}.quote-details li{display:flex;justify-content:space-between;margin-top:8px}.summary-indicator{font-size:12px;color:#6c7765;margin-top:12px}@media(max-width:1200px){.calendar-layout{grid-template-columns:minmax(0,1fr) 260px;gap:20px}.calendar-surface{padding:20px}.months{gap:16px}.calendar-day{min-height:61px}.day-price{font-size:9px}.stay-summary{padding:22px}}@media(max-width:980px){.calendar-layout{grid-template-columns:1fr}.stay-summary{position:static}.calendar-section{padding:45px 5%}.day-price{font-size:11px}.calendar-day{min-height:70px}}@media(max-width:650px){.months{grid-template-columns:1fr;gap:30px}.calendar-toolbar h3{font-size:27px}.calendar-surface{padding:18px 12px}.calendar-kicker{font-size:10px}.calendar-legend{gap:12px;font-size:11px}.calendar-day{min-height:66px}.calendar-section{padding:35px 4%}.day-price{font-size:10px}.calendar-layout{gap:16px}.month-nav button{width:36px;height:36px}.summary-dates strong{font-size:16px}}

.ev-plans{border:0;border-top:1px solid #cbd4c1;padding:22px 0;margin:0 0 15px}.ev-plans legend{float:left;width:100%;font-size:14px;line-height:1.6;font-weight:600;margin:0 0 12px}.ev-choices{clear:both;display:flex;gap:12px}.ev-choices label{display:flex;align-items:center;gap:8px;padding:10px 17px;border:1px solid #cbd4c1;background:#f7f8f1;border-radius:5px;font-size:14px;cursor:pointer}.ev-choices input{accent-color:#294b38}.ev-plans>label{display:block;font-size:13px;line-height:1.7;margin-top:16px}.ev-plans>label[hidden]{display:none}.ev-plans input[type=number]{width:100%;box-sizing:border-box;border:1px solid #cbd4c1;background:#f7f8f1;border-radius:5px;padding:10px;margin-top:8px;color:#294b38;font-size:16px}.ev-plans>p{font-size:12px;line-height:1.7;color:#6c7765;margin-top:14px}
