:root{--bg:#05060f;--ink:#efeaf7;--mute:#a7a3c2;--gold:#e9c985;--vio:#8f7dff;--rose:#d86fb0;--line:rgba(233,201,133,.22);--glass:rgba(20,18,44,.55);
--serif:'Cormorant Garamond',Georgia,serif;--sans:'Outfit',system-ui,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font:300 17px/1.7 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden;position:relative}
body::before{content:"";position:fixed;inset:0;z-index:-2;background:
radial-gradient(60vw 50vw at 85% -5%,rgba(143,125,255,.28),transparent 60%),
radial-gradient(50vw 45vw at -5% 35%,rgba(216,111,176,.16),transparent 60%),
radial-gradient(70vw 50vw at 60% 110%,rgba(60,90,200,.22),transparent 60%),var(--bg)}
#sky{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.05}
h1{font-size:clamp(3rem,8.5vw,6rem);letter-spacing:-.01em}
h1 em{font-style:italic;background:linear-gradient(100deg,var(--gold),#fff3d4 45%,var(--rose));-webkit-background-clip:text;background-clip:text;color:transparent}
h2{font-size:clamp(2.2rem,5.5vw,3.6rem);margin-bottom:16px}
h3{font-size:1.7rem}
p{max-width:60ch}.mute{color:var(--mute)}

header.top{position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);background:rgba(5,6,15,.55);border-bottom:1px solid rgba(233,201,133,.12)}
header.top .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:16px;padding-bottom:16px}
.logo{font-family:var(--serif);font-size:1.7rem;text-decoration:none;letter-spacing:.02em}
.logo span{color:var(--gold);margin:0 4px}
nav{display:flex;gap:26px;font-size:.95rem}
nav a{text-decoration:none;color:var(--mute);transition:color .2s}
nav a:hover,nav a[aria-current]{color:var(--gold)}

