/* Appointment request form, inherits page tokens */
.tc-card{background:#fff;border-radius:20px;padding:26px;color:var(--ink2);outline:0;min-width:0}
.tc-card:focus-visible{box-shadow:0 0 0 3px #9fd6d8}
.tc-card#contact{scroll-margin-top:90px}
.ask.ask-contact{grid-template-columns:1.15fr 1fr}
.ask.ask-contact>div{min-width:0}
.ask.ask-contact .tc-submit{background:var(--copper);border:1px solid var(--copper);color:#fff;font-family:inherit;cursor:pointer}
@media(max-width:1000px){.ask.ask-contact{grid-template-columns:1fr}}
.tc-form [hidden],.tc-card [hidden]{display:none!important}
.tc-kick{display:inline-flex;align-items:center;gap:8px;background:var(--copbg);color:var(--copper);font-weight:600;font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:6px 12px 6px 9px;border-radius:999px}
.tc-kick:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--copper)}
.tc-card .tc-title{color:var(--ink);font-size:21px;margin:12px 0 6px}
.tc-card p.tc-intro{color:var(--ink2);font-size:14.5px;margin:0 0 14px}
.tc-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.tc-field{min-width:0}
.tc-field label{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#52686e;font-weight:600;margin:12px 0 5px}
.tc-req{font-size:9.5px;letter-spacing:.1em;color:var(--copper);margin-left:4px}
.tc-field input[type=text],.tc-field input[type=email],.tc-field input[type=tel],.tc-field select,.tc-field textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:var(--ivory);color:var(--ink);font:15px Inter,system-ui,sans-serif;transition:border-color .15s,box-shadow .15s}
.tc-field textarea{resize:vertical;min-height:96px;line-height:1.45}
.tc-field input:focus,.tc-field select:focus,.tc-field textarea:focus{outline:0;border-color:var(--petrol);box-shadow:0 0 0 3px rgba(59,169,180,.25);background:#fff}
.tc-bad input,.tc-bad select,.tc-bad textarea{border-color:#b6452a;background:#fff8f5}
.tc-card p.tc-err{margin:4px 0 0;font-size:12.5px;color:#8c2d16;min-height:0}
.tc-err:empty{display:none}
.tc-card p.tc-hint{margin:4px 0 0;font-size:11.5px;color:#52686e;text-align:right}
.tc-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.tc-consent{margin-top:12px}
.tc-check{display:flex!important;gap:10px;align-items:flex-start;text-transform:none!important;letter-spacing:0!important;font-size:13.5px!important;color:var(--ink2)!important;font-weight:500!important;cursor:pointer}
.tc-check input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--petrol);flex:none}
.tc-card .tc-summary{margin:0 0 6px;padding:10px 12px;border-radius:10px;background:#fbeee8;color:#8a3519;font-size:13.5px;outline:0}
.tc-submit{margin-top:16px;width:100%;justify-content:center;background:var(--copper);border-color:var(--copper)}
.tc-submit:disabled{opacity:.65;cursor:progress}
.tc-submit:focus-visible,.tc-again:focus-visible{outline:3px solid #9fd6d8;outline-offset:2px}
.tc-card p.tc-fine{font-size:11.5px;color:#52686e;text-align:center;margin:10px 0 0}
.tc-done{outline:0;animation:tcIn .3s ease-out both}
.tc-card .tc-done p{color:var(--ink2);font-size:15px}
.tc-card p.tc-ref{display:inline-block;font:600 12px Inter,system-ui,sans-serif;letter-spacing:.12em;background:var(--tint);color:var(--petrol);border-radius:999px;padding:6px 12px}
.tc-again{display:block;margin-top:14px;background:none;border:0;padding:0;color:var(--petrol);font:600 14px Inter,system-ui,sans-serif;text-decoration:underline;cursor:pointer}
@keyframes tcIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tc-done{animation:none}}
@media(max-width:700px){.tc-card{padding:20px 16px}.tc-card#contact{scroll-margin-top:148px}.tc-grid{grid-template-columns:1fr}}
