:root{--purple:#6d3ddb;--pink:#ee2878;--blue:#079bd7;--orange:#ff6b22;--green:#59a91b;--cream:#fff9ed;--card:#fff;--line:#d9d4ee;--text:#17213d;--muted:#5c6680}*{box-sizing:border-box}body{margin:0;background:linear-gradient(145deg,#fff 0%,#f5efff 48%,#e8fbff 100%);color:var(--text);font-family:Arial,sans-serif}header{position:sticky;top:0;z-index:9;display:flex;justify-content:space-between;align-items:center;padding:10px max(5vw,20px);background:rgba(255,255,255,.96);border-bottom:4px solid var(--purple);box-shadow:0 5px 22px #57319d1c}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none}.brand img{width:82px;height:82px;object-fit:contain}.brand span{display:flex;flex-direction:column}.brand strong{font-size:1.15rem;color:var(--purple)}.brand small{color:var(--pink);font-weight:800;margin-top:3px}header nav a{color:var(--purple);text-decoration:none;margin-left:12px;padding:10px 15px;border-radius:999px;font-weight:900}header nav a:hover{background:#f0e9ff}main{max-width:1180px;margin:auto;padding:42px 22px;min-height:80vh}.hero{padding:55px 34px;margin-bottom:35px;border-radius:28px;background:linear-gradient(115deg,#693cdb,#af3bd8 48%,#ef2f7b);color:#fff;box-shadow:0 18px 45px #6d3ddb35;position:relative;overflow:hidden}.hero:after{content:'★  ●  ★  ●  ★';position:absolute;right:3%;top:16%;font-size:2rem;color:#ffd52c;transform:rotate(-8deg)}.hero h1{font-size:clamp(2.3rem,6vw,5rem);max-width:850px;margin:.2em 0}.hero .eyebrow{color:#fff45c}.eyebrow{color:var(--pink);font-weight:900;text-transform:uppercase;letter-spacing:1px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;overflow:hidden;box-shadow:0 10px 28px #4d326818}.item-img{width:100%;aspect-ratio:1;object-fit:contain;background:#f8f6ff;border-radius:14px}.price{font-size:1.5rem;color:var(--purple);font-weight:900}.btn,button{display:inline-block;border:0;border-radius:999px;background:linear-gradient(90deg,var(--orange),var(--pink));color:#fff;padding:13px 20px;font-weight:900;text-decoration:none;cursor:pointer;box-shadow:0 7px 16px #ed3d7130}.secondary{background:#ece8f8;color:var(--purple);box-shadow:none}.tabs{display:flex;gap:8px;overflow-x:auto;margin-bottom:30px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:15px}.tabs a{white-space:nowrap;padding:11px 16px;border-radius:10px;background:#f1edfb;color:var(--purple);text-decoration:none;font-weight:800}.tabs a.active{background:var(--purple);color:#fff;font-weight:900}label{display:block;font-weight:800;margin:15px 0 7px}input,select,textarea{width:100%;padding:13px;border:1px solid #c9c1df;border-radius:10px;background:#fff;color:var(--text)}textarea{min-height:130px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #e1dced}.notice{padding:14px;border-radius:10px;margin:15px 0}.ok{background:#e1f7e9;color:#195f37}.bad{background:#ffe5e8;color:#8a2331}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:16px 0}.day{min-height:38px;display:grid;place-items:center;background:#65b72c;border-radius:8px;color:#fff;text-decoration:none;font-weight:800}.day:hover{background:#4a9619}.day.booked{background:#e43f52;cursor:not-allowed}.day.blank{background:transparent}.day{line-height:1.05;grid-template-rows:auto auto;padding:5px 1px}.day small{display:block;font-size:.58rem;opacity:.9}.legend span{display:inline-block;width:14px;height:14px;border-radius:3px;margin-right:5px}.legend .available{background:#65b72c}.legend .unavailable{background:#e43f52;margin-left:14px}footer{text-align:center;padding:30px;color:var(--muted);background:#fff;border-top:4px solid var(--pink)}@media(max-width:850px){.grid{grid-template-columns:1fr 1fr}.hero:after{opacity:.3}}@media(max-width:600px){header{align-items:center;padding:8px 12px}.brand img{width:62px;height:62px}.brand strong{font-size:.9rem}.brand small{font-size:.68rem}header nav a{margin-left:2px;padding:8px}.grid{grid-template-columns:1fr}main{padding:25px 14px}.hero{padding:35px 22px}.card{padding:15px}table{display:block;overflow-x:auto}}
