@font-face{font-family:Sora;src:url(/fonts/Sora-Bold.woff2) format("woff2"),url(/fonts/Sora-Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Sora;src:url(/fonts/Sora-SemiBold.woff2) format("woff2"),url(/fonts/Sora-SemiBold.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/Manrope-Medium.woff2) format("woff2"),url(/fonts/Manrope-Medium.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/Manrope-Regular.woff2) format("woff2"),url(/fonts/Manrope-Regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/Manrope-SemiBold.woff2) format("woff2"),url(/fonts/Manrope-SemiBold.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}:root{--font-main: "Manrope", Arial, sans-serif;--font-heading: "Sora", Arial, sans-serif;--color-bg: #ffffff;--color-bg-soft: #f8f7fc;--color-bg-lavender: #f3efff;--color-bg-dark: #0f172a;--color-bg-dark-soft: #151f35;--color-text: #111827;--color-text-soft: #475569;--color-text-muted: #64748b;--color-text-light: #ffffff;--color-primary: #8b5cf6;--color-primary-hover: #7c3aed;--color-primary-soft: #ede9fe;--color-primary-light: #c4b5fd;--color-accent-pink: #d946ef;--color-accent-blue: #0ea5e9;--color-accent-green: #22c55e;--color-accent-yellow: #facc15;--color-accent-orange: #fb923c;--color-accent-red: #ef4444;--color-border: #e5e7eb;--color-border-soft: #eef0f4;--shadow-sm: 0 6px 18px rgba(15, 23, 42, .06);--shadow-md: 0 14px 35px rgba(15, 23, 42, .1);--shadow-lg: 0 24px 70px rgba(91, 33, 182, .18);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 999px;--container: 1360px;--section-padding: 96px;--section-padding-md: 72px;--section-padding-sm: 56px;--transition: .25s ease;--transition-slow: .45s ease;--z-header: 50;--z-modal: 100}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;text-size-adjust:100%}body{margin:0;min-width:320px;font-family:var(--font-main);font-weight:400;font-size:16px;line-height:1.65;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.skip-link{position:fixed;top:-100px;left:50%;z-index:99999;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;font-family:var(--font-main);font-size:.95rem;font-weight:700;color:var(--color-text-light);background:linear-gradient(135deg,var(--color-primary),var(--color-accent-pink));border-radius:14px;box-shadow:0 12px 32px #8b5cf64d,0 4px 12px #00000026;transform:translate(-50%);transition:top .25s ease,opacity .25s ease;opacity:0}.skip-link:focus,.skip-link:focus-visible{top:20px;opacity:1}.main-content{position:relative;min-height:100vh}body.no-scroll{overflow:hidden}img,picture,svg,video,canvas{display:block;max-width:100%}img{height:auto}button,input,textarea,select{font:inherit;color:inherit}button{border:0;padding:0;background:transparent;cursor:pointer}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}p,h1,h2,h3,h4,h5,h6,figure,blockquote{margin:0}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;line-height:1.12;letter-spacing:-.04em}h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2;letter-spacing:-.03em}p{color:var(--color-text-soft)}strong,b{font-weight:600}::selection{color:var(--color-text-light);background:var(--color-primary)}:focus-visible{outline:3px solid rgba(139,92,246,.35);outline-offset:3px}.container{width:min(100% - 32px,var(--container));margin-inline:auto}.section{padding-block:var(--section-padding)}.fade-in{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.fade-in.is-visible{opacity:1;transform:translateY(0)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%)}@media(max-width:1024px){:root{--section-padding: var(--section-padding-md)}}@media(max-width:640px){:root{--section-padding: var(--section-padding-sm)}body{font-size:15px}.container{width:min(100% - 24px,var(--container))}}
