:root{--ink:#14202e;--navy:#0b1b2e;--blue:#2f6199;--blue2:#3e6fa3;--soft:#f1f5fa;--line:#d3dbe6;--mute:#5b6b7e;--bad:#b3261e;--ok:#1b7a43}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.5}
.top{background:#000;color:#fff}
.top .in{max-width:860px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.top img{height:54px;display:block}
.lang button{background:transparent;color:#fff;border:1px solid #3a4a5e;border-radius:3px;padding:6px 12px;font-size:14px;cursor:pointer;margin-left:6px}
.lang button.on{background:var(--blue);border-color:var(--blue)}
main{max-width:860px;margin:0 auto;padding:20px 16px 60px}
h1{font-size:28px;line-height:1.15;margin:6px 0 4px;color:var(--navy)}
h2{font-size:20px;margin:30px 0 10px;color:var(--navy);border-bottom:2px solid var(--blue2);padding-bottom:4px}
.sub{color:var(--mute);margin:0 0 14px}
.step{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--blue);color:#fff;font-size:14px;margin-right:8px}
.cards{display:grid;gap:12px}
.card{background:var(--soft);border:2px solid transparent;border-left:5px solid var(--blue2);padding:14px 16px;border-radius:3px;cursor:pointer;text-align:left;font:inherit;color:inherit;width:100%;display:block}
.card:hover{border-color:var(--blue2)}
.card.sel{border-color:var(--blue);background:#e4eefa}
.card.off{opacity:.5;cursor:not-allowed}
.card .t{font-weight:700;font-size:17px;display:flex;justify-content:space-between;gap:10px}
.card .d{font-size:14px;color:#35465c;margin-top:4px}
.card .m{font-size:13px;color:var(--mute);margin-top:4px}
.price{color:var(--blue);font-weight:700;white-space:nowrap}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}
.slot{padding:11px 0;border:2px solid var(--line);background:#fff;border-radius:3px;font:inherit;font-weight:600;cursor:pointer}
.slot:hover{border-color:var(--blue2)}.slot.sel{background:var(--blue);border-color:var(--blue);color:#fff}
.note{font-size:14px;color:var(--mute);margin:8px 0}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:600px){.grid2{grid-template-columns:1fr}h1{font-size:24px}}
label.f{display:block;font-size:14px;font-weight:600;margin-bottom:10px}
label.f span.h{font-weight:400;color:var(--mute)}
input[type=text],input[type=email],input[type=tel],input[type=number],select,textarea{width:100%;padding:11px 12px;border:1.5px solid #aab6c6;border-radius:3px;font:inherit;margin-top:4px;background:#fff}
input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #9cc0ea;outline-offset:1px}
.err{color:var(--bad);font-size:13px;font-weight:400;display:block;margin-top:3px}
input.bad,select.bad{border-color:var(--bad)}
.box{background:var(--soft);border-left:5px solid var(--blue2);padding:14px 16px;margin:12px 0;border-radius:3px}
.box ul{margin:6px 0 0;padding-left:20px;font-size:14px}
details.w{border:1px solid var(--line);border-radius:3px;margin:12px 0}
details.w summary{padding:11px 14px;cursor:pointer;font-weight:600;color:var(--blue)}
details.w .wb{padding:0 16px 14px;max-height:340px;overflow:auto;font-size:13.5px;border-top:1px solid var(--line)}
details.w h2{font-size:16px;margin:16px 0 6px;border:0}
.tick{display:flex;gap:12px;align-items:flex-start;border:2px solid var(--navy);background:#eef3f9;padding:14px;margin:12px 0;border-radius:3px;font-size:14.5px;cursor:pointer}
.tick input{width:24px;height:24px;margin:2px 0 0;flex:none;accent-color:var(--blue)}
.tick.bad{border-color:var(--bad);background:#fdeceb}
.sum{background:var(--navy);color:#fff;padding:16px 18px;border-radius:3px;margin:20px 0 12px}
.sum .r{display:flex;justify-content:space-between;gap:12px;padding:3px 0;font-size:15px}
.sum .tot{border-top:1px solid #3a4a5e;margin-top:6px;padding-top:8px;font-size:19px;font-weight:700}
.btn{background:var(--blue);color:#fff;border:0;border-radius:3px;padding:15px 22px;font:inherit;font-weight:700;font-size:17px;cursor:pointer;width:100%}
.btn:hover{background:#265082}.btn:disabled{background:#8da6c4;cursor:wait}
.btn.sec{background:#fff;color:var(--blue);border:2px solid var(--blue)}
.btn.danger{background:var(--bad)}
.msg{padding:12px 14px;border-radius:3px;margin:12px 0;font-size:15px}
.msg.bad{background:#fdeceb;border-left:5px solid var(--bad)}
.msg.ok{background:#e7f5ec;border-left:5px solid var(--ok)}
.msg.warn{background:#fff6e0;border-left:5px solid #c58b00}
.daylist .card .t{font-size:18px}
table.kv{border-collapse:collapse;width:100%;margin:10px 0}table.kv td{padding:8px 10px;border-bottom:1px solid var(--line)}table.kv td:first-child{background:var(--soft);width:34%;color:#42536a;font-size:14px}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.foot{color:var(--mute);font-size:12.5px;margin-top:30px;border-top:1px solid var(--line);padding-top:12px}
