/* ==========================================================================
   NX HUB — the components behind the India → state → city → area pages:
   chips, card rails, tabbed link sets, collapsible "show all" lists, the
   FAQ grid and the long-form city guide layout.

   Built only on the nxt-ds.css tokens so it matches the rest of the site.
   Every link these components show is in the HTML from the start (tabs and
   "show all" hide with CSS, not by loading later), so search engines see the
   same links a visitor can reach.
   ========================================================================== */

/* ---------- section scaffolding ---------- */
.nx-sec{margin-top:var(--nxt-s7);color:var(--nxt-text)}
.nx-sec__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--nxt-s3) var(--nxt-s5);margin-bottom:var(--nxt-s5)}
.nx-sec__title{font-family:var(--nxt-font-display);font-size:var(--nxt-t-h2);line-height:var(--nxt-lh-snug);font-weight:800;margin:0;color:var(--nxt-text);letter-spacing:-.01em}
.nx-sec__sub{margin:6px 0 0;color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);max-width:62ch}
.nx-sec__action{font-size:var(--nxt-t-sm);font-weight:700;color:var(--nxt-accent);text-decoration:none;white-space:nowrap}
.nx-sec__action:hover{text-decoration:underline}

/* ---------- chips ---------- */
.nx-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--nxt-s2)}
.nx-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:var(--nxt-r-pill);
  background:var(--nxt-surface);border:1px solid var(--nxt-line);color:var(--nxt-text);font-size:var(--nxt-t-sm);
  line-height:1.3;text-decoration:none;transition:border-color var(--nxt-fast) var(--nxt-ease),background var(--nxt-fast) var(--nxt-ease)}
.nx-chip:hover{border-color:var(--nxt-accent-line);background:var(--nxt-surface-2)}
.nx-chip__n{font-size:var(--nxt-t-micro);font-weight:800;color:var(--nxt-on-accent);background:var(--nxt-accent);border-radius:var(--nxt-r-pill);padding:1px 7px}
.nx-chip--muted{color:var(--nxt-text-dim)}

/* chips that scroll sideways on phones instead of wrapping into a wall */
@media (max-width:719px){
  .nx-chips--rail{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:6px;
    margin-inline:calc(var(--nxt-s4) * -1);padding-inline:var(--nxt-s4);scrollbar-width:none;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 24px),transparent 100%);
            mask-image:linear-gradient(90deg,transparent 0,#000 16px,#000 calc(100% - 24px),transparent 100%)}
  .nx-chips--rail::-webkit-scrollbar{display:none}
  .nx-chips--rail > *{scroll-snap-align:start;flex:0 0 auto}
}

/* ---------- cards ---------- */
.nx-card{display:flex;flex-direction:column;gap:6px;padding:var(--nxt-s5);border-radius:var(--nxt-r-md);
  background:linear-gradient(180deg,var(--nxt-surface-2),var(--nxt-surface));border:1px solid var(--nxt-line);
  color:var(--nxt-text);text-decoration:none;min-width:0;transition:transform var(--nxt-base) var(--nxt-ease),border-color var(--nxt-base) var(--nxt-ease)}
a.nx-card:hover{transform:translateY(-2px);border-color:var(--nxt-line-strong)}
.nx-card__kicker{font-size:var(--nxt-t-micro);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--nxt-accent)}
.nx-card__title{font-family:var(--nxt-font-display);font-weight:700;font-size:var(--nxt-t-h4);line-height:var(--nxt-lh-snug);margin:0}
.nx-card__meta{font-size:var(--nxt-t-xs);color:var(--nxt-text-dim)}
.nx-card ul{list-style:none;margin:6px 0 0;padding:0}
.nx-card li{padding:5px 0;border-top:1px solid var(--nxt-line);font-size:var(--nxt-t-sm);line-height:1.4}
.nx-card li:first-child{border-top:0}
.nx-card li a{color:var(--nxt-text);text-decoration:none}
.nx-card li a:hover{color:var(--nxt-accent)}

/* grid on wide screens, swipeable rail on phones */
.nx-rail{display:grid;gap:var(--nxt-s4);grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
@media (max-width:719px){
  .nx-rail{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:minmax(240px,82%);overflow-x:auto;
    scroll-snap-type:x mandatory;margin-inline:calc(var(--nxt-s4) * -1);padding:2px var(--nxt-s4) 10px;scrollbar-width:none}
  .nx-rail::-webkit-scrollbar{display:none}
  .nx-rail > *{scroll-snap-align:start}
}
.nx-grid{display:grid;gap:var(--nxt-s4);grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}

/* ---------- "show all" ---------- */
.nx-more{margin-top:var(--nxt-s3)}
.nx-more > summary{list-style:none;display:inline-flex;align-items:center;gap:8px;cursor:pointer;padding:9px 16px;
  border-radius:var(--nxt-r-pill);border:1px solid var(--nxt-line-strong);color:var(--nxt-text);font-size:var(--nxt-t-sm);font-weight:700}
.nx-more > summary::-webkit-details-marker{display:none}
.nx-more > summary::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform var(--nxt-fast)}
.nx-more[open] > summary::after{transform:rotate(-135deg) translateY(-2px)}
.nx-more[open] > summary .nx-more__closed{display:none}
.nx-more:not([open]) > summary .nx-more__open{display:none}
.nx-more > summary:hover{border-color:var(--nxt-accent-line)}
.nx-more > .nx-chips,.nx-more > .nx-grid{margin-top:var(--nxt-s3)}

/* ---------- tabs (radio + :has, all panels in the HTML) ---------- */
.nx-tabs__bar{display:flex;gap:var(--nxt-s2);overflow-x:auto;scrollbar-width:none;padding-bottom:4px;margin-bottom:var(--nxt-s4)}
.nx-tabs__bar::-webkit-scrollbar{display:none}
.nx-tabs__radio{position:absolute;opacity:0;pointer-events:none}
.nx-tabs__tab{flex:0 0 auto;cursor:pointer;padding:9px 16px;border-radius:var(--nxt-r-pill);border:1px solid var(--nxt-line);
  background:var(--nxt-surface);color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);font-weight:700;user-select:none}
.nx-tabs__tab small{font-size:12px;font-weight:800;margin-left:4px} /* full ink: faded it was 4.43:1 on the selected tab */
.nx-tabs__radio:focus-visible + .nx-tabs__tab{outline:2px solid var(--nxt-focus);outline-offset:2px}
.nx-tabs__panel + .nx-tabs__panel{margin-top:var(--nxt-s5)}
.nx-tabs__panel-title{font-size:var(--nxt-t-sm);font-weight:800;color:var(--nxt-text-dim);margin:0 0 var(--nxt-s3)}
@supports selector(:has(*)){
  .nx-tabs .nx-tabs__panel{display:none}
  .nx-tabs .nx-tabs__panel + .nx-tabs__panel{margin-top:0}
  .nx-tabs .nx-tabs__panel-title{display:none}
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(1):checked) .nx-tabs__panel:nth-of-type(1),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(2):checked) .nx-tabs__panel:nth-of-type(2),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(3):checked) .nx-tabs__panel:nth-of-type(3),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(4):checked) .nx-tabs__panel:nth-of-type(4),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(5):checked) .nx-tabs__panel:nth-of-type(5),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(6):checked) .nx-tabs__panel:nth-of-type(6),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(7):checked) .nx-tabs__panel:nth-of-type(7){display:block}
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(1):checked) .nx-tabs__tab:nth-of-type(1),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(2):checked) .nx-tabs__tab:nth-of-type(2),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(3):checked) .nx-tabs__tab:nth-of-type(3),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(4):checked) .nx-tabs__tab:nth-of-type(4),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(5):checked) .nx-tabs__tab:nth-of-type(5),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(6):checked) .nx-tabs__tab:nth-of-type(6),
  .nx-tabs:has(.nx-tabs__radio:nth-of-type(7):checked) .nx-tabs__tab:nth-of-type(7){
    background:var(--nxt-accent);border-color:var(--nxt-accent);color:var(--nxt-on-accent)}
}

/* ---------- FAQ: two-column accordion ---------- */
.nx-faq{display:grid;gap:var(--nxt-s3);grid-template-columns:1fr;align-items:start}
@media (min-width:900px){.nx-faq{grid-template-columns:1fr 1fr}}
.nx-faq__item{border-radius:var(--nxt-r-md);background:var(--nxt-surface);border:1px solid var(--nxt-line);transition:border-color var(--nxt-fast)}
.nx-faq__item[open]{border-color:var(--nxt-accent-line);background:var(--nxt-surface-2)}
.nx-faq__item > summary{list-style:none;cursor:pointer;display:flex;gap:var(--nxt-s3);align-items:flex-start;justify-content:space-between;
  padding:var(--nxt-s4) var(--nxt-s5);font-weight:700;font-size:var(--nxt-t-body);line-height:var(--nxt-lh-snug);color:var(--nxt-text)}
.nx-faq__item > summary::-webkit-details-marker{display:none}
.nx-faq__item > summary::after{content:"+";flex:0 0 26px;height:26px;border-radius:50%;display:grid;place-items:center;
  background:var(--nxt-surface-2);color:var(--nxt-accent);font-size:18px;font-weight:700;line-height:1}
.nx-faq__item[open] > summary::after{content:"–"}
.nx-faq__item > p{margin:0;padding:0 var(--nxt-s5) var(--nxt-s5);color:var(--nxt-text-dim);line-height:var(--nxt-lh-body);font-size:var(--nxt-t-sm)}

/* ---------- stat tiles ---------- */
.nx-stats{list-style:none;margin:var(--nxt-s4) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--nxt-s2)}
.nx-stats li{display:flex;flex-direction:column;padding:10px 14px;border-radius:var(--nxt-r-sm);background:var(--nxt-surface);border:1px solid var(--nxt-line);min-width:110px}
.nx-stats strong{font-family:var(--nxt-font-display);font-size:1.25rem;line-height:1.1;color:var(--nxt-text)}
.nx-stats span{font-size:var(--nxt-t-xs);color:var(--nxt-text-dim)}

/* ---------- breadcrumb ---------- */
.nx-crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:var(--nxt-t-xs);color:var(--nxt-text-faint);margin:0 0 var(--nxt-s3)}
.nx-crumbs a{color:var(--nxt-text-dim);text-decoration:none}
.nx-crumbs a:hover{color:var(--nxt-accent)}
.nx-crumbs span[aria-current]{color:var(--nxt-text)}

/* ==========================================================================
   Long-form city guide (resources/views/city/content/*.blade.php)
   Phones: a sticky, swipeable contents bar, and the guide folded after the
   first sections with "Read the full guide". Desktop: contents in a sticky
   left column. Sub-sections (zones, boards, class bands) become cards and
   bullet lists become tiles, so it reads as a guide rather than a wall.
   ========================================================================== */
