/* NTH:SECTION START blog */
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- listing hero ---------- */
.nth-bhero{padding:84px 0 48px;border-bottom:1px solid var(--nth-rule);background:linear-gradient(180deg,var(--nth-band) 0%,var(--nth-page) 100%)}
.nth-bhero-row{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap}
.nth-bhero-row>div:first-child{flex:1 1 480px;min-width:0}
.nth-bhero h1{font-size:clamp(38px,5.4vw,64px);line-height:1.06;margin:20px 0 18px;max-width:18ch}
.nth-bhero h1 em{font-style:normal;background:var(--nth-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.nth-bhero .nth-lede{margin-bottom:6px}
.nth-bsearch{position:relative;flex:0 1 340px;width:340px;max-width:100%;margin-bottom:8px}
.nth-bsearch input{width:100%;font:400 15px/1 var(--nth-b);color:var(--nth-ink);padding:15px 48px 15px 18px;border:1px solid var(--nth-rule);border-radius:var(--nth-r);background:var(--nth-page);outline:none;transition:border-color .15s,box-shadow .15s}
.nth-bsearch input:focus{border-color:var(--nth-green);box-shadow:0 0 0 3px rgba(123,77,242,.14)}
.nth-bsearch button{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;background:none;cursor:pointer;display:grid;place-items:center}
.nth-bsearch svg{width:18px;height:18px;stroke:var(--nth-sub);fill:none;stroke-width:1.7;stroke-linecap:round}
.nth-cats{display:flex;gap:8px;flex-wrap:wrap;margin-top:36px}
.nth-cat{font:500 14px/1 var(--nth-b);padding:10px 16px;border:1px solid var(--nth-rule);border-radius:999px;background:var(--nth-page);color:var(--nth-ink2);transition:border-color .15s,color .15s}
.nth-cat:hover{border-color:var(--nth-green);color:var(--nth-ink)}
.nth-cat.is-on{background:var(--nth-grad);border-color:transparent;color:#fff}

/* ---------- cards ---------- */
.nth-bsec{padding:64px 0 110px}
.nth-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.nth-post{display:flex;flex-direction:column;border:1px solid var(--nth-rule);border-radius:10px;background:var(--nth-card);overflow:hidden;transition:transform .18s,box-shadow .18s,border-color .18s}
.nth-post:hover{transform:translateY(-3px);border-color:var(--nth-line);box-shadow:0 24px 40px -28px rgba(51,40,90,.28)}
.nth-post-img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--nth-band)}
.nth-post-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.nth-post:hover .nth-post-img img{transform:scale(1.03)}
.nth-post-ph{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#F1ECFF 0%,#E6EEFF 55%,#DDF1FF 100%)}
.nth-post-ph img{width:64px;height:64px;object-fit:contain;opacity:.55;transition:none}
.nth-post:hover .nth-post-ph img{transform:none}
.nth-post-body{display:flex;flex-direction:column;flex:1;padding:24px 24px 22px}
.nth-post-meta{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--nth-sub);margin-bottom:14px}
.nth-post-meta .nth-tag{color:var(--nth-indigo);border-color:var(--nth-line)}
.nth-post h3{font-size:21px;line-height:1.25;margin-bottom:12px}
.nth-post h3 a:hover{color:var(--nth-green)}
.nth-post p{font-size:15.5px;color:var(--nth-ink2);flex:1}
.nth-post-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;padding-top:16px;border-top:1px solid var(--nth-rule);font-size:13px;color:var(--nth-sub)}

/* featured */
.nth-post-featured{display:grid;grid-template-columns:1.15fr 1fr;margin-bottom:24px}
.nth-post-featured .nth-post-img{aspect-ratio:auto;min-height:340px;height:100%}
.nth-post-featured .nth-post-body{padding:44px 44px 36px;justify-content:center}
.nth-post-featured h3{font-size:clamp(26px,3vw,36px);line-height:1.14}
.nth-post-featured p{font-size:17px;flex:0 0 auto}

