*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--ink: #0D0F1A;--ink-soft: #1E2235;--gold: #C9962A;--gold-light: #E8B84B;--gold-pale: #FBF3E0;--cream: #FAF7F2;--slate: #4A5166;--slate-light: #8892A4;--white: #FFFFFF;--border: #E4E0D9;--border-dark: #C8C4BC;--success: #2D9B6F;--error: #C94040;--warning: #D4832A;--font-display: "Fraunces", Georgia, serif;--font-body: "DM Sans", system-ui, sans-serif;--nav-height: 72px;--ease: cubic-bezier(.25, .46, .45, .94);--spring: cubic-bezier(.34, 1.56, .64, 1)}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--cream);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.15;letter-spacing:-.02em}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--border-dark);border-radius:3px}:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-body);font-size:15px;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .2s var(--ease);text-decoration:none;white-space:nowrap;padding:12px 24px;letter-spacing:.01em}.btn-primary{background:var(--gold);color:var(--white);box-shadow:0 2px 8px #c9962a59}.btn-primary:hover{background:var(--gold-light);transform:translateY(-1px);box-shadow:0 4px 16px #c9962a73}.btn-primary:active{transform:translateY(0)}.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed;filter:grayscale(.4);transform:none!important;box-shadow:none!important}.btn:disabled:hover,.btn[disabled]:hover{transform:none!important;background:var(--gold)}.btn-secondary{background:var(--white);color:var(--ink);border:1.5px solid var(--border)}.btn-secondary:hover{border-color:var(--gold);color:var(--gold);background:var(--gold-pale)}.btn-ghost{background:transparent;color:var(--ink)}.btn-ghost:hover{background:#0000000d}.btn-lg{padding:16px 32px;font-size:16px;border-radius:12px}.btn-sm{padding:8px 16px;font-size:13px}.input{width:100%;font-family:var(--font-body);font-size:15px;padding:12px 16px;border:1.5px solid var(--border);border-radius:10px;background:var(--white);color:var(--ink);transition:border-color .2s;outline:none}.input:focus{border-color:var(--gold)}.input::placeholder{color:var(--slate-light)}.label{display:block;font-size:13px;font-weight:600;color:var(--slate);margin-bottom:6px;letter-spacing:.02em;text-transform:uppercase}.card{background:var(--white);border-radius:16px;border:1px solid var(--border);overflow:hidden;transition:all .25s var(--ease)}.card:hover{border-color:#c9962a4d;box-shadow:0 8px 32px #0d0f1a14;transform:translateY(-2px)}.stars{color:var(--gold);letter-spacing:2px}.badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px}.badge-gold{background:var(--gold-pale);color:var(--gold);border:1px solid rgba(201,150,42,.3)}.badge-green{background:#ecfdf5;color:var(--success);border:1px solid rgba(45,155,111,.3)}.page{min-height:100vh;padding-top:var(--nav-height)}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes floatY{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-22px) rotate(8deg)}}@keyframes floatXY{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-25px) scale(1.05)}66%{transform:translate(-22px,18px) scale(.95)}to{transform:translate(0) scale(1)}}@keyframes drift{0%,to{transform:translate(0)}25%{transform:translate(40px,-30px)}50%{transform:translate(-20px,35px)}75%{transform:translate(30px,20px)}}@keyframes pulseSoft{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.95;transform:scale(1.08)}}@keyframes orbit{0%{transform:rotate(0) translate(40px) rotate(0)}to{transform:rotate(360deg) translate(40px) rotate(-360deg)}}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes sparkle{0%,to{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1)}}.animate-up{animation:fadeUp .6s var(--ease) both}.animate-in{animation:fadeIn .4s var(--ease) both}.animate-float{animation:floatY 6s ease-in-out infinite}.animate-floatXY{animation:floatXY 14s ease-in-out infinite}.animate-drift{animation:drift 18s ease-in-out infinite}.animate-pulseSoft{animation:pulseSoft 3.5s ease-in-out infinite}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.pkg-card{position:relative;border-radius:22px;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease);isolation:isolate}.pkg-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--pkg-gradient);z-index:-2;transition:filter .4s}.pkg-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(600px circle at var(--mx, 50%) var(--my, 50%),rgba(255,255,255,.25),transparent 40%);opacity:0;transition:opacity .3s;z-index:-1;pointer-events:none}.pkg-card:hover{transform:translateY(-8px) rotateX(2deg);box-shadow:0 30px 60px -10px #0d0f1a59}.pkg-card:hover:after{opacity:1}.pkg-card:hover:before{filter:brightness(1.08) saturate(1.15)}.bg-blob{position:absolute;border-radius:50%;filter:blur(40px);pointer-events:none}.bg-particle{position:absolute;border-radius:50%;pointer-events:none}@media (prefers-reduced-motion: reduce){.animate-float,.animate-floatXY,.animate-drift,.animate-pulseSoft{animation:none!important}}.skeleton{background:linear-gradient(90deg,var(--border) 25%,#f0ede8 50%,var(--border) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}.divider{border:none;border-top:1px solid var(--border);margin:24px 0}.avatar{border-radius:50%;object-fit:cover;background:var(--gold-pale);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;color:var(--gold);flex-shrink:0}
