.elementor-7650 .elementor-element.elementor-element-3114be5e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7650 .elementor-element.elementor-element-54bf9681{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:rgba(11,23,40,0.1);--border-color:rgba(11,23,40,0.1);--padding-top:160px;--padding-bottom:80px;--padding-left:48px;--padding-right:48px;}.elementor-7650 .elementor-element.elementor-element-22f1a810{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-7650 .elementor-element.elementor-element-41288832{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-7650 .elementor-element.elementor-element-6ca4d930{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:112px;--padding-bottom:112px;--padding-left:48px;--padding-right:48px;}.elementor-7650 .elementor-element.elementor-element-4c0429aa{--grid-columns:1;--grid-column-gap:0px;--grid-row-gap:0px;}.elementor-7650 .elementor-element.elementor-element-4c0429aa .elementor-pagination{text-align:center;}body:not(.rtl) .elementor-7650 .elementor-element.elementor-element-4c0429aa .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 10px/2 );}body:not(.rtl) .elementor-7650 .elementor-element.elementor-element-4c0429aa .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 10px/2 );}body.rtl .elementor-7650 .elementor-element.elementor-element-4c0429aa .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 10px/2 );}body.rtl .elementor-7650 .elementor-element.elementor-element-4c0429aa .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 10px/2 );}.elementor-7650 .elementor-element.elementor-element-4a37eb1d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:128px;--padding-bottom:128px;--padding-left:48px;--padding-right:48px;}.elementor-7650 .elementor-element.elementor-element-4a37eb1d:not(.elementor-motion-effects-element-type-background), .elementor-7650 .elementor-element.elementor-element-4a37eb1d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#002d47;}.elementor-7650 .elementor-element.elementor-element-29600267{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-7650 .elementor-element.elementor-element-79f13dcf{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:12px 12px;--row-gap:12px;--column-gap:12px;}.elementor-7650 .elementor-element.elementor-element-5c2c8cf{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--flex-wrap:wrap;}@media(min-width:768px){.elementor-7650 .elementor-element.elementor-element-4a37eb1d{--content-width:832px;}}@media(max-width:1024px){.elementor-7650 .elementor-element.elementor-element-54bf9681{--padding-top:160px;--padding-bottom:80px;--padding-left:32px;--padding-right:32px;}.elementor-7650 .elementor-element.elementor-element-41288832{--gap:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-7650 .elementor-element.elementor-element-6ca4d930{--padding-top:96px;--padding-bottom:96px;--padding-left:32px;--padding-right:32px;}.elementor-7650 .elementor-element.elementor-element-4c0429aa{--grid-columns:1;}.elementor-7650 .elementor-element.elementor-element-4a37eb1d{--padding-top:112px;--padding-bottom:112px;--padding-left:32px;--padding-right:32px;}.elementor-7650 .elementor-element.elementor-element-29600267{--gap:24px 24px;--row-gap:24px;--column-gap:24px;}}@media(max-width:767px){.elementor-7650 .elementor-element.elementor-element-54bf9681{--padding-top:120px;--padding-bottom:56px;--padding-left:20px;--padding-right:20px;}.elementor-7650 .elementor-element.elementor-element-41288832{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-7650 .elementor-element.elementor-element-6ca4d930{--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-7650 .elementor-element.elementor-element-4c0429aa{--grid-columns:1;--grid-row-gap:0px;}.elementor-7650 .elementor-element.elementor-element-4a37eb1d{--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-7650 .elementor-element.elementor-element-29600267{--gap:24px 24px;--row-gap:24px;--column-gap:24px;}.elementor-7650 .elementor-element.elementor-element-79f13dcf{--flex-wrap:nowrap;}.elementor-7650 .elementor-element.elementor-element-5c2c8cf{--flex-wrap:nowrap;}}/* Start custom CSS for container, class: .elementor-element-79f13dcf */@media(max-width:639px){.elementor-7650 .elementor-element.elementor-element-79f13dcf{flex-direction:column;align-items:stretch;width:fit-content;margin-inline:auto}.elementor-7650 .elementor-element.elementor-element-79f13dcf .elementor-button{width:100%}}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3114be5e *//* Nipuna - CSS shared by EVERY page: the closing CTA band (FinalCTA.tsx).

   It is prepended to each page's wrapper Custom CSS at build time rather
   than living in Site Settings, so no page depends on a Site Settings edit
   and the header/footer stay untouched. One source of truth here; the cost
   is a couple of KB repeated per page template, which nobody sees.

   Values resolved from dist/assets/index-*.css via tw_lookup.py. */

/* ---------- 14. Final CTA (sections/FinalCTA.tsx) ---------- */
.np-ctr,.np-ctr p,.np-ctr .elementor-heading-title{text-align:center}
.np-ctr .np-eyebrow{justify-content:center}
.np-cta-lead p{max-width:44ch;color:rgba(220,239,250,.8);margin-inline:auto}
/* Site Settings sets `.elementor-kit-N a{color:#006AA8}` at 0,1,1, which
   beats a bare .np-x at 0,1,0 -- these links were rendering blue-700 on the
   navy band instead of blue-100. The tag .elementor-7650 .elementor-element.elementor-element-3114be5e matches that specificity
   and this file loads later. */
a.np-cta-link{font-size:15px;color:var(--blue-100);text-decoration:none;
  opacity:.8;transition:opacity .3s,color .3s}
