
:root{--vio:#1B0F3E;--vio2:#2A1656;--ink:#1A1230;--grey:#5C5478;--mag:#E0479E;--amb:#F5A623;--ivr:#F6F1FF;--lav:#CFC2EC;--magd:#B03A86}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;color:var(--ink);background:#fff;line-height:1.6}
h1,h2,h3,.marcellus{font-family:'Marcellus',Georgia,serif;font-weight:400}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
/* header */
header{background:var(--vio);position:sticky;top:0;z-index:50;border-bottom:1px solid #2E1B58}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;max-width:1180px;margin:0 auto}
.brand{display:flex;align-items:center;gap:12px}
.brand .mark{width:46px;height:40px}
.brand span{font-family:'Marcellus',Georgia,serif;letter-spacing:3px;font-size:20px;color:#FBF8FF}
.brand span b{color:var(--amb);font-weight:400}
.navlinks{display:flex;gap:22px;align-items:center;font-size:15px;color:#D8CBF0}
.navlinks a:hover{color:#fff}
.btn{display:inline-block;border-radius:40px;padding:12px 26px;font-size:15px;font-family:Georgia,serif}
.btn-grad{background:linear-gradient(90deg,var(--mag),var(--amb));color:#1A0A2E}
.btn-line{border:1px solid #9C7CD8;color:var(--ivr)}
.btn-vio{background:var(--vio2);color:#fff}
.btn-amb{background:#B07A14;color:#fff}
.navlinks .btn{padding:9px 18px;font-size:14px}
/* hero */
.hero{position:relative;overflow:hidden;background:var(--vio);text-align:center;padding:92px 22px 84px}
.hero-bg{position:absolute;inset:0;background:radial-gradient(130% 100% at 78% 12%,#5A2E9E 0%,#2A1656 45%,#160A34 100%);animation:drift 9s ease-out forwards}
.hero-wash{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,9,40,.15),rgba(20,9,40,.5))}
.hero .inner{position:relative}
.kicker{font-size:14px;letter-spacing:6px;color:var(--amb);text-transform:uppercase;margin-bottom:22px;font-family:Georgia,serif}
.hero h1{font-size:clamp(42px,7vw,74px);line-height:1.06;color:var(--ivr)}
.hero h1 b{color:var(--amb);font-weight:400}
.hero p{color:var(--lav);font-size:19px;max-width:540px;margin:24px auto 32px}
.chip{position:absolute;right:20px;bottom:20px;background:#fff;border-radius:12px;padding:10px 16px;text-align:center;line-height:1.25}
.chip .a{font-size:10px;letter-spacing:1px;color:var(--magd);font-family:Georgia,serif}
.chip .b{font-family:'Marcellus',Georgia,serif;font-size:16px;color:var(--ink)}
.chip .c{font-size:10px;color:#777}
.rise{opacity:0;animation:rise .9s ease-out forwards}
.d1{animation-delay:.15s}.d2{animation-delay:.4s}.d3{animation-delay:.65s}.d4{animation-delay:.9s}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes drift{from{transform:scale(1.12)}to{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.rise,.hero-bg{animation:none;opacity:1;transform:none}}
/* sections */
section{padding:64px 0}
.sec-k{font-size:13px;letter-spacing:4px;color:var(--magd);text-transform:uppercase;text-align:center;font-family:Georgia,serif}
.sec-t{font-size:clamp(26px,4vw,36px);text-align:center;margin:8px 0 34px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:860px){.grid2,.grid3,.grid4{grid-template-columns:1fr}.navlinks .hideM{display:none}.chip{display:none}}
.shop{border-radius:16px;overflow:hidden;border:1px solid #EAD5E4;background:#fff;display:flex;flex-direction:column}
.shop-h{padding:18px 20px;color:#fff}
.shop-h .s{font-size:12px;letter-spacing:2px;opacity:.85;font-family:Georgia,serif}
.shop-h .t{font-family:'Marcellus',Georgia,serif;font-size:24px}
.shop-b{padding:18px 20px;font-size:16.5px;color:#3A3550;flex:1}
.shop-b div{padding:5px 0;border-bottom:1px dashed #EEE}
.shop-b div:last-child{border-bottom:none}
.shop-f{padding:0 20px 20px}
.shop-f .btn{display:block;text-align:center}
.chooser{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.chooser a{border:1px solid #DDD3EC;border-radius:40px;padding:14px;text-align:center;font-size:16px;color:var(--vio2);background:#fff;font-family:Georgia,serif}
.chooser a:hover{border-color:var(--mag)}
.card{border:1px solid #EEE;border-radius:14px;overflow:hidden;background:#fff}
.card .top{height:82px}
.card .pad{padding:14px 16px}
.card .pad .t{font-size:17px}
.card .pad .s{color:#888;font-size:13.5px;margin-top:4px;font-family:Georgia,serif}
.band{background:var(--vio);text-align:center;padding:64px 22px}
.band h2{color:var(--ivr);font-size:clamp(26px,4vw,34px)}
.band p{color:var(--lav);margin:12px 0 26px}
.soft{background:#FAF8FC}
footer{background:var(--vio);color:#B7A6E8;padding:40px 22px;text-align:center;font-size:14px;font-family:Georgia,serif}
footer .links{margin:14px 0}
footer .links a{margin:0 12px;color:#D8CBF0}
footer .fine{color:#7C6BAE;font-size:12px;letter-spacing:2px;margin-top:14px}
/* interior pages */
.page-hero{background:var(--vio);text-align:center;padding:70px 22px;position:relative;overflow:hidden}
.page-hero .hero-bg{animation:none}
.page-hero h1{font-size:clamp(34px,5vw,52px);color:var(--ivr);position:relative}
.page-hero p{color:var(--lav);position:relative;max-width:560px;margin:14px auto 0;font-size:18px}
.prose{max-width:760px;margin:0 auto;font-size:19px}
.prose h2{font-size:28px;margin:36px 0 12px}
.prose p{margin:0 0 18px;color:#2E2844}
.founder{display:grid;grid-template-columns:320px 1fr;gap:34px;align-items:start;max-width:900px;margin:0 auto}
.founder img{border-radius:16px}
@media(max-width:760px){.founder{grid-template-columns:1fr}}
.step{display:flex;gap:18px;align-items:flex-start;background:#fff;border:1px solid #EEE;border-radius:14px;padding:20px;margin-bottom:14px}
.step .n{flex:0 0 46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Marcellus',Georgia,serif;font-size:20px}
.step h3{font-size:21px;margin-bottom:4px}
.step p{color:var(--grey);font-size:16.5px}
/* form */
form{max-width:640px;margin:0 auto}
label{display:block;font-family:Georgia,serif;font-size:14px;color:var(--grey);margin:16px 0 6px}
input,textarea,select{width:100%;padding:13px 14px;border:1px solid #D9D2E8;border-radius:10px;font-family:Georgia,serif;font-size:15px;background:#fff;color:var(--ink)}
textarea{min-height:130px}
input:focus,textarea:focus,select:focus{outline:2px solid var(--mag);border-color:transparent}
form .btn{margin-top:22px;border:none;cursor:pointer;width:100%}
.note{font-size:14px;color:#8A83A0;text-align:center;margin-top:12px;font-family:Georgia,serif}
