.contact{background:transparent;position:relative;overflow-x:hidden}.contact:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(74,124,89,.3),transparent)}.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:stretch}.contact__grid>*{height:100%}.contact__form-wrapper{height:100%;display:flex;flex-direction:column}.contact__form{display:flex;flex-direction:column;gap:1rem;flex:1}.contact__form textarea{flex:1}.contact__response-hint{font-size:.85rem;color:var(--text-secondary);opacity:.7;margin-top:-2.5rem;margin-bottom:3rem}.contact__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact__form input,.contact__form textarea{background:var(--gray-dark);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.75rem 1rem;color:var(--text-primary);font-size:.9rem;transition:border-color var(--transition-fast);width:100%}.contact__form input:focus,.contact__form textarea:focus{border-color:var(--green-moss);box-shadow:0 0 10px #4a7c5926}.contact__form textarea{resize:none;min-height:120px}.contact__actions{margin-top:1rem}.contact__grid>:last-child{grid-column:2;grid-row:1}.contact__form .btn:disabled{opacity:.6;cursor:not-allowed}.contact__success{color:var(--green-sage);font-weight:500}.contact__error{color:#e57373;font-weight:500}@media(max-width:968px){.contact__grid{grid-template-columns:1fr;align-items:start}.contact__grid>*{height:auto}.contact__grid>:last-child{grid-column:auto;grid-row:auto}}@media(max-width:480px){.contact__row{grid-template-columns:1fr}}.appointment{background:var(--bg-secondary);border-radius:16px;border:1px solid var(--glass-border);padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.appointment__header{text-align:center}.appointment__phone-badge{display:inline-flex;align-items:center;gap:.5rem;background:#4a7c5926;color:var(--green-sage);padding:.4rem 1rem;border-radius:20px;font-size:.8rem;font-weight:500;margin-bottom:.75rem}.appointment__phone-badge svg{font-size:.9rem}.appointment__title{font-family:var(--font-heading);font-size:1.4rem;font-weight:600;margin:0 0 .5rem;color:var(--text-primary)}.appointment__desc{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.5}.appointment__calendar{background:var(--bg-primary);border-radius:12px;border:1px solid rgba(255,255,255,.05);padding:1.25rem}.appointment__cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.appointment__cal-month{font-weight:600;font-size:1rem;color:var(--text-primary);text-transform:capitalize}.appointment__cal-arrow{background:none;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-secondary);width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.appointment__cal-arrow:hover:not(:disabled){border-color:var(--green-moss);color:var(--green-sage)}.appointment__cal-arrow:disabled{opacity:.3;cursor:not-allowed}.appointment__cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.appointment__cal-dayname{font-size:.7rem;font-weight:600;color:var(--text-secondary);text-align:center;padding:.4rem 0;text-transform:uppercase;letter-spacing:.05em}.appointment__cal-empty{aspect-ratio:1}.appointment__cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;background:none;color:var(--text-primary);font-size:.85rem;cursor:pointer;transition:all var(--transition-fast)}.appointment__cal-day:hover:not(.disabled):not(.selected){background:#4a7c5926;border-color:var(--green-moss)}.appointment__cal-day.today{border-color:#ffffff26;font-weight:600}.appointment__cal-day.selected{background:var(--green-moss);color:var(--white-pure);font-weight:600;border-color:var(--green-moss)}.appointment__cal-day.disabled{opacity:.25;cursor:not-allowed}.appointment__slots-section{animation:slideDown .3s ease}.appointment__slots-label{font-size:.9rem;color:var(--text-secondary);margin:0 0 .75rem}.appointment__slots-label strong{color:var(--text-primary);text-transform:capitalize}.appointment__slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.appointment__slot{padding:.6rem .5rem;border-radius:8px;background:var(--bg-primary);border:1px solid rgba(255,255,255,.08);color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-align:center}.appointment__slot:hover{border-color:var(--green-moss);color:var(--text-primary);background:#4a7c591a}.appointment__slot.selected{background:var(--green-forest);border-color:var(--green-moss);color:var(--white-pure);box-shadow:0 0 12px #4a7c594d}.appointment__form{display:flex;flex-direction:column;gap:.75rem;animation:slideDown .3s ease}.appointment__form-summary{display:flex;align-items:center;gap:.6rem;background:#4a7c591a;border:1px solid rgba(74,124,89,.2);border-radius:10px;padding:.75rem 1rem;color:var(--green-sage);font-size:.9rem;font-weight:500}.appointment__form-icon{flex-shrink:0;font-size:1.1rem}.appointment__form-summary span{text-transform:capitalize}.appointment__row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.appointment__form input,.appointment__form textarea{background:var(--bg-primary);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.75rem 1rem;color:var(--text-primary);font-size:.9rem;font-family:var(--font-body);transition:border-color var(--transition-fast);width:100%}.appointment__form input:focus,.appointment__form textarea:focus{border-color:var(--green-moss);outline:none;box-shadow:0 0 10px #4a7c5926}.appointment__form textarea{resize:vertical;min-height:80px}.appointment__form .btn{align-self:stretch}.appointment__form .btn:disabled{opacity:.5;cursor:not-allowed}.appointment__locale-row{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.appointment__locale-icon{flex-shrink:0;font-size:1rem;color:var(--text-secondary)}.appointment__locale-select{background:var(--bg-primary);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.5rem .75rem;color:var(--text-primary);font-size:.85rem;font-family:var(--font-body);cursor:pointer;margin-left:auto;transition:border-color var(--transition-fast)}.appointment__locale-select:focus{border-color:var(--green-moss);outline:none}.appointment__loading{display:flex;align-items:center;gap:.75rem;font-size:.85rem;color:var(--text-secondary);padding:1rem 0}.appointment__spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.1);border-top-color:var(--green-moss);border-radius:50%;animation:spin .8s linear infinite}.appointment__no-slots{font-size:.85rem;color:var(--text-secondary);text-align:center;padding:1rem;background:var(--bg-primary);border-radius:8px}.appointment__success{background:#4a7c5926;border:1px solid rgba(74,124,89,.3);border-radius:10px;padding:1rem;color:var(--green-sage);font-weight:500;text-align:center;font-size:.9rem}.appointment__error{color:#e57373;font-weight:500;text-align:center}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.appointment{padding:1.5rem}.appointment__slot-grid{grid-template-columns:repeat(3,1fr)}.appointment__row{grid-template-columns:1fr}}@media(max-width:480px){.appointment{padding:1.25rem}.appointment__slot-grid{grid-template-columns:repeat(2,1fr)}.appointment__cal-grid{gap:2px}.appointment__cal-day{font-size:.8rem}}.contact__title-row[data-astro-cid-zbjjch6a]{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1.5rem;flex-wrap:wrap;margin-bottom:1rem}.contact__title-row[data-astro-cid-zbjjch6a] .section-title[data-astro-cid-zbjjch6a]{margin-bottom:0}@media(min-width:969px){.contact__title-row[data-astro-cid-zbjjch6a]{display:grid;grid-template-columns:1fr 1fr;column-gap:3rem;align-items:center}.contact__call[data-astro-cid-zbjjch6a]{justify-self:center}}.contact__header[data-astro-cid-zbjjch6a] .section-subtitle[data-astro-cid-zbjjch6a]{margin-bottom:.75rem}.contact__call[data-astro-cid-zbjjch6a]{font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap}.contact__header[data-astro-cid-zbjjch6a]+.contact__response-hint[data-astro-cid-zbjjch6a]{margin-top:.5rem;margin-bottom:2.5rem}