.nx-guide{margin-top:var(--nxt-s8);color:var(--nxt-text);display:grid;gap:0 var(--nxt-s7);grid-template-columns:minmax(0,1fr)}
.nx-guide > h2:first-child{font-family:var(--nxt-font-display);font-size:var(--nxt-t-h1);line-height:var(--nxt-lh-tight);font-weight:800;margin:0 0 var(--nxt-s4);letter-spacing:-.015em}
.nx-guide__lede{font-size:1.0625rem;line-height:var(--nxt-lh-body);color:var(--nxt-text-dim);max-width:var(--nxt-measure);margin:0 0 var(--nxt-s5)}

.nx-guide__toc{font-size:0;display:flex;gap:var(--nxt-s2);overflow-x:auto;scrollbar-width:none;position:sticky;top:var(--nx-sticky-top,64px);z-index:5;
  padding:10px 0;margin:0 calc(var(--nxt-s4) * -1) var(--nxt-s5);padding-inline:var(--nxt-s4);
  background:linear-gradient(180deg,var(--nxt-ink-900) 70%,transparent)}
.nx-guide__toc::-webkit-scrollbar{display:none}
.nx-guide__toc strong{display:none}
.nx-guide__toc a{flex:0 0 auto;font-size:var(--nxt-t-xs);font-weight:700;padding:7px 12px;border-radius:var(--nxt-r-pill);border:1px solid var(--nxt-line);
  background:var(--nxt-surface);color:var(--nxt-text-dim);text-decoration:none;white-space:nowrap}
.nx-guide__toc a:hover,.nx-guide__toc a.is-active{color:var(--nxt-on-accent);background:var(--nxt-accent);border-color:var(--nxt-accent)}

.nx-guide__body{min-width:0;position:relative}
.nx-guide__sec{scroll-margin-top:120px;padding-top:var(--nxt-s6);border-top:1px solid var(--nxt-line);margin-top:var(--nxt-s6)}
.nx-guide__sec:first-child{border-top:0;margin-top:0;padding-top:0}
.nx-guide__sec > h2{font-family:var(--nxt-font-display);font-size:var(--nxt-t-h2);line-height:var(--nxt-lh-snug);font-weight:800;margin:0 0 var(--nxt-s3);
  display:flex;gap:12px;align-items:center}
.nx-guide__sec > h2::before{content:"";flex:0 0 4px;align-self:stretch;min-height:1.1em;border-radius:4px;background:var(--nxt-accent)}
.nx-guide__sec p{margin:0 0 var(--nxt-s3);line-height:var(--nxt-lh-body);color:var(--nxt-text-dim);max-width:var(--nxt-measure)}
.nx-guide__sec p strong,.nx-guide__sec li strong{color:var(--nxt-text)}
.nx-guide a{color:var(--nxt-accent)}

/* bullet lists → tiles */
.nx-guide__sec > ul,.nx-guide__sec > ol,.nx-guide__card > ul{list-style:none;margin:var(--nxt-s4) 0;padding:0;display:grid;gap:var(--nxt-s3);
  grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.nx-guide__sec > ul > li,.nx-guide__sec > ol > li,.nx-guide__card > ul > li{padding:var(--nxt-s4);border-radius:var(--nxt-r-md);background:var(--nxt-surface);
  border:1px solid var(--nxt-line);line-height:1.55;font-size:var(--nxt-t-sm);color:var(--nxt-text-dim)}
.nx-guide__sec > ul > li > strong:first-child,.nx-guide__sec > ol > li > strong:first-child{display:block;margin-bottom:4px;font-size:var(--nxt-t-body)}
.nx-guide__sec > ol{counter-reset:nxg}
.nx-guide__sec > ol > li{counter-increment:nxg;position:relative;padding-top:calc(var(--nxt-s4) + 30px)}
.nx-guide__sec > ol > li::before{content:counter(nxg);position:absolute;top:var(--nxt-s4);left:var(--nxt-s4);width:26px;height:26px;border-radius:50%;
  display:grid;place-items:center;background:var(--nxt-accent);color:var(--nxt-on-accent);font-weight:800;font-size:var(--nxt-t-xs)}

/* h3 sub-sections → card grid */
.nx-guide__cards{display:grid;gap:var(--nxt-s3);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin:var(--nxt-s4) 0}
.nx-guide__card{padding:var(--nxt-s5);border-radius:var(--nxt-r-md);background:linear-gradient(180deg,var(--nxt-surface-2),var(--nxt-surface));border:1px solid var(--nxt-line)}
.nx-guide__card > h3{font-family:var(--nxt-font-display);font-size:var(--nxt-t-h4);font-weight:700;margin:0 0 8px;color:var(--nxt-text)}
.nx-guide__card p{font-size:var(--nxt-t-sm);margin-bottom:8px}
.nx-guide__card p:last-child{margin-bottom:0}

/* the fold */
.nx-guide__body.is-folded{max-height:1150px;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 75%,transparent);mask-image:linear-gradient(180deg,#000 75%,transparent)}
.nx-guide__unfold{display:flex;justify-content:center;margin-top:var(--nxt-s3)}
.nx-guide__unfold button{cursor:pointer;padding:12px 22px;border-radius:var(--nxt-r-pill);border:0;background:var(--nxt-accent);color:var(--nxt-on-accent);
  font-weight:800;font-size:var(--nxt-t-sm);box-shadow:var(--nxt-e2)}

@media (min-width:1100px){
  .nx-guide{grid-template-columns:230px minmax(0,1fr)}
  .nx-guide > h2:first-child,.nx-guide__lede{grid-column:1 / -1}
  .nx-guide__toc{grid-column:1;flex-direction:column;align-self:start;overflow:visible;top:96px;margin:0;padding:0;background:none;gap:4px}
  .nx-guide__toc strong{display:block;font-size:var(--nxt-t-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--nxt-text-faint);margin-bottom:6px}
  .nx-guide__toc a{border:0;background:none;padding:6px 10px;border-left:2px solid var(--nxt-line);border-radius:0;white-space:normal}
  .nx-guide__toc a:hover,.nx-guide__toc a.is-active{background:var(--nxt-surface);color:var(--nxt-text);border-left-color:var(--nxt-accent)}
  .nx-guide__body{grid-column:2}
  .nx-guide__unfold{grid-column:2}
  .nx-guide__body.is-folded{max-height:1500px}
}

/* ==========================================================================
   Blog articles (.nx-article, set on the post body in blog/show). The post
   HTML comes from the admin editor; nx-hub.js only regroups it for reading:
   a contents bar from the H2s, "Label – text" runs as tiles, runs of short
   lines as a checklist, and H3 sub-sections as cards.
   ========================================================================== */
.nx-article{color:var(--nxt-text-dim);line-height:var(--nxt-lh-body)}
.nx-article h2{font-family:var(--nxt-font-display);font-size:var(--nxt-t-h2);line-height:var(--nxt-lh-snug);color:var(--nxt-text);
  margin:var(--nxt-s7) 0 var(--nxt-s3);display:flex;gap:12px;align-items:center;scroll-margin-top:120px}
.nx-article h2::before{content:"";flex:0 0 4px;align-self:stretch;min-height:1.1em;border-radius:4px;background:var(--nxt-accent)}
.nx-article > h2:first-child,.nx-article__toc + h2{margin-top:0}
.nx-article h3{font-family:var(--nxt-font-display);font-size:var(--nxt-t-h4);color:var(--nxt-text);margin:var(--nxt-s5) 0 6px}
.nx-article p{margin:0 0 var(--nxt-s3);max-width:74ch}
.nx-article strong{color:var(--nxt-text)}
.nx-article a{color:var(--nxt-accent)}

.nx-article__toc{display:flex;gap:var(--nxt-s2);overflow-x:auto;scrollbar-width:none;margin:0 0 var(--nxt-s5);padding-bottom:4px}
.nx-article__toc::-webkit-scrollbar{display:none}
.nx-article__toc a{flex:0 0 auto;font-size:var(--nxt-t-xs);font-weight:700;padding:7px 12px;border-radius:var(--nxt-r-pill);border:1px solid var(--nxt-line);
  background:var(--nxt-surface);color:var(--nxt-text-dim);text-decoration:none;white-space:nowrap}
.nx-article__toc a:hover{color:var(--nxt-on-accent);background:var(--nxt-accent);border-color:var(--nxt-accent)}

.nx-tiles{display:grid;gap:var(--nxt-s3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:var(--nxt-s3) 0 var(--nxt-s5)}
.nx-article .nx-tile{margin:0;max-width:none;padding:var(--nxt-s4);border-radius:var(--nxt-r-md);background:var(--nxt-surface);border:1px solid var(--nxt-line);font-size:var(--nxt-t-sm);line-height:1.5}
.nx-tile > strong:first-child{display:block;color:var(--nxt-text);font-size:var(--nxt-t-body);margin-bottom:4px}

.nx-checklist{list-style:none;margin:var(--nxt-s3) 0 var(--nxt-s5);padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.nx-checklist li{display:flex;gap:10px;align-items:flex-start;padding:10px 14px;border-radius:var(--nxt-r-sm);background:var(--nxt-surface);border:1px solid var(--nxt-line);font-size:var(--nxt-t-sm);line-height:1.45}
.nx-checklist li::before{content:"✓";flex:0 0 20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--nxt-verify-soft);color:var(--nxt-verify);font-weight:800;font-size:12px}

.nx-subcards{display:grid;gap:var(--nxt-s3);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));margin:var(--nxt-s3) 0 var(--nxt-s5)}
.nx-subcard{padding:var(--nxt-s4) var(--nxt-s5);border-radius:var(--nxt-r-md);background:linear-gradient(180deg,var(--nxt-surface-2),var(--nxt-surface));border:1px solid var(--nxt-line)}
.nx-article .nx-subcard h3{margin-top:0}
.nx-subcard p{font-size:var(--nxt-t-sm);margin-bottom:6px}

/* ---------- tighter variants ---------- */
.nx-grid--tight{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:var(--nxt-s3)}
.nx-grid--tight .nx-card{padding:var(--nxt-s4)}

/* the site's heading rules outrank plain element selectors inside the guide */
.nx-guide .nx-guide__card > h3{font-family:var(--nxt-font-display);font-size:var(--nxt-t-h4);line-height:var(--nxt-lh-snug);font-weight:700;margin:0 0 8px}

/* area cards: a swipeable row on phones instead of nine stacked cards */
@media (max-width:719px){
  #areasGrid{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x mandatory;
    gap:var(--nxt-s3);margin-inline:calc(var(--nxt-s4) * -1);padding:2px var(--nxt-s4) 10px;scrollbar-width:none}
  #areasGrid::-webkit-scrollbar{display:none}
  #areasGrid > *{scroll-snap-align:start}
  /* outside the home page the chat's help list is hidden on phones */
  #nxAskAISection.nxg-compact .nxg-results{display:none}
}

/* the post body's own rules (underlined links, list indents, big h3s) are
   more specific than plain classes; these win back the components */
.nx-article .nx-article__toc a{text-decoration:none;color:var(--nxt-text-dim)}
.nx-article .nx-article__toc a:hover{color:var(--nxt-on-accent)}
.nx-article ul.nx-checklist{padding-left:0;margin-left:0}
.nx-article .nx-subcard h3,.nx-article .nx-subcards h3{font-size:var(--nxt-t-h4);line-height:var(--nxt-lh-snug);margin:0 0 6px}

