:root{--pet-purple-50:#F5F0FB;--pet-purple-100:#E8DDF6;--pet-purple-200:#D2BBED;--pet-purple-300:#B491E0;--pet-purple-400:#9668D2;--pet-purple-500:#7A45C4;--pet-purple-600:#5E2BA8;--pet-purple-700:#4A208A;--pet-purple-800:#371766;--pet-purple-900:#260F47;--pet-teal-50:#E6F7F8;--pet-teal-100:#C3ECEF;--pet-teal-200:#94DCE2;--pet-teal-300:#4EC1CA;--pet-teal-400:#22A8B3;--pet-teal-500:#0B8D99;--pet-teal-600:#006F7A;--ink-950:#14101C;--ink-900:#201B2D;--ink-800:#2F2940;--ink-700:#4A4358;--ink-600:#6B6478;--ink-500:#8C8697;--ink-400:#B3AEBA;--ink-300:#D4D1DA;--ink-200:#E9E7ED;--ink-100:#F4F3F6;--ink-50:#FAFAFB;--brand:var(--pet-purple-600);--brand-hover:var(--pet-purple-700);--accent:var(--pet-teal-500);--font-sans:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',sans-serif;--shadow-sm:0 2px 6px rgba(38,15,71,.06),0 1px 2px rgba(38,15,71,.04);--shadow-md:0 6px 16px rgba(38,15,71,.08),0 2px 4px rgba(38,15,71,.04);--shadow-lg:0 16px 40px rgba(38,15,71,.10),0 4px 8px rgba(38,15,71,.04);--shadow-xl:0 32px 64px rgba(38,15,71,.14);--shadow-brand:0 18px 44px rgba(94,43,168,.30);--ring-focus:0 0 0 3px rgba(122,69,196,.25);--ease-out:cubic-bezier(.2,.8,.2,1);--deep:linear-gradient(160deg,var(--pet-purple-900) 0%,var(--pet-purple-800) 62%,#1d3d55 135%);}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--font-sans);color:var(--ink-950);background:var(--ink-50);-webkit-font-smoothing:antialiased;line-height:1.5;}
a{color:var(--brand);}a:hover{color:var(--brand-hover);}
.shell{max-width:1180px;margin:0 auto;padding-left:48px;padding-right:48px;}
.nav{position:sticky;top:0;z-index:50;background:rgba(250,250,251,.86);backdrop-filter:blur(12px);border-bottom:1px solid var(--ink-200);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:74px;gap:24px;}
.nav-logo{height:34px;width:auto;display:block;}
.nav-links{display:flex;gap:34px;list-style:none;margin:0;padding:0;}
.nav-links a{text-decoration:none;color:var(--ink-700);font-size:.9375rem;font-weight:500;transition:color 180ms var(--ease-out);}
.nav-links a:hover,.nav-links a.cur{color:var(--brand);}
.btn{display:inline-flex;white-space:nowrap;align-items:center;justify-content:center;gap:9px;cursor:pointer;border:none;font-family:inherit;font-weight:600;letter-spacing:-.01em;text-decoration:none;border-radius:12px;padding:15px 28px;font-size:1rem;transition:background 180ms var(--ease-out),transform 180ms var(--ease-out),border-color 180ms var(--ease-out),color 180ms var(--ease-out);}
.btn svg{width:18px;height:18px;}
.btn:active{transform:scale(.98);}
.btn:focus-visible{outline:none;box-shadow:var(--ring-focus);}
.btn-primary{background:var(--brand);color:#fff;box-shadow:var(--shadow-brand);}
.btn-primary:hover{background:var(--brand-hover);color:#fff;transform:translateY(-2px);}
.btn-teal{background:var(--accent);color:#fff;box-shadow:0 14px 32px rgba(11,141,153,.28);}
.btn-teal:hover{background:var(--pet-teal-600);color:#fff;transform:translateY(-2px);}
.btn-white{background:#fff;color:var(--brand);box-shadow:0 12px 30px rgba(0,0,0,.2);}
.btn-white:hover{background:var(--pet-purple-50);color:var(--brand);transform:translateY(-2px);}
.btn-line{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.32);}
.btn-line:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,.06);}
.btn-ghost{background:#fff;color:var(--ink-800);border:1px solid var(--ink-200);box-shadow:var(--shadow-sm);}
.btn-ghost:hover{border-color:var(--pet-purple-300);color:var(--brand);transform:translateY(-2px);}
.btn-sm{padding:11px 20px;font-size:.9375rem;border-radius:10px;}
.sec-label{font-size:.8125rem;font-weight:700;letter-spacing:.02em;color:var(--accent);text-transform:lowercase;margin:0 0 16px;}
.sec-title{font-size:2.6rem;font-weight:700;line-height:1.1;letter-spacing:-.03em;margin:0 0 18px;color:var(--ink-950);text-wrap:balance;}
.sec-sub{font-size:1.0625rem;line-height:1.65;color:var(--ink-600);margin:0;text-wrap:pretty;}
.dark{background:var(--deep);color:#fff;position:relative;overflow:hidden;}
.dark .sec-label{color:var(--pet-teal-300);}
.dark .sec-title,.dark h1,.dark h2,.dark h3{color:#fff;}
.dark .sec-sub{color:var(--pet-purple-100);}
.footer{background:var(--ink-950);color:var(--ink-300);padding:64px 0 36px;}
.f-top{display:flex;justify-content:space-between;gap:48px;flex-wrap:wrap;}
.f-logo{height:30px;width:auto;filter:brightness(0) invert(1);margin-bottom:16px;display:block;}
.f-tag{font-size:.9375rem;color:var(--ink-400);margin:0;}
.f-cols{display:flex;gap:64px;flex-wrap:wrap;}
.f-h{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-500);margin:0 0 14px;font-weight:600;}
.f-col a{display:block;color:var(--ink-300);text-decoration:none;font-size:.9375rem;margin-bottom:10px;}
.f-col a:hover{color:#fff;}
.f-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:48px;padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:.8125rem;color:var(--ink-500);}
.f-bottom nav{display:flex;gap:24px;flex-wrap:wrap;}
.f-bottom a{color:var(--ink-400);text-decoration:none;}
.f-bottom a:hover{color:#fff;}
[data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);}
[data-reveal].in{opacity:1;transform:none;}
@keyframes rise{to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none;}*{animation-duration:.01ms!important;animation-iteration-count:1!important;}}
@media (max-width:1040px){.nav-links{display:none;}}
@media (max-width:720px){.shell{padding-left:20px;padding-right:20px;}.sec-title{font-size:2rem;}}
