.tour-calendar{margin:0 0 56px;scroll-margin-top:calc(var(--header) + 24px)}
.tour-main-content{width:100%;min-width:0}#itinerary{scroll-margin-top:calc(var(--header) + 24px)}
.tour-calendar{margin:38px 0 40px}.calendar-box{max-width:560px;padding:20px}.calendar-heading h2{font-size:30px}.calendar-help{font-size:16px;margin-bottom:18px}.calendar-day{height:46px;gap:4px}.calendar-day span{font-size:16px}.calendar-toolbar{margin-bottom:16px}.calendar-toolbar h3{font-size:19px}.calendar-toolbar>button{width:36px;height:36px;font-size:20px}.calendar-weekdays{font-size:13px}.calendar-legend{font-size:13px;padding-top:17px;gap:10px 17px}.calendar-note{font-size:14px}.calendar-period{font-size:18px}
.calendar-heading h2{font-size:clamp(30px,3vw,42px);line-height:1.15;margin:10px 0 14px}.calendar-help{font-size:18px;line-height:1.5;color:#596465;max-width:500px;margin:0 0 22px}
.calendar-box{border:1px solid #d8dfd9;background:#fff;border-radius:14px;padding:26px;max-width:680px;box-shadow:0 10px 35px #14281c05}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.calendar-toolbar h3{font-size:22px;text-transform:capitalize;margin:0}.calendar-toolbar>button{border:1px solid #d4ddd6;border-radius:50%;width:42px;height:42px;background:white;font-size:22px;cursor:pointer}.calendar-toolbar>button:disabled{opacity:.3;cursor:default}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.calendar-weekdays{text-align:center;font-size:14px;color:#69736c;margin:0 0 10px;font-weight:600}
.calendar-day{height:60px;min-width:0;border:1px solid transparent;border-radius:9px;background:#f2f4f1;color:#18251f;font-family:inherit;font-weight:600;font-size:19px;line-height:1.2;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;position:relative}.calendar-day span{font-size:19px}.calendar-day i{width:5px;height:5px;border-radius:50%;display:block;background:#8c9790}.calendar-day.free{background:#e9f3e8;color:#244c32}.calendar-day.free i,.calendar-legend i.free{background:#4e8155}.calendar-day.busy{background:#f3eae7;color:#886b63;cursor:not-allowed}.calendar-day.busy span{text-decoration:line-through}.calendar-day.busy i,.calendar-legend i.busy{background:#a66e60}.calendar-day.request i,.calendar-legend i.request{background:#8c9790}.calendar-day.past,.calendar-day.none{background:#fff;color:#b9bfbb;cursor:default}.calendar-day.past i,.calendar-day.none i{visibility:hidden}.calendar-day:hover:not(:disabled){border-color:#6b8c74}.calendar-day.in-range{background:#dfece1;border-color:#8bab91}.calendar-day.range-start{background:#203c2a;color:#fff;border-color:#203c2a}.calendar-day.range-start i{background:#fff}.calendar-day:focus-visible,.calendar-toolbar button:focus-visible{outline:2px solid #365c41;outline-offset:3px}
.calendar-legend{display:flex;gap:12px 20px;flex-wrap:wrap;padding-top:22px;font-size:14px;color:#46554b}.calendar-legend span{display:flex;align-items:center;gap:7px}.calendar-legend i{width:9px;height:9px;border-radius:50%}.calendar-note{font-size:15px;line-height:1.55;color:#657069;margin:16px 0 0}.calendar-selection{border-top:1px solid #d9e0da;margin-top:21px;padding-top:21px}.calendar-selection[hidden]{display:none}.calendar-period{font-size:20px;font-weight:650;line-height:1.4;display:block}.calendar-selection-status{font-size:15px;line-height:1.5;color:#5a685e;margin:9px 0 17px}.calendar-request{width:100%;font-size:15px;min-height:52px}.price-calendar-link{display:flex;align-items:center;gap:12px;margin:15px 0 17px;border:1px solid #cfd9d1;padding:12px 14px;border-radius:7px;font-size:16px;line-height:1.4}.price-calendar-link svg{width:22px;height:22px;flex:none}.price-calendar-link:hover{background:#eaf0e9}
@media(max-width:760px){.calendar-box{padding:19px}.calendar-day{height:48px}.calendar-grid,.calendar-weekdays{gap:4px}.calendar-day span{font-size:17px}.calendar-toolbar h3{font-size:19px}.calendar-toolbar{gap:8px}.calendar-help{font-size:17px}.calendar-legend{font-size:13px;gap:10px 13px}.calendar-period{font-size:18px}}
