/* Availability extends the shared palette, type, buttons, and card proportions. */
.availability-hero{padding-bottom:64px}.availability-section{padding:42px 0 80px}.availability-modes{display:inline-flex;gap:7px;padding:6px;background:var(--aqua);border:1px solid var(--line);border-radius:100px;margin-bottom:30px}.availability-modes button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px 24px;border:0;border-radius:100px;background:transparent;color:var(--teal);font-weight:850}.availability-modes button[aria-pressed=true]{background:white;color:var(--pink);box-shadow:0 3px 12px #264b5410}.availability-modes .icon{width:20px}.availability-panel>h2{font-size:clamp(1.65rem,3vw,2.35rem);margin-bottom:12px}.availability-filters{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;align-items:start;background:#f4fbf9;border:1px solid var(--line);border-radius:22px;padding:24px;margin:26px 0 20px}.availability-filters>.button{margin-top:31px}.availability-filters .field{min-width:0}.availability-filters input,.availability-filters select{width:100%;min-height:50px;background:white}.unit-filters{grid-template-columns:1fr 2fr}.availability-visibility{border:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 24px;margin:10px 0 18px}.availability-visibility label{display:flex;gap:9px;align-items:center;min-height:44px;font-size:.95rem;font-weight:750;cursor:pointer}.availability-visibility input{accent-color:var(--pink);width:19px;height:19px}.availability-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;min-height:160px}.availability-result{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:white;box-shadow:var(--shadow);display:flex;flex-direction:column}.availability-result>img{width:100%;height:270px;object-fit:contain;background:var(--aqua)}.availability-result-body{padding:23px;display:flex;flex:1;flex-direction:column;align-items:start;gap:14px}.availability-result-body h3{margin:0;font-size:1.27rem}.availability-result-body .eyebrow{margin:0;font-size:.65rem}.availability-price{font-size:1.13rem;font-weight:850;color:var(--teal);margin:0}.availability-result-body .button{margin-top:auto;width:100%;font-size:.88rem}.availability-result-body small{font-size:.75rem;color:var(--muted);line-height:1.5}.availability-badge{display:inline-block;font-weight:850;font-size:.8rem;padding:7px 11px;border-radius:9px}.status-free{color:#166657;background:#e9f7ee}.status-busy{color:#8d3150;background:#faedf2}.status-manual{color:#76551c;background:#fff5d9}.status-past{color:#757c7c;background:#f0f2f2}.availability-notice{background:#fff8e6;border:1px solid #e9dba9;border-radius:16px;padding:18px 22px;margin:18px 0 24px}.availability-notice p{color:#76551c;margin:0}.availability-notice .text-link{color:#70501b}.availability-empty{grid-column:1/-1;background:#f4fbf9;border:1px dashed #bedbd5;border-radius:18px;padding:28px}.availability-calendar-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:28px;align-items:start}.calendar-card{border:1px solid var(--line);border-radius:24px;padding:24px;min-width:0;background:white}.month-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:24px}.month-toolbar h3{margin:0;font-size:1.38rem;text-transform:capitalize;text-align:center}.month-toolbar .circle-button{width:46px;height:46px;flex-shrink:0}.month-toolbar button:disabled{cursor:default}.calendar-legend{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.calendar-legend span{font-size:.76rem;font-weight:800;padding:5px 9px;border-radius:7px}.calendar-help{font-size:.8rem;line-height:1.6;margin:0 0 12px}#calendar-status{font-size:.85rem;min-height:44px;line-height:1.5;margin:0 0 10px}.calendar-weekdays,.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-week{margin-top:6px}.calendar-weekdays{margin-bottom:12px;color:var(--muted);font-size:.75rem;font-weight:800;text-align:center}.calendar-cell{min-width:0}.calendar-day{border:1px solid transparent;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:64px;border-radius:11px;padding:7px 2px;gap:1px;transition:box-shadow .15s,background .15s}.calendar-day:disabled{opacity:1;cursor:default}.calendar-day.status-past{background:#f5f6f6;color:#8a9292}.calendar-day.status-busy{background:repeating-linear-gradient(135deg,#faedf2,#faedf2 5px,#f6e6ed 5px,#f6e6ed 6px)}.calendar-day[aria-pressed=true]{border:2px solid var(--pink);background:#fff0f6;box-shadow:0 0 0 2px #e23c8520;color:#a41f59}.calendar-day[aria-current=date] .day-number{text-decoration:underline;text-underline-offset:3px}.calendar-day:not(:disabled):hover{box-shadow:0 0 0 2px var(--teal)}.day-number{font-size:1rem;font-weight:850}.day-status{font-size:.82rem;line-height:1}.date-selection{background:#f4fbf9;border:1px solid var(--line);border-radius:24px;padding:24px;display:flex;flex-direction:column;align-items:start;gap:16px;min-height:190px}.date-selection>img{width:100%;height:235px;object-fit:contain;border-radius:15px;background:#eaf5f0}.date-selection h3,.date-selection p{margin:0}.date-selection .eyebrow{font-size:.69rem}.date-selection .button{width:100%;text-align:center}.date-selection small{color:var(--muted);line-height:1.5}.selected-event-date{font-size:1.15rem;font-weight:850;color:var(--ink)}.availability-footnote{margin:30px 0 8px;font-size:.85rem}.availability-inquiry{font-size:.85rem;font-weight:750}.availability-section .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.availability-results{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-calendar-layout{grid-template-columns:1fr}.date-selection{display:grid;grid-template-columns:150px 1fr;gap:12px 22px}.date-selection>img{grid-column:1;grid-row:1/7;height:210px}.date-selection>*:not(img){grid-column:2}.availability-filters{grid-template-columns:1fr 1fr}.availability-filters>.button{grid-column:1/-1;margin-top:0;width:100%}.unit-filters{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.availability-section{padding-top:26px}.availability-modes{display:flex;width:100%;gap:3px;border-radius:18px}.availability-modes button{flex:1;padding:10px 8px;border-radius:13px;gap:6px;font-size:.82rem}.availability-modes .icon{width:17px}.availability-filters{padding:18px;grid-template-columns:1fr;gap:14px}.unit-filters{grid-template-columns:1fr}.availability-results{grid-template-columns:1fr}.availability-result>img{height:280px}.calendar-card{padding:14px 10px;border-radius:20px}.month-toolbar{gap:8px;margin-bottom:18px}.month-toolbar h3{font-size:1.12rem}.calendar-legend{gap:6px}.calendar-legend span{font-size:.68rem;padding:5px 7px}.calendar-weekdays,.calendar-week{gap:4px}.calendar-day{min-height:59px;border-radius:8px}.calendar-weekdays{font-size:.65rem}.date-selection{padding:20px;display:flex}.date-selection>img{height:225px}.availability-visibility{gap:0 16px}.availability-visibility label{font-size:.83rem}.availability-notice{padding:16px}.availability-footnote{line-height:1.6}}
