.np-free-layout {
  position:relative;
  translate:var(--np-x-d,0px) var(--np-y-d,0px);
  rotate:var(--np-rot-d,0deg);
  transition:translate .16s ease,rotate .16s ease;
}
@media (min-width:1025px) {
  .np-free-layout.np-w-d { width:var(--np-w-d); }
  .np-free-layout.np-h-d { min-height:var(--np-h-d); }
  .np-free-layout.np-r-d { border-radius:var(--np-r-d); overflow:hidden; }
}
@media (max-width:1024px) {
  .np-free-layout {
    translate:var(--np-x-t,0px) var(--np-y-t,0px);
    rotate:var(--np-rot-t,0deg);
  }
}
@media (min-width:782px) and (max-width:1024px) {
  .np-free-layout.np-w-t { width:var(--np-w-t); }
  .np-free-layout.np-h-t { min-height:var(--np-h-t); }
  .np-free-layout.np-r-t { border-radius:var(--np-r-t); overflow:hidden; }
}
@media (max-width:781px) {
  .np-free-layout {
    translate:var(--np-x-m,0px) var(--np-y-m,0px);
    rotate:var(--np-rot-m,0deg);
  }
  .np-free-layout.np-w-m { width:var(--np-w-m); }
  .np-free-layout.np-h-m { min-height:var(--np-h-m); }
  .np-free-layout.np-r-m { border-radius:var(--np-r-m); overflow:hidden; }
}
.np-aurora { position:relative; }
.np-home-main-nav { width:min(980px,100%) !important; max-width:980px !important; display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:84px; gap:18px !important; margin:42px auto 90px !important; }
.np-home-main-nav .wp-block-button { width:100% !important; height:84px !important; margin:0 !important; }
.np-home-main-nav .wp-block-button__link { box-sizing:border-box; width:100% !important; height:84px !important; display:flex !important; align-items:center; justify-content:center; padding:18px 24px !important; border-radius:999px !important; white-space:nowrap; font-size:clamp(16px,1.35vw,21px) !important; font-weight:850; box-shadow:0 12px 30px rgba(0,0,0,.2); }
.np-home-main-nav .np-school-button .wp-block-button__link { background:linear-gradient(135deg,#b7ed72,#64d8a4) !important; color:#071e2c !important; }
.np-language-switch { position:absolute; z-index:30; top:28px; left:28px; }
.np-language-switch a { min-width:165px; min-height:54px; display:flex; align-items:center; justify-content:center; padding:10px 18px; border:2px solid rgba(255,255,255,.78); border-radius:15px; color:#fff !important; background:rgba(5,24,50,.78); box-shadow:0 10px 28px rgba(0,0,0,.3); font-size:17px; font-weight:850; text-decoration:none; backdrop-filter:blur(8px); }
.np-language-switch a:hover { background:rgba(31,78,111,.92); transform:translateY(-2px); }
@media (max-width:781px) {
  .np-home-main-nav { grid-template-columns:1fr; gap:12px !important; margin-block:30px 68px !important; }
  .np-home-main-nav,.np-home-main-nav .wp-block-button,.np-home-main-nav .wp-block-button__link { height:auto !important; min-height:66px; }
  .np-language-switch { top:14px; left:14px; }
  .np-language-switch a { min-width:0; min-height:44px; padding:8px 13px; font-size:14px; }
}

/* Six home categories; each pill is 90% of its previous dimensions. */
.np-home-main-nav { width:min(882px,90%) !important; max-width:882px !important; grid-auto-rows:75.6px; }
.np-home-main-nav .wp-block-button,
.np-home-main-nav .wp-block-button__link { height:75.6px !important; }
.np-home-main-nav .wp-block-button__link { padding:16.2px 21.6px !important; font-size:clamp(14.4px,1.215vw,18.9px) !important; }
.np-home-main-nav .np-puzzles-button .wp-block-button__link { background:linear-gradient(135deg,#c6a2ff,#a378ed) !important; color:#071e2c !important; }
.np-home-main-nav .np-crafting-button .wp-block-button__link { background:linear-gradient(135deg,#ffe68b,#ffc960) !important; color:#071e2c !important; }
@media (max-width:781px) {
  .np-home-main-nav { grid-auto-rows:59.4px; }
  .np-home-main-nav .wp-block-button,
  .np-home-main-nav .wp-block-button__link { height:59.4px !important; min-height:59.4px !important; }
}

/* Raise the categories toward the title, retaining the six-button layout. */
.np-home-main-nav { margin-top:8px !important; }
.np-puzzle-icon { flex:0 0 auto; color:#35204f; vertical-align:middle; }
.np-puzzles-button .wp-block-button__link, .np-puzzles-entry .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; gap:9px; }
@media (max-width:781px) { .np-home-main-nav { margin-top:8px !important; } }