/* home FAQ on phones: first five, then "Show all" (all answers stay in the HTML) */
@media (max-width:719px){
  .faq-grid.nx-faq-folded .faq-list:nth-of-type(n+2){display:none}
  .faq-grid.nx-faq-folded .faq-list:first-of-type .faq-item:nth-of-type(n+6){display:none}
}
.nx-faq-more{display:flex;justify-content:center;margin-top:var(--nxt-s3)}

/* a checklist inside a narrow card is one column, not a grid that overflows it */
.nx-subcard .nx-checklist,.nx-guide__card .nx-checklist{grid-template-columns:minmax(0,1fr);margin:8px 0 0}
.nx-subcard .nx-checklist li{padding:8px 10px}

/* ==========================================================================
   Subject pages (resources/views/subjects/show.blade.php)
   Colour roles: navy surfaces = calm and trust; amber accent = the one
   action per screen (free demo); green = the verified promise.
   ========================================================================== */
.nx-subject{color:var(--nxt-text)}
.nx-shero{display:grid;gap:var(--nxt-s5);grid-template-columns:minmax(0,1fr);padding:var(--nxt-s6);border-radius:var(--nxt-r-lg);
  background:radial-gradient(120% 90% at 0% 0%,color-mix(in srgb,var(--nxt-accent) 10%,transparent),transparent 55%),linear-gradient(180deg,var(--nxt-surface-2),var(--nxt-surface));
  border:1px solid var(--nxt-line)}
@media (min-width:960px){.nx-shero{grid-template-columns:minmax(0,1fr) 300px;align-items:center;padding:var(--nxt-s7)}}
.nx-shero__title{font-family:var(--nxt-font-display);font-size:var(--nxt-t-h1);line-height:var(--nxt-lh-tight);font-weight:800;margin:8px 0 var(--nxt-s3);letter-spacing:-.015em}
.nx-shero__lede{color:var(--nxt-text-dim);font-size:1.0625rem;line-height:var(--nxt-lh-body);max-width:60ch;margin:0}
.nx-trust{list-style:none;margin:var(--nxt-s4) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px}
.nx-trust li{display:flex;align-items:center;gap:8px;font-size:var(--nxt-t-sm);color:var(--nxt-text)}
.nx-trust li::before{content:"✓";flex:0 0 20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--nxt-verify-soft);color:var(--nxt-verify);font-weight:800;font-size:12px}
.nx-cta-row{display:flex;flex-wrap:wrap;gap:var(--nxt-s3);margin-top:var(--nxt-s5)}
.nx-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:var(--nxt-r-pill);font-weight:800;font-size:var(--nxt-t-sm);text-decoration:none;transition:transform var(--nxt-fast),background var(--nxt-fast)}
.nx-cta--primary{background:var(--nxt-accent);color:var(--nxt-on-accent);box-shadow:var(--nxt-e2)}
.nx-cta--primary:hover{transform:translateY(-1px)}
/* body.page a{color:inherit} outranked the class, putting light text on the
   accent (2.54:1); the accent's own dark ink is 7:1 or better on every theme. */
body.page .nx-cta--primary,body.page .nx-cta--primary:hover{color:var(--nxt-on-accent)}
.nx-cta--ghost{border:1px solid var(--nxt-line-strong);color:var(--nxt-text)}
.nx-cta--ghost:hover{background:var(--nxt-surface-2)}
.nx-byline{display:flex;align-items:center;gap:10px;margin:var(--nxt-s5) 0 0;font-size:var(--nxt-t-xs);color:var(--nxt-text-dim)}
.nx-byline img{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid var(--nxt-line-strong)}
.nx-byline a{color:var(--nxt-text);font-weight:700}
body.page .nx-review-note{margin:var(--nxt-s4) 0 0;padding:8px 12px;border:1px dashed var(--nxt-line-strong);border-radius:10px;font-size:var(--nxt-t-xs);color:var(--nxt-text-dim)}
body.page .ol-cities{list-style:none;padding:0;margin:var(--nxt-s4) 0;display:grid;gap:6px 16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.nx-stats--stack{flex-direction:column;margin:0}
.nx-stats--stack li{min-width:0}
@media (max-width:959px){.nx-stats--stack{flex-direction:row;flex-wrap:wrap}.nx-stats--stack li{flex:1 1 140px}}

.nx-author__top{display:flex;gap:var(--nxt-s3);align-items:center}
.nx-author__top img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--nxt-accent-line)}
.nx-author__facts{list-style:none;margin:var(--nxt-s3) 0;padding:0}
.nx-card .nx-author__facts li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--nxt-line);font-size:var(--nxt-t-sm)}
.nx-author__facts li span{color:var(--nxt-text-faint);font-size:var(--nxt-t-xs);text-transform:uppercase;letter-spacing:.06em}

.nx-cta-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--nxt-s5);padding:var(--nxt-s6);border-radius:var(--nxt-r-lg);
  background:linear-gradient(135deg,color-mix(in srgb,var(--nxt-accent) 14%,transparent),var(--nxt-surface));border:1px solid var(--nxt-accent-line)}
.nx-cta-band .nx-cta-row{margin-top:0}

/* tables inside guides */
.nx-table-wrap{overflow-x:auto;margin:var(--nxt-s4) 0;border-radius:var(--nxt-r-md);border:1px solid var(--nxt-line)}
.nx-table{width:100%;border-collapse:collapse;font-size:var(--nxt-t-sm);min-width:420px}
.nx-table th{text-align:left;background:var(--nxt-surface-2);color:var(--nxt-text);font-weight:800;padding:10px 14px;font-size:var(--nxt-t-xs);text-transform:uppercase;letter-spacing:.05em}
.nx-table td{padding:10px 14px;border-top:1px solid var(--nxt-line);color:var(--nxt-text-dim)}
.nx-table tr:hover td{background:var(--nxt-surface)}
.nx-article table{width:100%;border-collapse:collapse;font-size:var(--nxt-t-sm);margin:var(--nxt-s4) 0;display:block;overflow-x:auto}
.nx-article th{text-align:left;background:var(--nxt-surface-2);color:var(--nxt-text);padding:10px 14px}
.nx-article td{padding:10px 14px;border-top:1px solid var(--nxt-line)}

/* subject pages on phones: four tutor cards, then the guide */
@media (max-width:719px){
  .nx-subject .suggested-grid > *:nth-child(n+5){display:none}
}

/* Footer with a Subjects column (include/footer): five columns on desktop;
   on tablet and phone the subjects list spans the row in two columns. */
