.departure-calendar-page{padding-bottom:72px}
.departure-calendar-content{padding-top:28px}
.departure-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;margin-bottom:22px;padding:24px;border:1px solid var(--line);border-radius:18px;background:#f8fafc}
.departure-toolbar h2,.departure-widget-heading h2{margin:6px 0 4px;color:var(--ink-deep);font-size:clamp(1.5rem,2.3vw,2rem);letter-spacing:-.035em}
.departure-toolbar p,.departure-widget-heading p{margin:0;color:var(--muted);font-size:var(--public-text-sm,.9375rem);line-height:1.6}
.departure-filters{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
.departure-quick{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.departure-quick>span{margin-right:3px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.departure-filter-pill{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:9px 14px;border:1px solid #d5e0ea;border-radius:999px;background:#fff;color:#526b80;font:inherit;font-size:var(--public-text-sm,.9375rem);font-weight:650;line-height:1.25;white-space:nowrap;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.departure-filter-pill:hover{border-color:#9db8d2;background:#f1f6fb;color:var(--ink)}
.departure-filter-pill:focus-visible{outline:3px solid #526b80;outline-offset:3px;box-shadow:none}
.departure-filter-pill.is-active{border-color:var(--primary);background:var(--primary);color:#fff}
.departure-filter-pill.is-active:hover{background:#1d4c9f;color:#fff}
.departure-filters.is-custom .departure-quick{display:none}
.departure-custom{position:relative;min-width:184px}
.departure-custom summary{display:flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border:1px solid #d5e0ea;border-radius:999px;background:#fff;color:#526b80;font-size:12px;font-weight:650;cursor:pointer;list-style:none;white-space:nowrap}
.departure-custom summary::-webkit-details-marker{display:none}
.departure-custom summary::after{content:'+';margin-left:8px;color:var(--primary);font-size:15px;font-weight:400;line-height:1}
.departure-custom[open] summary{border-color:#9db8d2;background:#f1f6fb;color:var(--primary)}
.departure-custom[open] summary::after{content:'−'}
.departure-custom form{position:absolute;z-index:4;right:0;top:calc(100% + 8px);display:grid;grid-template-columns:repeat(2,minmax(125px,1fr));gap:10px;width:min(390px,calc(100vw - 32px));padding:15px;border:1px solid #dbe5ed;border-radius:14px;background:#fff;box-shadow:0 14px 35px #17314f1c}
.departure-custom label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.departure-custom input{width:100%;min-height:36px;padding:7px 8px;border:1px solid #cfdce7;border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:12px}
.departure-custom input:focus{border-color:#8493a1;outline:none;box-shadow:none}
.departure-custom .btn{min-height:36px;grid-column:1/-1;justify-content:center}
.departure-reset{display:none;min-height:30px;padding:5px 8px;border:0;background:transparent;color:var(--primary);font:inherit;font-size:11px;font-weight:650;cursor:pointer;white-space:nowrap}
.departure-filters.is-custom .departure-reset{display:inline-flex;align-items:center}
.departure-reset:hover,.departure-reset:focus-visible{text-decoration:underline;outline:none}
.departure-board{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 30px #17314f0d}
.departure-loading-status{padding:12px 16px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;text-align:center}
.departure-board-head,.departure-row{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1.2fr) 95px 165px 150px;gap:16px}
.departure-board-head{align-items:center;padding:12px 18px;border-bottom:1px solid #e5edf3;background:#f5f8fb;color:#8494a3;font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.departure-board-body{min-width:0}
.departure-day-divider{display:flex;align-items:center;justify-content:flex-start;padding:13px 18px;border-bottom:1px solid #edf2f6;background:#fbfcfd;color:var(--primary)}
.departure-day-divider strong{font-size:13px;font-weight:750}
.departure-row{align-items:center;min-width:0;padding:15px 18px;border-bottom:1px solid #edf2f6;background:#fff;color:var(--ink);text-decoration:none;transition:background .18s ease,box-shadow .18s ease}
.departure-row:last-child{border-bottom:0}
.departure-row:hover{background:#f8fbff;box-shadow:inset 3px 0 0 #cbd5df;color:var(--ink)}
.departure-row:focus-visible{outline:3px solid #526b80;outline-offset:2px;box-shadow:inset 3px 0 0 #cbd5df}
.departure-place{display:flex;align-items:baseline;gap:8px;min-width:0}
.departure-place strong{min-width:0;overflow-wrap:anywhere;white-space:normal;color:var(--ink-deep);font-size:13px}
.departure-place small{flex:0 0 auto;color:var(--muted);font-size:11px;white-space:nowrap}
.departure-destination{min-width:0;overflow:hidden;color:#526b80;font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.departure-duration,.departure-price{min-width:0;color:var(--muted);font-size:12px}
.departure-duration{font-weight:650;color:var(--ink)}
.departure-price{font-weight:700;color:#a06c24;white-space:nowrap}
.departure-action{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;color:var(--primary);font-size:12px;font-weight:700;white-space:nowrap}
.departure-action .departure-arrow{display:inline-flex;transition:transform .18s ease}
.departure-row:hover .departure-arrow,.departure-row:focus-visible .departure-arrow{transform:translateX(3px)}
.departure-load-more{display:flex;margin:18px auto 20px}
.departure-empty{display:grid;place-items:center;gap:10px;padding:40px 20px;color:var(--muted);font-size:12px;text-align:center}
.departure-empty strong{color:var(--ink);font-size:13px}
.departure-calendar-note{max-width:760px;margin:18px 2px 0;color:var(--muted);font-size:var(--public-text-sm,.9375rem);line-height:1.65}
.departure-widget{padding-top:44px;padding-bottom:44px}
.departure-widget-shell{padding:24px;border:1px solid var(--line);border-radius:20px;background:#f8fafc}
.departure-widget-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.departure-widget .departure-filters{flex:0 0 auto}
.departure-widget .departure-board{border-radius:14px;box-shadow:none}
.departure-widget .departure-board-head,.departure-widget .departure-row{grid-template-columns:minmax(0,1.35fr) minmax(0,1.15fr) 80px 135px 130px}
.departure-widget .departure-board-compact .departure-board-head,.departure-widget .departure-board-compact .departure-row{grid-template-columns:minmax(0,1.35fr) minmax(0,1.15fr) 80px minmax(0,1fr) 24px}
.departure-widget .departure-board-compact .departure-price{padding-right:10px;white-space:normal;overflow-wrap:anywhere}
.departure-widget .departure-widget-arrow{justify-self:end;color:var(--primary);font-size:1.2rem;line-height:1;transition:transform .18s ease}
.departure-widget .departure-row:hover .departure-widget-arrow,.departure-widget .departure-row:focus-visible .departure-widget-arrow{transform:translateX(3px)}
.departure-widget .departure-board-head{padding:11px 16px}
.departure-widget .departure-row{padding:13px 16px}
.departure-widget .departure-action{font-size:var(--public-text-sm,.9375rem)}
.departure-widget-footer{display:flex;justify-content:flex-end;margin-top:16px}
.departure-widget-footer .btn{display:inline-flex;align-items:center;gap:7px}
.is-loading{cursor:progress}
.is-loading .departure-board-body{opacity:.5;transition:opacity .15s ease}
.public-site .departure-day-divider{padding:13px 16px;font-size:1.125rem;line-height:1.35}
.public-site .departure-row .departure-place strong{font-size:1rem;line-height:1.45}
.public-site .departure-row .departure-place small{font-size:var(--public-text-sm,.9375rem);line-height:1.45}
.public-site .departure-row .departure-destination{font-size:1rem}
.public-site .departure-row .departure-duration{font-size:var(--public-text-sm,.9375rem)}
.public-site .departure-row .departure-price{font-size:1.125rem}
.public-site .departure-row .departure-action{min-height:44px;font-size:var(--public-text-md,1rem)}
.public-site .departure-custom summary{min-height:46px;font-size:var(--public-text-sm,.9375rem)}
.public-site .departure-custom label{font-size:var(--public-text-sm,.9375rem)}
.public-site .departure-custom input{min-height:44px;font-size:var(--public-text-md,1rem)}
@media(max-width:1050px){.departure-toolbar{grid-template-columns:1fr;gap:18px}.departure-filters{justify-content:flex-start}.departure-quick{justify-content:flex-start}.departure-widget-heading{align-items:flex-start;flex-direction:column;gap:14px}.departure-widget .departure-filters{width:100%}}
@media(max-width:900px){.departure-board-head{display:none}.departure-row,.departure-widget .departure-row{grid-template-columns:minmax(0,1fr) 72px 24px;gap:8px;padding:13px 14px}.departure-row .departure-place{grid-column:1/3;grid-row:1}.departure-row .departure-destination{grid-column:1/3;grid-row:2}.departure-row .departure-duration{grid-column:1;grid-row:3;color:var(--muted);font-size:11px}.departure-row .departure-price{grid-column:1;grid-row:4;padding-top:3px}.departure-row .departure-action{grid-column:2/4;grid-row:3/5;align-self:center;justify-self:end;font-size:11px}.departure-day-divider{padding:10px 14px}.departure-widget .departure-row{grid-template-columns:minmax(0,1fr) 24px}.departure-widget .departure-action{grid-column:2;grid-row:1/5;font-size:0}.departure-widget .departure-action .departure-arrow{font-size:1.3rem}.departure-widget .departure-duration{grid-column:1;grid-row:3}.departure-widget .departure-price{grid-column:1;grid-row:4}.departure-widget-shell{padding:20px}}
@media(max-width:900px){.departure-widget .departure-board-compact .departure-row{grid-template-columns:minmax(0,1fr) 28px}.departure-widget .departure-board-compact .departure-widget-arrow{grid-column:2;grid-row:1/5;align-self:center;justify-self:end;margin-left:8px}}
@media(max-width:600px){.departure-toolbar{padding:18px}.departure-filters{display:block}.departure-quick{justify-content:flex-start}.departure-quick>span{display:block;width:100%;margin:0 0 3px}.departure-custom{width:100%;margin-top:9px}.departure-custom summary{justify-content:flex-start}.departure-custom form{position:static;width:100%;margin-top:8px;box-shadow:none}.departure-reset{margin-top:6px;padding-left:0}.departure-widget{padding-top:28px;padding-bottom:28px}.departure-widget-shell{padding:16px;border-radius:16px}.departure-widget-footer{justify-content:stretch}.departure-widget-footer .btn{width:100%;justify-content:center}}
@media(max-width:480px){.departure-row{padding:12px}.departure-place{display:grid;gap:2px}.departure-place small{font-size:10px}.departure-action{font-size:10px}.departure-widget .departure-action .departure-arrow{font-size:1.2rem}}
@media(max-width:900px){.public-site .departure-row .departure-duration{font-size:var(--public-text-sm,.9375rem)}}
@media(max-width:480px){.public-site .departure-row .departure-place small{font-size:var(--public-text-sm,.9375rem)}}
@media(max-width:900px){
 .public-site .departure-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;padding:16px 14px;align-items:start}
 .public-site .departure-row .departure-place{grid-column:1;grid-row:1;display:grid;gap:2px;align-items:start}
 .public-site .departure-row .departure-destination{grid-column:1;grid-row:2;white-space:normal;line-height:1.45}
 .public-site .departure-row .departure-duration{grid-column:1;grid-row:3;padding-top:2px}
 .public-site .departure-row .departure-price{grid-column:1;grid-row:4;padding-top:0}
 .public-site .departure-row .departure-action{grid-column:2;grid-row:1 / 5;align-self:center;justify-self:end;width:44px;min-height:44px;font-size:0!important;justify-content:center;white-space:nowrap}
 .public-site .departure-row .departure-action .departure-arrow{font-size:1.35rem}
 .public-site .departure-widget .departure-row{grid-template-columns:minmax(0,1fr) 44px;gap:6px 10px;padding:14px}
 .public-site .departure-widget .departure-board-compact .departure-row{grid-template-columns:minmax(0,1fr) 28px;gap:6px 12px;padding:14px}
 .public-site .departure-widget .departure-board-compact .departure-price{grid-column:1;grid-row:4;padding-right:8px;white-space:normal;overflow-wrap:anywhere}
 .public-site .departure-widget .departure-board-compact .departure-widget-arrow{grid-column:2;grid-row:1/5;align-self:center;justify-self:end;margin-left:8px}
 .public-site .departure-widget .departure-action{grid-column:2;grid-row:1 / 5;width:44px;min-height:44px;font-size:0!important;justify-content:center}
 .public-site .departure-widget .departure-action .departure-arrow{font-size:1.35rem}
 .public-site .departure-widget .departure-duration{grid-column:1;grid-row:3}
 .public-site .departure-widget .departure-price{grid-column:1;grid-row:4}
}
@media(max-width:600px){
 .public-site .departure-day-divider{padding:12px 14px;font-size:1.0625rem}
 .public-site .departure-widget-shell{padding:14px}
 .public-site .departure-widget .departure-row{padding:14px 12px}
}