:root{
color-scheme:light;
--canvas:#EEF3FF;
--canvas-deep:#E1EAFB;
--surface:#F8FAFF;
--ink:#26324A;
--body-c:#4F5D75;
--muted:#6B6485;
--hairline:rgba(38,50,74,.08);
--hairline-strong:rgba(38,50,74,.16);
--primary:#70A1FC;
--primary-active:#5D79B3;
--primary-soft:#DCE8FF;
--on-primary:#ffffff;
--success:#22c55e;
--warning:#f59e0b;
--error:#dc2626;
--clay-light:rgba(255,255,255,.9);
--clay-dark:rgba(110,140,200,.45);
--scrim:rgba(26,23,48,.55);
--radius-card:28px;
--radius-lg:24px;
--radius-md:20px;
--radius-sm:16px;
--radius-pill:999px;
--font:'Inter',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
[data-theme="dark"]{
color-scheme:dark;
--canvas:#1A1730;
--canvas-deep:#15122A;
--surface:#221D3C;
--ink:#F1EEFB;
--body-c:#C7C0E0;
--muted:#8E86AC;
--hairline:rgba(255,255,255,.08);
--hairline-strong:rgba(255,255,255,.16);
--primary:#9A7AFB;
--primary-active:#B196FB;
--primary-soft:#2E2650;
--on-primary:#1A1730;
--clay-light:rgba(255,255,255,.05);
--clay-dark:rgba(0,0,0,.55);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
html,body{margin:0;padding:0;min-height:100%}
body{
font-family:var(--font);
background:var(--canvas);
color:var(--body-c);
-webkit-font-smoothing:antialiased;
overflow-x:hidden;
padding-bottom:calc(96px + env(safe-area-inset-bottom,0px));
transition:background .3s ease,color .3s ease;
}
a{text-decoration:none;color:inherit}
button{font-family:var(--font);border:none;background:none;cursor:pointer;color:inherit}
h1,h2,h3,h4,p{margin:0}
svg{flex-shrink:0}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
@media(max-width:640px){.wrap{padding:0 20px}
}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--primary);outline-offset:3px}
#loader{position:fixed;inset:0;z-index:9999;background:var(--canvas);display:flex;align-items:center;justify-content:center;transition:opacity .4s ease,visibility .4s ease}
#loader.hide{opacity:0;visibility:hidden}
.loader-blob{width:64px;height:64px;border-radius:28px;background:var(--primary-soft);box-shadow:8px 8px 20px var(--clay-dark),-8px -8px 20px var(--clay-light);animation:pulse 1.1s ease-in-out infinite}
@keyframes pulse{0%,100%{transform:scale(.85)}50%{transform:scale(1.05)}}
.sec{padding:80px 0}
.sec-alt{background:var(--canvas-deep)}
.sec-head{max-width:680px;margin:0 auto 40px;text-align:center}
.sec-kicker{display:inline-block;font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--primary);background:var(--primary-soft);padding:6px 14px;border-radius:var(--radius-pill);margin-bottom:14px}
.sec-head h2{font-size:clamp(26px,4vw,38px);line-height:1.15;font-weight:700;letter-spacing:-.5px;color:var(--ink);margin-bottom:12px}
.sec-head h2 .accent{color:var(--primary)}
.sec-head p{font-size:16.5px;line-height:1.65;color:var(--muted)}
.sub-title{font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin:0 0 16px}
.block{margin-bottom:48px}
.block:last-child{margin-bottom:0}
.hero{position:relative;overflow:hidden;padding:72px 0 64px;text-align:center}
.blob{position:absolute;border-radius:50%;filter:blur(2px);opacity:.55;z-index:0;pointer-events:none}
.blob-1{width:340px;height:340px;background:var(--primary-soft);top:-110px;left:-120px}
.blob-2{width:260px;height:260px;background:#FFE3D2;bottom:-90px;right:-80px}
[data-theme="dark"] .blob{opacity:.15}
.hero .wrap{position:relative;z-index:1}
.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase}
.hero-dot{width:7px;height:7px;border-radius:50%;background:var(--primary)}
.hero h1{margin:20px auto 0;max-width:820px;font-size:clamp(34px,6vw,56px);line-height:1.07;font-weight:700;letter-spacing:-.28px;color:var(--ink)}
.hero h1 .accent{color:var(--primary)}
.hero-sub{margin:18px auto 0;max-width:620px;font-size:18px;line-height:1.55;font-weight:400;color:var(--body-c)}
.hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}
.btn{min-height:46px;padding:0 24px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:15px;font-weight:600;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease}
.btn svg{width:17px;height:17px}
.btn-primary{background:var(--primary);color:var(--on-primary);box-shadow:6px 6px 14px var(--clay-dark),-6px -6px 14px var(--clay-light)}
.btn-primary:hover{background:var(--primary-active);transform:translateY(-3px)}
.btn-primary:active{transform:scale(.95);background:var(--primary-active)}
.btn-secondary{background:var(--surface);color:var(--ink);box-shadow:6px 6px 14px var(--clay-dark),-6px -6px 14px var(--clay-light)}
.btn-secondary:hover{color:var(--primary);transform:translateY(-3px)}
.btn-secondary:active{transform:scale(.95)}
.btn-outline{background:transparent;color:var(--ink);border:1px solid var(--hairline-strong)}
.btn-outline:hover{color:var(--primary);border-color:var(--primary)}
.btn-outline:active{transform:scale(.95)}
.btn-soft{background:var(--primary-soft);color:var(--primary)}
.btn-soft:hover{transform:translateY(-2px)}
.btn-soft:active{transform:scale(.95)}
.btn-danger{background:var(--error);color:#fff;box-shadow:6px 6px 14px var(--clay-dark),-6px -6px 14px var(--clay-light)}
.btn-danger:active{transform:scale(.95)}
.btn:disabled,.btn[disabled]{background:var(--primary-soft);color:var(--muted);box-shadow:none;transform:none;cursor:not-allowed}
.btn-sm{min-height:40px;padding:0 18px;font-size:14px}
.btn-lg{min-height:56px;padding:0 34px;font-size:16px;font-weight:700}
.btn-block{width:100%}
.btn-icon{width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;background:var(--surface);color:var(--ink);box-shadow:4px 4px 10px var(--clay-dark),-4px -4px 10px var(--clay-light)}
.btn-icon:hover{color:var(--primary);transform:translateY(-2px)}
.btn-icon:active{transform:scale(.92)}
.link-more{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink);transition:color .2s ease}
.link-more:hover{color:var(--primary)}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.chip-row{display:flex;flex-wrap:wrap;gap:12px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;border:1.5px solid transparent;box-shadow:4px 4px 10px var(--clay-dark),-4px -4px 10px var(--clay-light);transition:transform .2s ease,color .2s ease,background .2s ease}
.chip:hover{transform:translateY(-2px);color:var(--primary)}
.chip.active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}
.chip svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.chip-filter{background:var(--surface);border:1px solid var(--hairline-strong);box-shadow:none;font-weight:400;padding:8px 14px}
.chip-filter.active{background:var(--ink);color:var(--canvas);border-color:var(--ink)}
.tabs{display:flex;gap:24px;border-bottom:1px solid var(--hairline);overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{padding:12px 0;font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;transition:color .2s}
.tab:hover{color:var(--ink)}
.tab.active{color:var(--ink);border-bottom-color:var(--ink)}
.badge{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:var(--radius-pill);font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.badge-primary{background:var(--primary-soft);color:var(--primary)}
.badge-success{background:rgba(34,197,94,.15);color:var(--success)}
.badge-warning{background:rgba(245,158,11,.16);color:var(--warning)}
.badge-error{background:rgba(220,38,38,.14);color:var(--error)}
.badge-gold{background:#F3EAD0;color:#8A6D1F}
[data-theme="dark"] .badge-gold{background:#3A3822;color:#CBDD98}
.badge-dot{width:7px;height:7px;border-radius:50%;background:currentColor}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
@media(max-width:900px){.grid-3{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){.grid-3,.grid-2{grid-template-columns:1fr}
}
.card{background:var(--surface);border-radius:var(--radius-lg);padding:26px 24px;box-shadow:8px 8px 20px var(--clay-dark),-8px -8px 20px var(--clay-light)}
.card-ico{width:48px;height:48px;border-radius:16px;background:var(--primary);color:var(--on-primary);display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:4px 4px 12px color-mix(in srgb,var(--primary) 40%,transparent)}
.card-ico svg{width:22px;height:22px}
.card h3{font-size:18px;font-weight:700;color:var(--ink);margin-bottom:8px}
.card p{font-size:14.5px;line-height:1.6;color:var(--muted);margin-bottom:16px}
.card-flat{background:var(--surface);border:1px solid var(--hairline);box-shadow:none}
.stat{text-align:center}
.stat b{display:block;font-size:40px;line-height:1.1;font-weight:700;letter-spacing:-.2px;color:var(--primary)}
.stat span{display:block;margin-top:6px;font-size:14px;color:var(--muted)}
.faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.faq-item{background:var(--surface);border-radius:20px;box-shadow:5px 5px 14px var(--clay-dark),-5px -5px 14px var(--clay-light);overflow:hidden}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;font-size:16px;font-weight:700;color:var(--ink)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:20px}
.faq-chev{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center;transition:transform .25s ease,background .2s ease,color .2s ease}
.faq-chev svg{width:16px;height:16px}
.faq-item[open] .faq-chev{transform:rotate(180deg);background:var(--primary);color:var(--on-primary)}
.faq-item p{padding:0 22px 20px;font-size:15px;line-height:1.65;color:var(--muted)}
.cta-band{background:var(--primary);border-radius:var(--radius-card);padding:56px 28px;text-align:center;box-shadow:10px 10px 24px var(--clay-dark),-10px -10px 24px var(--clay-light)}
.cta-band h2{font-size:clamp(26px,4vw,34px);font-weight:700;line-height:1.15;color:var(--on-primary);margin-bottom:12px}
.cta-band p{max-width:520px;margin:0 auto 26px;font-size:16px;line-height:1.6;color:var(--on-primary);opacity:.88}
.cta-band .btn{background:var(--on-primary);color:var(--primary);box-shadow:none}
[data-theme="dark"] .cta-band .btn{background:var(--ink);color:var(--canvas)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
}
:root{
--e-flat:none;
--e-sm:4px 4px 10px var(--clay-dark),-4px -4px 10px var(--clay-light);
--e-md:6px 6px 14px var(--clay-dark),-6px -6px 14px var(--clay-light);
--e-lg:10px 10px 24px var(--clay-dark),-10px -10px 24px var(--clay-light);
--e-pressed:inset 4px 4px 10px var(--clay-dark),inset -4px -4px 10px var(--clay-light);
--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:80px;
--z-nav:50;--z-menu:49;--z-side:48;--z-dock:100;--z-drawer:210;--z-toast:300;--z-modal:500;--z-loader:9999;
--dur-fast:.2s;--dur-med:.25s;--dur-slow:.4s;--ease:ease;--ease-out:cubic-bezier(.2,.8,.2,1);
}
.ds-skel{border-radius:12px;background:linear-gradient(90deg,var(--canvas-deep) 25%,var(--primary-soft) 50%,var(--canvas-deep) 75%);background-size:200% 100%;animation:dsShim 1.4s linear infinite}
@keyframes dsShim{to{background-position:-200% 0}}
.ds-prog{height:12px;border-radius:99px;background:var(--canvas-deep);box-shadow:var(--e-pressed);overflow:hidden}
.ds-prog i{display:block;height:100%;border-radius:99px;background:var(--primary);transition:width var(--dur-slow) var(--ease-out)}
.nav{ position:sticky; top:0; z-index:50; background:var(--canvas); border-bottom:1px solid var(--hairline); backdrop-filter:blur(16px) saturate(160%); }
.nav .wrap{ display:flex; align-items:center; justify-content:space-between; height:76px; }
.brand{ display:flex; align-items:center; gap:10px; font-weight:700; font-size:16px; color:var(--ink); }
.brand-text{ display:flex; flex-direction:column; line-height:1.15; }
.brand-name{ color:var(--ink); font-size:17px; font-weight:700; letter-spacing:-.2px; }
.brand-accent{ color:var(--primary); }
.brand-by{ color:var(--muted); font-size:11.5px; font-weight:400; letter-spacing:.1px; }
.brand-mark{ width:36px; height:36px; border-radius:12px; background:none; display:flex; align-items:center; justify-content:center; box-shadow:none; }
.brand-mark img{ width:32px; height:32px; }
.nav-right{ display:flex; align-items:center; gap:12px; }
.theme-btn{ width:44px; height:44px; border-radius:14px; background:var(--surface); display:flex; align-items:center; justify-content:center; color:var(--ink); box-shadow: 4px 4px 10px var(--clay-dark), -4px -4px 10px var(--clay-light); transition:transform .2s ease; }
.theme-btn:hover{ transform:translateY(-2px); }
.theme-btn svg{ width:18px; height:18px; }
.nav-cta{ display:inline-flex; align-items:center; justify-content:center; height:44px; padding:0 18px; border-radius:var(--radius-pill); background:var(--primary); color:var(--on-primary); font-size:14px; font-weight:600; box-shadow: 4px 4px 10px var(--clay-dark), -4px -4px 10px var(--clay-light); transition:transform .2s ease,background .2s ease; }
.nav-cta:hover{ background:var(--primary-active); transform:translateY(-2px); }
.nav-request{ display:inline-flex; align-items:center; justify-content:center; gap:8px; width:44px; height:44px; padding:0; border-radius:14px; background:var(--surface); color:var(--ink); font-size:14px; font-weight:600; white-space:nowrap; box-shadow: 4px 4px 10px var(--clay-dark), -4px -4px 10px var(--clay-light); transition:transform .2s ease,color .2s ease; }
.nav-request:hover{ color:var(--primary); transform:translateY(-2px); }
.nav-request svg{ width:17px; height:17px; flex-shrink:0; }
@media(max-width:640px){.nav .wrap{height:68px}.nav-right{gap:8px}.nav-cta{display:none}.nav-request{width:44px;padding:0;border-radius:14px}.nav-request-text{display:none}}
@media(max-width:400px){.nav .wrap{padding:0 14px}
.nav-right{gap:6px}
.theme-btn,.nav-request{width:44px;height:44px}
}
.nav-icons{display:flex;align-items:center;gap:inherit}
.ham-btn{display:none;width:44px;height:44px;border-radius:14px;background:var(--surface);color:var(--ink);align-items:center;justify-content:center;box-shadow:4px 4px 10px var(--clay-dark),-4px -4px 10px var(--clay-light)}
.mobile-menu{display:none;flex-direction:column;position:fixed;top:76px;left:0;right:0;z-index:49;background:var(--canvas);border-bottom:1px solid var(--hairline);padding:0 20px;max-height:0;overflow:hidden;transition:max-height .25s ease,padding .25s ease}
.mobile-menu.open{max-height:80vh;overflow-y:auto;padding:8px 20px 20px}
.mobile-menu{transition:max-height .25s ease,padding .25s ease,visibility 0s}.mobile-menu:not(.open){border-bottom-width:0;visibility:hidden;transition:max-height .25s ease,padding .25s ease,visibility 0s .25s}
.mobile-menu a{font-size:15px;font-weight:600;color:var(--ink);padding:14px 4px;border-bottom:1px solid var(--hairline)}
.mobile-menu a.active{color:var(--primary)}
.mobile-menu a:last-child{border-bottom:none}
.ham-btn{display:flex}
.mobile-menu{display:flex}
@media(min-width:1100px){.mobile-menu{left:auto;right:20px;width:260px;border:1px solid var(--hairline);border-radius:var(--radius-card);box-shadow:var(--e-lg)}
.mobile-menu:not(.open){border-color:transparent;box-shadow:none}
}
@media(max-width:640px){.mobile-menu{top:68px}
.brand-by{display:none}
.nav-home{display:none}
}
@media(max-width:520px){.brand-text{display:none}
}
@media(max-width:400px){.ham-btn{width:44px;height:44px}
.brand-name{font-size:15px}
.brand-by{font-size:10.5px}
}
.ham-icon path{transform-box:fill-box;transform-origin:center;transition:transform .25s ease,opacity .2s ease}
.ham-btn[aria-expanded="true"] .ham-top{transform:translateY(6px) rotate(45deg)}
.ham-btn[aria-expanded="true"] .ham-mid{opacity:0;transform:scaleX(0)}
.ham-btn[aria-expanded="true"] .ham-bot{transform:translateY(-6px) rotate(-45deg)}
.nav{transition:transform .35s var(--ease-out,cubic-bezier(.2,.8,.2,1))}
.nav.up{transform:translateY(-100%)}
:root{--purple:#D9CCFF;--purple-ink:#3E2A9E;--blue:#C7DDFF;--blue-ink:#1F4FA3;--green:#C6F0D3;--green-ink:#1B6B3A;--red:#FFCFCF;--red-ink:#A12626;--yellow:#FFF0A8;--yellow-ink:#7A5C00;--pink:#FFCFE6;--pink-ink:#9E2A68;--orange:#FFD9B8;--orange-ink:#A34A0B;--teal:#BDF0EA;--teal-ink:#0F6A63;--lime:#E0F5A8;--lime-ink:#4D6B0A;--cyan:#BDEBFF;--cyan-ink:#0B6180;--sbc:var(--primary)}
[data-theme="dark"]{--purple:#3B2F75;--purple-ink:#E3DAFF;--blue:#26427A;--blue-ink:#D6E6FF;--green:#1F5A36;--green-ink:#D3F6DF;--red:#7A2A2A;--red-ink:#FFDADA;--yellow:#6B5A1A;--yellow-ink:#FFF2B8;--pink:#7A2F58;--pink-ink:#FFDAEE;--orange:#7A4220;--orange-ink:#FFE2CB;--teal:#1D5A56;--teal-ink:#CCF6F1;--lime:#4A5E1E;--lime-ink:#E8F8BE;--cyan:#1C5670;--cyan-ink:#CDF1FF;}
.theme-btn{position:relative;overflow:hidden}
.theme-btn svg{position:absolute;inset:0;margin:auto;transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .3s ease}
#themeIconSun{opacity:1;transform:rotate(0) scale(1)}
#themeIconMoon{opacity:0;transform:rotate(-90deg) scale(.3)}
[data-theme="dark"] #themeIconSun{opacity:0;transform:rotate(90deg) scale(.3)}
[data-theme="dark"] #themeIconMoon{opacity:1;transform:rotate(0) scale(1)}
.theme-btn:active{transform:translateY(0) scale(.92)}
::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}
::view-transition-old(root){z-index:1}
::view-transition-new(root){z-index:2}
html.theme-swap *{transition:none!important}
@media(prefers-reduced-motion:reduce){.theme-btn svg{transition:none}
}
.nav{-webkit-backdrop-filter:blur(16px) saturate(1.5);backdrop-filter:blur(16px) saturate(1.5);background:color-mix(in srgb,var(--canvas) 80%,transparent);border-bottom:1px solid var(--hairline);box-shadow:0 8px 24px -16px var(--clay-dark)}
.nav-right{gap:10px}
.nav-request,.theme-btn,.ham-btn{transition:transform .2s var(--ease-out),color .2s,box-shadow .2s,background .2s}
.nav-request:active,.theme-btn:active,.ham-btn:active{transform:scale(.92)}
.nav-request:focus-visible,.theme-btn:focus-visible,.ham-btn:focus-visible{outline:2px solid var(--primary);outline-offset:3px}
.nav-request[aria-current="page"]{background:var(--primary-soft);color:var(--primary)}
.mm{display:none;align-items:center;gap:12px}
.mm svg{width:20px;height:20px;flex:none;color:var(--primary)}
@media(min-width:1024px){
.nav-request{width:auto;padding:0 16px 0 14px;gap:8px}
.nav-request::after{content:attr(title);font-size:14px;font-weight:700}
.nav-request svg{width:18px;height:18px}
}
@media(max-width:1023px){.nav-home,.nav-faq{display:none}.mm-home,.mm-faq{display:flex}}
@media(max-width:639px){.nav-contact{display:none}.mm-contact{display:flex}}
@media(max-width:359px){.nav-new{display:none}.mm-new{display:flex}.nav .wrap{padding:0 12px}.nav-right{gap:8px}}
footer.wmf{--f-surface:#F8FAFF;--f-canvas:#EEF3FF;--f-ink:#26324A;--f-body:#4F5D75;--f-muted:#6B6485;--f-hair:rgba(38,50,74,.08);--f-primary:#70A1FC;display:block;position:relative;float:none;clear:both;width:auto;max-width:none;margin:0;padding:64px 0 0;text-align:left;background:var(--f-surface);border:0;border-top:1px solid var(--f-hair);border-radius:0;overflow:visible;color:var(--f-muted);font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-size:16px;font-weight:400;line-height:1.5;letter-spacing:normal;text-transform:none}
[data-theme="dark"] footer.wmf{--f-surface:#221D3C;--f-canvas:#1A1730;--f-ink:#F1EEFB;--f-body:#C7C0E0;--f-muted:#8E86AC;--f-hair:rgba(255,255,255,.08);--f-primary:#9A7AFB}
footer.wmf,footer.wmf *,footer.wmf *::before,footer.wmf *::after{box-sizing:border-box}
footer.wmf .wmf-wrap{max-width:1240px;margin:0 auto;padding:0 32px}
footer.wmf .wmf-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px 48px;padding:0 0 48px;margin:0}
footer.wmf a{text-decoration:none;background:none;box-shadow:none}
footer.wmf .wmf-brand{display:inline-flex;align-items:center;gap:12px;color:var(--f-ink)}
footer.wmf .wmf-mark{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:none;box-shadow:none}
footer.wmf .wmf-mark img{width:36px;height:36px;display:block;max-width:none}
footer.wmf .wmf-brand-text{display:flex;flex-direction:column;line-height:1.2}
footer.wmf .wmf-brand-name{color:var(--f-ink);font-size:20px;font-weight:700}
footer.wmf .wmf-accent{color:var(--f-primary)}
footer.wmf .wmf-brand-by{color:var(--f-muted);font-size:13px;font-weight:400}
footer.wmf .wmf-desc{margin:16px 0 0;max-width:300px;color:var(--f-muted);font-size:14px;font-weight:300;line-height:1.55}
footer.wmf .wmf-mascot{display:inline-flex;align-items:center;gap:12px;margin-top:20px;padding:8px 14px 8px 8px;border:1px solid var(--f-hair);border-radius:18px;background:var(--f-canvas);color:var(--f-ink);transition:transform .2s ease,border-color .2s ease}
footer.wmf .wmf-mascot:hover,footer.wmf .wmf-mascot:focus-visible{border-color:var(--f-primary);transform:translateY(-2px)}
footer.wmf .wmf-mascot img{width:72px;height:auto;aspect-ratio:16/9;border-radius:10px;display:block;object-fit:cover;max-width:none}
footer.wmf .wmf-mascot span{display:flex;flex-direction:column;line-height:1.25}
footer.wmf .wmf-mascot b{font-size:14px;font-weight:700;color:var(--f-ink)}
footer.wmf .wmf-mascot small{font-size:12px;color:var(--f-muted)}
footer.wmf .wmf-social{display:flex;flex-direction:column;gap:14px;margin-top:24px}
footer.wmf .wmf-social-label{margin-bottom:6px;color:var(--f-muted);font-size:12px;line-height:1.3}
footer.wmf .wmf-social-row{display:flex;flex-wrap:wrap;gap:8px}
footer.wmf .wmf-social-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--f-hair);background:var(--f-canvas);color:var(--f-ink);transition:transform .2s ease,color .2s ease,border-color .2s ease}
footer.wmf .wmf-social-btn:hover,footer.wmf .wmf-social-btn:focus-visible{color:var(--f-primary);border-color:var(--f-primary);transform:translateY(-2px)}
footer.wmf .wmf-social-btn:active{transform:scale(.95)}
footer.wmf .wmf-social-btn svg{width:24px;height:24px;display:block}
footer.wmf .wmf-title{margin:0 0 12px;padding:0;color:var(--f-ink);font-family:inherit;font-size:18px;font-weight:700;line-height:1.4;letter-spacing:normal;text-transform:none}
footer.wmf .wmf-links{list-style:none;margin:0;padding:0}
footer.wmf .wmf-links li{margin:0;padding:0;list-style:none}
footer.wmf .wmf-links a,footer.wmf .wmf-legal a{display:inline-flex;align-items:center;min-height:44px;color:var(--f-body);font-size:15px;font-weight:400;line-height:1.4;transition:color .2s ease}
footer.wmf .wmf-links a:hover,footer.wmf .wmf-links a:focus-visible,footer.wmf .wmf-legal a:hover,footer.wmf .wmf-legal a:focus-visible{color:var(--f-primary)}
footer.wmf .wmf-bottom{border-top:1px solid var(--f-hair)}
footer.wmf .wmf-bottom-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;padding-top:14px;padding-bottom:14px}
footer.wmf .wmf-copy{color:var(--f-muted);font-size:14px;line-height:1.43;letter-spacing:-.1px}
footer.wmf .wmf-legal{display:flex;flex-wrap:wrap;gap:0 28px;margin-right:64px}
@media(max-width:900px){footer.wmf .wmf-grid{grid-template-columns:repeat(3,1fr)}
footer.wmf .wmf-brand-col{grid-column:1 / -1}
}
@media(max-width:640px){footer.wmf{padding-top:48px}
footer.wmf .wmf-wrap{padding:0 20px}
footer.wmf .wmf-grid{grid-template-columns:1fr;gap:28px;padding-bottom:32px}
footer.wmf .wmf-bottom-inner{flex-direction:column;align-items:flex-start}
footer.wmf .wmf-legal{margin-right:0}
}
body{padding-bottom:0}
.skip-link{position:absolute;left:12px;top:-60px;z-index:10000;padding:10px 18px;border-radius:var(--radius-pill);background:var(--primary);color:var(--on-primary);font-weight:700;transition:top .2s}
.skip-link:focus{top:12px}
.ic{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.nav-request .ic{width:18px;height:18px}
.mm .ic{width:20px;height:20px;color:var(--primary)}
.btn .ic{width:17px;height:17px}
.text-link{color:var(--primary);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}
.text-link:hover{color:var(--primary-active)}
.center-row{display:flex;justify-content:center;margin-top:36px}
.toast.show{opacity:1}
.news-hero{padding:72px 0 56px}
.list-hero{padding:56px 0 40px}
.hero h1 .accent,.sec-head h2 .accent{color:var(--primary)}
.hero-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px}
.pill{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;box-shadow:var(--e-sm)}
.pill .ic{width:16px;height:16px;color:var(--primary)}
.tag{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:var(--radius-pill);background:var(--c);color:var(--k);font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase}
.tag .ic{width:15px;height:15px}
.news-grid{align-items:stretch}
.ncard{display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--e-md);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;color:inherit}
.ncard:hover,.ncard:focus-visible{transform:translateY(-6px);box-shadow:10px 14px 26px var(--clay-dark),-8px -8px 20px var(--clay-light)}
.ncard-top{display:flex;align-items:center;justify-content:space-between;gap:12px;height:104px;padding:0 22px;background:var(--c);color:var(--k)}
.ncard-top .big{width:46px;height:46px;opacity:.9}
.ncard-top .tag{background:rgba(255,255,255,.55);color:var(--k)}
[data-theme="dark"] .ncard-top .tag{background:rgba(0,0,0,.28)}
.ncard-body{display:flex;flex-direction:column;gap:10px;padding:20px 22px 22px;flex:1}
.ncard h3{font-size:18px;line-height:1.3;font-weight:700;color:var(--ink);letter-spacing:-.1px}
.ncard p{font-size:14.5px;line-height:1.6;color:var(--muted);margin:0}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:auto;padding-top:6px;font-size:12.5px;color:var(--muted)}
.meta .dot,.post-meta .dot{width:4px;height:4px;border-radius:50%;background:var(--hairline-strong);display:inline-block}
.feature{display:grid;grid-template-columns:1.35fr 1fr;gap:24px;align-items:stretch}
.fcard{display:flex;flex-direction:column;border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--e-lg);overflow:hidden;transition:transform .2s ease}
.fcard:hover{transform:translateY(-6px)}
.fcard-top{display:flex;align-items:center;justify-content:space-between;min-height:190px;padding:28px 32px;background:var(--c);color:var(--k)}
.fcard-top .big{width:84px;height:84px;opacity:.9}
.fcard-top .tag{background:rgba(255,255,255,.55);color:var(--k)}
[data-theme="dark"] .fcard-top .tag{background:rgba(0,0,0,.28)}
.fcard-body{display:flex;flex-direction:column;gap:12px;padding:28px 32px 32px;flex:1}
.fcard h3{font-size:clamp(22px,3vw,30px);line-height:1.2;font-weight:700;letter-spacing:-.4px;color:var(--ink)}
.fcard p{font-size:16px;line-height:1.65;color:var(--body-c)}
.side-list{display:flex;flex-direction:column;gap:16px}
.scard{display:flex;gap:16px;align-items:center;padding:16px 18px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--e-md);transition:transform .2s ease;flex:1}
.scard:hover{transform:translateX(4px)}
.scard-ic{flex:0 0 52px;width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:var(--c);color:var(--k)}
.scard-ic .ic{width:24px;height:24px}
.scard h3{font-size:15.5px;line-height:1.35;font-weight:700;color:var(--ink)}
.scard small{display:block;margin-top:4px;font-size:12px;color:var(--muted)}
.topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.topic{display:flex;flex-direction:column;gap:6px;padding:22px 22px 20px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--e-md);transition:transform .2s ease,box-shadow .2s ease}
.topic:hover{transform:translateY(-6px);box-shadow:10px 14px 26px var(--clay-dark),-8px -8px 20px var(--clay-light)}
.topic-ic{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:var(--c);color:var(--k);margin-bottom:8px}
.topic-ic .ic{width:26px;height:26px}
.topic b{font-size:17px;color:var(--ink)}
.topic span{font-size:13px;color:var(--muted)}
@media(max-width:1000px){.topic-grid{grid-template-columns:repeat(2,1fr)}.feature{grid-template-columns:1fr}}
@media(max-width:520px){.topic-grid{grid-template-columns:1fr}.fcard-top{min-height:150px;padding:22px}.fcard-body{padding:22px}}
.cat-chips{justify-content:center;margin-bottom:36px}
.cat-chips .chip{padding:10px 16px}
.pager{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:40px}
.pager a,.pager span{min-width:44px;height:44px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:var(--surface);color:var(--ink);font-weight:700;font-size:14px;box-shadow:var(--e-sm)}
.pager a:hover{color:var(--primary);transform:translateY(-2px)}
.pager span[aria-current]{background:var(--primary);color:var(--on-primary)}
.arch-month{margin-bottom:40px}
.arch-month h2{font-size:20px;color:var(--ink);margin-bottom:14px}
.arch-list{display:flex;flex-direction:column;gap:12px}
.arch-item{display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--e-sm);transition:transform .2s}
.arch-item:hover{transform:translateX(4px)}
.arch-item time{flex:0 0 74px;font-size:12.5px;font-weight:700;color:var(--muted)}
.arch-item b{font-size:15.5px;color:var(--ink);font-weight:600;line-height:1.35}
.arch-item .tag{margin-left:auto;flex:none}
@media(max-width:640px){.arch-item{flex-wrap:wrap;gap:6px 12px}.arch-item .tag{margin-left:0}}
.search-form{display:flex;gap:12px;max-width:680px;margin:0 auto 18px}
.sinput{flex:1;min-width:0;height:56px;padding:0 20px;border-radius:var(--radius-pill);border:1.5px solid var(--hairline-strong);background:var(--canvas-deep);color:var(--ink);font-family:var(--font);font-size:16px;box-shadow:var(--e-pressed)}
.sinput:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}
.search-status{text-align:center;margin:0 auto 28px}
@media(max-width:520px){.search-form{flex-direction:column}.search-form .btn{width:100%}}
.crumbs{max-width:760px;margin:0 auto 18px}
.crumbs ol{display:flex;flex-wrap:wrap;gap:2px 4px;list-style:none;margin:0;padding:0;font-size:13.5px}
.crumbs li{display:flex;align-items:center;color:var(--muted)}
.crumbs li+li::before{content:"/";margin:0 6px 0 2px;color:var(--hairline-strong)}
.crumbs a{color:var(--primary);font-weight:600;padding:8px 0}
.crumbs [aria-current]{color:var(--body-c);max-width:46ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.article{max-width:760px;margin:0 auto}
.post{padding-top:36px}
.post-head{margin-bottom:26px}
.post-h1{margin:16px 0 14px;font-size:clamp(28px,5vw,44px);line-height:1.12;font-weight:700;letter-spacing:-.6px;color:var(--ink)}
.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:14px;color:var(--muted)}
.ai-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:700}
.quick{padding:22px 24px;border-radius:var(--radius-lg);background:var(--primary-soft);box-shadow:var(--e-sm);margin:0 0 30px}
.quick b{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;letter-spacing:1.4px;text-transform:uppercase;color:var(--primary)}
.quick b .ic{width:16px;height:16px;fill:currentColor}
.quick p{font-size:17.5px;line-height:1.65;color:var(--ink)}
.keypts{margin:0 0 30px;padding:24px 26px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--e-md)}
.keypts h2,.post-faq h2{font-size:20px;color:var(--ink);margin-bottom:14px}
.keypts ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.keypts li{position:relative;padding-left:30px;font-size:16px;line-height:1.6;color:var(--body-c)}
.keypts li::before{content:"";position:absolute;left:0;top:.5em;width:14px;height:14px;border-radius:50%;background:var(--primary-soft);box-shadow:inset 0 0 0 4px var(--primary)}
.prose p{font-size:18px;line-height:1.8;color:var(--body-c);margin:0 0 1.2em}
.prose h2{font-size:24px;color:var(--ink);margin:1.6em 0 .6em;letter-spacing:-.3px}
.prose ul{padding-left:1.2em;color:var(--body-c);font-size:17px;line-height:1.75}
.prose li{margin-bottom:.4em}
.prose strong{color:var(--ink);font-weight:600}
.brief-list{display:flex;flex-direction:column;gap:14px;margin:0 0 26px}
.brief{display:block;padding:18px 20px;border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--e-sm);transition:transform .2s}
.brief:hover{transform:translateY(-3px)}
.brief .tag{margin-bottom:10px}
.brief h3{font-size:17px;line-height:1.35;color:var(--ink);margin-bottom:6px}
.brief p{font-size:14.5px;line-height:1.6;color:var(--muted)}
.srcbox{display:flex;gap:16px;align-items:flex-start;padding:20px 22px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--e-md);margin:30px 0}
.srcbox .ico{flex:0 0 46px;width:46px;height:46px;border-radius:14px;background:var(--primary);color:var(--on-primary);display:flex;align-items:center;justify-content:center}
.srcbox .ico .ic{width:22px;height:22px}
.srcbox small{display:block;font-size:12px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted)}
.srcbox a.src{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-size:16px;font-weight:700;color:var(--primary);line-height:1.4;overflow-wrap:anywhere}
.srcbox p{margin-top:6px;font-size:13.5px;color:var(--muted);line-height:1.55}
.post-faq{margin:38px 0 0}
.post-faq .faq-list{max-width:none}
.faq-item p{margin:0}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:36px 0 18px}
.share-label{font-size:12px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);margin-right:4px}
.share a,.share button{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);color:var(--ink);box-shadow:var(--e-sm);transition:transform .2s,color .2s}
.share a:hover,.share button:hover{color:var(--primary);transform:translateY(-2px)}
.share svg{width:20px;height:20px}
.share svg.ic{width:20px;height:20px}
.disclosure{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border-radius:var(--radius-md);border:1px dashed var(--hairline-strong);font-size:13.5px;line-height:1.6;color:var(--muted)}
.disclosure .ic{width:18px;height:18px;margin-top:2px;color:var(--primary)}
.related{margin-top:64px}
.about h2{margin-top:1.6em}
.about h2:first-child{margin-top:0}
.progress{position:fixed;top:0;left:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:var(--primary);z-index:60;pointer-events:none}
html.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
html.js .reveal.in{opacity:1;transform:none}
.cta-row{justify-content:center}
.cta-band .btn{min-height:46px}
