/* niche-gen shell — cobalt: crisp near-white + deep cobalt ink, architectural feel, tighter rhythm. No CDN/JS. */
:root{
  --accent:#0e817f;
  --accent-ink:#ffffff;
  --bg:#fcfcfd; --bg-soft:#eef1f6; --ink:#111a2e; --body:#3a4356; --muted:#6a7285; --line:#dce1ea;
  --maxw:1160px; --r:6px; --r-lg:10px;
  --sh-sm:0 1px 2px rgba(17,26,46,.05);
  --sh:0 14px 32px -16px rgba(17,26,46,.2);
  --ease:cubic-bezier(.3,.6,.15,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font:400 15.5px/1.62 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,system-ui,sans-serif;color:var(--body);background:var(--bg);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.x3e1jwg{max-width:var(--maxw);margin:0 auto;padding:0 24px}
h1,h2,h3{color:var(--ink);line-height:1.04;letter-spacing:-.035em;margin:0 0 .4em;text-wrap:balance}
h1{font-size:clamp(2.3rem,1.5rem + 3vw,3.7rem);font-weight:800}
h2{font-size:clamp(1.6rem,1.15rem + 1.9vw,2.4rem);font-weight:800}
h3{font-size:1.14rem;font-weight:700;letter-spacing:-.02em}
p{margin:0 0 .95rem;max-width:66ch;text-wrap:pretty}
.x9kdcu6{display:inline-flex;align-items:center;gap:.5em;background:var(--accent);color:var(--accent-ink);font-weight:650;font-size:.92rem;padding:.78em 1.55em;border-radius:var(--r);border:0;cursor:pointer;transition:transform .2s var(--ease),box-shadow .2s var(--ease),filter .2s}
.x9kdcu6:hover{transform:translateY(-2px);box-shadow:0 12px 24px -10px color-mix(in srgb,var(--accent) 56%,transparent);filter:saturate(1.07)}
.x9kdcu6:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.x1944ml{background:transparent;color:var(--ink);border:1px solid color-mix(in srgb,var(--ink) 18%,var(--line));box-shadow:none}
.x1944ml:hover{background:var(--bg-soft);box-shadow:none}
/* header */
.x3qhagv{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}
.x3qhagv .x3e1jwg{display:flex;align-items:center;justify-content:space-between;height:64px}
.x8sopfh{display:flex;align-items:center;gap:.5em;font-weight:800;font-size:1.1rem;color:var(--ink);letter-spacing:-.025em}
.x8sopfh .xf4kkz{width:18px;height:18px;border-radius:3px;background:var(--accent)}
.x2g01mg{display:flex;gap:1.7em;align-items:center}
.x2g01mg a:not(.x9kdcu6){color:var(--muted);font-weight:550;font-size:.91rem;transition:color .2s}
.x2g01mg a:not(.x9kdcu6):hover{color:var(--ink)}
@media(max-width:760px){.x2g01mg a:not(.x9kdcu6){display:none}}
/* hero */
.xfoke3a{position:relative;padding:80px 0 60px;overflow:hidden}
.xfoke3a::before{content:"";position:absolute;inset:0;background:radial-gradient(58% 64% at 82% 14%,color-mix(in srgb,var(--accent) 11%,transparent),transparent 68%),linear-gradient(180deg,var(--bg-soft),var(--bg));z-index:-1}
.xfoke3a .x99h8ce{display:grid;grid-template-columns:1.12fr .88fr;gap:46px;align-items:center}
.x63ykkc{display:inline-flex;align-items:center;gap:.5em;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--accent) 72%,var(--ink));border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line));padding:.4em .9em;border-radius:var(--r);margin-bottom:1.1rem}
.xfoke3a p.x6iw0we{font-size:1.14rem;color:var(--body);max-width:38ch}
.xfoke3a .xbq6flw{display:flex;gap:.65em;flex-wrap:wrap;margin-top:1.6rem}
.xfoke3a .x0rh08{border-radius:var(--r-lg);box-shadow:var(--sh);aspect-ratio:16/11;object-fit:cover;width:100%;animation:rise .75s var(--ease) both}
@media(max-width:880px){.xfoke3a .x99h8ce{grid-template-columns:1fr;gap:30px}.xfoke3a{padding:52px 0 44px}}
/* sections */
section{padding:72px 0}
section.x5yf5ww{background:var(--bg-soft)}
.x6iv9s4{max-width:54ch;margin:0 auto 44px;text-align:center}
.x6iv9s4 p{margin:0 auto;color:var(--muted)}
/* features: tight architectural grid */
.x3s79da{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.x2pdd37{padding:26px 24px;background:var(--bg);border:1px solid var(--line);border-radius:var(--r);border-top:3px solid var(--accent)}
.x2pdd37 .xb0gl5s{width:34px;height:34px;border-radius:var(--r);background:color-mix(in srgb,var(--accent) 12%,transparent);color:color-mix(in srgb,var(--accent) 76%,var(--ink));display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;margin-bottom:14px}
.x2pdd37 h3{margin-bottom:.3em}
.x2pdd37 p{font-size:.92rem;margin:0;color:var(--muted)}
/* articles */
.xg2g5wj{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:22px}
.x81hsso{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);transition:transform .26s var(--ease),box-shadow .26s var(--ease),border-color .26s}
.x81hsso:hover{transform:translateY(-3px);box-shadow:var(--sh);border-color:color-mix(in srgb,var(--accent) 30%,var(--line))}
.x81hsso img{aspect-ratio:16/10;object-fit:cover;width:100%}
.x81hsso .xcfu7mz{padding:22px}
.x81hsso h3{margin-bottom:.35em}
.x81hsso p{font-size:.92rem;margin:0;color:var(--muted)}
/* faq */
.x6vyirp{max-width:740px;margin:0 auto;display:flex;flex-direction:column;gap:8px}
.x6vyirp details{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);transition:border-color .2s}
.x6vyirp details[open]{border-color:color-mix(in srgb,var(--accent) 46%,var(--line))}
.x6vyirp summary{cursor:pointer;font-weight:650;color:var(--ink);font-size:1rem;padding:15px 18px;list-style:none;display:flex;justify-content:space-between;gap:1em}
.x6vyirp summary::-webkit-details-marker{display:none}
.x6vyirp summary::after{content:"+";color:var(--accent);font-weight:700;transition:transform .25s var(--ease)}
.x6vyirp details[open] summary::after{transform:rotate(45deg)}
.x6vyirp details p{margin:0;padding:0 18px 16px;color:var(--muted);font-size:.94rem}
/* cta band */
.x1d0cxb{position:relative;overflow:hidden;background:var(--ink);color:#fff;border-radius:var(--r-lg);padding:54px 40px;text-align:center}
.x1d0cxb h2{color:#fff}
.x1d0cxb p{color:#fff;max-width:46ch;margin:0 auto 1.5rem;opacity:.84}
.x1d0cxb .x9kdcu6{background:var(--accent);color:var(--accent-ink)}
.x1d0cxb .x9kdcu6:hover{box-shadow:0 14px 28px -12px color-mix(in srgb,var(--accent) 64%,transparent)}
/* footer */
.x8ygn3c{border-top:1px solid var(--line);padding:54px 0 38px;background:var(--bg-soft);font-size:.92rem}
.x8ygn3c .x3wb9ae{display:flex;justify-content:space-between;gap:42px;flex-wrap:wrap}
.x8ygn3c strong{color:var(--ink);display:block;margin-bottom:.6em;font-size:.84rem;letter-spacing:.04em;text-transform:uppercase}
.x8ygn3c a{color:var(--muted);display:block;margin:.35em 0;transition:color .2s}
.x8ygn3c a:hover{color:var(--ink)}
.x8ygn3c .x69mygu{font-size:.83rem;color:var(--muted);margin-top:30px;border-top:1px solid var(--line);padding-top:22px;max-width:78ch}
/* content pages */
.xdzlff5,.x69mygu{max-width:66ch;margin:0 auto;padding:64px 0}
.xdzlff5 p,.x69mygu p{color:var(--body);max-width:68ch}
.x69mygu h2{margin-top:1.6em;font-size:1.45rem}
/* motion */
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.xfoke3a h1,.xfoke3a .x63ykkc,.xfoke3a p.x6iw0we,.xfoke3a .xbq6flw{animation:rise .68s var(--ease) both}
.xfoke3a .x63ykkc{animation-delay:.02s}.xfoke3a h1{animation-delay:.08s}.xfoke3a p.x6iw0we{animation-delay:.16s}.xfoke3a .xbq6flw{animation-delay:.24s}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}}

/* — subpage block polish (T2) — */
.x5ymsmk{background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:var(--r)}
.x5ymsmk::before{display:none}
.xe3uyms{border-radius:var(--r);background:color-mix(in srgb,var(--accent) 10%,transparent);border-color:color-mix(in srgb,var(--accent) 40%,var(--line));color:color-mix(in srgb,var(--accent) 76%,var(--ink))}
.x3rbizd{color:var(--accent)}
.xe47vm9{border-radius:var(--r);background:color-mix(in srgb,var(--accent) 10%,transparent);color:color-mix(in srgb,var(--accent) 76%,var(--ink))}

.xfoke3a .x0rh08{filter:brightness(0.957) contrast(1.038) saturate(1.011) hue-rotate(-4.867deg);object-position:55% 37%}
.x81hsso img{filter:brightness(1.021) contrast(1) saturate(1.083) hue-rotate(3.898deg);object-position:52% 51%}

:root{--maxw:1188px;--r:12px;--r-lg:28px}
section{padding:69px 0}
h1,h2,h3{font-family:"SF Pro Rounded","Avenir Next",ui-rounded,"Segoe UI",system-ui,sans-serif}
.x9kdcu6{border-radius:14px}

.x3qhagv .x9kdcu6{white-space:nowrap;flex:0 0 auto;max-width:46%;overflow:hidden;text-overflow:ellipsis}
.x3qhagv nav{flex-wrap:wrap}
h1,h2,h3,h4,.x6iw0we,.x63ykkc{overflow-wrap:break-word;hyphens:auto}
.x3qhagv{overflow-x:clip}
.xgbx0ko{width:26px;height:26px;flex:0 0 auto;display:block}
.x2pdd37 .xb0gl5s svg{display:block;width:20px;height:20px}
.x2pdd37>.xb0gl5s{grid-row:1 / span 2}
.x2pdd37>h3,.x2pdd37>p{grid-column:2}
.x1a059m{margin-top:32px;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 30px;background:var(--bg)}
.x1a059m h2{font-size:1.2rem;margin-bottom:16px}
.x16a9m6{display:grid;grid-template-columns:auto 1fr;gap:10px 22px;margin:0}
.x16a9m6 dt{color:var(--muted);font-weight:650;font-size:.92rem}
.x16a9m6 dd{margin:0;color:var(--ink);font-size:.95rem}
.x16a9m6 a{color:color-mix(in srgb,var(--accent) 80%,#000);font-weight:600}
.x899l7g{margin-top:16px;font-size:.82rem;color:var(--muted)}
.x8rk1xj{font-size:.9rem;color:var(--muted);margin-top:18px}
.x8rk1xj a{color:var(--ink)}
.x7qsl00{margin-top:8px}
.x7qsl00 h2{font-size:1.35rem;margin-bottom:.3em}
.xf6w8tc{color:var(--muted);font-size:.95rem;margin-bottom:22px}
.xdls1js{display:grid;gap:16px;max-width:560px}
.xdls1js .x130gb7{display:grid;gap:6px}
.xdls1js label{font-weight:650;font-size:.9rem;color:var(--ink)}
.xdls1js .x6zyu66{color:var(--accent)}
.xdls1js input,.xdls1js textarea{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:.7em .9em;transition:border-color .2s,box-shadow .2s}
.xdls1js input:focus,.xdls1js textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
.xdls1js textarea{resize:vertical;min-height:120px}
.xdls1js button{justify-self:start;margin-top:4px}
.xdls1js select{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:.7em .9em;transition:border-color .2s,box-shadow .2s}
.xdls1js select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
.xdls1js .x27yr8h{border:0;margin:0;padding:0;display:grid;gap:6px}
.xdls1js .x27yr8h legend{font-weight:650;font-size:.9rem;color:var(--ink);padding:0}
.xdls1js .xdu1t6l{display:inline-flex;align-items:center;gap:.5em;font-weight:500;margin-right:1.2em}
.xdls1js .xdu1t6l input{width:auto}
.xdls1js .xcqinrr label{display:flex;align-items:flex-start;gap:.6em;font-weight:500;line-height:1.4}
.xdls1js .xcqinrr input{width:auto;margin-top:.2em;flex:0 0 auto}
.xdls1js .xcqinrr a{color:var(--accent)}
.x6ajrc0{position:fixed;z-index:220;font-size:.88rem;line-height:1.45}
.x4zzfuv{left:0;right:0;top:0;background:var(--accent);color:var(--accent-ink,#fff);padding:.6em 5vw;text-align:center}
.xfdvpel{left:0;right:0;bottom:0;background:color-mix(in srgb,var(--ink) 96%,#000);color:#fff;padding:.7em 5vw;text-align:center}
.x76pd3e{right:16px;top:16px;max-width:340px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--r,10px);padding:.8em 1em;box-shadow:0 14px 40px -18px rgba(0,0,0,.35)}
.x4wq48h{left:50%;transform:translateX(-50%);top:14px;max-width:min(92vw,560px);background:var(--bg-soft,var(--bg));color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:.55em 1.3em;text-align:center;box-shadow:0 10px 30px -14px rgba(0,0,0,.3)}
.x9zwf2o{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.xf5d6vm{position:fixed;left:0;right:0;bottom:0;z-index:200;background:color-mix(in srgb,var(--ink) 96%,#000);color:#fff;border-top:1px solid color-mix(in srgb,#fff 14%,transparent);box-shadow:0 -10px 30px -16px rgba(0,0,0,.5)}
.x9zwf2o:checked ~ .xf5d6vm{display:none}
.xfz0ths{max-width:var(--maxw);margin:0 auto;padding:16px 24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:space-between}
.x4caq64{flex:1 1 360px;min-width:260px}
.x4caq64 strong{display:block;font-size:.98rem;margin-bottom:.2em}
.x4caq64 p{margin:0;font-size:.88rem;color:color-mix(in srgb,#fff 82%,transparent);max-width:70ch}
.x4caq64 a{color:#fff;text-decoration:underline}
.x398psf{display:flex;gap:10px;flex-wrap:wrap}
.x398psf .x9kdcu6{cursor:pointer;font-size:.9rem;padding:.6em 1.3em}
.x398psf .x1944ml{color:#fff;border-color:color-mix(in srgb,#fff 38%,transparent);background:transparent}
.x398psf .x1944ml:hover{background:color-mix(in srgb,#fff 12%,transparent)}
.xdzlff5{display:flex;flex-direction:column;gap:clamp(22px,3vw,32px)}
.xdzlff5>*{margin-top:0;margin-bottom:0}
.xdzlff5>h1{margin-bottom:0}
.xdzlff5>p,.xdzlff5>section,.xdzlff5>div{border-top:0}
.xdzlff5 h2{margin-top:0;font-size:clamp(1.4rem,1.1rem + 1vw,1.85rem)}
.xdzlff5>.x6iw0we{font-size:1.12rem;color:var(--body);max-width:64ch}
.xdzlff5 ul{margin:0 0 1rem;padding-left:1.2em}
.xdzlff5 ul li{margin:.35em 0;color:var(--body)}
.xavzoyg{margin:0;padding:0;border-top:0;border-bottom:0}
.xavzoyg>h2{margin:0 0 clamp(14px,2vw,20px)}
.xa2badd{display:block;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--accent) 75%,var(--muted));margin:0 0 .7em}
.x5gp44y{padding-bottom:clamp(18px,2.5vw,26px);border-bottom:1px solid var(--line)}
.xcxefcw p{margin:0 0 .8em;color:var(--body)}
.xcxefcw p:last-child{margin-bottom:0}
.x5gp44y .x6iw0we{font-size:1.18rem;line-height:1.6;color:var(--body)}
.x6dq9wu{margin-bottom:clamp(16px,2.2vw,22px)}
.x6dq9wu h2{margin:0 0 .25em}
.x6dq9wu p{margin:0;color:var(--muted);max-width:60ch}
.x8972yp p{margin:0 0 1em;color:var(--body);max-width:68ch}
.x8972yp p:last-child{margin-bottom:0}
.x8972yp>h2,.x8972yp>h3{margin:0 0 .4em;color:var(--ink)}
.x3ypx7j{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:clamp(16px,2.2vw,24px)}
.x5ymsmk{position:relative;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(20px,2.4vw,26px);background:var(--bg-soft,var(--bg));display:flex;flex-direction:column;overflow:hidden}
.x5ymsmk::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);opacity:.5}
.xbflk42{font-size:.8rem;font-weight:700;letter-spacing:.06em;color:color-mix(in srgb,var(--accent) 78%,var(--muted));font-variant-numeric:tabular-nums;margin-bottom:.5em}
.x5ymsmk h3{margin:0 0 .4em;font-size:1.12rem;color:var(--ink)}
.x5ymsmk p{margin:0;color:var(--body);font-size:.96rem}
.xfj8hm8{display:flex;align-items:baseline;flex-wrap:wrap;gap:.35em .6em;margin:0 0 .6em;font-size:.82rem;color:var(--muted)}
.xfj8hm8 time{font-variant-numeric:tabular-nums;letter-spacing:.02em}
.xcyg4gp::before{content:"\00B7";margin-right:.6em;color:var(--line)}
.xcyg4gp{font-weight:600;color:color-mix(in srgb,var(--muted) 78%,var(--ink))}
.xp0ph5{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:clamp(18px,2.4vw,26px);position:relative}
.x490plw{position:relative;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}
.xe3uyms{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border-radius:50%;border:1px solid var(--line);background:var(--bg-soft,var(--bg));color:color-mix(in srgb,var(--accent) 82%,var(--ink));font-weight:800;font-size:.92rem;font-variant-numeric:tabular-nums;position:relative;z-index:1}
.x490plw:not(:last-child)::before{content:"";position:absolute;left:21px;top:42px;bottom:calc(-1 * clamp(18px,2.4vw,26px));width:2px;background:var(--line)}
.x3trsvt{padding-top:6px;min-width:0}
.x3trsvt h3{margin:0 0 .3em;font-size:1.12rem;color:var(--ink)}
.x3trsvt p{margin:0;color:var(--body);font-size:.96rem;max-width:62ch}
.xa32dva{display:flex;flex-direction:column}
.x9vkpjm{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:baseline;padding:clamp(16px,2vw,22px) 0;border-top:1px solid var(--line)}
.x9vkpjm:first-child{border-top:0;padding-top:0}
.x9vkpjm:last-child{padding-bottom:0}
.x16jpy7{font-size:1.3rem;font-weight:800;line-height:1;color:color-mix(in srgb,var(--accent) 65%,var(--muted));font-variant-numeric:tabular-nums}
.x4w0cp8 h3{margin:0 0 .25em;font-size:1.08rem;color:var(--ink)}
.x4w0cp8 p{margin:0;color:var(--body);font-size:.96rem;max-width:64ch}
.xffuqx{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:clamp(16px,2.2vw,24px)}
.xflbo98{margin:0;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,2.6vw,28px);background:var(--bg-soft,var(--bg))}
.xflbo98 blockquote{margin:0 0 .9em;color:var(--ink);font-size:1.02rem;line-height:1.55;quotes:none}
.xflbo98 blockquote::before{content:"\201C";color:color-mix(in srgb,var(--accent) 70%,var(--muted));font-size:1.6em;line-height:0;vertical-align:-.35em;margin-right:.05em}
.xflbo98 figcaption{font-size:.9rem;color:var(--muted);font-weight:650}
.xflbo98 figcaption span{display:block;font-weight:400;font-size:.84rem;margin-top:.15em}
.xflultv{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:clamp(14px,2vw,20px)}
.xbnedj5{position:relative;padding-left:1.7em;color:var(--body);font-size:.96rem}
.xbnedj5::before{content:"";position:absolute;left:0;top:.32em;width:.8em;height:.45em;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
.xbnedj5 strong{display:block;color:var(--ink);margin-bottom:.15em}
.x5ymsmk{transition:transform .18s ease-out,box-shadow .18s ease-out,border-color .18s ease-out}
.x5ymsmk:hover{transform:translateY(-2px);box-shadow:var(--sh,0 12px 30px -18px rgba(0,0,0,.35));border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}
.x5ymsmk.xdjy7if::before{opacity:.85}
.x5ymsmk.xdjy7if h3{display:flex;align-items:baseline;gap:.5em}
.x5ymsmk.xdjy7if h3::before{content:"";flex:0 0 auto;width:.62em;height:.36em;border-left:2.5px solid var(--accent);border-bottom:2.5px solid var(--accent);transform:translateY(-.18em) rotate(-45deg)}
.x4etfuf{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:clamp(14px,2vw,22px)}
.xdngilr{position:relative;padding:clamp(18px,2.2vw,24px);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-soft,var(--bg));display:flex;flex-direction:column;gap:.25em}
.xfcal60{font-size:clamp(1.7rem,1.3rem + 1.4vw,2.3rem);font-weight:800;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.x7cxd42{font-weight:650;color:color-mix(in srgb,var(--accent) 75%,var(--ink));font-size:.95rem}
.xf3359u{color:var(--muted);font-size:.86rem;line-height:1.45}
.xe8q7uu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:clamp(16px,2.2vw,24px)}
.x55jeiw{position:relative;display:grid;grid-template-columns:clamp(78px,12%,118px) 1fr;gap:clamp(14px,2vw,22px);padding-left:18px}
.x55jeiw::before{content:"";position:absolute;left:4px;top:.5em;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.x55jeiw:not(:last-child)::after{content:"";position:absolute;left:8px;top:1.1em;bottom:calc(-1 * clamp(16px,2.2vw,24px));width:2px;background:var(--line)}
.xegcm6e{font-weight:700;font-size:.9rem;color:color-mix(in srgb,var(--accent) 78%,var(--muted));font-variant-numeric:tabular-nums;padding-top:.05em}
.x5wqxf1 h3{margin:0 0 .25em;font-size:1.08rem;color:var(--ink)}
.x5wqxf1 p{margin:0;color:var(--body);font-size:.95rem;max-width:60ch}
.x9gtyjn{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:clamp(16px,2.2vw,24px)}
.xjhum8{margin:0;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(20px,2.4vw,26px);background:var(--bg-soft,var(--bg));display:flex;flex-direction:column;gap:.55em;align-items:flex-start}
.xzcj2k{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,var(--bg));color:color-mix(in srgb,var(--accent) 90%,var(--ink));font-weight:800;font-size:1rem;letter-spacing:.02em}
.x1xizb3{display:block;font-weight:700;color:var(--ink)}
.xbayg8s{display:block;font-size:.86rem;color:color-mix(in srgb,var(--accent) 72%,var(--muted));margin-top:.05em}
.xjhum8 p{margin:.35em 0 0;color:var(--body);font-size:.92rem;line-height:1.5}
.xd4mmrs{position:relative;padding:clamp(24px,3vw,34px);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--r-lg);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 6%,var(--bg)),var(--bg-soft,var(--bg)))}
.xd4mmrs>h2{margin:.1em 0 .4em}
.xd4mmrs p{margin:0 0 .7em;color:var(--body);max-width:66ch}
.xd4mmrs .x5o78jb{margin:.2em 0 0;font-weight:700;color:var(--ink);font-size:1.05rem}
.x2n2tp3{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:.55em clamp(20px,3vw,38px)}
.x2n2tp3 li{position:relative;padding-left:1.7em;color:var(--body);font-size:.97rem;line-height:1.5}
.x2n2tp3 li::before{content:"";position:absolute;left:0;top:.28em;width:.8em;height:.46em;border-left:2.5px solid var(--accent);border-bottom:2.5px solid var(--accent);transform:rotate(-45deg)}
.x5o1uyy{margin:0;display:flex;flex-direction:column}
.xb3ugek{padding:clamp(14px,1.8vw,18px) 0;border-top:1px solid var(--line)}
.xb3ugek:first-child{border-top:0;padding-top:0}
.x5o1uyy dt{font-weight:700;color:var(--ink);margin:0 0 .2em}
.x5o1uyy dd{margin:0;color:var(--body);font-size:.96rem;line-height:1.55;max-width:68ch}
.xdzlff5 .x6vyirp{display:flex;flex-direction:column;gap:10px}
.x2gglmy{padding:clamp(22px,2.6vw,28px) clamp(24px,3vw,30px);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-soft,var(--bg))}
.x2gglmy h2{font-size:1.2rem;margin-bottom:.4em}
.x2gglmy p{font-size:.95rem;color:var(--muted);margin-bottom:14px}
.x2gglmy ul{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:6px}
.x2gglmy ul li{color:var(--body);font-size:.95rem}
.xchtrb0{padding:clamp(28px,4vw,40px) clamp(24px,4vw,36px);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-soft,var(--bg))}
.xchtrb0>h2{margin:0 0 clamp(18px,2.5vw,26px)}
.x5tusgt{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:clamp(20px,3vw,30px)}
.xe47vm9{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:color-mix(in srgb,var(--accent) 88%,var(--ink));font-weight:800;font-size:.9rem;font-variant-numeric:tabular-nums;margin-bottom:.7em}
.x92qmi5 h3{font-size:1.08rem;margin-bottom:.35em}
.x92qmi5 p{font-size:.95rem;color:var(--muted);margin:0;max-width:42ch}
.x4reepc{padding:clamp(28px,4vw,40px) clamp(24px,4vw,36px);border:1px solid var(--line);border-radius:var(--r-lg)}
.x4reepc>h2{margin:0 0 clamp(18px,2.5vw,26px)}
.xfh3sqn{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:clamp(20px,3vw,32px)}
.x46g31a{display:flex;flex-direction:column;gap:4px}
.x3rbizd{font-size:clamp(1.6rem,1.2rem + 1.4vw,2.1rem);font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1.05}
.x8m64c7{font-size:.92rem;color:var(--muted)}
.x79hyuq .x1d0cxb{margin:0}
.x7xy57a{display:grid;grid-template-columns:1fr;gap:clamp(28px,4vw,44px)}
@media(min-width:900px){.x7xy57a{grid-template-columns:230px minmax(0,1fr);align-items:start}}
.x25bcni{font-size:.9rem}
@media(min-width:900px){.x25bcni{position:sticky;top:88px}}
.xbc62x1{font-weight:700;color:var(--ink);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;margin:0 0 .8em}
.x25bcni ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55em;counter-reset:toc}
.x25bcni li{counter-increment:toc}
.x25bcni a{color:var(--muted);display:flex;gap:.6em;line-height:1.4;transition:color .2s}
.x25bcni a::before{content:counter(toc,decimal-leading-zero);color:color-mix(in srgb,var(--accent) 70%,var(--muted));font-variant-numeric:tabular-nums;font-weight:650}
.x25bcni a:hover{color:var(--ink)}
.x4qfkym{min-width:0;display:flex;flex-direction:column;gap:clamp(20px,2.6vw,30px)}
.x4qfkym>*{margin:0}
.x4qfkym>.x6iw0we{font-size:1.1rem;color:var(--body)}
.xbo7sza{margin:0;padding:0;border-top:0;border-bottom:0;scroll-margin-top:88px}
.xbo7sza>h2{font-size:clamp(1.25rem,1.05rem + .8vw,1.6rem);margin:0 0 .5em}
.xbo7sza p{color:var(--body);margin:0 0 .9em}
.xbo7sza p:last-child{margin-bottom:0}
.xa0uaab{margin:0;padding:0 0 clamp(18px,2.4vw,26px);border-top:0;border-bottom:1px solid var(--line)}
.xa0uaab p{color:var(--body);margin:0 0 .8em}
.xa0uaab p:last-child{margin-bottom:0}
.xfuutr9{font-size:.86rem;color:var(--muted);margin:0}
.x1klchl{margin:0;font-size:.92rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:.4em .9em;align-items:baseline}
.x1klchl a{color:color-mix(in srgb,var(--accent) 80%,#000);font-weight:600}
.x1klchl a:hover{text-decoration:underline}
.xdzlff5:has(.x7xy57a){max-width:980px}
@keyframes xdav1z{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
[data-fu9ec2] [data-gd92vz]{animation:xdav1z .55s cubic-bezier(.2,.7,.2,1) both;animation-delay:.05s}
[data-fu9ec2] [data-gd92vz="in"]{opacity:1;transform:none;animation:none;transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
@media (prefers-reduced-motion: reduce){[data-fu9ec2] [data-gd92vz],[data-fu9ec2] [data-gd92vz="in"]{opacity:1 !important;transform:none !important;animation:none !important;transition:none !important}}
.x9kdcu6:active{transform:translateY(0) scale(.97);filter:none;box-shadow:none}
.xdzlff5 a:not(.x9kdcu6){color:color-mix(in srgb,var(--accent) 82%,#000);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 35%,transparent);text-underline-offset:2px;transition:text-decoration-color .2s}
.xdzlff5 a:not(.x9kdcu6):hover{text-decoration-color:var(--accent)}
.x25bcni a{text-decoration:none}
.x8ygn3c .x69mygu a{display:inline;margin:0}
.x1z0bvk{position:absolute;left:8px;top:-48px;z-index:2147483646;background:var(--accent);color:var(--accent-ink);padding:8px 14px;border-radius:8px;font:600 14px/1 system-ui,sans-serif;text-decoration:none;transition:top .15s}
.x1z0bvk:focus{top:8px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.x33yshh{display:none;flex-direction:column;justify-content:center;gap:4px;width:44px;height:44px;padding:0;margin-left:auto;background:none;border:0;color:inherit;cursor:pointer}
.x33yshh span{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s}
.x33yshh[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.x33yshh[aria-expanded="true"] span:nth-child(2){opacity:0}
.x33yshh[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:760px){.x3qhagv{position:relative;overflow:visible}.x33yshh{display:inline-flex}.x2g01mg{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--bg);border-top:2px solid var(--accent);box-shadow:0 12px 30px rgba(0,0,0,.14);padding:.3em 5vw .7em;display:none;z-index:60}.x2g01mg[data-9phiz8]{display:flex}.x2g01mg[data-9phiz8] a{display:block;padding:.75em 0;border-bottom:1px solid rgba(128,128,128,.15)}.x2g01mg[data-9phiz8] a:not(.x9kdcu6){display:block}.x2g01mg[data-9phiz8] .x9kdcu6{margin-top:.6em;text-align:center;border-bottom:0}}

/* Sidebar-docs layout family — a fixed left rail (brand + vertical nav) beside a scrolling content
   column, like a docs / dashboard site. Appended after the theme skin + shared EXTRA_CSS; uses theme
   tokens so it works on all 37 skins. Mobile (<900px) collapses the rail to a normal top bar. */

/* ── Desktop: two-column app shell ── */
@media(min-width:900px){
  body.x989qbi{display:grid;grid-template-columns:clamp(232px,22vw,288px) 1fr;align-items:start}
  .x9ulgxp{position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column;gap:22px;border-right:1px solid var(--line);border-bottom:0;background:var(--bg-soft,var(--bg))}
  .x8s05e5{flex-direction:column;align-items:stretch;gap:2px}
  .x4703wn{display:block}
}

/* ── Rail contents ── */
.x9ulgxp{padding:clamp(20px,2vw,28px) clamp(18px,1.6vw,24px)}
.x3sy6vz{display:inline-flex;align-items:center;gap:.5em;font-weight:800;font-size:1.15rem}
.x3b8jmn{letter-spacing:-.01em}
.x8s05e5{display:flex;flex-wrap:wrap;gap:6px 16px}
.x8s05e5 a{padding:.5em .7em;border-radius:var(--r,10px);color:var(--muted);font-weight:600;font-size:.96rem}
.x8s05e5 a:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--ink)}
.x1w46pw{align-self:flex-start;color:var(--accent-ink,#fff);background:var(--accent);border:0;padding:.6em 1.2em;border-radius:var(--r,10px)}
.x1w46pw:hover{color:var(--accent-ink,#fff);filter:brightness(.96)}
/* body-token, not muted: .82rem small print over the tinted rail bg must hold WCAG 4.5:1 on
   light themes (haven/linen measured 3.4:1 with --muted). */
.x4703wn{display:none;margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:.82rem;color:var(--body,var(--ink));line-height:1.6}
.x4703wn a{color:var(--ink)}

/* ── Main column: keep the theme sections, a touch tighter than full-bleed ── */
.xewozy{min-width:0}
.xewozy .xfoke3a{padding-top:clamp(36px,5vw,64px)}
.xewozy section>.x3e1jwg,.xewozy .xfoke3a>.x3e1jwg{max-width:1080px}
.xa5ehi2{border-top:1px solid var(--line)}

/* ── Sub-page prose sits in a comfortable measure within the content column ── */
.x3v4if8{max-width:820px}
.xedhfla{margin:.55em 0 0;font-size:.86rem;line-height:1.45;color:inherit;max-width:30ch}



body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,system-ui,sans-serif}

@font-face{font-family:"h0iq3lue07alue";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/f0iq3lue07alue-0.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"h0iq3lue07alue";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/f0iq3lue07alue-1.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"b0iq3lue07alue";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/f0iq3lue07alue-2.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"b0iq3lue07alue";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/f0iq3lue07alue-3.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
body{font-family:"b0iq3lue07alue",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
h1,h2,h3,h4{font-family:"h0iq3lue07alue",Georgia,"Times New Roman",serif}
