.availability-calendar{background:var(--paper);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:20px 22px 22px}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.calendar-header button{width:34px;height:34px;border-radius:50%;border:1px solid var(--sand-300);background:var(--sand-100);color:var(--teal-900);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.calendar-header button:hover{background:var(--teal-100)}.calendar-month-label{font-family:var(--font-display);font-weight:600;font-size:1.1rem;text-transform:capitalize;color:var(--teal-900)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px}.calendar-weekdays span{text-align:center;font-size:.72rem;font-weight:700;text-transform:uppercase;color:var(--ink-500);letter-spacing:.04em}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-cell{aspect-ratio:1;border:none;border-radius:10px;background:var(--teal-100);color:var(--ink-900);font-weight:600;font-size:.85rem;cursor:pointer;transition:transform .1s ease,background .15s ease}.calendar-cell.is-empty{background:transparent;cursor:default}.calendar-cell:not(:disabled):hover{transform:scale(1.06)}.calendar-cell.status-available{background:var(--green-200);color:var(--ink-900)}.calendar-cell.status-pending{background:var(--sand-500);color:var(--ink-900)}.calendar-cell.status-confirmed{background:var(--red-200);color:var(--ink-900)}.calendar-cell.status-pending,.calendar-cell.status-confirmed{cursor:not-allowed}.calendar-cell.is-past{opacity:.35;cursor:not-allowed;background:var(--sand-100)}.calendar-cell.is-selected{background:var(--teal-700);color:var(--paper)}.calendar-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px;font-size:.8rem;color:var(--ink-700)}.calendar-legend span{display:inline-flex;align-items:center;gap:6px}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot-available{background:var(--green-200);border:1px solid var(--green-600)}.dot-pending{background:var(--sand-500)}.dot-confirmed{background:var(--red-200)}.price-table-wrap{background:var(--paper);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:24px 26px}.price-table-scroll{overflow-x:auto}.price-table{width:100%;min-width:420px;border-collapse:collapse}.price-table th{text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-500);padding:8px 10px;border-bottom:2px solid var(--sand-300);white-space:nowrap}.price-table td{padding:12px 10px;border-bottom:1px solid var(--sand-100);font-weight:600;white-space:nowrap}@media(max-width:480px){.price-table-wrap{padding:20px 0}.price-table-scroll,.price-notes{padding:0 20px}}.price-month{text-transform:capitalize;color:var(--teal-900);font-family:var(--font-display);font-weight:600}.price-notes{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:8px}.price-notes li{position:relative;padding-left:18px;font-size:.88rem;color:var(--ink-700)}.price-notes li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--gold-400)}.quote-form{background:var(--paper);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:24px 26px 28px;display:flex;flex-direction:column;gap:16px}.quote-form-dates p{margin:0;font-size:.92rem}.quote-form-hint{color:var(--ink-500)}.quote-form-error{color:var(--pink-700);font-weight:700;font-size:.85rem;margin:6px 0 0}.quote-form-privacy-note{color:var(--ink-500);font-size:.8rem;margin:0}.quote-form-privacy-note a{color:inherit;text-decoration:underline}.quote-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quote-form label{display:flex;flex-direction:column;gap:6px;font-size:.82rem;font-weight:700;color:var(--ink-700)}.quote-form input,.quote-form select,.quote-form textarea{font-family:var(--font-body);font-size:.95rem;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--sand-300);background:var(--sand-100);color:var(--ink-900);font-weight:500}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{background:var(--paper)}.quote-form-linens{border:1px solid var(--sand-300);border-radius:var(--radius-sm);background:var(--sand-100);padding:14px 16px;margin:0}.quote-form-linens legend{font-size:.82rem;font-weight:700;color:var(--ink-700);padding:0}.quote-form-linens-detail{margin:4px 0 12px;font-size:.82rem;font-weight:500;color:var(--ink-500);line-height:1.5}.quote-form-linens-options{display:flex;flex-direction:column;gap:8px}.quote-form-radio{flex-direction:row!important;align-items:center;gap:10px!important;font-size:.92rem!important}.quote-form-radio input{width:18px;height:18px;flex-shrink:0}.quote-breakdown{background:var(--teal-100);border-radius:var(--radius-sm);padding:14px 16px;display:grid;gap:6px;font-size:.9rem}.quote-breakdown>div{display:flex;justify-content:space-between;color:var(--ink-700)}.quote-breakdown-total{border-top:1px solid var(--teal-300);margin-top:6px;padding-top:8px;font-weight:800;font-size:1.05rem;color:var(--teal-900)}.quote-form-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.quote-success{background:var(--paper);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:40px 30px;text-align:center}.quote-success h3{margin-bottom:10px}@media(max-width:560px){.quote-form-grid{grid-template-columns:1fr}}.section-title-sm{font-size:1.3rem;margin-bottom:18px}.prenota-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:start}.prenota-prices{background:var(--sand-100)}@media(max-width:900px){.prenota-grid{grid-template-columns:1fr}}