/* pagination */
.nth-pager{margin-top:56px}
.nth-pager ul{list-style:none;margin:0;padding:0;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.nth-pager a,.nth-pager span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;border:1px solid var(--nth-rule);border-radius:var(--nth-r);font:500 14px/1 var(--nth-b);color:var(--nth-ink2);background:var(--nth-page)}
.nth-pager a:hover{border-color:var(--nth-green);color:var(--nth-ink)}
.nth-pager .current{background:var(--nth-grad);border-color:transparent;color:#fff}
.nth-pager .dots{border-color:transparent;background:none}
.nth-empty{text-align:center;padding:40px 0}
.nth-empty .nth-h2{margin-left:auto;margin-right:auto}
.nth-empty .nth-lede{margin:0 auto}

/* ---------- single: header ---------- */
.nth-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;background:transparent;pointer-events:none}
.nth-progress i{display:block;height:100%;width:0;background:var(--nth-grad);transition:width .08s linear}
.nth-ahead{padding:64px 0 36px}
.nth-crumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13.5px;color:var(--nth-sub);margin-bottom:30px}
.nth-crumbs a{color:var(--nth-sub)}
.nth-crumbs a:hover{color:var(--nth-ink)}
.nth-crumbs span{color:var(--nth-sub2)}
.nth-ahead h1{font-size:clamp(34px,4.6vw,56px);line-height:1.08;margin:20px 0 20px;max-width:22ch}
.nth-ahead .nth-lede{margin-bottom:6px}
.nth-ameta{display:flex;align-items:center;gap:14px;margin-top:30px}
.nth-ameta b{display:block;font:700 15px/1.2 var(--nth-h);color:var(--nth-ink)}
.nth-ameta span{font-size:13.5px;color:var(--nth-sub)}
.nth-avatar{border-radius:50%;object-fit:cover;background:var(--nth-band);border:1px solid var(--nth-rule);width:40px;height:40px}
.nth-acover{margin:12px 0 0;border:1px solid var(--nth-rule);border-radius:12px;overflow:hidden;background:var(--nth-band)}
.nth-acover img{width:100%;height:auto;max-height:560px;object-fit:cover}

/* ---------- single: layout + TOC ---------- */
.nth-asec{padding:56px 0 96px}
.nth-alayout{display:grid;grid-template-columns:264px minmax(0,720px);gap:72px;justify-content:center;align-items:start}
.nth-alayout.no-toc{grid-template-columns:minmax(0,720px)}
.nth-toc{position:sticky;top:104px;max-height:calc(100vh - 128px);overflow:auto;border:1px solid var(--nth-rule);border-radius:10px;background:var(--nth-card);padding:22px 22px 18px}
.nth-toc summary{list-style:none;cursor:default;font:600 12px/1 var(--nth-h);letter-spacing:.14em;text-transform:uppercase;color:var(--nth-sub);display:flex;align-items:center;gap:10px;margin-bottom:14px}
.nth-toc summary::-webkit-details-marker{display:none}
.nth-toc summary::before{content:"";width:18px;height:1px;background:var(--nth-green)}
.nth-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--nth-rule);counter-reset:nth-toc}
.nth-toc li{margin:0}
.nth-toc li.top{counter-increment:nth-toc}
.nth-toc a{position:relative;display:block;padding:8px 0 8px 18px;margin-left:-1px;border-left:2px solid transparent;font:400 14.5px/1.4 var(--nth-b);color:var(--nth-ink2);transition:color .15s,border-color .15s}
.nth-toc li.top a::before{content:counter(nth-toc,decimal-leading-zero);font:600 11px/1 var(--nth-h);color:var(--nth-sub2);margin-right:10px;letter-spacing:.04em}
.nth-toc li.sub a{padding-left:40px;font-size:13.5px;color:var(--nth-sub)}
.nth-toc a:hover{color:var(--nth-ink)}
.nth-toc a.is-active{color:var(--nth-ink);border-left-color:var(--nth-green);font-weight:600}
.nth-toc a.is-active::before{color:var(--nth-green)}

