:root{
--df-purple:#6e47df;--df-purple-dark:#4c31b4;--df-teal:#1ebda6;--df-gold:#ffbd43;
--df-ink:#171d3a;--df-muted:#6c748a;--df-bg:#fbfaf8;--df-paper:#fff;--df-line:#e8e8ef;
--df-shadow:0 24px 70px rgba(31,35,71,.12);--df-radius:26px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--df-bg);color:var(--df-ink);font-family:Inter,Arial,sans-serif}
a{text-decoration:none;color:inherit}h1,h2,h3{font-family:Manrope,Inter,sans-serif;letter-spacing:-.045em}p{color:var(--df-muted);line-height:1.7}
.df-container{width:min(1220px,calc(100% - 40px));margin:auto}.df-narrow{width:min(820px,calc(100% - 40px))}
.df-site-header{height:80px;background:rgba(255,255,255,.95);border-bottom:1px solid var(--df-line);position:sticky;top:0;z-index:50;backdrop-filter:blur(16px)}
.df-header-inner{height:100%;display:flex;align-items:center;gap:28px}.df-brand{display:flex;align-items:center;gap:10px}.df-brand-icon{font-size:28px}
.df-brand strong,.df-brand small{display:block}.df-brand strong{font-size:18px}.df-brand em{font-style:normal;background:var(--df-purple);color:#fff;border-radius:6px;padding:2px 5px;font-size:11px}.df-brand small{font-size:9px;color:var(--df-muted)}
.df-main-nav{margin-left:auto}.df-menu{display:flex;gap:25px;list-style:none;margin:0;padding:0}.df-menu a{font-size:12px;font-weight:700}.df-header-actions{display:flex;gap:12px;align-items:center}.df-link{font-weight:800;font-size:12px}
.df-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:13px;font-weight:800}.df-button-primary{background:linear-gradient(135deg,var(--df-purple),#8d66eb);color:#fff}.df-button-secondary{background:#fff;border:1px solid var(--df-line)}.df-button-large{padding:15px 23px}
.df-menu-toggle{display:none;margin-left:auto;border:0;background:none;font-size:24px}
.df-hero{padding:95px 0;background:linear-gradient(135deg,#ebe9ff,#f4e4ff 55%,#fff0de)}.df-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.df-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--df-purple);font-size:10px;font-weight:800}
.df-hero h1{font-size:clamp(3.2rem,6vw,5.6rem);line-height:1.02;margin:18px 0}.df-hero h1 em{display:block;font-style:normal;color:var(--df-purple)}.df-hero p{font-size:18px}.df-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.df-hero-card{min-height:460px;border-radius:50%;display:grid;place-items:center;position:relative;background:radial-gradient(circle,#fff,#eee7ff 60%,transparent 70%)}.df-fairy{font-size:210px}.df-speech{position:absolute;left:5%;top:18%;background:#fff;padding:15px;border-radius:18px 18px 18px 4px;box-shadow:var(--df-shadow);font-size:11px}
.df-section{padding:100px 0}.df-section-heading{text-align:center;max-width:700px;margin:0 auto 45px}.df-section-heading h2{font-size:clamp(2.2rem,4vw,3.4rem)}
.df-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.df-card,.df-content{background:#fff;border:1px solid var(--df-line);border-radius:22px;padding:24px}.df-card>span{font-size:34px}.df-page-hero{padding:80px 0;background:linear-gradient(135deg,#efebff,#eef7ff)}.df-page-hero h1{font-size:clamp(3rem,6vw,5rem)}
.df-site-footer{background:#11182e;color:#fff;padding:55px 0 20px}.df-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.df-site-footer p,.df-site-footer a{color:#aeb7ca}.df-footer-menu{list-style:none;padding:0}.df-footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:18px;margin-top:35px;color:#8992a6;font-size:11px}
@media(max-width:960px){.df-main-nav{display:none;position:absolute;top:80px;left:20px;right:20px;background:#fff;padding:18px;border-radius:16px;box-shadow:var(--df-shadow)}.df-main-nav.open{display:block}.df-menu{flex-direction:column}.df-menu-toggle{display:block}.df-header-actions{display:none}.df-hero-grid{grid-template-columns:1fr}.df-grid-4{grid-template-columns:1fr 1fr}.df-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.df-container{width:min(100% - 28px,1220px)}.df-hero h1{font-size:3.1rem}.df-fairy{font-size:150px}.df-grid-4,.df-footer-grid{grid-template-columns:1fr}}