a.np-cta-link:hover{opacity:1;color:#fff}
.np-dot{color:rgba(255,255,255,.3)}
/* the node-and-line motif from the Nipuna mark, entering from each edge */
.np-ov-node-l,.np-ov-node-r{position:absolute;top:50%;width:9%;
  transform:translateY(-50%);display:none;align-items:center;pointer-events:none}
@media(min-width:768px){.np-ov-node-l,.np-ov-node-r{display:flex}}
.np-ov-node-l{left:0}
.np-ov-node-r{right:0}
.np-ov-node-l::before,.np-ov-node-r::after{content:"";height:1px;flex:1;
  background:rgba(255,255,255,.15)}
.np-ov-node-l::after,.np-ov-node-r::before{content:"";width:10px;height:10px;
  border-radius:50%;background:var(--signal);
  box-shadow:0 0 0 4px var(--blue-950)}


/* Nipuna - CSS for the shared inner-page opener (sections/PageHero.tsx).

   Prepended to the wrapper Custom CSS of every page that opens with a
   PageHero. The home page does not, so it does not carry these rules and
   the audit's dead-.elementor-7650 .elementor-element.elementor-element-3114be5e check stays meaningful there.

   Values resolved from dist/assets/index-*.css via tw_lookup.py. */

/* absolute inset-x-0 top-0 h-[28rem]
   bg-[radial-gradient(50%_60%_at_80%_0%,rgba(0,130,202,0.10),transparent_70%)] */
.np-ov-phero{inset:0 0 auto 0;height:448px;
  background:radial-gradient(50% 60% at 80% 0%,rgba(0,130,202,.10),transparent 70%)}
/* the same bg-grid as everywhere else, but PageHero asks for opacity-50 and
   the Site Settings rule is the .6 the homepage hero uses */
.np-ov-grid.np-ov-phero-grid{opacity:.5}


/* Nipuna - BLOG LISTING styles. Travels inside nipuna-blog.json and
   nipuna-blog-archive.json as the wrapper container's Custom CSS, so
   importing either one brings its styling and Site Settings is not touched.

   Preceded at build time by common.css (the closing band) and pagehero.css
   (the opener's glow and grid).

   The rows are not styled here. They are a separate document -- see
   blogitem.css -- because the Loop Grid renders a loop template, not markup
   this page owns. What is left is the pagination Elementor draws under the
   list, and the line it prints when the query comes back empty. The
   archive's dynamic headline is in blogarchive.css, which only that document
   loads. */

/* ---------- 0. The Elementor defaults this page has to undo ---------- */
/* Identical to the other inner pages' section 0, scoped to `.elementor-7650 .elementor-element.elementor-element-3114be5e` --
   this page's wrapper -- which keeps the reset off the header and footer. */
.elementor-7650 .elementor-element.elementor-element-3114be5e{line-height:1.5}
[class*="elementor-kit-"] p{margin-block-end:0}
.elementor-7650 .elementor-element.elementor-element-3114be5e .e-con{--container-default-padding-top:0px;
  --container-default-padding-right:0px;
  --container-default-padding-bottom:0px;
  --container-default-padding-left:0px}
@media(max-width:639px){.np-btn,.np-btn .elementor-button{width:auto}}
@media(min-width:640px) and (max-width:767px){
  .elementor-7650 .elementor-element.elementor-element-3114be5e > .e-con{--padding-right:32px;--padding-left:32px}}

/* ---------- 1. The opener ---------- */
/* Nothing: the glow and the grid come from pagehero.css, which both of these
   documents load. */

/* ---------- 2. The list ---------- */
/* The rule above the first row. Each row draws its own hairline underneath
   (a real border setting on the loop item), so the opening one has to come
   from the grid or every row but the first would carry two.

   This is <ol className="border-t hairline"> from pages/Insights.tsx, which
   is where this listing's rhythm comes from. */
.np-bl-grid .elementor-loop-container{border-top:1px solid var(--line)}

/* Shown in place of the rows when a category has nothing in it. */
.np-bl-grid .e-loop-nothing-found-message{margin:0;padding:40px 0;
  color:var(--ink-500)}

/* ---------- 3. Pagination ---------- */
/* Elementor draws <nav class="elementor-pagination"> under the loop with a
   <span class="page-numbers current"> for the page you are on and an <a
   class="page-numbers"> for the others. Unstyled it inherits the kit's blue
   link colour and sits hard against the last row. */
.np-bl-grid .elementor-pagination{display:flex;flex-wrap:wrap;
  align-items:center;justify-content:center;gap:8px;margin-top:48px}
.np-bl-grid .page-numbers{display:inline-flex;align-items:center;
  justify-content:center;min-width:40px;height:40px;padding:0 12px;
  border:1px solid var(--line);border-radius:999px;
  font-family:var(--mono);font-size:12px;line-height:1;letter-spacing:.06em;
  color:var(--ink-600);text-decoration:none;
  transition:border-color .3s var(--ease),background-color .3s var(--ease),
             color .3s var(--ease)}
.np-bl-grid a.page-numbers:hover{border-color:var(--ink-900);
  color:var(--ink-900)}
.np-bl-grid .page-numbers.current{background:var(--ink-900);
  border-color:var(--ink-900);color:#fff}
/* the ellipsis Elementor prints between distant page numbers is not a link
   and should not read as a button */
.np-bl-grid .page-numbers.dots{border-color:transparent;
  color:var(--ink-400)}/* End custom CSS */