:root{--bg:#f8f1f0;--bg-2:#f3e6ea;--card:#fff;--text:#43303a;--muted:#947985;--accent:#b76e79;--accent-soft:#b76e791f;--gold:#c2a05e;--gold-soft:#c2a05e29;--mauve:#9b7fb0;--mauve-soft:#9b7fb024;--border:#9479852e;--shadow:0 10px 30px #43303a14;--radius:18px;--serif:"Cormorant Garamond",serif;--script:"Great Vibes",cursive;--body:"Karla",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--body);background:radial-gradient(1200px 600px at 85% -10%, #9b7fb02e, transparent 60%), radial-gradient(900px 500px at -10% 20%, #c2a05e24, transparent 55%), linear-gradient(180deg,#fbf5f4 0%, var(--bg) 30%, #f6ecee 100%);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;padding-bottom:92px}::selection{background:var(--gold-soft);color:var(--text)}button{font-family:var(--body);cursor:pointer;color:inherit;background:0 0;border:none}input,select,textarea{font-family:var(--body);color:var(--text);font-size:15px}a{color:inherit;text-decoration:none}img,svg{display:block}h1,h2,h3{font-family:var(--serif);font-weight:600}.eyebrow{letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:8px;font-size:11px;font-weight:600}.title-xl{margin-bottom:14px;font-size:clamp(34px,5vw,52px);line-height:1.05}.title-xl em{font-family:var(--script);color:var(--accent);font-size:1.25em;font-style:normal;font-weight:400}.lead{color:var(--muted);max-width:560px;font-size:16px;line-height:1.7}.divider-gold{background:linear-gradient(90deg,var(--gold),transparent);border-radius:2px;width:64px;height:2px;margin:18px 0 26px}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:200;background:var(--text);color:#fff;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:600;transition:top .2s;position:absolute;top:-60px;left:16px}.skip-link:focus{top:14px}:focus-visible{outline:2.5px solid var(--accent);outline-offset:3px;border-radius:6px}main:focus,[tabindex="-1"]:focus{outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.topbar{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#f8f1f0d9;justify-content:space-between;align-items:center;padding:14px 22px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.logo-mark{border:1.5px solid var(--gold);width:44px;height:44px;font-family:var(--serif);color:var(--gold);letter-spacing:.5px;background:radial-gradient(circle at 30% 30%,#fff,#f7ecef);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:17px;font-weight:600;display:flex;box-shadow:0 2px 8px #c2a05e40}.brand-name{line-height:1.1}.brand-name .script{font-family:var(--script);color:var(--accent);font-size:24px;display:block}.brand-name .sub{letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);font-size:10px}.desktop-nav{align-items:center;gap:28px;display:none}.desktop-nav a{letter-spacing:.5px;color:var(--text);padding:4px 0;font-size:14px;position:relative}.desktop-nav a:after{content:"";background:var(--gold);width:0;height:1.5px;transition:width .3s;position:absolute;bottom:-2px;left:0}.desktop-nav a:hover:after,.desktop-nav a.active:after{width:100%}.view{max-width:1100px;margin:0 auto;padding:28px 20px 40px;animation:.45s fadeUp;display:none}.view.active{display:block}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.section{margin-top:52px}.section-head{margin-bottom:24px}.section-head h2{font-size:clamp(26px,3.5vw,36px)}.hero{grid-template-columns:1fr;align-items:center;gap:36px;padding:20px 0 10px;display:grid}.hero-cta{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.hero-visual{min-height:340px;box-shadow:var(--shadow);background:radial-gradient(circle at 70% 20%,#ffffffb3,#0000 50%),linear-gradient(135deg,#f0dce1 0%,#dcc6d8 45%,#c9b8d6 100%);border-radius:24px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero-visual:before{content:"";background:radial-gradient(200px 120px at 20% 80%,#c2a05e40,#0000 70%),radial-gradient(160px 100px at 85% 15%,#b76e794d,#0000 70%);position:absolute;inset:0}.hero-card{z-index:2;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb8;border:1px solid #fffc;border-radius:20px;max-width:300px;padding:34px 30px;position:relative;box-shadow:0 20px 50px #43303a26}.hero-card .big-script{font-family:var(--script);color:var(--accent);font-size:46px;line-height:1}.hero-card .small{letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);margin-top:10px;font-size:11px}.hero-card .price{font-family:var(--serif);color:var(--gold);margin-top:6px;font-size:30px;font-weight:600}.hero-stats{flex-wrap:wrap;gap:26px;margin-top:30px;display:flex}.hero-stats div strong{font-family:var(--serif);color:var(--accent);font-size:26px;display:block}.hero-stats div span{color:var(--muted);letter-spacing:.5px;font-size:12px}.footer{border-top:1px solid var(--border);text-align:center;max-width:1100px;color:var(--muted);margin:40px auto 0;padding:30px 20px;font-size:13px}.footer .script{font-family:var(--script);color:var(--accent);font-size:22px}.bottom-nav{z-index:60;padding:10px 8px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);background:#ffffffeb;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bnav-item{color:var(--muted);border-radius:12px;flex-direction:column;align-items:center;gap:3px;min-width:56px;padding:4px 10px;font-size:10.5px;font-weight:600;transition:all .2s;display:flex}.bnav-item.active{color:var(--accent)}.bnav-item i{width:20px;height:20px}.bnav-item.center{margin-top:-26px}.bnav-item.center .circle{background:linear-gradient(135deg,var(--accent),#c98a95);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:0 8px 20px #b76e7973}.btn{letter-spacing:.4px;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:14px;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.btn-primary{background:linear-gradient(135deg,var(--accent),#c98a95);color:#fff;box-shadow:0 6px 18px #b76e7959}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px #b76e7973}.btn-gold{background:linear-gradient(135deg,var(--gold),#d4b878);color:#fff;box-shadow:0 6px 18px #c2a05e59}.btn-gold:hover{transform:translateY(-2px)}.btn-ghost{border:1px solid var(--border);background:var(--card);color:var(--text)}.btn-ghost:hover{border-color:var(--gold)}.btn-wa{color:#fff;background:#25d366;box-shadow:0 6px 18px #25d36659}.btn-wa:hover{transform:translateY(-2px)}.btn-sm{padding:8px 16px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn:disabled:hover{box-shadow:none;transform:none}.grid{gap:18px;display:grid}.grid-3{grid-template-columns:1fr}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:transform .25s,box-shadow .25s;box-shadow:0 2px 10px #43303a0a}.card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.card .icon-wrap{background:var(--accent-soft);width:46px;height:46px;color:var(--accent);border-radius:14px;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.card.gold .icon-wrap{background:var(--gold-soft);color:var(--gold)}.card.mauve .icon-wrap{background:var(--mauve-soft);color:var(--mauve)}.card h3{margin-bottom:8px;font-size:20px}.card p{color:var(--muted);font-size:14px;line-height:1.6}.cat-tabs{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.cat-tab{border:1px solid var(--border);background:var(--card);color:var(--muted);border-radius:999px;padding:9px 18px;font-size:13px;font-weight:600;transition:all .2s}.cat-tab.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 12px #b76e794d}.service-row{background:var(--card);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;padding:18px 20px;transition:all .2s;display:flex}.service-row:hover{border-color:var(--gold);box-shadow:0 6px 18px #43303a12}.service-info h4{font-family:var(--serif);font-size:19px;font-weight:600}.service-info .meta{color:var(--muted);margin-top:3px;font-size:12.5px}.service-price{text-align:right;flex-shrink:0}.service-price .amt{font-family:var(--serif);color:var(--gold);font-size:20px;font-weight:600}.service-price .dur{color:var(--muted);margin-top:2px;font-size:11.5px;display:block}.steps{flex-wrap:wrap;gap:8px;margin-bottom:26px;display:flex}.step-pill{background:var(--card);border:1px solid var(--border);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:12.5px;font-weight:600;display:flex}.step-pill.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.step-pill.done{background:var(--gold-soft);border-color:var(--gold);color:var(--gold)}.step-pill .n{background:var(--border);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;display:flex}.step-pill.active .n{background:var(--accent)}.step-pill.done .n{background:var(--gold)}.wizard-nav{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:24px;display:flex}.summary-box{background:var(--card);border:1px solid var(--gold);border-radius:16px;padding:24px;box-shadow:0 8px 24px #c2a05e1f}.summary-box .row{border-bottom:1px dashed var(--border);justify-content:space-between;padding:10px 0;font-size:14.5px;display:flex}.summary-box .row:last-child{border-bottom:none}.summary-box .row span:first-child{color:var(--muted)}.summary-box .row span:last-child{font-weight:600;font-family:var(--serif);font-size:16px}.field{margin-bottom:16px}.field label{color:var(--muted);letter-spacing:.4px;margin-bottom:6px;font-size:12.5px;font-weight:600;display:block}.field input,.field select,.field textarea{border:1.5px solid var(--border);background:var(--card);border-radius:12px;outline:none;width:100%;padding:13px 16px;transition:border-color .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold)}.field textarea{resize:vertical;min-height:70px}.notice{color:var(--muted);align-items:flex-start;gap:8px;margin-top:14px;font-size:12.5px;line-height:1.6;display:flex}.tag{letter-spacing:.4px;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.tag-conf{background:var(--gold-soft);color:var(--gold)}.tag-cancel{color:var(--muted);background:#9479851f}.empty-state{text-align:center;color:var(--muted);padding:50px 20px}.empty-state .icon-wrap{background:var(--accent-soft);width:64px;height:64px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.contact-card{background:var(--card);border:1px solid var(--border);border-radius:16px;margin-bottom:12px;padding:18px 20px}.contact-card .head{align-items:center;gap:14px;display:flex}.avatar{color:#fff;background:linear-gradient(135deg,var(--accent),var(--mauve));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;font-size:17px;font-weight:700;display:flex}.contact-card .head .nm{font-family:var(--serif);font-size:18px;font-weight:600}.contact-card .head .ph{color:var(--muted);font-size:13px}.contact-card .hist{border-top:1px dashed var(--border);color:var(--muted);margin-top:12px;padding-top:12px;font-size:13px;line-height:1.6}.contact-card .actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.searchbar{margin-bottom:20px;position:relative}.searchbar input{border:1.5px solid var(--border);background:var(--card);border-radius:999px;outline:none;width:100%;padding:13px 16px 13px 44px}.searchbar input:focus{border-color:var(--gold)}.searchbar i{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.contact-item{background:var(--card);border:1px solid var(--border);border-radius:16px;align-items:flex-start;gap:14px;padding:20px;display:flex}.contact-item .icon-wrap{background:var(--gold-soft);width:42px;height:42px;color:var(--gold);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-item h4{font-family:var(--serif);margin-bottom:4px;font-size:18px}.contact-item p{color:var(--muted);font-size:14px;line-height:1.6}.social-row{flex-wrap:wrap;gap:12px;margin-top:14px;display:flex}.social-btn{border:1px solid var(--border);background:var(--card);border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.social-btn:hover{border-color:var(--gold);transform:translateY(-2px)}.admin-stat{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-bottom:24px;display:grid}.admin-stat .box{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:14px;padding:18px}.admin-stat .box strong{font-family:var(--serif);color:var(--accent);font-size:30px;display:block}.admin-stat .box span{color:var(--muted);font-size:12px}.toast{background:var(--text);color:#fff;opacity:0;pointer-events:none;z-index:100;text-align:center;border-radius:999px;max-width:90vw;padding:12px 22px;font-size:13.5px;transition:all .35s;position:fixed;bottom:110px;left:50%;transform:translate(-50%)translateY(20px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.wizard-panel{display:none}.wizard-panel.active{animation:.35s fadeUp;display:block}.calendar{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px;display:grid}.day-cell{text-align:center;background:var(--card);border:1.5px solid var(--border);cursor:pointer;width:100%;font-family:var(--body);border-radius:14px;padding:14px 8px;transition:all .2s}.day-cell:hover:not(.off){border-color:var(--gold)}.day-cell.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 4px 14px #b76e7933}.day-cell.off{opacity:.35;cursor:not-allowed;text-decoration:line-through}.day-cell .dow{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:11px}.day-cell .dnum{font-family:var(--serif);margin:2px 0;font-size:22px;font-weight:600}.day-cell .mon{color:var(--muted);font-size:11px}.slots{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;margin-bottom:22px;display:grid}.slot{text-align:center;background:var(--card);border:1.5px solid var(--border);cursor:pointer;width:100%;font-size:14px;font-weight:600;font-family:var(--body);border-radius:12px;padding:12px 6px;transition:all .2s}.slot:hover:not(.taken){border-color:var(--gold)}.slot.selected{background:var(--accent);color:#fff;border-color:var(--accent)}.slot.taken{opacity:.35;cursor:not-allowed;text-decoration:line-through}.reserva-card{background:var(--card);border:1px solid var(--border);border-radius:16px;align-items:center;gap:16px;margin-bottom:12px;padding:18px 20px;display:flex}.reserva-card .date-badge{text-align:center;background:var(--accent-soft);min-width:64px;color:var(--accent);border-radius:12px;padding:10px 6px}.reserva-card .date-badge .dd{font-family:var(--serif);font-size:24px;font-weight:700;line-height:1}.reserva-card .date-badge .mm{text-transform:uppercase;letter-spacing:1px;margin-top:3px;font-size:11px}.reserva-card .info{flex:1;min-width:0}.reserva-card .info h4{font-family:var(--serif);font-size:18px;font-weight:600}.reserva-card .info .meta{color:var(--muted);margin-top:3px;font-size:13px}.contact-grid{gap:18px;display:grid}@media (min-width:900px){.desktop-nav{display:flex}.hero{grid-template-columns:1.1fr .9fr}.grid-3{grid-template-columns:repeat(3,1fr)}.calendar{grid-template-columns:repeat(7,1fr)}.contact-grid{grid-template-columns:repeat(2,1fr)}.bottom-nav{display:none}body{padding-bottom:0}}
