@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#443454;--purple:#70528d;--lilac:#eee8f6;--cream:#fffdfa;--muted:#766a80}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:17px/1.75 'DM Sans',Arial,sans-serif}a{color:inherit}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.2;font-weight:500}h1{font-size:clamp(2.7rem,5.5vw,5.2rem);letter-spacing:-.035em;margin:16px 0 26px}h1 em{color:var(--purple)}h2{font-size:clamp(2.2rem,4vw,3.4rem);margin:10px 0 25px}h3{font-size:1.6rem;margin:0 0 20px}p{margin:0 0 20px}.header{display:flex;justify-content:space-between;align-items:center;padding:16px max(5vw,24px);max-width:1500px;margin:auto;gap:20px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;font-size:1.3rem}.brand img{width:60px;height:56px;object-fit:contain;border-radius:50%}.dot{color:#a682c1}nav{display:flex;gap:30px;flex-wrap:wrap}nav a{text-decoration:none;font-size:.9rem;font-weight:600}nav a:hover,.textlink:hover{color:#9a74b3}.hero{background:linear-gradient(125deg,#f5eff9 0%,#faf6fb 60%,#f5eaf0 100%);display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:30px;padding:95px max(8vw,25px);min-height:570px;overflow:hidden}.hero-inner{max-width:770px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.22em;color:#9276a8}.lead{font-size:1.22rem;max-width:610px;color:#6d6077}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:32px}.btn{display:inline-block;border-radius:50px;background:#765493;color:white;padding:13px 27px;text-decoration:none;font-weight:700;font-size:.9rem;transition:transform .2s,background .2s}.btn:hover{background:#5e407b;transform:translateY(-2px)}.textlink{font-weight:700;text-decoration:none;font-size:.95rem}.hero-art{position:relative;display:grid;place-items:center}.hero-art img{width:min(100%,380px);border-radius:50%;box-shadow:0 22px 70px #a48cb455}.sparkle{position:absolute;color:#b58ac4;font-size:45px}.s1{top:2%;right:3%}.s2{bottom:2%;left:4%}.section{max-width:1160px;margin:auto;padding:110px 32px;scroll-margin-top:30px}.section-head{max-width:760px;margin-bottom:45px}.two{display:grid;grid-template-columns:1fr 1fr;gap:85px}.large{font-size:1.25rem;font-weight:600;line-height:1.65}.soft-card{padding:45px;border-radius:24px;background:#f2edf7}.hearts{padding:0;list-style:none;margin:0 0 25px}.hearts li{margin-bottom:7px;font-weight:600}.hearts li:before{content:'♥';color:#ad79c5;margin-right:13px}.quote{text-align:center;background:#f7f1f9;padding:75px 25px}.quote p{font:500 clamp(1.5rem,3.5vw,2.7rem)/1.4 'Playfair Display',Georgia,serif;max-width:900px;margin:auto;color:#75568c}.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.portrait img{display:block;width:100%;max-height:610px;object-fit:cover;border-radius:230px 230px 20px 20px}.invitation{text-align:center;max-width:900px}.invitation .section-head{margin:0 auto 25px}.benefits{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:30px 0}.benefits span{border-radius:40px;background:#f1ebf6;padding:8px 17px;font-size:.9rem}.courses{display:grid;grid-template-columns:1.1fr .9fr;gap:85px;align-items:center}.course-card{padding:45px;border:1px solid #e3d7ed;border-radius:24px;background:#faf7fc}.course-card>span{font-size:3rem;color:#b38acb}.course-card a{color:#6f4d8d;font-weight:700}.contact{text-align:center;background:#73558c;color:white;padding:95px 25px}.contact .eyebrow{color:#e9d9f2}.contact h2{max-width:800px;margin:10px auto 22px}.light{background:white;color:#64447c}.light:hover{background:#f2e9fa;color:#64447c}.contact-detail{font-size:.88rem;margin:24px 0 0}.contact-detail a{text-underline-offset:3px}footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:28px max(5vw,24px);font-size:.82rem;color:var(--muted)}@media(max-width:800px){.header{flex-direction:column}nav{gap:16px;justify-content:center}nav a{font-size:.8rem}.hero{grid-template-columns:1fr;padding:65px 26px}.hero-art img{width:210px}.two,.about,.courses{grid-template-columns:1fr;gap:30px}.section{padding:75px 24px}.soft-card,.course-card{padding:28px}.portrait{max-width:400px;margin:auto}.about .portrait{order:2}footer{justify-content:center;text-align:center}}