/* ---------- single: article body ---------- */
.nth-prose{font-size:18.5px;line-height:1.75;color:var(--nth-ink2)}
.nth-prose > *:first-child{margin-top:0}
.nth-prose p{margin:0 0 1.35em}
.nth-prose h2{font-size:clamp(26px,3vw,34px);line-height:1.18;margin:2.1em 0 .7em;scroll-margin-top:100px}
.nth-prose h3{font-size:22px;line-height:1.28;margin:1.8em 0 .6em;scroll-margin-top:100px}
.nth-prose h4{font-size:18px;margin:1.6em 0 .5em}
.nth-prose a{color:var(--nth-indigo);text-decoration:underline;text-decoration-color:var(--nth-line);text-underline-offset:3px;transition:text-decoration-color .15s}
.nth-prose a:hover{text-decoration-color:var(--nth-indigo)}
.nth-prose strong{color:var(--nth-ink);font-weight:700}
.nth-prose ul,.nth-prose ol{margin:0 0 1.4em;padding-left:1.4em}
.nth-prose li{margin:.4em 0;padding-left:.2em}
.nth-prose li::marker{color:var(--nth-green)}
.nth-prose blockquote{margin:2em 0;padding:6px 0 6px 26px;border-left:3px solid var(--nth-green);font:italic 400 21px/1.55 var(--nth-b);color:var(--nth-ink)}
.nth-prose blockquote p{margin:0 0 .6em}
.nth-prose blockquote cite{display:block;font:500 14px/1 var(--nth-b);font-style:normal;color:var(--nth-sub)}
.nth-prose img,.nth-prose video{border-radius:10px;height:auto}
.nth-prose figure{margin:2em 0}
.nth-prose figcaption{margin-top:10px;font-size:13.5px;color:var(--nth-sub);text-align:center}
.nth-prose hr{border:0;border-top:1px solid var(--nth-rule);margin:2.6em 0}
.nth-prose code{font:500 .86em/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--nth-band);border:1px solid var(--nth-rule);border-radius:4px;padding:.15em .4em;color:var(--nth-ink)}
.nth-prose pre{margin:2em 0;padding:20px 22px;background:#25223A;color:#E9E6FA;border-radius:10px;overflow:auto;font-size:14.5px;line-height:1.65}
.nth-prose pre code{background:none;border:0;padding:0;color:inherit;font-size:inherit}
.nth-prose table{width:100%;border-collapse:collapse;margin:2em 0;font-size:15.5px}
.nth-prose figure.wp-block-table{overflow-x:auto}
.nth-prose th,.nth-prose td{padding:12px 14px;border-bottom:1px solid var(--nth-rule);text-align:left}
.nth-prose th{font:700 13px/1.2 var(--nth-h);letter-spacing:.04em;text-transform:uppercase;color:var(--nth-ink);background:var(--nth-band)}
.nth-prose .alignwide,.nth-prose .alignfull{max-width:100%}
.nth-prose .aligncenter{margin-left:auto;margin-right:auto}
.nth-prose .wp-block-button__link{display:inline-block;background:var(--nth-grad);color:#fff;text-decoration:none;padding:14px 22px;border-radius:var(--nth-r);font-weight:500}

.nth-afoot{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:56px;padding:22px 0;border-top:1px solid var(--nth-rule);border-bottom:1px solid var(--nth-rule)}
.nth-atags{display:flex;gap:8px;flex-wrap:wrap}
.nth-share{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:14px;color:var(--nth-sub)}
.nth-share a,.nth-share button{font:500 13px/1 var(--nth-b);padding:9px 14px;border:1px solid var(--nth-rule);border-radius:var(--nth-r);background:var(--nth-page);color:var(--nth-ink);cursor:pointer;transition:border-color .15s}
.nth-share a:hover,.nth-share button:hover{border-color:var(--nth-green)}
.nth-abox{display:flex;gap:18px;align-items:flex-start;margin-top:36px;padding:26px;border:1px solid var(--nth-rule);border-radius:10px;background:var(--nth-card)}
.nth-abox .nth-avatar{width:56px;height:56px;flex:none}
.nth-abox small{display:block;font:600 11px/1 var(--nth-h);letter-spacing:.14em;text-transform:uppercase;color:var(--nth-sub2);margin-bottom:8px}
.nth-abox b{font:800 18px/1.2 var(--nth-h);color:var(--nth-ink)}
.nth-abox p{margin-top:8px;font-size:15.5px}
.nth-related .nth-posts{margin-top:44px}

/* ---------- responsive ---------- */
@media(max-width:1040px){
  .nth-posts{grid-template-columns:repeat(2,1fr)}
  .nth-alayout{grid-template-columns:220px minmax(0,1fr);gap:44px}
}
@media(max-width:900px){
  .nth-post-featured{grid-template-columns:1fr}
  .nth-post-featured .nth-post-img{min-height:0;aspect-ratio:16/10}
  .nth-post-featured .nth-post-body{padding:28px 26px 24px}
}
@media(max-width:860px){
  .nth-alayout,.nth-alayout.no-toc{grid-template-columns:minmax(0,1fr);gap:28px}
  .nth-toc{position:static;max-height:none}
  .nth-toc summary{cursor:pointer;margin-bottom:0}
  .nth-toc summary::after{content:"+";margin-left:auto;font:400 20px/1 var(--nth-b);color:var(--nth-green)}
  .nth-toc[open] summary{margin-bottom:14px}
  .nth-toc[open] summary::after{content:"\2212"}
  .nth-prose{font-size:17.5px}
}
@media(max-width:640px){
  .nth-posts{grid-template-columns:1fr}
  .nth-bhero{padding:56px 0 36px}
  .nth-bsec{padding:44px 0 80px}
  .nth-ahead{padding:44px 0 28px}
  .nth-share{margin-left:0}
  .nth-prose table{display:block;overflow-x:auto}
}
/* NTH:SECTION END blog */
