:root {
  --purple:#9B72BE;--purple-dark:#7B52A0;--purple-pale:#FAF7FE;
  --gold:#BF9840;--text:#1C1426;--text-2:#6B5F80;--text-3:#A899BC;
  --border:rgba(166,124,197,.12);--border-2:rgba(166,124,197,.22);
  --bg:#FDFCFF;--white:#FFFFFF;--green:#3BB07A;
  --radius:12px;--radius-xl:28px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Plus Jakarta Sans',sans-serif;background:var(--bg);color:var(--text);min-height:100vh}

nav{position:sticky;top:0;z-index:100;background:rgba(253,252,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:0 6%;display:flex;align-items:center;justify-content:space-between;height:66px}
.nav-logo{font-family:'Fraunces',serif;font-size:26px;font-weight:500;text-decoration:none;letter-spacing:.5px;color:var(--text)}
.nav-logo span{color:var(--purple)}
.nav-back{font-size:13px;font-weight:300;color:var(--text-3);text-decoration:none;display:flex;align-items:center;gap:6px;transition:color .15s}
.nav-back:hover{color:var(--purple)}

.page{max-width:1120px;margin:0 auto;padding:80px 6% 100px;display:grid;grid-template-columns:1fr 1.4fr;gap:80px;align-items:start}

/* LEFT */
.left{position:sticky;top:100px}
.kicker{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--purple);margin-bottom:26px}
.kicker::before{content:'';width:22px;height:1px;background:linear-gradient(90deg,#9B72BE,#BF9840);flex-shrink:0}
.headline{font-family:'Fraunces',serif;font-size:clamp(38px,4vw,60px);font-weight:400;line-height:1.07;letter-spacing:-.5px;color:var(--text);margin-bottom:30px}
.headline em{font-style:italic;font-weight:300;color:var(--purple)}
.body-copy{font-size:16px;font-weight:300;color:var(--text-2);line-height:1.85;margin-bottom:18px}
.closing{font-family:'Fraunces',serif;font-size:19px;font-weight:400;font-style:italic;color:var(--purple);line-height:1.55;margin-bottom:40px;padding-left:18px;border-left:2px solid var(--border-2)}
.email-note{padding:18px 22px;background:var(--white);border:1px solid var(--border-2);border-radius:var(--radius)}
.en-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-bottom:8px}
.en-body{font-size:13px;font-weight:300;color:var(--text-2);line-height:1.7}
.en-body a{color:var(--purple);font-weight:500;text-decoration:none}
.en-body a:hover{text-decoration:underline}

/* RIGHT */
.cal-card{background:var(--white);border:1px solid var(--border-2);border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 4px 32px rgba(155,114,190,.07)}
.cal-header{padding:22px 28px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.cal-title{font-family:'Fraunces',serif;font-size:19px;font-weight:400;color:var(--text);letter-spacing:-.2px}
.cal-meta{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:400;color:var(--text-3)}
.cal-dot{width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0}

/* SUCCESS */
.success{display:none;text-align:center;padding:80px 40px}
.success.show{display:block;animation:rise .35s ease}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.success-mark{width:64px;height:64px;border-radius:50%;background:linear-gradient(120deg,#9B72BE 50%,#BF9840 100%);display:flex;align-items:center;justify-content:center;margin:0 auto 26px;box-shadow:0 8px 28px rgba(155,114,190,.28);font-size:22px}
.success-title{font-family:'Fraunces',serif;font-size:38px;font-weight:400;color:var(--text);margin-bottom:12px;letter-spacing:-.3px;line-height:1.1}
.success-title em{font-style:italic;font-weight:300;color:var(--purple)}
.success-sub{font-size:15px;font-weight:300;color:var(--text-2);line-height:1.75;max-width:360px;margin:0 auto 28px}
.success-note{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;background:var(--purple-pale);border:1px solid var(--border-2);border-radius:30px;font-size:13px;color:var(--text-2)}
.btn-home{display:inline-flex;align-items:center;gap:6px;padding:11px 26px;border-radius:30px;border:1px solid var(--border-2);background:transparent;color:var(--text-2);font-size:14px;font-weight:400;font-family:'Plus Jakarta Sans',sans-serif;text-decoration:none;transition:all .15s;margin-top:24px}
.btn-home:hover{border-color:var(--purple);color:var(--purple)}

@media(max-width:880px){.page{grid-template-columns:1fr;gap:40px;padding-top:48px}.left{position:static}}
@media(max-width:480px){nav{padding:0 5%}.page{padding:40px 5% 80px}}
