@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap";
:root{--bg:#080808;--panel:#11100f;--panel-2:#171514;--gold:#d9a94d;--gold-bright:#f1cf78;--gold-soft:#a67b32;--text:#f6f1e8;--muted:#9d9588;--line:#d9a94d40;--success:#79d6a0;--danger:#ef7676}*{box-sizing:border-box}html{background:var(--bg)}body{background:radial-gradient(circle at 50% -20%, #6c481840, transparent 42%), var(--bg);color:var(--text);min-height:100vh;margin:0;font-family:DM Sans,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}.shell{width:min(1180px,100% - 32px);margin:0 auto}.topbar{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:20px;height:76px;display:flex}.brand{letter-spacing:.08em;align-items:center;gap:12px;font-family:Playfair Display,serif;display:flex}.brand img{object-fit:cover;border:1px solid var(--gold);border-radius:50%;width:40px;height:40px}.brand strong{letter-spacing:.16em;font-size:15px;display:block}.brand span{color:var(--gold-bright);letter-spacing:.2em;margin-top:2px;font-size:10px;display:block}.nav{color:var(--muted);align-items:center;gap:20px;font-size:13px;display:flex}.nav a:hover{color:var(--gold-bright)}.hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:52px;min-height:calc(100vh - 76px);padding:50px 0 70px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.26em;color:var(--gold-bright);font-size:11px;font-weight:700}h1,h2,h3{margin:0;font-family:Playfair Display,serif;font-weight:600}h1{letter-spacing:-.04em;margin:17px 0 24px;font-size:clamp(46px,7vw,86px);line-height:.98}h1 em{color:var(--gold-bright);font-style:normal}.lead{color:#c2bbaf;max-width:540px;font-size:17px;line-height:1.75}.actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.btn{border:1px solid var(--gold);color:#211507;letter-spacing:.05em;text-transform:uppercase;background:linear-gradient(135deg,#f2d17d,#bd8230);border-radius:9px;justify-content:center;align-items:center;gap:9px;padding:15px 22px;font-size:12px;font-weight:800;transition:transform .2s,filter .2s;display:inline-flex}.btn:hover{filter:brightness(1.08);transform:translateY(-2px)}.btn.secondary{color:var(--text);border-color:var(--line);background:0 0}.btn.danger{background:var(--danger);border-color:var(--danger);color:#250707}.hero-card{border:1px solid var(--line);background:#050505;border-radius:18px;overflow:hidden;box-shadow:0 25px 90px #0000008c}.hero-artwork{object-fit:contain;width:100%;height:auto;display:block}.hero-card-copy{padding:20px 24px 24px}.hero-card-copy h2{margin-top:7px;font-size:27px}.hero-card-copy p{color:#c9bda9;flex-wrap:wrap;align-items:center;gap:5px;margin:8px 0 0;font-size:13px;display:flex}.hero-card-copy p a{color:var(--gold-bright);text-underline-offset:3px;text-decoration:underline}.hero-card-copy p a:hover{color:#fff0bd}.feature-row{color:var(--muted);flex-wrap:wrap;gap:24px;margin-top:34px;font-size:12px;display:flex}.feature-row span{align-items:center;gap:7px;display:flex}.gold{color:var(--gold-bright)}.page{padding:42px 0 80px}.page-head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}.page-head h1{margin:8px 0 0;font-size:clamp(32px,5vw,52px)}.card{background:linear-gradient(145deg,#1a1715f2,#0d0d0df5);border:1px solid #d9a94d33;border-radius:15px;padding:24px;box-shadow:0 18px 45px #0000003b}.narrow{width:min(530px,100%);margin:30px auto}.form-grid{gap:14px;display:grid}.field label{color:#c3b9ab;margin:0 0 7px;font-size:12px;display:block}.field input,.field select{width:100%;color:var(--text);background:#0a0a0a;border:1px solid #3b342a;border-radius:8px;outline:none;padding:13px 14px}.field input:focus,.field select:focus{border-color:var(--gold);box-shadow:0 0 0 3px #d9a94d1a}.muted{color:var(--muted)}.error{color:#ff9b9b;background:#be31311f;border:1px solid #ef76764d;border-radius:8px;padding:11px 13px;font-size:13px}.success{color:var(--success);background:#499d6c1f;border:1px solid #79d6a047;border-radius:8px;padding:11px 13px;font-size:13px}.calendar{grid-template-columns:repeat(7,1fr);gap:8px;margin:18px 0 26px;display:grid}.day{color:#e8ddcb;text-align:center;background:#0d0d0d;border:1px solid #302a22;border-radius:10px;padding:11px 5px}.day:hover,.day.selected{border-color:var(--gold);background:#d9a94d24}.day small{color:var(--muted);text-transform:uppercase;margin-bottom:5px;font-size:10px;display:block}.day b{font-size:18px}.slots{grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:10px;margin-top:15px;display:grid}.slot{color:var(--gold-bright);text-align:center;background:#131211;border:1px solid #403626;border-radius:8px;padding:13px 8px}.slot:hover,.slot.selected{background:var(--gold);color:#1f1408}.steps{gap:7px;margin-bottom:25px;display:flex}.step{background:#332b22;border-radius:4px;flex:1;height:4px}.step.active{background:var(--gold)}.confirm{text-align:center;padding:35px 15px}.confirm-icon{border:1px solid var(--gold);width:76px;height:76px;color:var(--gold-bright);border-radius:50%;place-items:center;margin:0 auto 20px;font-size:36px;display:grid}.appointment-row{border-bottom:1px solid #ffffff14;grid-template-columns:1fr auto auto;align-items:center;gap:15px;padding:16px 0;display:grid}.appointment-row:last-child{border-bottom:0}.status{color:var(--success);font-size:12px}.admin-grid{grid-template-columns:1fr 320px;gap:20px;display:grid}.agenda-row{border-bottom:1px solid #ffffff14;grid-template-columns:72px 1fr auto;align-items:center;gap:10px;padding:13px 0;display:grid}.agenda-time{color:var(--gold-bright);font-weight:700}.agenda-free{color:#7c756c}.tabs{border-bottom:1px solid #322a21;gap:6px;margin-bottom:20px;display:flex}.tab{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:11px 15px}.tab.active{color:var(--gold-bright);border-bottom-color:var(--gold)}.footer{color:var(--muted);border-top:1px solid #ffffff14;justify-content:space-between;gap:15px;padding:24px 0 35px;font-size:12px;display:flex}@media (max-width:800px){.hero{grid-template-columns:1fr;padding-top:35px}.hero-card{order:-1}.nav{display:none}.admin-grid{grid-template-columns:1fr}.appointment-row{grid-template-columns:1fr auto}.appointment-row .muted{grid-column:1/-1}}@media (max-width:500px){.shell{width:min(100% - 24px,1180px)}.topbar{height:64px}.hero-card-copy{padding:16px 18px 20px}.hero-card-copy h2{font-size:24px}.calendar{gap:5px}.day{padding:9px 2px}.slots{grid-template-columns:repeat(3,1fr)}.card{padding:18px}.page{padding-top:28px}.footer{flex-direction:column}}
