/* Step booking form — restyled for this site: change only the tokens on .sfCard */
.sfCard{--sf-accent:#E4702B;--sf-accent-d:#BF5618;--sf-accent-l:#FCEBDD;--sf-ink:#182019;--sf-mute:#55625C;--sf-line:#D3DCD7;--sf-field:#F6F8F7;--sf-focus:#17352B;
  background:#fff;color:var(--sf-ink);border-radius:18px;padding:26px;box-shadow:0 30px 60px rgba(14,40,33,.28);position:relative;font-family:inherit}
.sfTrap{position:absolute;left:-9000px;width:1px;height:1px;opacity:0}
.sfHidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sfTitle{font-size:1.32rem;margin:0}
.sfIntro{font-size:.9rem;line-height:1.5;color:var(--sf-mute);margin:6px 0 0}
.sfDots{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:16px 0 18px;padding:0}
.sfDots li{font:700 .8rem/1 inherit;color:var(--sf-mute);padding-top:9px;border-top:4px solid var(--sf-line)}
.sfDots li.isOn{color:var(--sf-accent-d);border-top-color:var(--sf-accent)}
.sfPane{border:0;margin:0;padding:0;min-width:0}
.sfPane+.sfPane{margin-top:18px}
.isLive .sfPane{display:none;margin-top:0}
.isLive .sfPane.isCurrent{display:block}
.sfPane legend{font-weight:700;font-size:.82rem;margin-bottom:10px;padding:0}
.sfPick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}
.sfTile{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px 9px;border-radius:12px;border:2px solid var(--sf-line);cursor:pointer;text-align:center;font-weight:600;font-size:.8rem;line-height:1.2}
.sfTile input{position:absolute;opacity:0;inset:0;cursor:pointer}
.sfTile img,.sfTile svg{width:30px;height:34px;object-fit:contain;color:#17352B}
.sfTile:has(input:checked){border-color:var(--sf-accent);background:var(--sf-accent-l)}
.sfTile:has(input:focus-visible){outline:3px solid var(--sf-focus);outline-offset:2px}
.sfField{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;min-width:0}
.sfField label{font-weight:700;font-size:.82rem}
.sfField input,.sfField select,.sfField textarea{width:100%;max-width:100%;min-width:0;font:400 1rem/1.4 inherit;color:var(--sf-ink);background:var(--sf-field);border:1.5px solid var(--sf-line);border-radius:10px;padding:12px 14px;-webkit-appearance:none;appearance:none}
.sfField input,.sfField select{height:50px}
.sfField textarea{resize:vertical;min-height:96px}
.sfField select{padding-right:42px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;background:var(--sf-field) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23333' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 16px center/12px 8px}
.sfField input:focus,.sfField select:focus,.sfField textarea:focus{outline:none;border-color:var(--sf-focus);box-shadow:0 0 0 3px rgba(23,53,43,.12)}
.sfNav{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}
.sfBtn{min-height:48px;padding:0 22px;border-radius:999px;border:0;font-weight:700;font-size:1rem;cursor:pointer;background:var(--sf-accent);color:#fff;font-family:inherit}
.sfBtn:hover{background:var(--sf-accent-d)}
.sfBack{min-height:48px;padding:0 16px;border:0;background:none;font-weight:700;color:var(--sf-mute);cursor:pointer;font-family:inherit}
.sfFine{font-size:.8rem;line-height:1.45;color:var(--sf-mute);margin:14px 0 0}
.sfStatus{margin-top:10px;padding:10px 12px;border-radius:10px;background:var(--sf-accent-l);color:var(--sf-accent-d);font-size:.9rem}
@media (max-width:420px){.sfCard{padding:20px}.sfTile{font-size:.74rem}}