body.page .footer-content.footer-content--5{grid-template-columns:1.4fr 1fr 1fr 1fr 1.4fr}
@media (max-width:1024px){
  body.page .footer-content.footer-content--5{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.page .footer-content--5 .footer-col--subjects{grid-column:1 / -1}
  body.page .footer-content--5 .footer-col--subjects ul{columns:2;column-gap:var(--nxt-s4)}
  body.page .footer-content--5 .footer-col--subjects li{break-inside:avoid}
}

/* ---------- home: Explore by learning area (home/partials/explore) ---------- */
.nx-explore .nx-tabs__bar{margin-bottom:var(--nxt-s4)}
.nx-explore__grid{display:grid;gap:var(--nxt-s3);grid-template-columns:repeat(auto-fill,minmax(210px,1fr));margin-bottom:var(--nxt-s4)}
.nx-explore__grid .nx-card{padding:var(--nxt-s4);min-height:0}
.nx-explore__more{font-size:var(--nxt-t-sm);color:var(--nxt-text-dim);margin:0 0 var(--nxt-s2)}
button.nx-chip{font:inherit;cursor:pointer}
@media (max-width:640px){
  .nx-explore__grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
  .nx-explore__grid::-webkit-scrollbar{display:none}
  .nx-explore__grid > *{flex:0 0 72%;scroll-snap-align:start}
}

/* ---------- home hero: popular searches under the search card ---------- */
.nxh__popular{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;align-items:center}
.nxh__popular-label{font-size:12px;color:rgba(255,255,255,.72);margin-right:2px}
.nxh__popular button{font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;padding:6px 12px;border-radius:999px;
  border:1px solid rgba(255,255,255,.22);background:rgba(8,14,27,.45);color:#fff;backdrop-filter:blur(6px)}
.nxh__popular button:hover{border-color:rgba(255,255,255,.5)}
@media (max-width:640px){
  .nxh__popular{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .nxh__popular::-webkit-scrollbar{display:none}
  .nxh__popular > *{flex:0 0 auto}
}

/* ---------- home: parent's checklist as cards with ticks ---------- */
body.page .parent-guide-right .guide-card-new{padding:var(--nxt-s4);border-radius:var(--nxt-r-md);
  background:var(--nxt-surface);border:1px solid var(--nxt-line)}
body.page .guide-card-list .circle-bullet{width:18px;height:18px;border:0;border-radius:50%;margin-top:1px;
  background:rgba(34,197,94,.16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2322c55e'%3E%3Cpath d='M6.4 12.1 2.7 8.4l1.3-1.3 2.4 2.4 5.6-5.6 1.3 1.3z'/%3E%3C/svg%3E") center/12px no-repeat}
@media (max-width:640px){
  body.page .parent-guide-right{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:var(--nxt-s3);scrollbar-width:none}
  body.page .parent-guide-right::-webkit-scrollbar{display:none}
  body.page .parent-guide-right .guide-card-new{flex:0 0 80%;scroll-snap-align:start}
}

/* ---------- home: cities tabs wrap the two city partials ---------- */
.nx-home-cities .nx-tabs__panel > section{padding:0;margin:0}
.nx-home-cities .nx-tabs__panel .section-title,
.nx-home-cities .nx-tabs__panel h2{display:none}
body.page .footer-content--5 .footer-col--subjects ul{display:grid;grid-template-columns:1fr}
@media (max-width:1024px){body.page .footer-content--5 .footer-col--subjects ul{grid-template-columns:1fr 1fr;column-gap:var(--nxt-s4)}}

/* ---------- predictive search dropdown (js/nx-suggest.js) ---------- */
.nx-sugg{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:40;list-style:none;margin:0;padding:6px;
  background:#fff;color:#0b1220;border-radius:14px;box-shadow:0 18px 40px rgba(2,6,23,.35);max-height:320px;overflow:auto}
.nx-sugg[hidden]{display:none}
.nx-sugg__item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;
  font-size:14px;line-height:1.3;cursor:pointer}
.nx-sugg__item:hover,.nx-sugg__item.is-active{background:#eef4ff}
.nx-sugg__tag{flex:0 0 auto;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:#e0ecff;color:#1d4ed8}
@media (max-width:640px){.nx-sugg{max-height:60vh}}
/* chat predictions open upwards: the input sits at the bottom of the card */
.nx-sugg--chat{top:auto;bottom:calc(100% + 6px)}

/* ---------- home: Home / Online / Either (hero) and the results bar ---------- */
.nxh__modes{display:flex;gap:6px;margin:10px 0 0;flex-wrap:wrap}
.nxh__mode{font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;padding:6px 12px;border-radius:999px;
  border:1px solid rgba(255,255,255,.22);background:rgba(8,14,27,.45);color:#fff}
.nxh__mode[aria-checked="true"]{background:#fff;color:#0b1220;border-color:#fff}
.nx-modebar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 10px}
.nx-modebar__opt{font:inherit;font-size:13px;font-weight:700;cursor:pointer;padding:8px 14px;border-radius:999px;
  border:1px solid var(--nxt-line);background:var(--nxt-surface);color:var(--nxt-text-dim)}
.nx-modebar__opt.is-on{background:var(--nxt-accent);border-color:var(--nxt-accent);color:var(--nxt-on-accent)}
.nx-modebar__note{flex:1 0 100%;margin:4px 0 0;font-size:13px;color:var(--nxt-text-dim)}
.nx-linkbtn{font:inherit;background:none;border:0;padding:0;color:var(--nxt-accent);text-decoration:underline;cursor:pointer}

/* ---------- Find Tutors: collapsed "More filters" ---------- */
.nx-filters{flex:1 0 100%;margin-top:8px}
.nx-filters__grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));margin-top:10px}
body.page .filterbar .nx-filters{grid-column:1 / -1}

/* ---------- tutor card: sample profiles (partials/tutor-card) ---------- */
.badge-sample{position:absolute;top:10px;left:10px;font-size:12px;font-weight:800;letter-spacing:.02em;padding:4px 9px;border-radius:999px;
  background:rgba(15,23,42,.78);color:#e2e8f0;border:1px dashed rgba(226,232,240,.5)}
.tutor-card .tutor-match{font-size:12.5px;white-space:normal;text-align:center;line-height:1.2}
.tutor-reach{margin:0 0 2px;font-size:12px;font-weight:700;color:var(--nxt-accent)}
.nx-sample-note{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:14px 16px;border-radius:var(--nxt-r-md);
  border:1px dashed var(--nxt-accent-line);background:var(--nxt-surface);color:var(--nxt-text)}

/* ---------- home: About NXTutors (long-form copy, collapsed) ---------- */
.nx-about__lede{max-width:880px;color:var(--nxt-text-dim);margin:0 0 var(--nxt-s3)}
.nx-about__grid{display:grid;gap:var(--nxt-s4);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin-top:var(--nxt-s4)}
.nx-about__grid h3,.nx-about__h{font-size:var(--nxt-t-h5,17px);margin:0 0 6px}
.nx-about__grid p{margin:0;color:var(--nxt-text-dim)}
.nx-about__h{margin-top:var(--nxt-s5)}
.nx-chip--request{border-style:dashed}

/* ---------- TutorTwin: the WhatsApp AI tutor, on the homepage ---------- */
/* An advert, not a feature list: copy and one action on the left, the product
   (a WhatsApp chat with a worked answer) on the right; stacked on a phone with
   the chat under the button. TutorTwin's own indigo marks it as a sister
   product; WhatsApp green is kept for the action. */
.nx-twin{--tt-indigo:#6366f1;--tt-indigo-2:#4f46e5;--tt-violet:#7c3aed}
.nx-twin__hero{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--nxt-s7);align-items:center;
  padding:var(--nxt-s7);border-radius:var(--nxt-r-lg);border:1px solid color-mix(in srgb,var(--tt-indigo) 35%,transparent);
  background:radial-gradient(120% 90% at 100% 0%,color-mix(in srgb,var(--tt-violet) 28%,transparent),transparent 60%),
             radial-gradient(90% 80% at 0% 100%,color-mix(in srgb,var(--tt-indigo-2) 22%,transparent),transparent 60%),var(--nxt-ink-850);
  overflow:hidden}
.nx-twin__eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:var(--nxt-t-xs);font-weight:800;letter-spacing:.04em;color:#c7d2fe}
.nx-twin__live{width:8px;height:8px;border-radius:50%;background:var(--nxt-whatsapp);box-shadow:0 0 0 4px color-mix(in srgb,var(--nxt-whatsapp) 25%,transparent)}
.nx-twin__title{margin:var(--nxt-s3) 0 var(--nxt-s4);font-family:var(--nxt-font-display);font-size:var(--nxt-t-h1);line-height:var(--nxt-lh-tight);letter-spacing:-.01em}
.nx-twin__title span{color:#a5b4fc}
.nx-twin__lede{margin:0;max-width:52ch;color:var(--nxt-text-dim);font-size:var(--nxt-t-body);line-height:var(--nxt-lh-body)}
.nx-twin__lede strong{color:var(--nxt-text)}
.nx-twin__points{list-style:none;margin:var(--nxt-s5) 0;padding:0;display:grid;gap:10px}
.nx-twin__points li{position:relative;padding-left:28px;font-size:var(--nxt-t-sm);color:var(--nxt-text-dim)}
.nx-twin__points li strong{color:var(--nxt-text)}
.nx-twin__points li::before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;border-radius:50%;
  background:var(--nxt-verify-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%2334C77B' d='M6.4 11.1 3.4 8.1l1.1-1.1 1.9 1.9 5-5 1.1 1.1z'/%3E%3C/svg%3E") center/12px no-repeat}
.nx-twin__cta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--nxt-s3) var(--nxt-s5)}
.nx-twin__btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:var(--nxt-r-pill);
  background:var(--nxt-whatsapp);color:#06301a;font-weight:800;font-size:var(--nxt-t-body);text-decoration:none;
  box-shadow:0 8px 24px color-mix(in srgb,var(--nxt-whatsapp) 30%,transparent);transition:transform var(--nxt-fast) var(--nxt-ease),background var(--nxt-fast)}
.nx-twin__btn:hover{background:#1fbe5a;transform:translateY(-1px)}
/* body.page a sets color:inherit and outranks the class alone; dark ink on green is 8.6:1. */
body.page .nx-twin__btn,body.page .nx-twin__btn:hover{color:#06301a}
.nx-twin__more{color:#c7d2fe;font-weight:700;font-size:var(--nxt-t-sm);text-decoration:none}
.nx-twin__more:hover{text-decoration:underline}
.nx-twin__price{margin:var(--nxt-s3) 0 0;max-width:60ch;color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);line-height:1.5}
.nx-twin__fine{margin:var(--nxt-s4) 0 0;max-width:60ch;color:var(--nxt-text-faint);font-size:var(--nxt-t-xs);line-height:1.55}
.nx-twin .nx-twin__fine a,body.page .nx-twin .nx-twin__fine a{color:#c7d2fe}

/* The phone: a WhatsApp chat, drawn in HTML so it stays sharp and light. */
.nx-twin__phone{margin:0;justify-self:center;width:min(100%,340px);border-radius:28px;padding:10px;background:#0b1020;
  border:1px solid rgba(255,255,255,.12);box-shadow:var(--nxt-e4)}
.nx-twin__bar{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:20px 20px 0 0;background:#1f2c34;color:#e9edef}
.nx-twin__bar small{display:block;font-size:12px;color:#aebac1}
.nx-twin__avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-weight:800;color:#fff;
  background:linear-gradient(135deg,var(--tt-indigo),var(--tt-violet))}
.nx-twin__chat{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:0 0 20px 20px;background:#0b141a;min-height:320px}
.nx-twin__msg{max-width:86%;padding:8px 10px 6px;border-radius:10px 10px 10px 2px;background:#202c33;color:#e9edef;font-size:13px;line-height:1.5}
.nx-twin__msg--me{align-self:flex-end;border-radius:10px 10px 2px 10px;background:#005c4b}
.nx-twin__msg b{color:#a5b4fc;font-weight:700}
.nx-twin__msg time{display:block;text-align:right;font-size:11px;color:#aebac1;margin-top:2px}
.nx-twin__msg--me time{color:rgba(255,255,255,.75)}
.nx-twin__photo{margin:-2px -4px 6px;padding:14px 10px;border-radius:6px;background:#f8f5ec;color:#1f2937;
  font:600 14px/1.3 "Segoe Print","Comic Sans MS",cursive;transform:rotate(-1.2deg)}
.nx-twin__photo span{color:#b45309}
.nx-twin__hint{display:inline-block;margin-top:4px;font-size:12px;color:#8fd6b5}

.nx-twin__teachers{margin-top:var(--nxt-s5)}
.nx-twin__teachers ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 var(--nxt-s5)}
.nx-twin__teachers li,.nx-twin__teachers li:first-child{border-top:1px solid var(--nxt-line)}
.nx-twin__teachers .nx-card__meta{margin-top:8px;color:var(--nxt-accent);font-weight:700}

@media (max-width:900px){
  .nx-twin__hero{grid-template-columns:minmax(0,1fr);gap:var(--nxt-s6);padding:var(--nxt-s5)}
  .nx-twin__teachers ul{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:480px){
  .nx-twin__btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.nx-twin__btn{transition:none}.nx-twin__btn:hover{transform:none}}

/* TutorTwin strip under a page hero (partials/tutortwin-strip). One line,
   quieter than the page's own search, but clearly a way in. */
.nx-twin-strip{display:flex;align-items:center;gap:12px;margin:var(--nxt-s4) auto 0;max-width:760px;padding:8px 8px 8px 12px;
  border-radius:var(--nxt-r-pill);border:1px solid color-mix(in srgb,#6366f1 45%,transparent);
  background:color-mix(in srgb,#4f46e5 16%,rgba(8,14,27,.72));color:var(--nxt-text);text-decoration:none;text-align:left;
  transition:border-color var(--nxt-fast),background var(--nxt-fast)}
.nx-twin-strip:hover{border-color:#a5b4fc;background:color-mix(in srgb,#4f46e5 24%,rgba(8,14,27,.72))}
.nx-twin-strip__badge{flex:0 0 auto;padding:3px 8px;border-radius:var(--nxt-r-pill);background:#4f46e5;color:#fff;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.nx-twin-strip__text{flex:1 1 auto;min-width:0;font-size:var(--nxt-t-xs);line-height:1.4;color:var(--nxt-text-dim)}
.nx-twin-strip__text strong{color:var(--nxt-text);margin-right:4px}
.nx-twin-strip__go{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--nxt-r-pill);
  background:var(--nxt-whatsapp);color:#06301a;font-size:var(--nxt-t-xs);font-weight:800;white-space:nowrap}
@media (max-width:600px){
  .nx-twin-strip{border-radius:var(--nxt-r-md);flex-wrap:wrap;padding:10px 12px}
  .nx-twin-strip__text{flex-basis:calc(100% - 60px)}
  .nx-twin-strip__go{width:100%;justify-content:center}
}

/* Sample cards: "View sample" and "Get matched in 10 min" are both long. Side
   by side in a two-up phone card (~190px) they could not shrink and their text
   ran into each other; stacked, each gets the full width and may wrap. */
.tutor-card .tutor-actions.tutor-actions--sample{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:8px}
.tutor-card .tutor-actions > *{min-width:0;overflow-wrap:anywhere}
.tutor-card .tutor-actions--sample > *{white-space:normal!important;line-height:1.25}

/* ---------- TutorTwin for teachers: its own small advert ---------- */
/* A vivid indigo-violet frame (the AI colour) with warm amber moonlight in
   the picture: cool = calm trust, warm = the one thing to notice. The sketch
   sits beside the copy on laptops and above it on phones. */
.nx-twin-t{position:relative;margin-top:var(--nxt-s6);display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:var(--nxt-s7);align-items:center;
  padding:var(--nxt-s6);border-radius:var(--nxt-r-lg);
  background:radial-gradient(90% 120% at 0% 0%,rgba(124,58,237,.30),transparent 60%),
             radial-gradient(80% 90% at 100% 100%,rgba(245,158,11,.14),transparent 60%),var(--nxt-ink-850);
  border:1px solid transparent;
  background-clip:padding-box;
  box-shadow:0 0 0 1px rgba(129,140,248,.35),0 24px 60px rgba(49,46,129,.35)}
.nx-twin-t__art{margin:0}
.nx-twin-t__art svg{display:block;width:100%;height:auto;filter:drop-shadow(0 18px 30px rgba(15,10,50,.55))}
.nx-twin-t__eyebrow{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:var(--nxt-r-pill);
  background:rgba(99,102,241,.18);border:1px solid rgba(129,140,248,.45);color:#C7D2FE;font-size:var(--nxt-t-xs);font-weight:800;letter-spacing:.03em}
.nx-twin-t__title{margin:var(--nxt-s4) 0 var(--nxt-s3);font-family:var(--nxt-font-display);font-size:var(--nxt-t-h2);line-height:1.18;letter-spacing:-.01em;text-wrap:balance}
.nx-twin-t__title span{background:linear-gradient(90deg,#A5B4FC,#F9C66B);-webkit-background-clip:text;background-clip:text;color:transparent}
.nx-twin-t__lede{margin:0;max-width:56ch;color:var(--nxt-text-dim);font-size:var(--nxt-t-body);line-height:var(--nxt-lh-body)}
.nx-twin-t__benefits{list-style:none;margin:var(--nxt-s5) 0;padding:0;display:grid;gap:12px}
.nx-twin-t__benefits li{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start;padding:12px 14px;border-radius:var(--nxt-r-md);
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.nx-twin-t__benefits strong{display:block;color:var(--nxt-text);font-size:var(--nxt-t-sm);margin-bottom:2px}
.nx-twin-t__benefits li > span:last-child{color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);line-height:1.5}
.nx-twin-t__ico{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;font-size:20px;
  background:linear-gradient(135deg,rgba(99,102,241,.35),rgba(124,58,237,.25));border:1px solid rgba(129,140,248,.4)}
.nx-twin-t__cta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--nxt-s3) var(--nxt-s4)}
.nx-twin-t__btn,body.page .nx-twin-t__btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:var(--nxt-r-pill);
  background:linear-gradient(135deg,#6366F1,#7C3AED);color:#fff;font-weight:800;font-size:var(--nxt-t-body);text-decoration:none;
  box-shadow:0 10px 28px rgba(99,102,241,.40);transition:transform var(--nxt-fast) var(--nxt-ease),box-shadow var(--nxt-fast)}
.nx-twin-t__btn:hover,body.page .nx-twin-t__btn:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(99,102,241,.5);color:#fff}
.nx-twin-t__proof{color:var(--nxt-text-dim);font-size:var(--nxt-t-xs);font-weight:600}
@media (max-width:900px){
  .nx-twin-t{grid-template-columns:minmax(0,1fr);gap:var(--nxt-s5);padding:var(--nxt-s5)}
  .nx-twin-t__art{max-width:460px;margin-inline:auto;width:100%}
}
@media (max-width:480px){.nx-twin-t__btn{width:100%}}
@media (prefers-reduced-motion:reduce){.nx-twin-t__btn{transition:none}.nx-twin-t__btn:hover{transform:none}}
/* body.page h3 resets margins; give the teacher advert's heading its air back. */
body.page .nx-twin-t__title{margin:var(--nxt-s4) 0 var(--nxt-s3)}

/* ======================================================================
   AI-first section (home/partials/ai-first) and the NXT AI chat panel.
   Indigo is the AI colour. A soft "bloom" of light behind each makes them
   read as a lit surface instead of dissolving into the dark page; the
   teacher side of every picture is warm, so AI (cool) and people (warm)
   read apart at a glance.
   ====================================================================== */
.nx-aif{position:relative;isolation:isolate;padding-block:var(--nxt-s7)}
.nx-aif__bloom{position:absolute;inset:0 -4vw;z-index:-1;pointer-events:none;
  background:radial-gradient(40% 55% at 78% 22%,rgba(124,58,237,.30),transparent 70%),
             radial-gradient(38% 50% at 12% 70%,rgba(56,189,248,.16),transparent 70%),
             radial-gradient(30% 40% at 88% 80%,rgba(245,158,11,.12),transparent 70%)}
.nx-aif__head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--nxt-s6);align-items:center}
.nx-aif__eyebrow{display:inline-flex;padding:5px 12px;border-radius:var(--nxt-r-pill);background:rgba(99,102,241,.18);border:1px solid rgba(129,140,248,.45);
  color:#C7D2FE;font-size:var(--nxt-t-xs);font-weight:800;letter-spacing:.04em;text-transform:uppercase}
body.page .nx-aif__title{margin:var(--nxt-s4) 0 var(--nxt-s3);font-family:var(--nxt-font-display);font-size:var(--nxt-t-h1);line-height:1.1;letter-spacing:-.015em;text-wrap:balance}
.nx-aif__title span{background:linear-gradient(90deg,#FBBF24,#FB923C);-webkit-background-clip:text;background-clip:text;color:transparent}
.nx-aif__lede{margin:0;max-width:56ch;color:var(--nxt-text-dim);font-size:1.0625rem;line-height:var(--nxt-lh-body)}
.nx-aif__art{margin:0;display:flex;flex-direction:column;align-items:center}
.nx-aif__pair{display:flex;align-items:flex-end;justify-content:center;gap:4px}
.nx-aif__pair .nx-mascot{filter:drop-shadow(0 14px 26px rgba(99,102,241,.55))}
.nx-aif__teacher{filter:drop-shadow(0 14px 26px rgba(245,158,11,.35))}
.nx-aif__spark{align-self:center;animation:nxAifTwinkle 3.2s ease-in-out infinite}
@keyframes nxAifTwinkle{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.18) rotate(18deg)}}
.nx-aif__caption{display:flex;gap:92px;margin-top:6px;font-size:var(--nxt-t-xs);font-weight:800;letter-spacing:.03em}
.nx-aif__caption span:first-child{color:#A5B4FC}.nx-aif__caption span:last-child{color:#FBBF24}

.nx-aif__cards{list-style:none;margin:var(--nxt-s6) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--nxt-s4)}
.nx-aif__card{position:relative;display:flex;flex-direction:column;gap:8px;padding:var(--nxt-s5);border-radius:var(--nxt-r-lg);
  background:linear-gradient(180deg,rgba(99,102,241,.14),rgba(255,255,255,.03) 55%);border:1px solid rgba(129,140,248,.28);
  transition:transform var(--nxt-base) var(--nxt-ease),border-color var(--nxt-base),box-shadow var(--nxt-base)}
.nx-aif__card:hover{transform:translateY(-3px);border-color:rgba(165,180,252,.6);box-shadow:0 18px 40px rgba(49,46,129,.35)}
.nx-aif__card::before{content:"";position:absolute;inset:0 0 auto;height:3px;border-radius:var(--nxt-r-lg) var(--nxt-r-lg) 0 0;background:linear-gradient(90deg,#6366F1,#A855F7,#38BDF8)}
.nx-aif__ico{width:56px;height:56px}
.nx-aif__ico--mascot{display:grid;place-items:end center;height:62px}
body.page .nx-aif__card h3{margin:6px 0 0;font-family:var(--nxt-font-display);font-size:var(--nxt-t-h4);color:var(--nxt-text)}
.nx-aif__card p{margin:0;color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);line-height:1.55}
body.page .nx-aif__link{margin-top:auto;padding-top:6px;color:var(--nxt-link,#6CB0FF);font-weight:700;font-size:var(--nxt-t-sm);text-decoration:none}
body.page .nx-aif__link::after{content:" →"}
body.page .nx-aif__link:hover{text-decoration:underline}

.nx-aif__people{margin-top:var(--nxt-s5);padding:var(--nxt-s5) var(--nxt-s6);border-radius:var(--nxt-r-lg);
  background:linear-gradient(135deg,rgba(52,199,123,.10),rgba(255,255,255,.03));border:1px solid rgba(52,199,123,.35)}
.nx-aif__people-head{display:flex;align-items:center;gap:12px}
body.page .nx-aif__people h3{margin:0;font-family:var(--nxt-font-display);font-size:var(--nxt-t-h3)}
.nx-aif__people ul{list-style:none;margin:var(--nxt-s4) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px var(--nxt-s6)}
.nx-aif__people li{position:relative;padding-left:24px;color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);line-height:1.55}
.nx-aif__people li::before{content:"";position:absolute;left:0;top:7px;width:10px;height:10px;border-radius:50%;background:#34C77B;box-shadow:0 0 0 4px rgba(52,199,123,.18)}
.nx-aif__people strong{color:var(--nxt-text)}
@media (max-width:1000px){.nx-aif__cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .nx-aif__head{grid-template-columns:minmax(0,1fr)}
  .nx-aif__art{order:-1}
  .nx-aif__pair .nx-mascot{width:118px;height:auto}.nx-aif__teacher{width:118px;height:auto}
  .nx-aif__caption{gap:56px}
  .nx-aif__people ul{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:520px){.nx-aif__cards{grid-template-columns:minmax(0,1fr)}}

/* ---- the NXT AI chat panel: lit, not dissolved -------------------------- */
body.page .nxg-ai-layout{position:relative;isolation:isolate}
body.page .nxg-ai-layout::before{content:"";position:absolute;inset:-40px -30px;z-index:-1;pointer-events:none;
  background:radial-gradient(45% 60% at 30% 30%,rgba(99,102,241,.28),transparent 70%),radial-gradient(35% 50% at 85% 75%,rgba(56,189,248,.14),transparent 70%)}
body.page .nxg-chat-card.nxg-glass{background:linear-gradient(180deg,rgba(79,70,229,.22),rgba(15,22,42,.92) 38%);
  border:1px solid rgba(129,140,248,.5);box-shadow:0 0 0 1px rgba(99,102,241,.18),0 30px 70px rgba(30,27,75,.55)}
body.page .nxg-chat-top{display:flex;align-items:center;gap:12px}
body.page .nxg-chat-top .nx-mascot{flex:0 0 auto;filter:drop-shadow(0 6px 14px rgba(99,102,241,.6))}
body.page .nxg-chat-top h4{color:#fff}
body.page .nxg-chat-top h4 span{color:#A5B4FC}
body.page .nxg-msg.ai{background:rgba(99,102,241,.12);border-color:rgba(129,140,248,.28)}
body.page .nxg-quick{background:rgba(99,102,241,.2);border-color:rgba(165,180,252,.45);color:#EEF2FF}
body.page .nxg-quick:hover{background:rgba(99,102,241,.36)}
body.page .nxg-chat-input button{background:linear-gradient(135deg,#6366F1,#7C3AED);box-shadow:0 8px 20px rgba(99,102,241,.45)}
body.page .nxg-chat-input button:hover{background:linear-gradient(135deg,#7C83F6,#8B5CF6)}
body.page .nxg-results{background:linear-gradient(180deg,rgba(56,189,248,.08),rgba(255,255,255,.03) 40%);border-color:rgba(125,211,252,.28)}
@media (prefers-reduced-motion:reduce){.nx-aif__spark{animation:none}.nx-aif__card{transition:none}.nx-aif__card:hover{transform:none}}
/* The glows may spread past a section's edge but never widen the page. */
.nx-aif{overflow-x:clip}
body.page #nxAskAISection{overflow-x:clip}
@supports not (overflow:clip){.nx-aif,body.page #nxAskAISection{overflow-x:hidden}}
/* Phone rails bleed to the screen edge by exactly the page gutter. The shell
   pads 12px on phones, not the 16px (--nxt-s4) these assumed, so every rail
   overhung the screen by 4px and the whole page scrolled sideways. */
@media (max-width:719px){
  .nx-chips--rail,.nx-rail{margin-inline:-12px;padding-inline:12px}
}
@media (max-width:719px){
  body.page .nx-guide__toc,.nx-guide__toc{margin-inline:-12px;padding-inline:12px}
}
@media (max-width:719px){
  #areasGrid{margin-inline:-12px;padding-inline:12px}
}

/* ---------- tutor card anatomy (partials/tutor-card) ---------------------
   Same order on every card: portrait, name + seal, place, "Teaches", boards,
   experience and fee, actions. Facts are read in one sweep, top to bottom. */
.tutor-mono{display:block;width:100%;height:auto;aspect-ratio:4/3}
.tutor-mono[hidden]{display:none}
body.page .tutor-expertise{margin:2px 0 4px;color:var(--nxt-text);font-size:var(--nxt-t-sm);font-weight:700;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.page .tutor-teaches{margin:6px 0 0;color:var(--nxt-text);font-size:var(--nxt-t-sm);font-weight:600;line-height:1.4}
body.page .tutor-teaches span{display:inline-block;margin-right:6px;color:var(--nxt-text-faint);font-size:var(--nxt-t-micro);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
body.page .tutor-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:8px;margin:10px 0 0;padding-top:10px;border-top:1px solid var(--nxt-line)}
body.page .tutor-facts div{min-width:0}
body.page .tutor-facts dt{white-space:nowrap;color:var(--nxt-text-faint);font-size:var(--nxt-t-micro);font-weight:800;letter-spacing:.06em;text-transform:uppercase}
body.page .tutor-facts dd{margin:2px 0 0;color:var(--nxt-text);font-size:var(--nxt-t-sm);font-weight:700;overflow-wrap:anywhere}
/* Sample profiles are honest and quieter: softer portrait, dashed frame. */
body.page .tutor-card--sample{border-style:dashed;border-color:var(--nxt-line-strong)}
body.page .tutor-card--sample .tutor-photo img{filter:saturate(.55) brightness(.92)}
body.page .tutor-card--sample .tutor-name{color:var(--nxt-text-dim)}

/* ---------- Guides (home/partials/guides): a bento of drawn topic covers ----
   Depth from three layers (the cover's back panel, the drawing, the card's
   soft shadow); motion only on hover and never for reduced-motion users.
   Each topic's tint lives in its cover only; links keep the link colour. */
.nxgd-eyebrow{display:inline-flex;margin-bottom:8px;padding:5px 12px;border-radius:var(--nxt-r-pill);background:rgba(52,199,123,.14);border:1px solid rgba(52,199,123,.4);
  color:#A7F3D0;font-size:var(--nxt-t-xs);font-weight:800;letter-spacing:.03em}
.nxgd-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--nxt-s4);margin-top:var(--nxt-s5)}
.nxgd-card{position:relative;display:flex;flex-direction:column;min-width:0;border-radius:var(--nxt-r-lg);overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.09);
  box-shadow:0 1px 0 rgba(255,255,255,.05) inset,0 14px 30px rgba(3,7,18,.35);
  transition:transform var(--nxt-base) var(--nxt-ease),box-shadow var(--nxt-base) var(--nxt-ease),border-color var(--nxt-base)}
.nxgd-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--gd-a) 45%,transparent);box-shadow:0 22px 44px rgba(3,7,18,.5),0 0 0 1px color-mix(in srgb,var(--gd-a) 25%,transparent)}
.nxgd-card__cover{position:relative;display:block;aspect-ratio:2/1;overflow:hidden;
  background:linear-gradient(160deg,color-mix(in srgb,var(--gd-a) 22%,#0B1424),#0B1424 75%)}
.nxgd-cover{display:block;width:100%;height:100%}
.nxgd-cover__front,.nxgd-cover__back{transition:transform .6s var(--nxt-ease)}
.nxgd-card:hover .nxgd-cover__front{transform:translateY(-4px)}
.nxgd-card:hover .nxgd-cover__back{transform:translateX(6px)}
.nxgd-card__count,.nxgd-card__flag{position:absolute;top:10px;padding:4px 10px;border-radius:var(--nxt-r-pill);font-size:var(--nxt-t-micro);font-weight:800;letter-spacing:.04em}
.nxgd-card__count{left:10px;background:rgba(8,14,27,.72);color:#EEF2F9;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px)}
.nxgd-card__flag{right:10px;background:#34C77B;color:#052E16}
.nxgd-card__body{display:flex;flex-direction:column;gap:8px;flex:1;padding:var(--nxt-s4) var(--nxt-s5) var(--nxt-s5)}
body.page .nxgd-card__title{margin:0;font-family:var(--nxt-font-display);font-size:var(--nxt-t-h4);line-height:1.2;color:var(--nxt-text)}
.nxgd-card__promise{margin:0;color:var(--nxt-text-dim);font-size:var(--nxt-t-sm)}
.nxgd-card__list{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:2px}
/* Padding on the row, the 2-line clamp on the link: padding inside a clamped
   box let a third line peek through. */
.nxgd-card__list li{position:relative;padding:7px 0 7px 18px;border-top:1px solid var(--nxt-line)}
.nxgd-card__list li:first-child{border-top:0}
.nxgd-card__list li::before{content:"";position:absolute;left:2px;top:14px;width:7px;height:7px;border-radius:50%;background:var(--gd-a)}
.nxgd-card__list li a,body.page .nxgd-card__list li a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  color:var(--nxt-text);font-size:var(--nxt-t-sm);line-height:1.4;text-decoration:none}
.nxgd-card__list li a:hover{color:var(--nxt-link,#6CB0FF)}
body.page .nxgd-card__all{margin-top:auto;padding-top:8px;color:var(--nxt-link,#6CB0FF);font-weight:700;font-size:var(--nxt-t-sm);text-decoration:none}
body.page .nxgd-card__all::after{content:" →"}
body.page .nxgd-card__all:hover{text-decoration:underline}
/* the lead topic: two columns wide, cover beside the list */
.nxgd-card--feature{grid-column:span 2}
.nxgd-card--feature .nxgd-card__cover{aspect-ratio:3/1}
.nxgd-card--feature .nxgd-card__list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--nxt-s5)}
.nxgd-card--feature .nxgd-card__list li:nth-child(2){border-top:0}
/* the closing card: fills what is left of the last row */
.nxgd-ask{grid-column:span var(--gd-span,2);display:flex;align-items:center;gap:var(--nxt-s5);padding:var(--nxt-s5) var(--nxt-s6);border-radius:var(--nxt-r-lg);
  background:radial-gradient(80% 120% at 0% 50%,rgba(124,58,237,.35),transparent 70%),linear-gradient(135deg,rgba(79,70,229,.25),rgba(15,22,42,.9));
  border:1px solid rgba(129,140,248,.5);box-shadow:0 20px 50px rgba(30,27,75,.45)}
.nxgd-ask__art{flex:0 0 auto;filter:drop-shadow(0 12px 22px rgba(99,102,241,.55))}
body.page .nxgd-ask h3{margin:0 0 6px;font-family:var(--nxt-font-display);font-size:var(--nxt-t-h3);color:#fff}
.nxgd-ask p{margin:0;color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);line-height:1.55;max-width:52ch}
.nxgd-ask__cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:var(--nxt-s4)}
body.page .nxgd-ask__ai,body.page .nxgd-ask__demo{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;border-radius:var(--nxt-r-pill);font-weight:800;font-size:var(--nxt-t-sm);text-decoration:none}
body.page .nxgd-ask__ai{background:linear-gradient(135deg,#6366F1,#7C3AED);color:#fff;box-shadow:0 8px 22px rgba(99,102,241,.45)}
body.page .nxgd-ask__demo{background:var(--nxt-action,#F5A524);color:var(--nxt-on-action,#0A1020)}
.nxgd-foot{margin:var(--nxt-s5) 0 0;color:var(--nxt-text-dim);font-size:var(--nxt-t-sm)}
body.page .nxgd-foot a{color:var(--nxt-link,#6CB0FF);font-weight:700}
@media (max-width:1100px){
  .nxgd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nxgd-ask{grid-column:span 2}
}
@media (max-width:719px){
  /* A swipeable shelf: one card and a peek of the next, then the ask card. */
  .nxgd-grid{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:minmax(250px,84%);overflow-x:auto;scroll-snap-type:x mandatory;
    margin-inline:-12px;padding:4px 12px 14px;scrollbar-width:none}
  .nxgd-grid::-webkit-scrollbar{display:none}
  .nxgd-card,.nxgd-card--feature{grid-column:auto;flex-direction:column;scroll-snap-align:start}
  .nxgd-card--feature .nxgd-card__cover{aspect-ratio:2/1}
  .nxgd-card--feature .nxgd-card__list{grid-template-columns:minmax(0,1fr)}
  .nxgd-card--feature .nxgd-card__list li:nth-child(2){border-top:1px solid var(--nxt-line)}
  .nxgd-ask{grid-column:auto;flex-direction:column;align-items:flex-start;scroll-snap-align:start;padding:var(--nxt-s5)}
}
@media (prefers-reduced-motion:reduce){
  .nxgd-card,.nxgd-cover__front,.nxgd-cover__back{transition:none}
  .nxgd-card:hover,.nxgd-card:hover .nxgd-cover__front,.nxgd-card:hover .nxgd-cover__back{transform:none}
}

/* ---------- How it works (home/partials/how-it-works) --------------------
   Three drawn steps joined by a dashed path: one journey, read left to
   right. Step 2 (matching) is the AI colour; the people steps are warm. */
.nx-how__eyebrow,.nx-pg__eyebrow{display:inline-flex;margin-bottom:8px;padding:5px 12px;border-radius:var(--nxt-r-pill);font-size:var(--nxt-t-xs);font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.nx-how__eyebrow{background:rgba(245,165,36,.14);border:1px solid rgba(245,165,36,.45);color:#FCD34D}
.nx-how__steps{position:relative;list-style:none;margin:var(--nxt-s6) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--nxt-s5);counter-reset:none}
.nx-how__steps::before{content:"";position:absolute;left:16%;right:16%;top:104px;border-top:2px dashed rgba(165,180,252,.35);z-index:0}
.nx-how__step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:var(--nxt-s4) var(--nxt-s5) var(--nxt-s5);border-radius:var(--nxt-r-lg);
  background:linear-gradient(180deg,color-mix(in srgb,var(--hw) 12%,transparent),rgba(255,255,255,.025) 60%);border:1px solid color-mix(in srgb,var(--hw) 30%,transparent);
  transition:transform var(--nxt-base) var(--nxt-ease),box-shadow var(--nxt-base)}
.nx-how__step:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(3,7,18,.45)}
.nx-how__step--ai{box-shadow:0 0 0 1px rgba(129,140,248,.25),0 20px 50px rgba(49,46,129,.35)}
.nx-how__art{position:relative;margin:0 auto 4px;width:100%;max-width:260px}
.nx-how__art svg{display:block;width:100%;height:auto}
.nx-how__nix{position:absolute;right:-6px;bottom:-4px;filter:drop-shadow(0 8px 16px rgba(99,102,241,.6))}
.nx-how__no{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--hw);color:#0A1020;font-weight:800;font-size:15px;box-shadow:0 0 0 5px color-mix(in srgb,var(--hw) 22%,transparent)}
body.page .nx-how__step h3{margin:4px 0 0;font-family:var(--nxt-font-display);font-size:var(--nxt-t-h4);color:var(--nxt-text)}
.nx-how__step p{margin:0;color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);line-height:1.55}
.nx-how__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--nxt-s4);margin-top:var(--nxt-s5)}
.nx-how__trust{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.nx-how__trust li{padding:6px 12px;border-radius:var(--nxt-r-pill);background:rgba(52,199,123,.1);border:1px solid rgba(52,199,123,.35);color:#A7F3D0;font-size:var(--nxt-t-xs);font-weight:700}
.nx-how__trust li::before{content:"✓ "}
.nx-how__cta{display:flex;flex-wrap:wrap;gap:10px}
body.page .nx-how__primary,body.page .nx-how__secondary{display:inline-flex;align-items:center;min-height:46px;padding:11px 20px;border-radius:var(--nxt-r-pill);font-weight:800;font-size:var(--nxt-t-sm);text-decoration:none}
body.page .nx-how__primary{background:var(--nxt-action,#F5A524);color:var(--nxt-on-action,#0A1020);box-shadow:0 10px 26px rgba(245,165,36,.3)}
body.page .nx-how__secondary{border:1px solid var(--nxt-line-strong);color:var(--nxt-text)}
@media (max-width:860px){
  .nx-how__steps{grid-template-columns:minmax(0,1fr)}
  .nx-how__steps::before{display:none} /* the numbers carry the order; a line behind the cards crossed the text */
  .nx-how__art{max-width:220px}
}

/* ---------- Parent's guide (home/partials/parent-guide) ------------------ */
.nx-pg__intro{display:grid;grid-template-columns:180px minmax(0,1fr);gap:var(--nxt-s5);align-items:center}
.nx-pg__art{width:100%;height:auto;filter:drop-shadow(0 14px 26px rgba(3,7,18,.5))}
.nx-pg__eyebrow{background:rgba(52,199,123,.14);border:1px solid rgba(52,199,123,.4);color:#A7F3D0}
body.page .nx-pg__title{margin:0 0 8px;font-family:var(--nxt-font-display);font-size:var(--nxt-t-h2);line-height:1.15;color:var(--nxt-text)}
.nx-pg__title span{color:#86EFAC}
.nx-pg__lede{margin:0;max-width:60ch;color:var(--nxt-text-dim);font-size:var(--nxt-t-body)}
body.page .nx-pg__link{display:inline-block;margin-top:10px;color:var(--nxt-link,#6CB0FF);font-weight:700;font-size:var(--nxt-t-sm);text-decoration:none}
body.page .nx-pg__link::after{content:" →"}
body.page .nx-pg__link:hover{text-decoration:underline}
.nx-pg__stages{list-style:none;margin:var(--nxt-s5) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--nxt-s4)}
.nx-pg__stages > li{position:relative;padding:var(--nxt-s5);border-radius:var(--nxt-r-lg);background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-top:3px solid var(--pg)}
.nx-pg__stage{display:block;margin-bottom:10px;color:var(--pg);font-family:var(--nxt-font-display);font-size:var(--nxt-t-h4);font-weight:700}
.nx-pg__stages ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.nx-pg__stages ul li{position:relative;padding-left:26px;color:var(--nxt-text);font-size:var(--nxt-t-sm);line-height:1.45}
.nx-pg__stages ul li::before{content:"";position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:50%;
  background:rgba(52,199,123,.16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%2334C77B' d='M6.4 11.1 3.4 8.1l1.1-1.1 1.9 1.9 5-5 1.1 1.1z'/%3E%3C/svg%3E") center/12px no-repeat}
@media (max-width:760px){
  .nx-pg__intro{grid-template-columns:110px minmax(0,1fr);gap:var(--nxt-s4)}
  .nx-pg__stages{grid-template-columns:minmax(0,1fr)}
}

/* ---------- city cards: a small skyline in each city's own calm colour --- */
body.page .nxtc-link{position:relative;overflow:hidden;padding-top:14px;transition:transform var(--nxt-base) var(--nxt-ease),border-color var(--nxt-base),box-shadow var(--nxt-base)}
body.page .nxtc-link:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--tc) 55%,transparent);box-shadow:0 16px 36px rgba(3,7,18,.45)}
.nxtc-sky{width:84px;height:auto;margin-bottom:6px;fill:var(--tc);opacity:.75}
body.page .nxtc-link:hover .nxtc-sky{opacity:1}
body.page .nxtc-stats{color:var(--tc)}
@media (prefers-reduced-motion:reduce){.nx-how__step,body.page .nxtc-link{transition:none}.nx-how__step:hover,body.page .nxtc-link:hover{transform:none}}
/* Section heads that carry a label: label above the heading, not beside it. */
body.page .nx-how .section-head,body.page .nxgd-sec .section-head{display:block}
body.page .nx-how .section-head .section-title,body.page .nxgd-sec .section-head .section-title{margin-top:0}

/* ---------- tutor profile: quick facts, jump links, empty reviews --------- */
body.page .nxqf-wrap{padding-top:0}
.nxqf{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0}
.nxqf > div{padding:12px 14px;border-radius:var(--nxt-r-md);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.09)}
.nxqf dt{color:var(--nxt-text-faint);font-size:var(--nxt-t-micro);font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.nxqf dd{margin:4px 0 0;color:var(--nxt-text);font-weight:800;font-size:var(--nxt-t-sm);line-height:1.35}
/* Jump links stay in reach while a parent scrolls a long profile. */
.nxjump{position:sticky;top:var(--nx-sticky-top,64px);z-index:20;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-top:12px;padding:8px;
  border-radius:var(--nxt-r-pill);background:rgba(8,14,27,.82);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px)}
.nxjump::-webkit-scrollbar{display:none}
body.page .nxjump a{flex:0 0 auto;padding:8px 14px;border-radius:var(--nxt-r-pill);color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);font-weight:700;text-decoration:none;white-space:nowrap}
body.page .nxjump a:hover{background:var(--nxt-surface-2);color:var(--nxt-text)}
body.page .nxjump a[href="#nxAskAISection"]{color:var(--nxt-ai,#A5B4FC)}
html{scroll-padding-top:130px}
.nxrv-empty{padding:18px}
body.page .nxrv-empty__cta{display:inline-flex;margin-top:12px}
@media (max-width:700px){.nxjump{border-radius:var(--nxt-r-md)}}

/* ---------- blog index (blog/index): head, "Start here", cards, topics ---- */
.nxbl-head{padding-bottom:0}
body.page .nxbl-head .nxh1{margin:4px 0 8px}
.nxbl-sub{margin:0;max-width:62ch;color:var(--nxt-text-dim);font-size:1.0625rem}
.nxbl-search{display:flex;gap:8px;margin-top:var(--nxt-s4);max-width:640px}
body.page .nxbl-search input{flex:1;min-width:0;min-height:48px;padding:12px 16px;border-radius:var(--nxt-r-pill);background:rgba(255,255,255,.06);border:1px solid var(--nxt-line-strong);color:var(--nxt-text);font-size:var(--nxt-t-body)}
.nxbl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nxbl-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin-top:var(--nxt-s4);padding-bottom:4px}
.nxbl-chips::-webkit-scrollbar{display:none}
body.page .nxbl-chips a{flex:0 0 auto;padding:8px 14px;border-radius:var(--nxt-r-pill);background:var(--nxt-surface);border:1px solid var(--nxt-line);color:var(--nxt-text);font-size:var(--nxt-t-sm);font-weight:700;text-decoration:none;white-space:nowrap}
body.page .nxbl-chips a:hover{border-color:var(--nxt-line-strong);background:var(--nxt-surface-2)}
/* Start here: one lead guide, three beside it */
.nxbl-feature{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:repeat(3,auto);gap:var(--nxt-s4);margin-top:var(--nxt-s4)}
.nxbl-fcard{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;align-items:center;padding:10px;border-radius:var(--nxt-r-lg);
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);color:var(--nxt-text);text-decoration:none;
  transition:transform var(--nxt-base) var(--nxt-ease),border-color var(--nxt-base),box-shadow var(--nxt-base)}
.nxbl-fcard:hover{transform:translateY(-3px);border-color:rgba(165,180,252,.45);box-shadow:0 18px 40px rgba(3,7,18,.45)}
.nxbl-fcard img{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover;border-radius:12px}
.nxbl-fcard__body{display:flex;flex-direction:column;gap:6px;min-width:0}
.nxbl-meta,body.page .blog-meta{color:var(--nxt-text-faint);font-size:var(--nxt-t-micro);font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.nxbl-fcard__title{font-family:var(--nxt-font-display);font-weight:700;font-size:var(--nxt-t-h4);line-height:1.25}
.nxbl-fcard__desc{color:var(--nxt-text-dim);font-size:var(--nxt-t-sm);line-height:1.55}
.nxbl-fcard--lead{grid-row:span 3;grid-template-columns:minmax(0,1fr);align-content:start;padding:12px 12px 18px}
.nxbl-fcard--lead .nxbl-fcard__body{padding:4px 8px 0}
.nxbl-fcard--lead .nxbl-fcard__title{font-size:var(--nxt-t-h3)}
body.page .blog-meta{display:block;margin-bottom:6px}
/* byline and the one featured guide (Redesign plan 2): neutral, not a fourth accent */
.nxbl-badge{align-self:flex-start;padding:3px 10px;border-radius:var(--nxt-r-pill);background:var(--nxt-selected-bg);color:var(--nxt-selected-ink);font-size:var(--nxt-t-micro);font-weight:800;letter-spacing:.04em}
.nxbl-by,body.page .blog-by{color:var(--nxt-text-dim);font-size:var(--nxt-t-xs);font-weight:700}
body.page .blog-by{display:block;margin-top:8px}
/* topic boxes carry the same drawn covers as the home page */
.nxbl-topic__cover{margin:calc(var(--nxt-s5) * -1) calc(var(--nxt-s5) * -1) var(--nxt-s3);aspect-ratio:2/1;overflow:hidden;border-radius:var(--nxt-r-md) var(--nxt-r-md) 0 0;
  background:linear-gradient(160deg,color-mix(in srgb,var(--gd-a) 22%,#0B1424),#0B1424 75%)}
.nxbl-topic__cover svg{display:block;width:100%;height:100%}
.nxbl-local{margin-top:var(--nxt-s3)}
@media (max-width:900px){
  .nxbl-feature{grid-template-columns:minmax(0,1fr);grid-template-rows:none}
  .nxbl-fcard--lead{grid-row:auto}
}
@media (max-width:520px){.nxbl-fcard{grid-template-columns:110px minmax(0,1fr)}.nxbl-fcard--lead{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.nxbl-fcard{transition:none}.nxbl-fcard:hover{transform:none}}

/* ---------- area pages: tutor note and zone block (city/cityarea) ---------- */
body.page .nxarea-note{margin:4px 0 14px;color:var(--nxt-muted,#B7C0D1);font-size:15px;line-height:1.55;max-width:70ch}
body.page .nxarea-tutors{margin-top:6px}
body.page .nxzone p{line-height:1.7;max-width:72ch}
body.page .nxzone__eyebrow{display:inline-flex;margin-bottom:8px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.02em;color:#E6EBF5;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}
body.page .nxzone__h3{margin:18px 0 8px;font-size:17px;font-weight:700}
body.page .nxzone__tips{margin:0 0 6px;padding-left:20px;line-height:1.65;max-width:72ch}
body.page .nxzone__tips li{margin:4px 0}
body.page .nxzone__areas{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
body.page .nxzone__areas a{display:inline-block;padding:6px 12px;border-radius:999px;font-size:14px;color:var(--nxt-link);border:1px solid var(--nxt-link-line);text-decoration:none}
body.page .nxzone__areas a:hover{background:rgba(108,176,255,.1)}
body.page .nxzone__more a{color:var(--nxt-link);text-decoration:underline;text-decoration-color:var(--nxt-link-line);text-underline-offset:3px}

/* ---------- area pages: anonymised recent requests (city/cityarea/partials/area-demand) ---------- */
body.page .nxdemand__list{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
body.page .nxdemand__list li{display:flex;gap:12px;align-items:baseline;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1)}
body.page .nxdemand__month{flex:0 0 auto;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#B7C0D1}
body.page .nxdemand__what{font-weight:600;color:#EEF2F9}

/* ---------- area pages: sector / society pages and schools (city/cityarea/partials/area-places, area-schools) ---------- */
body.page .nxplaces,body.page .nxschools{margin-top:16px}
body.page .nxplaces p,body.page .nxschools p{line-height:1.7;max-width:72ch}
body.page .nxplaces .nx-chips{margin:10px 0 4px}
body.page .nxplaces a:not(.nx-chip){color:var(--nxt-link);text-decoration:underline;text-decoration-color:var(--nxt-link-line);text-underline-offset:3px}
body.page .nxschools__list{margin:0 0 6px;padding-left:20px;line-height:1.65;max-width:72ch}
body.page .nxschools__list li{margin:4px 0}
body.page .nxschools__list a{color:var(--nxt-link);text-decoration:underline;text-decoration-color:var(--nxt-link-line);text-underline-offset:3px}
body.page .legal-note{max-width:860px;margin:0 auto 40px;padding:0 12px}
body.page .legal-note h2{font-size:20px;margin:0 0 8px}
body.page .legal-note p{line-height:1.7;color:#C7D2E0}

/* ---------- area pages: "Teach in this area" (city/cityarea/single) ---------- */
body.page .nxrecruit{margin-top:16px;padding:16px 18px;border-radius:14px;border:1px dashed rgba(255,255,255,.22);background:rgba(255,255,255,.03);display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}
body.page .nxrecruit p{flex:1 1 320px;margin:0;line-height:1.6;color:#C7D2E0}
body.page .nxrecruit__more{color:var(--nxt-link);text-decoration:underline;text-decoration-color:var(--nxt-link-line);text-underline-offset:3px;font-size:14px}
.nx-form__alt{margin:12px 0 0;text-align:center;font-size:14px;color:#B7C0D1}
.nx-form__alt a{color:var(--nxt-link);text-decoration:underline;text-underline-offset:3px}

/* ---------- /tuition-jobs/{city} ---------- */
body.page .nxjobs-zones{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin-top:12px}
body.page .nxjobs-zone{padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12)}
body.page .nxjobs-zone h3{margin:0 0 6px;font-size:17px}
body.page .nxjobs-zone p{margin:8px 0 0;font-size:14px;line-height:1.6}
body.page .nxjobs-zone a{color:var(--nxt-link)}
body.page .nxjobs-zone__tag{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;background:rgba(255,255,255,.08);color:#C7D2E0}
body.page .nxjobs-zone--needed{border-color:rgba(245,165,36,.55)}
body.page .nxjobs-zone--needed .nxjobs-zone__tag{background:rgba(245,165,36,.16);color:#FCD34D}
body.page .nxjobs-steps,body.page .nxjobs-list{line-height:1.7;max-width:78ch;padding-left:20px}
body.page .nxjobs-steps li,body.page .nxjobs-list li{margin:6px 0}
body.page .nxjobs-cities{margin-top:12px}body.page .nxjobs-cities a{color:var(--nxt-link);text-decoration:underline;text-underline-offset:3px}

/* ---------- area pages: "{Area} at a glance" ---------- */
body.page .nxglance p{line-height:1.7;max-width:76ch}
body.page .nxglance .nx-table{min-width:0}
body.page .nxglance th{text-transform:none;letter-spacing:0;font-size:14px;width:34%;vertical-align:top;background:rgba(255,255,255,.04)}
body.page .nxglance td{font-size:14.5px;color:#DCE3EE}
body.page .nxglance a{color:var(--nxt-link)}

/* ---------- footer: Legal links row (include/footer.blade.php) ---------- */
body.page .footer-legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 14px;margin:0 0 var(--nxt-s3)}
body.page .footer-legal__head{font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:var(--nxt-t-micro)}
body.page .footer-legal ul{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;margin:0;padding:0;list-style:none}
body.page .footer-legal a{color:inherit;text-decoration:none}
body.page .footer-legal a:hover{text-decoration:underline}

/* ---------- Phase 1-B: tutors first, demo CTA under the cards, fee block ---------- */
body.page .nxfirst-cta{margin-top:14px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}
body.page .nxfirst-cta p{flex:1 1 300px;margin:0;line-height:1.6;color:#C7D2E0}
body.page .nxfirst-cta .nxbtn{flex:0 0 auto}
body.page .nxfee p{line-height:1.7;max-width:78ch}
body.page .nxfee .nxfee__table{min-width:0}
body.page .nxfee__table th[scope="row"]{text-transform:none;letter-spacing:0;font-size:14px;background:rgba(255,255,255,.04)}
body.page .nxfee__table td{font-size:14.5px;color:#DCE3EE}
body.page .nxfee__table thead th{text-transform:none;letter-spacing:0;font-size:13px}
body.page .nxfee__caption{caption-side:top;text-align:left;padding:10px 14px;font-size:13px;color:#B7C0D1;line-height:1.5}
body.page .nxfee__sub{margin:18px 0 6px;font-size:17px}
@media (max-width:480px){
  body.page .nxfee__table th,body.page .nxfee__table td{padding:8px 8px;font-size:13px}
  body.page .nxfirst-cta .nxbtn{width:100%;text-align:center}
}
/* Gurugram subject pages: the three hero figures sit in one compact row on phones, so the tutor cards come sooner. */
@media (max-width:640px){
  body.page .nx-shero--first .nx-stats--stack{flex-wrap:nowrap;gap:6px}
  body.page .nx-shero--first .nx-stats--stack li{flex:1 1 0;min-width:0;padding:8px 8px}
  body.page .nx-shero--first .nx-stats--stack strong{font-size:17px}
  body.page .nx-shero--first .nx-stats--stack span{font-size:12px;line-height:1.35}
}
body.page .nxfee .nxfee__monthly{border-left:3px solid rgba(255,255,255,.28);padding:8px 12px;background:rgba(255,255,255,.04);border-radius:8px;font-weight:600}

/* "Get 2–3 matched tutors": first-screen enquiry form (partials/hero-lead-form), mobile first. */
body.page .nxhlf{margin:12px 0 18px}
body.page .nxhlf__form{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:14px;color:#fff}
body.page .nxhlf__title{margin:0;font-size:18px;font-weight:800;line-height:1.3}
body.page .nxhlf__sub{margin:4px 0 10px;font-size:13.5px;opacity:.85}
body.page .nxhlf__grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
body.page .nxhlf__field{display:flex;flex-direction:column;gap:3px;min-width:0}
body.page .nxhlf__label{font-size:12px;font-weight:700;color:#C9D3E6}
body.page .nxhlf__field input,body.page .nxhlf__field select{width:100%;min-height:42px;padding:9px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.22);background:rgba(10,18,36,.55);color:#fff;font-size:15px}
body.page .nxhlf__field select option{color:#0B1220}
body.page .nxhlf__field--subject{grid-column:1/-1}
body.page .nxhlf__field select:has(option[value=""]:checked){color:rgba(255,255,255,.55)}
body.page .nxhlf__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
body.page .nxhlf__actions{margin-top:10px}
body.page .nxhlf__btn{width:100%;min-height:46px;font-weight:800;white-space:normal}
body.page .nxhlf__msg{margin:6px 0 0;font-size:13.5px;min-height:0}
body.page .nxhlf__msg.is-error{color:#FFB4A8}
@media (min-width:760px){
  body.page .nxhlf__grid{grid-template-columns:repeat(5,1fr)}
  body.page .nxhlf__field--subject{grid-column:auto}
  body.page .nxhlf__btn{width:auto;padding:0 22px}
  body.page .nxhlf__actions{display:flex;align-items:center;gap:12px}
}

/* Approved family reviews on the city hub (partials/hub-reviews). */
body.page .nxreviews__list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:12px}
@media (min-width:760px){body.page .nxreviews__list{grid-template-columns:repeat(2,1fr)}}
body.page .nxreviews__item{padding:14px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12)}
body.page .nxreviews__stars{margin:0;color:#fbbf24;letter-spacing:2px}
body.page .nxreviews__stars span{color:#B7C0D1;letter-spacing:0;font-size:13px;margin-left:6px}
body.page .nxreviews__text{margin:8px 0;padding:0;border:0;line-height:1.6}
body.page .nxreviews__who{margin:0;font-size:13.5px;color:#C9D3E6}
