.nb-game-heading { display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin:0 0 28px; }
.nb-game-heading h1 { color:#f4eedb; margin:0; font:700 clamp(34px,4vw,52px)/1.15 Georgia,serif; letter-spacing:-.03em; }
.nb-game-heading .nb-page-label { color:#e9cc85; order:2; }
.nb-game-content { color:#173f2e; font:400 16px/1.8 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.nb-game-content *, .nb-game-content *::before, .nb-game-content *::after { box-sizing:border-box; }
.nb-game-content > *, .nb-game-content .wp-block-group > * { max-width:none; margin-block-start:0; margin-block-end:0; }
.nb-game-content p, .nb-game-content figure { margin:0; }
.nb-game-content h2, .nb-game-content h3 { margin:0; color:#173f2e; text-wrap:balance; }
.nb-game-content h2 { font:700 clamp(27px,3vw,37px)/1.2 Georgia,serif; letter-spacing:-.025em; }
.nb-game-content h3 { font:700 23px/1.25 Georgia,serif; letter-spacing:-.015em; }
.nb-game-content .nb-game-eyebrow { color:#50634f; font-size:10px; font-weight:750; letter-spacing:.16em; line-height:1.6; text-transform:uppercase; margin-bottom:16px; }
.nb-game-content .nb-game-hero { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr); gap:48px; align-items:center; padding:clamp(28px,5vw,62px); background:linear-gradient(105deg,#0a362df2,#204d35eb),url('nordbus-background.png') center/cover; border:1px solid #8c915e; border-top:3px solid #e0bd64; border-radius:3px 3px 15px 15px; }
.nb-game-content .nb-game-hero .nb-game-eyebrow { color:#e5c77f; }
.nb-game-content .nb-game-headline { color:#f1e5c5; font:800 clamp(39px,5vw,64px)/1.06 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; letter-spacing:-.05em; margin-bottom:26px; }
.nb-game-content .nb-game-lead { color:#d8e2ce; font-size:17px; line-height:1.85; max-width:56ch; margin-bottom:31px; }
.nb-game-content .nb-game-brief { border-left:1px solid #7e8b58; padding-left:35px; }
.nb-game-content .nb-game-detail { padding:19px 0; border-bottom:1px solid #ffffff26; }
.nb-game-content .nb-game-detail:last-child { border-bottom:0; padding-bottom:0; }
.nb-game-content .nb-game-detail-label { color:#c0ceb1; font-size:11px; letter-spacing:.08em; margin-bottom:5px; }
.nb-game-content .nb-game-detail-value { color:#f1e5c5; font-size:22px; font-weight:700; line-height:1.4; }
.nb-game-content .wp-block-buttons { display:flex; flex-wrap:wrap; gap:12px; margin:0; }
.nb-game-content .wp-block-button { margin:0; }
.nb-game-content .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:11px 21px; border:1px solid #edc86f; border-radius:6px; background:#edc86f; color:#183e2d; font:650 14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; text-decoration:none; box-shadow:none; }
.nb-game-content .wp-block-button__link:hover { background:#f5d792; color:#183e2d; }
.nb-game-content .nb-game-button-outline .wp-block-button__link { background:transparent; border-color:#829371; color:#e6e5ce; }
.nb-game-content .nb-game-button-outline .wp-block-button__link:hover { background:#205440; }
.nb-game-content .nb-game-world { background:#dfe6d8; border-radius:12px; padding:43px clamp(28px,4vw,48px); margin-top:24px; }
.nb-game-content .nb-game-features { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin-top:32px; }
.nb-game-content .nb-game-feature { border-top:1px solid #a6b598; padding-top:22px; }
.nb-game-content .nb-game-number { color:#546c48; font-size:10px; letter-spacing:.1em; font-weight:750; margin-bottom:17px; }
.nb-game-content .nb-game-feature h3 { margin-bottom:16px; }
.nb-game-content .nb-game-feature > p:last-child { color:#405945; font-size:14px; line-height:1.9; }
.nb-game-content .nb-game-story { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:52px; padding:43px clamp(28px,4vw,48px); background:#cddbc6; border-radius:12px; margin-top:24px; }
.nb-game-content .nb-game-story-part + .nb-game-story-part { border-left:1px solid #a3b29b; padding-left:45px; }
.nb-game-content .nb-game-story h2 { font-size:29px; margin-bottom:20px; }
.nb-game-content .nb-game-story-part > p:last-child { color:#3d5542; font-size:15px; line-height:1.85; }
.nb-game-content .nb-game-gallery-section { margin-top:42px; scroll-margin-top:28px; }
.nb-game-content .nb-game-gallery-section > .nb-game-eyebrow { color:#e3c780; }
.nb-game-content .nb-game-gallery-section > h2 { color:#f1e5c5; }
.nb-game-content .nb-game-gallery-lead { color:#d1ddc5; margin:16px 0 27px; font-size:15px; }
.nb-game-content .nb-game-gallery-empty { min-height:155px; padding:30px 24px; border:1px dashed #91a776; border-radius:12px; background:#173f30; color:#d9e3cc; text-align:center; }
.nb-game-content .nb-game-empty-icon { display:block; color:#d9bd77; font-size:30px; line-height:1.3; margin-bottom:12px; }
.nb-game-content .nb-game-add-photos { display:inline-flex; margin-top:15px; color:#f0cf81; min-height:44px; align-items:center; text-underline-offset:5px; }
.nb-game-content .nb-game-gallery { display:grid; grid-template-columns:repeat(var(--nb-gallery-columns,3),minmax(0,1fr)); gap:20px; width:100%; margin:0; }
.nb-game-content .nb-game-gallery.columns-1 { --nb-gallery-columns:1; }
.nb-game-content .nb-game-gallery.columns-2 { --nb-gallery-columns:2; }
.nb-game-content .nb-game-gallery.columns-3 { --nb-gallery-columns:3; }
.nb-game-content .nb-game-gallery.columns-4 { --nb-gallery-columns:4; }
.nb-game-content .nb-game-gallery.columns-5 { --nb-gallery-columns:5; }
.nb-game-content .nb-game-gallery.columns-6 { --nb-gallery-columns:6; }
.nb-game-content .nb-game-gallery.columns-7 { --nb-gallery-columns:7; }
.nb-game-content .nb-game-gallery.columns-8 { --nb-gallery-columns:8; }
.nb-game-content .nb-game-gallery figure.wp-block-image { width:100% !important; margin:0 !important; display:flex; flex-direction:column; border:1px solid #839673; border-radius:10px; overflow:hidden; background:#113e2f; }
.nb-game-content .nb-game-gallery .wp-block-image > a { display:block; width:100%; cursor:zoom-in; }
.nb-game-content .nb-game-gallery .wp-block-image img { display:block; width:100%; height:auto; aspect-ratio:16 / 10; object-fit:contain; background:#0b362a; border-radius:0; }
.nb-game-content .nb-game-gallery .wp-block-image > figcaption { position:static; flex-grow:1; width:100%; max-height:none; margin:0; padding:13px 16px; background:#d4dfcd; color:#294c35; font-size:13px; line-height:1.7; text-align:left; }
.nb-game-content .nb-game-gallery > figcaption { grid-column:1 / -1; color:#d9e3cc; }
.nb-game-content .nb-game-question { margin-top:30px; padding:43px 30px; border:1px solid #738454; border-radius:12px; background:#113f30; text-align:center; }
.nb-game-content .nb-game-question .nb-game-eyebrow { color:#e3c780; }
.nb-game-content .nb-game-question h2 { color:#f1e5c5; font-size:clamp(29px,3.5vw,43px); margin-bottom:26px; }
.nb-game-content .nb-game-question .wp-block-buttons { justify-content:center; }
.nb-game-edit { margin-top:25px; color:#dae2c9; font-size:13px; }
.nb-game .nb-panel { background:#dfe6d8; }
/* Keep gallery headings legible on the editor's light canvas. */
.editor-styles-wrapper .nb-game-content .nb-game-gallery-section { background:#173f30; padding:25px; border-radius:12px; }
.editor-styles-wrapper .nb-game-content .nb-game-gallery > .components-placeholder { grid-column:1 / -1; }
.nb-site.nb-gallery-open { overflow:hidden; }
.nb-site .nb-gallery-dialog { position:fixed; inset:0; margin:auto; padding:0; width:min(1120px,calc(100vw - 40px)); max-width:none; max-height:calc(100dvh - 40px); overflow:auto; border:1px solid #859467; border-radius:12px; background:#103b2d; color:#e9eddf; box-shadow:0 30px 120px #0009; }
.nb-site .nb-gallery-dialog::backdrop { background:#00180fed; }
.nb-site .nb-gallery-shell { padding:18px 22px; }
.nb-site .nb-gallery-top, .nb-site .nb-gallery-bottom { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.nb-site .nb-gallery-top { margin-bottom:14px; font-size:12px; font-weight:650; letter-spacing:.07em; }
.nb-site .nb-gallery-dialog figure { margin:0; }
.nb-site .nb-gallery-photo { display:block; margin:auto; width:auto; max-width:100%; max-height:63dvh; object-fit:contain; }
.nb-site .nb-gallery-caption { color:#e2e7d7; background:none; font-size:14px; line-height:1.6; margin:15px 0 0; text-align:center; }
.nb-site .nb-gallery-status { color:#f3d7a1; font-size:13px; margin:12px 0; }
.nb-site .nb-gallery-status:empty { display:none; }
.nb-site .nb-gallery-bottom { margin-top:17px; flex-wrap:wrap; }
.nb-site .nb-gallery-navigation { display:flex; align-items:center; gap:14px; }
.nb-site .nb-gallery-dialog button { min-width:44px; min-height:44px; padding:9px 14px; border:1px solid #93a277; border-radius:5px; background:#204e38; color:#f0e7ce; font-size:14px; line-height:1.5; cursor:pointer; }
.nb-site .nb-gallery-dialog button:hover { background:#315f42; }
.nb-site .nb-gallery-dialog button:disabled { opacity:.45; cursor:default; }
.nb-site .nb-gallery-counter { min-width:44px; text-align:center; font-size:13px; }
.nb-site .nb-gallery-original { color:#efd28a; text-underline-offset:4px; font-size:12px; padding-block:12px; }
@media(max-width:1000px) {
  .nb-game-content .nb-game-hero { gap:28px; grid-template-columns:minmax(0,1.5fr) minmax(210px,1fr); }
  .nb-game-content .nb-game-brief { padding-left:25px; }
  .nb-game-content .nb-game-features { gap:22px; }
  .nb-game-content .nb-game-story { gap:28px; }
  .nb-game-content .nb-game-story-part + .nb-game-story-part { padding-left:28px; }
  .nb-game-content .nb-game-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .nb-game-content .nb-game-gallery.columns-1 { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:700px) {
  .nb-game-heading .nb-page-label { font-size:9px; letter-spacing:.1em; }
  .nb-game-content .nb-game-hero, .nb-game-content .nb-game-features, .nb-game-content .nb-game-story { grid-template-columns:minmax(0,1fr); }
  .nb-game-content .nb-game-hero { padding:30px 24px; }
  .nb-game-content .nb-game-headline { font-size:clamp(36px,10vw,51px); }
  .nb-game-content .nb-game-lead { font-size:15px; }
  .nb-game-content .nb-game-brief { border-left:0; border-top:1px solid #7e8b58; padding:25px 0 0; }
  .nb-game-content .nb-game-detail { display:flex; justify-content:space-between; align-items:baseline; gap:15px; padding-block:13px; }
  .nb-game-content .nb-game-detail-value { font-size:18px; }
  .nb-game-content .nb-game-world, .nb-game-content .nb-game-story { padding:30px 24px; margin-top:18px; }
  .nb-game-content .nb-game-features { margin-top:25px; gap:25px; }
  .nb-game-content .nb-game-story-part + .nb-game-story-part { border-left:0; border-top:1px solid #a3b29b; padding:28px 0 0; }
  .nb-game-content .nb-game-gallery { grid-template-columns:minmax(0,1fr); gap:18px; }
  .nb-game-content .nb-game-gallery-section { margin-top:32px; }
  .nb-game-content .nb-game-question { padding:30px 23px; }
  .nb-site .nb-gallery-dialog { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); }
  .nb-site .nb-gallery-shell { padding:12px; }
  .nb-site .nb-gallery-photo { max-height:55dvh; }
}
