.appointment-page{max-width:1240px;margin:auto;padding:40px 40px 90px}.appointment-back{font-size:13px;text-decoration:underline;text-underline-offset:4px;display:inline-block;margin-bottom:40px}.appointment-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:start}.appointment-intro h1{font-size:clamp(38px,4vw,56px);letter-spacing:-.045em;line-height:1.06;margin:20px 0}.appointment-description{font-size:17px;color:var(--muted);line-height:1.6;max-width:400px}.appointment-project{margin-top:32px;border-radius:20px;overflow:hidden;background:#f3f6ef}.appointment-project img{display:block;width:100%;height:230px;object-fit:cover}.appointment-project>div{padding:22px 25px}.appointment-project span{font-size:12px;color:var(--muted)}.appointment-project h2{font-size:24px;margin:8px 0 12px}.appointment-project a{font-size:12px;text-decoration:underline;text-underline-offset:3px}.appointment-card{background:#f7f9f3;border:1px solid #e0e6dc;border-radius:24px;padding:34px}.appointment-card h2{font-size:29px;letter-spacing:-.035em;line-height:1.15;margin:14px 0 26px}.appointment-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}.appointment-card label{display:block;font-size:13px;line-height:1.5}.appointment-card input,.appointment-card textarea{display:block;width:100%;border:1px solid #d5ddd0;border-radius:10px;background:white;color:var(--ink);font:inherit;font-size:16px;padding:13px;margin-top:8px}.appointment-card textarea{resize:vertical}.appointment-card form>label{margin-top:22px}.appointment-card :focus-visible{outline:2px solid #205c51;outline-offset:3px}@media(max-width:800px){.appointment-page{padding:28px 20px 60px}.appointment-layout{grid-template-columns:1fr;gap:28px}.appointment-back{margin-bottom:28px}.appointment-intro h1{font-size:40px}.appointment-card{padding:25px}.appointment-project{display:flex;align-items:center}.appointment-project img{width:42%;height:160px}.appointment-project>div{padding:18px}.appointment-fields{gap:16px 12px}}@media(max-width:380px){.appointment-fields{grid-template-columns:1fr}}

.appointment-meta{font-size:14px;color:var(--muted);margin:-12px 0 26px}.address-details{margin-top:20px}#appointment-availability{border-top:1px solid #dce3d6;margin-top:26px;padding-top:24px}#appointment-availability h3{font-size:19px;margin:0 0 18px}.appointment-note{font-size:12px;line-height:1.6;color:var(--muted);margin:14px 0}.appointment-note a{text-decoration:underline;text-underline-offset:3px}.appointment-card .button{background:#000;color:#fff;margin-top:14px;width:100%}.appointment-card .button:disabled{opacity:.6;cursor:wait}.appointment-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#appointment-status{font-size:14px;line-height:1.6;margin-top:18px}#appointment-status:empty{display:none}

.appointment-card [hidden]{display:none!important}#appointment-unavailable p{font-size:16px;line-height:1.6;color:var(--muted)}#appointment-loading{font-size:14px;color:var(--muted)}
