:root{
  --bg:#071b1f;
  --dark:#08252b;
  --gold:#d5a545;
  --gold2:#f2d98d;
  --teal:#0da6a6;
  --text:#f7fbfb;
  --muted:#d4e4e6;
  --card:#ffffff;
  --ink:#123035;
  --soft:#eef7f7;
  --danger:#c0392b;
  --ok:#0b8f5b;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#f6fafb;line-height:1.5}
a{text-decoration:none;color:inherit}.hero{min-height:92vh;background:linear-gradient(145deg,rgba(4,31,37,.94),rgba(4,72,75,.86)),radial-gradient(circle at 80% 15%,rgba(213,165,69,.28),transparent 35%),linear-gradient(135deg,#0b3b42,#081b21);color:var(--text);padding:28px clamp(18px,5vw,70px) 70px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:auto -80px -180px auto;width:420px;height:420px;background:rgba(242,217,141,.15);border-radius:50%;filter:blur(12px)}.nav{display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative;z-index:1}.brand{font-weight:900;font-size:1.3rem;letter-spacing:.4px}.brand span{display:block;font-size:.78rem;color:var(--gold2);font-weight:600;letter-spacing:1.6px;text-transform:uppercase}.nav-cta{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);padding:10px 16px;border-radius:999px;font-weight:700}.hero-content{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,6vw,80px);align-items:center;max-width:1180px;margin:80px auto 0;position:relative;z-index:1}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(213,165,69,.18);color:var(--gold2);border:1px solid rgba(242,217,141,.4);padding:8px 14px;border-radius:999px;font-weight:800;text-transform:uppercase;font-size:.82rem;letter-spacing:.08em}.eyebrow.dark{background:#fff2ce;color:#8c651c;border-color:#f2d98d}.hero h1{font-size:clamp(2.8rem,8vw,6.5rem);line-height:.9;margin:22px 0 20px;letter-spacing:-.07em}.hero p{font-size:clamp(1.05rem,2vw,1.35rem);color:var(--muted);max-width:680px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:16px;padding:14px 20px;font-weight:900;cursor:pointer;font-size:1rem;transition:transform .18s,box-shadow .18s,background .18s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:linear-gradient(135deg,var(--gold),#f6df95);color:#173136;box-shadow:0 16px 38px rgba(213,165,69,.28)}.btn.secondary{background:rgba(255,255,255,.12);color:var(--text);border:1px solid rgba(255,255,255,.32)}.btn.full{width:100%}.btn.whatsapp{background:#21c063;color:white}.hero-card{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);box-shadow:0 24px 70px rgba(0,0,0,.22);border-radius:34px;padding:32px;backdrop-filter:blur(12px)}.hero-card h2{margin:0 0 18px;font-size:2rem}.hero-card .big{color:var(--gold2);font-size:1rem;margin:16px 0 6px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.hero-card strong{display:block;font-size:1.55rem}.hero-card small{display:block;color:#eaf6f7;margin-top:6px}.hero-card hr{border:0;border-top:1px solid rgba(255,255,255,.24);margin:22px 0}.benefits{max-width:1150px;margin:-48px auto 60px;padding:0 18px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;position:relative;z-index:3}.benefits article{background:white;border-radius:18px;padding:18px;font-weight:850;box-shadow:0 16px 44px rgba(13,57,62,.09);border:1px solid #e5eeee}.pricing,.reservation-section{max-width:1150px;margin:0 auto 72px;padding:0 18px}.pricing h2,.reservation-section h2{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.04em;margin:0 0 22px}.pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.price-card{background:white;border:1px solid #e5eeee;border-radius:28px;padding:28px;box-shadow:0 12px 36px rgba(13,57,62,.07)}.price-card.featured{border:2px solid var(--gold);box-shadow:0 22px 55px rgba(213,165,69,.16)}.price-card span{font-weight:900;color:var(--teal);text-transform:uppercase;font-size:.82rem;letter-spacing:.1em}.price-card h3{font-size:3rem;margin:8px 0 0;letter-spacing:-.06em}.price-card p{font-weight:850;margin:0}.price-card small{display:block;color:#5d7276;margin-top:10px}.note{font-size:.95rem;color:#5a6f73}.reservation-section{display:grid;grid-template-columns:.86fr 1.14fr;gap:30px;align-items:start}.section-copy{padding:20px 0}.section-copy p,.section-copy li{color:#52686c}.section-copy ul{padding-left:20px}.form-card{background:white;border-radius:32px;padding:28px;box-shadow:0 24px 70px rgba(13,57,62,.12);border:1px solid #e5eeee}.form-card h3{font-size:1.7rem;margin:0 0 18px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}label{display:block;font-weight:850;margin-bottom:14px;color:#17363b}input{width:100%;margin-top:7px;border:1.5px solid #d7e4e6;border-radius:15px;padding:14px 14px;font:inherit;outline:none;background:#fbfefe;color:#123035}input:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(13,166,166,.12)}label small{display:block;color:#65787c;font-weight:500;margin-top:6px}.summary-box{background:linear-gradient(135deg,#effafa,#fff8e5);border:1px solid #dfeaea;border-radius:22px;padding:16px;margin:12px 0 18px}.summary-box div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(8,37,43,.08)}.summary-box div:last-child{border-bottom:0}.summary-box span{color:#65787c}.summary-box strong{font-weight:950}.summary-box .total strong{font-size:1.35rem;color:#9b6d17}.terms{text-align:center;color:#6b7d80;font-size:.85rem;margin-bottom:0}footer{padding:32px 18px;text-align:center;background:#071b1f;color:white;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.center-page{min-height:100vh;display:grid;place-items:center;padding:22px;background:linear-gradient(135deg,#08252b,#0b4d53)}.status-card{width:min(680px,100%);background:white;border-radius:30px;padding:34px;box-shadow:0 28px 80px rgba(0,0,0,.22);text-align:center}.status-card h1{margin:0 0 10px;font-size:clamp(2rem,6vw,3.2rem);letter-spacing:-.05em}.status-card p{color:#52686c}.check{display:inline-grid;place-items:center;width:66px;height:66px;border-radius:50%;background:#e7fff4;color:#0b8f5b;font-size:2.4rem;font-weight:950;margin-bottom:14px}.receipt{background:#f3f8f9;border:1px solid #dfeaea;border-radius:20px;text-align:left;margin:22px 0;padding:12px}.receipt div{display:flex;justify-content:space-between;gap:12px;padding:10px;border-bottom:1px solid #e0ebed}.receipt div:last-child{border-bottom:0}.receipt span{color:#62767a}.receipt strong{text-align:right}.status-card.error{border-top:8px solid var(--danger)}.status-card.success{border-top:8px solid var(--ok)}.badge{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:900;text-transform:uppercase}.badge.pending{background:#fff3d0;color:#7d5900}.badge.approved{background:#e6fff2;color:#067645}.badge.rejected,.badge.error{background:#ffe8e5;color:#a32316}.badge.canceled{background:#e8edf0;color:#58666a}.admin-body{background:#f3f7f8;padding:24px}.admin-wrap{max-width:1250px;margin:0 auto}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.admin-header h1{margin:0;font-size:2rem}.table-card{background:white;border-radius:22px;box-shadow:0 14px 45px rgba(13,57,62,.08);overflow:auto;border:1px solid #e5eeee}table{width:100%;border-collapse:collapse;min-width:980px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #eef2f3;font-size:.92rem}th{background:#f8fbfc;font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:#64787d}tr:hover td{background:#fbfdfd}.mini-actions{display:flex;gap:8px;flex-wrap:wrap}.btn.small{font-size:.82rem;padding:8px 10px;border-radius:10px}.login-card{width:min(420px,100%);background:white;border-radius:26px;padding:28px;box-shadow:0 24px 70px rgba(0,0,0,.22)}.login-card h1{margin-top:0}.alert{background:#ffe8e5;color:#9e281c;border-radius:14px;padding:12px;margin-bottom:14px}@media (max-width:900px){.hero-content,.reservation-section{grid-template-columns:1fr}.benefits{grid-template-columns:repeat(2,1fr);margin-top:-30px}.pricing-grid{grid-template-columns:1fr}.hero{min-height:auto}.grid-2{grid-template-columns:1fr}.nav{align-items:flex-start}.hero-card{padding:24px}}@media (max-width:540px){.benefits{grid-template-columns:1fr}.hero{padding-left:16px;padding-right:16px}.form-card,.status-card{padding:22px;border-radius:24px}.hero h1{font-size:3.2rem}.hero-actions .btn{width:100%}.summary-box div,.receipt div{align-items:flex-start;flex-direction:column}.receipt strong{text-align:left}}