.btn{display:inline-block;background:linear-gradient(110deg,#f3d99b,var(--gold) 50%,#d9a85a);color:#1b1306;padding:15px 30px;border-radius:999px;text-decoration:none;border:0;cursor:pointer;font:500 1rem var(--sans);box-shadow:0 0 28px rgba(233,201,133,.28);transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 0 42px rgba(233,201,133,.45)}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.btn.ghost:hover{border-color:var(--gold);box-shadow:0 0 24px rgba(233,201,133,.2)}

.hero{padding:70px 0 90px}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:30px;align-items:center}
.sub{font:italic 400 1.5rem/1.3 var(--serif);color:var(--gold);margin-bottom:18px}
.hero p.lead{margin:24px 0 34px;font-size:1.12rem;color:var(--mute)}
.cta{display:flex;gap:14px;flex-wrap:wrap}
.cosmos{position:relative;justify-self:center;width:100%;max-width:500px;aspect-ratio:1}
.cosmos::before{content:"";position:absolute;inset:14%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff6dd 0,#e9c985 8%,rgba(143,125,255,.35) 38%,transparent 70%);filter:blur(10px);opacity:.55}
.cosmos svg{position:relative;width:100%;height:100%;overflow:visible}
.o{transform-origin:50% 50%;transform-box:view-box}
.o1{animation:spin 40s linear infinite}.o2{animation:spin 75s linear infinite reverse}.o3{animation:spin 140s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

.band{overflow:hidden;border-block:1px solid var(--line);padding:16px 0;background:rgba(10,9,28,.5)}
.track{display:flex;gap:46px;width:max-content;animation:slide 50s linear infinite;font:400 1.35rem var(--serif);color:var(--gold);white-space:nowrap}
.track span{color:var(--mute);font-size:1rem;font-family:var(--sans);margin-left:10px}
@keyframes slide{to{transform:translateX(-50%)}}

section{padding:96px 0}
.head{text-align:center;margin-bottom:46px}
.head p{margin:0 auto}
.signs{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.sign{background:var(--glass);border:1px solid rgba(233,201,133,.14);border-radius:16px;padding:20px 8px;text-align:center;backdrop-filter:blur(8px);transition:border-color .3s,transform .3s,box-shadow .3s}
.sign:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 0 30px rgba(143,125,255,.25)}
.sign b{display:block;font:400 2.3rem/1.1 var(--serif);color:var(--gold)}
.sign i{display:block;font-style:normal;margin-top:6px;font-size:.95rem}
.sign small{color:var(--mute);font-size:.8rem}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.item{background:var(--glass);border:1px solid rgba(143,125,255,.2);border-radius:20px;padding:28px 26px;backdrop-filter:blur(8px)}
.item .ic{font:400 2rem var(--serif);color:var(--gold);display:block;margin-bottom:8px}
.item h3{font-size:1.45rem;margin-bottom:8px}
.item p{color:var(--mute);font-size:.97rem}

.steps{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:26px;position:relative}
.steps li{counter-increment:s;text-align:center}
.steps li::before{content:counter(s);display:grid;place-items:center;margin:0 auto 18px;width:64px;height:64px;border-radius:50%;font:500 1.9rem var(--serif);color:var(--gold);border:1px solid var(--gold);background:rgba(233,201,133,.07);box-shadow:0 0 30px rgba(233,201,133,.2)}
.steps b{display:block;font:500 1.6rem var(--serif)}
.steps span{color:var(--mute);display:block;margin:6px auto 0;max-width:30ch;font-size:.97rem}

.about{display:grid;grid-template-columns:1fr 1fr;gap:56px}
details{border-bottom:1px solid var(--line);padding:16px 0}
summary{cursor:pointer;font:500 1.35rem var(--serif);list-style:none}
summary::after{content:"✦";float:right;color:var(--gold);font-size:.9rem;transition:transform .3s}
details[open] summary::after{transform:rotate(45deg)}
details p{margin-top:10px;color:var(--mute);font-size:.97rem}

.final{text-align:center}
.final p{margin:0 auto 30px}

.pkgs{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:46px;align-items:stretch}
.pkg{border:1px solid rgba(143,125,255,.28);border-radius:22px;padding:30px 22px;display:flex;flex-direction:column;background:var(--glass);backdrop-filter:blur(10px)}
.pkg.best{border-color:var(--gold);box-shadow:0 0 60px rgba(233,201,133,.16),inset 0 0 40px rgba(143,125,255,.1);position:relative;transform:translateY(-10px)}
.pkg .tag{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--gold);color:#1b1306;font-size:.8rem;font-weight:500;padding:3px 14px;border-radius:999px;white-space:nowrap}
.price{font:500 3rem/1 var(--serif);margin:18px 0 4px;color:var(--gold)}
.price small{font:300 1rem var(--sans);color:var(--mute)}
.pkg ul{list-style:none;margin:20px 0 28px;display:grid;gap:11px;flex:1;font-size:.96rem}
.pkg li{padding-left:24px;position:relative}
.pkg li::before{content:"✦";position:absolute;left:0;color:var(--gold);font-size:.75rem;top:4px}
.pkg .btn{text-align:center}

form{display:grid;gap:18px;margin-top:30px;max-width:660px}
label{display:grid;gap:6px;font-size:.95rem;color:var(--mute)}
input,textarea{background:rgba(5,6,15,.6);color:var(--ink);border:1px solid rgba(143,125,255,.3);border-radius:12px;padding:14px;font:inherit}
input:focus,textarea:focus{border-color:var(--gold);outline:0;box-shadow:0 0 20px rgba(233,201,133,.15)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.chk{display:flex;gap:8px;align-items:center;font-size:.9rem}.chk input{width:auto}
.notice{background:rgba(233,201,133,.07);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-top:24px;max-width:660px;font-size:.93rem}
#ok{display:none;margin-top:20px;padding:20px;border-radius:14px;background:rgba(120,200,150,.1);border:1px solid #78c896}
footer{padding:40px 0;border-top:1px solid var(--line);color:var(--mute);font-size:.9rem;text-align:center}
.alt{background:linear-gradient(180deg,transparent,rgba(10,9,32,.6),transparent)}

@media(max-width:860px){
 .hero .wrap,.about,.grid3,.pkgs,.row,.steps{grid-template-columns:1fr}
 .signs{grid-template-columns:repeat(3,1fr)}
 .cosmos{max-width:320px;order:-1}.hero{padding-top:30px}
 section{padding:64px 0}nav{gap:16px;font-size:.88rem}.pkg.best{transform:none}
}
@media(prefers-reduced-motion:reduce){.o,.track{animation:none}html{scroll-behavior:auto}}

.astro{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:820px;margin:0 auto}
.ast{background:var(--glass);border:1px solid rgba(143,125,255,.28);border-radius:22px;padding:34px 28px;text-align:center;backdrop-filter:blur(10px)}
.av{width:84px;height:84px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;font:500 2.4rem var(--serif);color:#1b1306;background:linear-gradient(135deg,#f3d99b,var(--gold) 50%,var(--rose));box-shadow:0 0 40px rgba(233,201,133,.3)}
.ast .meta{color:var(--gold);margin:4px auto 14px;font-size:.95rem}
.ast p{margin-left:auto;margin-right:auto;color:var(--mute);font-size:.97rem}
@media(min-width:861px) and (max-width:1060px){.pkgs{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.astro{grid-template-columns:1fr}}

.pkg.max{border-color:var(--vio);box-shadow:0 0 60px rgba(143,125,255,.24),inset 0 0 40px rgba(216,111,176,.08);position:relative}
.pkg.max .tag{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--vio);color:#fff;font-size:.8rem;font-weight:500;padding:3px 14px;border-radius:999px;white-space:nowrap}
.ast h3{margin-bottom:18px}
.ast dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid var(--line);padding-top:16px}
.ast dt{color:var(--mute);font-size:.8rem}.ast dd{font:500 1.25rem var(--serif);color:var(--gold)}
@media(max-width:860px){.pkgs{grid-template-columns:1fr;gap:34px}}
