
#half-motion-study { width:100%; color:#fff0f6; font-family:Arial,'Apple SD Gothic Neo','Malgun Gothic',sans-serif; }
#half-motion-study * { box-sizing:border-box; }
#half-motion-study .half-film { position:relative; isolation:isolate; width:100%; aspect-ratio:16/10; overflow:hidden; background:#0b070c; }
#half-motion-study .half-atmosphere { position:absolute; inset:0; background:radial-gradient(ellipse at 46% 43%,#48273b 0%,#1b0e19 42%,#08060a 77%); opacity:.8; }
#half-motion-study .half-film-brand,#half-motion-study .half-film-edition { position:absolute; top:26px; z-index:6; font-size:12px; font-weight:500; letter-spacing:.16em; color:#d8bdcb; }
#half-motion-study .half-film-brand { left:28px; }
#half-motion-study .half-film-edition { right:28px; letter-spacing:.08em; }
#half-motion-study .half-canvas { position:absolute; inset:0; width:100%; height:100%; z-index:3; pointer-events:none; }
#half-motion-study .half-typography { position:absolute; z-index:1; left:0; right:0; top:50%; transform:translateY(-50%); display:flex; justify-content:center; color:#efcedc; font-family:Arial,Helvetica,sans-serif; font-size:clamp(80px,20vw,190px); font-weight:800; letter-spacing:-.075em; line-height:1; opacity:0; user-select:none; }
#half-motion-study .half-typography span { display:block; will-change:transform,opacity; }
#half-motion-study .half-product-photo { position:absolute; z-index:2; overflow:hidden; opacity:0; transform-origin:center; will-change:transform,opacity,clip-path; box-shadow:0 26px 90px #0006; }
#half-motion-study .half-product-photo img { display:block; width:100%; height:100%; object-fit:contain; }
#half-motion-study .half-end-copy { position:absolute; z-index:5; top:33%; left:59%; right:5%; opacity:0; }
#half-motion-study .half-end-kicker { color:#caa6b9; font-size:11px; letter-spacing:.15em; }
#half-motion-study .half-end-title { font-family:Arial,Helvetica,sans-serif; font-size:clamp(48px,9vw,80px); font-weight:800; line-height:1.15; letter-spacing:-.055em; margin:9px 0; }
#half-motion-study .half-end-subtitle { color:#fff0f6; font-size:clamp(17px,2.4vw,23px); line-height:1.55; font-weight:500; letter-spacing:-.035em; }
#half-motion-study .half-end-rule { height:1px; background:#654355; width:100%; margin:22px 0 16px; transform-origin:left; }
#half-motion-study .half-end-spec { color:#caa6b9; font-size:12px; line-height:1.6; }
#half-motion-study .half-phase { position:absolute; left:28px; bottom:23px; z-index:6; display:flex; gap:15px; align-items:center; font-size:11px; color:#c8a6b8; letter-spacing:.1em; }
#half-motion-study .half-phase-index { color:#fff; }
#half-motion-study .half-film-duration { position:absolute; right:28px; bottom:23px; color:#b394a5; z-index:6; font-size:11px; letter-spacing:.1em; }
#half-motion-study .half-transport { display:flex; align-items:center; gap:14px; padding:10px 16px; background:#160e18; border-top:1px solid #493040; }
#half-motion-study .half-transport button { flex-shrink:0; min-height:44px; padding:8px 4px; font:500 12px Arial,'Apple SD Gothic Neo','Malgun Gothic',sans-serif; color:#f3dbe5; background:transparent; border:0; cursor:pointer; }
#half-motion-study .half-play { min-width:58px; text-align:left; }
#half-motion-study .half-timeline { width:100%; min-width:40px; flex:1; margin:0; height:32px; accent-color:#ecbcd4; cursor:pointer; }
#half-motion-study .half-time { flex-shrink:0; font-size:11px; color:#caa6b9; font-variant-numeric:tabular-nums; }
#half-motion-study .half-accessible-status { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
#half-motion-study .half-error { position:absolute; z-index:7; left:25px; right:25px; bottom:80px; color:#fff; font-size:14px; text-align:center; }
#half-motion-study [hidden] { display:none !important; }
@media(max-width:520px) {
 #half-motion-study .half-film { aspect-ratio:4/5; }
 #half-motion-study .half-film-brand,#half-motion-study .half-film-edition { top:20px; font-size:11px; }
 #half-motion-study .half-film-brand { left:20px; }
 #half-motion-study .half-film-edition { right:20px; }
 #half-motion-study .half-end-copy { top:69%; left:9%; right:9%; }
 #half-motion-study .half-end-kicker { display:none; }
 #half-motion-study .half-end-title { font-size:43px; float:left; margin:0 14px 0 0; }
 #half-motion-study .half-end-subtitle { font-size:15px; line-height:1.45; padding-top:2px; }
 #half-motion-study .half-end-rule { margin:17px 0 10px; clear:both; }
 #half-motion-study .half-end-spec { font-size:11px; }
 #half-motion-study .half-phase { left:20px; bottom:17px; font-size:11px; }
 #half-motion-study .half-film-duration { right:20px; bottom:17px; font-size:11px; }
 #half-motion-study .half-transport { gap:9px; padding:6px 10px; }
 #half-motion-study .half-transport button { font-size:11px; }
 #half-motion-study .half-time { font-size:11px; }
 #half-motion-study .half-replay { max-width:47px; }
}


#arc-motion-study { width:100%; color:#eff3ff; font-family:Arial,'Apple SD Gothic Neo','Malgun Gothic',sans-serif; }
#arc-motion-study * { box-sizing:border-box; }
#arc-motion-study .arc-film { position:relative; isolation:isolate; width:100%; aspect-ratio:16/10; overflow:hidden; background:#03060e; }
#arc-motion-study .arc-atmosphere { position:absolute; inset:0; background:radial-gradient(ellipse at 46% 43%,#142248 0%,#071023 42%,#02050c 77%); opacity:.8; }
#arc-motion-study .arc-film-brand,#arc-motion-study .arc-film-edition { position:absolute; top:26px; z-index:6; font-size:12px; font-weight:500; letter-spacing:.16em; color:#c3cbe0; }
#arc-motion-study .arc-film-brand { left:28px; }
#arc-motion-study .arc-film-edition { right:28px; letter-spacing:.08em; }
#arc-motion-study .arc-canvas { position:absolute; inset:0; width:100%; height:100%; z-index:3; pointer-events:none; }
#arc-motion-study .arc-typography { position:absolute; z-index:1; left:0; right:0; top:50%; transform:translateY(-50%); display:flex; justify-content:center; color:#e6ebf6; font-family:Arial,Helvetica,sans-serif; font-size:clamp(80px,20vw,190px); font-weight:800; letter-spacing:-.075em; line-height:1; opacity:0; user-select:none; }
#arc-motion-study .arc-typography span { display:block; will-change:transform,opacity; }
#arc-motion-study .arc-product-photo { position:absolute; z-index:2; overflow:hidden; opacity:0; transform-origin:center; will-change:transform,opacity,clip-path; box-shadow:0 26px 90px #0006; }
#arc-motion-study .arc-product-photo img { display:block; width:100%; height:100%; object-fit:contain; }
#arc-motion-study .arc-end-copy { position:absolute; z-index:5; top:33%; left:59%; right:5%; opacity:0; }
#arc-motion-study .arc-end-kicker { color:#a8b7d5; font-size:11px; letter-spacing:.15em; }
#arc-motion-study .arc-end-title { font-family:Arial,Helvetica,sans-serif; font-size:clamp(60px,11vw,102px); font-weight:800; line-height:1.15; letter-spacing:-.055em; margin:9px 0; }
#arc-motion-study .arc-end-subtitle { color:#f4f6ff; font-size:clamp(17px,2.4vw,23px); line-height:1.55; font-weight:500; letter-spacing:-.035em; }
#arc-motion-study .arc-end-rule { height:1px; background:#35466a; width:100%; margin:22px 0 16px; transform-origin:left; }
#arc-motion-study .arc-end-spec { color:#a8b7d5; font-size:12px; line-height:1.6; }
#arc-motion-study .arc-phase { position:absolute; left:28px; bottom:23px; z-index:6; display:flex; gap:15px; align-items:center; font-size:11px; color:#aab9d7; letter-spacing:.1em; }
#arc-motion-study .arc-phase-index { color:#fff; }
#arc-motion-study .arc-film-duration { position:absolute; right:28px; bottom:23px; color:#8a9aba; z-index:6; font-size:10px; letter-spacing:.1em; }
#arc-motion-study .arc-transport { display:flex; align-items:center; gap:14px; padding:10px 16px; background:#0b1222; border-top:1px solid #27324a; }
#arc-motion-study .arc-transport button { flex-shrink:0; min-height:44px; padding:8px 4px; font:500 12px Arial,'Apple SD Gothic Neo','Malgun Gothic',sans-serif; color:#e6ebf7; background:transparent; border:0; cursor:pointer; }
#arc-motion-study .arc-play { min-width:58px; text-align:left; }
#arc-motion-study .arc-timeline { width:100%; min-width:40px; flex:1; margin:0; height:32px; accent-color:#b7cafd; cursor:pointer; }
#arc-motion-study .arc-time { flex-shrink:0; font-size:11px; color:#a8b7d5; font-variant-numeric:tabular-nums; }
#arc-motion-study .arc-accessible-status { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
#arc-motion-study .arc-error { position:absolute; z-index:7; left:25px; right:25px; bottom:80px; color:#fff; font-size:14px; text-align:center; }
#arc-motion-study [hidden] { display:none !important; }
@media(max-width:520px) {
 #arc-motion-study .arc-film { aspect-ratio:4/5; }
 #arc-motion-study .arc-film-brand,#arc-motion-study .arc-film-edition { top:20px; font-size:10px; }
 #arc-motion-study .arc-film-brand { left:20px; }
 #arc-motion-study .arc-film-edition { right:20px; }
 #arc-motion-study .arc-end-copy { top:69%; left:9%; right:9%; }
 #arc-motion-study .arc-end-kicker { display:none; }
 #arc-motion-study .arc-end-title { font-size:48px; float:left; margin:0 20px 0 0; }
 #arc-motion-study .arc-end-subtitle { font-size:15px; line-height:1.45; padding-top:2px; }
 #arc-motion-study .arc-end-rule { margin:17px 0 10px; clear:both; }
 #arc-motion-study .arc-end-spec { font-size:11px; }
 #arc-motion-study .arc-phase { left:20px; bottom:17px; font-size:10px; }
 #arc-motion-study .arc-film-duration { right:20px; bottom:17px; font-size:9px; }
 #arc-motion-study .arc-transport { gap:9px; padding:6px 10px; }
 #arc-motion-study .arc-transport button { font-size:11px; }
 #arc-motion-study .arc-time { font-size:10px; }
 #arc-motion-study .arc-replay { max-width:47px; }
}


/* Full-height, native-scroll chapters. */
.nb-motion-chapter { position:relative; height:280svh; padding:0; margin:0; background:#04060c; }
.nb-motion-chapter#hero { display:block; height:280svh; min-height:0; padding:76px 0 0 !important; margin:0; background:#0b070c; overflow:visible; }
.nb-motion-chapter[hidden] { display:none !important; }
.nb-motion-pin { position:sticky; top:76px; height:calc(100svh - 76px); min-height:520px; overflow:hidden; }
#half-motion-study,#arc-motion-study { height:100%; }
#half-motion-study .half-film,#arc-motion-study .arc-film { height:100%; aspect-ratio:auto; }
#half-motion-study .half-film-brand,#arc-motion-study .arc-film-brand { font-size:.875rem; left:4vw; top:24px; }
#half-motion-study .half-film-edition,#arc-motion-study .arc-film-edition { font-size:.875rem; right:4vw; top:24px; }
#half-motion-study .half-end-copy,#arc-motion-study .arc-end-copy { top:30%; right:6%; }
#half-motion-study .half-end-kicker,#arc-motion-study .arc-end-kicker { font-size:.875rem; }
#half-motion-study .half-end-title { font-size:clamp(4rem,9vw,9rem); }
#arc-motion-study .arc-end-title { font-size:clamp(4.5rem,10vw,10rem); }
#half-motion-study .half-end-subtitle,#arc-motion-study .arc-end-subtitle { font-size:clamp(1.3rem,2.7vw,2.5rem); }
#half-motion-study .half-end-spec,#arc-motion-study .arc-end-spec { font-size:1rem; }
.nb-scene-detail { display:inline-flex; align-items:center; min-height:44px; margin-top:20px; padding:8px 0; color:inherit; border:0; border-radius:0; background:transparent; font-size:.875rem; cursor:pointer; }
.nb-scene-scroll,.nb-next-scene { position:absolute; bottom:30px; z-index:6; font-size:.875rem; color:#e3d5e0; }
.nb-scene-scroll { left:4vw; }
.nb-next-scene { right:4vw; display:flex; gap:16px; text-decoration:none; padding:12px 0; }
.nb-next-scene span { transition:transform .25s; }
.nb-next-scene:hover span { transform:translateY(4px); }
.nb-scene-progress { position:absolute; bottom:0; left:0; width:100%; height:2px; background:#ffffff18; z-index:7; }
.nb-scene-progress span { display:block; width:100%; height:100%; transform:scaleX(0); transform-origin:left; background:#d2c9f0; }
.nb-motion-static { height:auto !important; }
.nb-motion-static .nb-motion-pin { position:relative; top:0; }
.nb-motion-static .nb-scene-scroll { display:none; }
@media(max-width:768px){
 .nb-motion-chapter,.nb-motion-chapter#hero { height:240svh; }
 .nb-motion-chapter#hero { padding-top:66px !important; }
 .nb-motion-pin { top:66px; height:calc(100svh - 66px); min-height:600px; }
 #half-motion-study .half-film-brand,#arc-motion-study .arc-film-brand { top:20px; left:20px; font-size:.75rem; }
 #half-motion-study .half-film-edition,#arc-motion-study .arc-film-edition { top:20px; right:20px; font-size:.75rem; }
 .nb-scene-scroll { left:20px; bottom:20px; font-size:.75rem; }
 .nb-next-scene { right:20px; bottom:12px; font-size:.875rem; }
 .nb-scene-detail { margin-top:14px; min-height:44px; font-size:.875rem; padding:8px 0; }
}
@media(max-width:520px){
 #half-motion-study .half-end-copy,#arc-motion-study .arc-end-copy { top:63%; left:9%; right:9%; }
 #half-motion-study .half-end-title,#arc-motion-study .arc-end-title { font-size:3.5rem; }
 #half-motion-study .half-end-subtitle,#arc-motion-study .arc-end-subtitle { font-size:1rem; }
 #half-motion-study .half-end-spec,#arc-motion-study .arc-end-spec { font-size:.875rem; }
}
@media (prefers-reduced-motion:reduce){
 .nb-motion-chapter,.nb-motion-chapter#hero { height:auto !important; }
 .nb-motion-pin { position:relative; top:0; }
}

/* White surfaces keep the chrome films connected to the shop. */
body[data-product-tab="shop"] { --nb-graphite:#ffffff; --nb-silver:#1d1e22; --nb-muted:#62666d; --nb-line:#dedfe3; background:var(--nb-graphite); color:var(--nb-silver); overflow-x:clip; }
body[data-product-tab="shop"] .nb-nav { padding-inline:5vw; background:#fffffff2; border-color:#e4e5e8; backdrop-filter:blur(20px); }
body[data-product-tab="shop"] .nb-nav .nav-logo { color:#1d1e22; font-family:Arial,sans-serif; font-weight:900; font-size:1.125rem; letter-spacing:-.06em; }
body[data-product-tab="shop"] .nb-nav .nav-logo .nb-logo-dot { display:none; }
body[data-product-tab="shop"] .nb-nav .nav-links { gap:14px; }
body[data-product-tab="shop"] .nb-nav .nav-links a { color:#51565e; border-radius:0; padding:12px 4px; background:transparent; font-size:.875rem; transition:color .3s; }
body[data-product-tab="shop"] .nb-nav .nav-links a:hover { color:#111; background:transparent; }
body[data-product-tab="shop"] .nb-nav .nav-links .nav-cta { color:#1d1e22 !important; background:transparent !important; border:1px solid #bfc3ca; padding-inline:18px; border-radius:0; }
.nb-motion-chapter,.nb-motion-chapter#hero { height:auto; background:#ffffff; }
.nb-motion-chapter#hero { text-align:left; border:0; }
.nb-motion-pin { position:relative; top:0; }
.nb-motion-scene { transform-origin:center center; }
/* One horizontal stage; vertical scrolling continues to the catalogue. */
html { background:#fff; color-scheme:light; }
#hero.nb-motion-carousel { display:block; position:relative; min-height:0; padding:76px 0 0 !important; margin:0; border:0; background:#fff; overflow:hidden; text-align:left; }
.nb-motion-track { display:flex; width:100%; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; scrollbar-width:none; }
.nb-motion-track::-webkit-scrollbar { display:none; }
.nb-motion-track > .nb-motion-chapter { flex:0 0 100%; min-width:0; height:auto; padding:0; scroll-snap-align:start; scroll-snap-stop:always; }
.nb-motion-carousel .nb-motion-pin { position:relative; top:0; height:calc(100svh - 148px); min-height:520px; }
.nb-motion-navigation { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:72px; padding:8px 5vw; background:#fff; border-bottom:1px solid #e4e5e8; }
.nb-motion-selector { display:flex; align-items:center; gap:8px; }
.nb-motion-selector button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; min-width:60px; padding:10px 16px; border:0; background:transparent; color:#6a6e76; font:600 .875rem Arial,sans-serif; letter-spacing:.04em; cursor:pointer; }
.nb-motion-selector button[aria-pressed="true"] { color:#202228;  }
.nb-motion-selector button:hover:not(:disabled) { color:#202228; background:#f5f6f8; }
.nb-motion-selector .nb-motion-arrow { min-width:44px; width:44px; padding:8px; font-size:1.5rem; }
.nb-motion-arrow:disabled { opacity:.3; cursor:default; }
.nb-motion-catalog { display:inline-flex; align-items:center; gap:14px; min-height:44px; color:#51565e; font-size:.875rem; text-decoration:none; white-space:nowrap; }
.nb-motion-carousel :focus-visible { outline:2px solid #3c465a; outline-offset:-4px; }
@media(max-width:768px) {
 #hero.nb-motion-carousel { padding-top:96px !important; }
 .nb-motion-carousel .nb-motion-pin { height:calc(100svh - 160px); min-height:560px; }
 .nb-motion-navigation { min-height:64px; padding:6px 20px; gap:12px; }
 .nb-motion-selector { gap:0; }
 .nb-motion-selector button { min-width:55px; padding:10px; }
}
#half-motion-study,#arc-motion-study { color:#1d1e22; }
#half-motion-study .half-film,#arc-motion-study .arc-film { background:#ffffff; }
#half-motion-study .half-atmosphere { background:radial-gradient(ellipse at 46% 43%,#eceef1 0%,#fafafa 45%,#fff 80%); }
#arc-motion-study .arc-atmosphere { background:radial-gradient(ellipse at 46% 43%,#e9edf2 0%,#fafbfc 45%,#fff 80%); }
#half-motion-study .half-typography,#arc-motion-study .arc-typography { color:#34383e; }
#half-motion-study .half-film-brand,#arc-motion-study .arc-film-brand { left:5vw; color:#62666d; letter-spacing:.1em; }
#half-motion-study .half-film-edition,#arc-motion-study .arc-film-edition { right:5vw; color:#62666d; }
#half-motion-study .half-end-title,#arc-motion-study .arc-end-title { color:#1d1e22; font-weight:900; letter-spacing:-.07em; }
#half-motion-study .half-end-subtitle,#arc-motion-study .arc-end-subtitle { color:#1d1e22; font-weight:600; }
#half-motion-study .half-end-kicker,#arc-motion-study .arc-end-kicker,
#half-motion-study .half-end-spec,#arc-motion-study .arc-end-spec { color:#62666d; }
#half-motion-study .half-end-rule,#arc-motion-study .arc-end-rule { background:#d8dbe0; }
#half-motion-study .half-product-photo,#arc-motion-study .arc-product-photo { box-shadow:0 22px 60px #2022281c; outline:1px solid #e4e5e8; }
.nb-scene-detail { color:#62666d; font-weight:500; }
.nb-scene-scroll,.nb-next-scene { color:#62666d; }
.nb-scene-scroll { left:5vw; }
.nb-next-scene { right:5vw; }
.nb-scene-progress { height:1px; background:#e4e5e8; }
.nb-scene-progress span { background:#565b64; }
.nb-catalog { padding:96px 5vw 70px; background:#ffffff; color:#1d1e22; }
.nb-catalog-heading { display:flex; align-items:baseline; justify-content:space-between; gap:24px; padding-bottom:34px; border-bottom:1px solid #bfc3ca; }
.nb-catalog .nb-catalog-heading h2 { color:#1d1e22; font-size:clamp(2.5rem,5vw,5rem); line-height:1.2; letter-spacing:-.07em; font-weight:800; }
.nb-catalog-heading > span { color:#62666d; font:500 1rem Arial,sans-serif; letter-spacing:.04em; }
.nb-product-grid { display:block; }
.nb-product-card { display:grid; grid-template-columns:minmax(0,1.06fr) minmax(0,1fr); align-items:center; gap:7vw; padding:68px 0; border:0; border-bottom:1px solid #dedfe3; border-radius:0; background:transparent; overflow:visible; }
.nb-reveal .nb-card-visual,
.nb-reveal .nb-card-topline,
.nb-reveal .nb-card-series,
.nb-reveal .nb-card-copy h3,
.nb-reveal .nb-card-description,
.nb-reveal .nb-card-facts,
.nb-reveal .nb-card-bottom { opacity:0; transform:translateY(28px); transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1); }
.nb-revealed .nb-card-visual,
.nb-revealed .nb-card-topline,
.nb-revealed .nb-card-series,
.nb-revealed .nb-card-copy h3,
.nb-revealed .nb-card-description,
.nb-revealed .nb-card-facts,
.nb-revealed .nb-card-bottom { opacity:1; transform:translateY(0); }
.nb-reveal .nb-card-topline { transition-delay:.06s; }
.nb-reveal .nb-card-series { transition-delay:.11s; }
.nb-reveal .nb-card-copy h3 { transition-delay:.16s; }
.nb-reveal .nb-card-description,.nb-reveal .nb-card-facts { transition-delay:.21s; }
.nb-reveal .nb-card-bottom { transition-delay:.26s; }
.nb-card-visual.nb-card-visual-mockup { height:auto; aspect-ratio:1; width:100%; padding:clamp(18px,2.5vw,40px); border:1px solid #e4e5e8; border-radius:0; background:#f4f5f7; }
.nb-card-visual.nb-card-visual-mockup { transform-style:preserve-3d; transition:transform .55s cubic-bezier(.22,1,.36,1),background-color .4s; }
.nb-card-visual.nb-card-visual-mockup img { width:100%; height:100%; object-fit:contain; transform:translateZ(0) scale(1); filter:none; transition:opacity .4s,transform .55s cubic-bezier(.22,1,.36,1); }
.nb-card-visual.nb-card-visual-mockup:hover { transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-4px); }
.nb-card-visual.nb-card-visual-mockup:hover img { transform:translateZ(18px) scale(1.012); opacity:1; }
.nb-product-card[data-product-id="weekly-high3-math"] .nb-card-visual-mockup { background:#f4f5f7; }
.nb-card-copy { padding:12px 0; min-width:0; }
.nb-card-topline { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.nb-card-topline .nb-card-kicker { margin:0; color:#62666d; font-size:.875rem; font-weight:500; }
.nb-card-status { color:#62666d; font-size:.875rem; }
.nb-card-series { margin:18px 0 16px; color:#1d1e22; font-family:Arial,Helvetica,sans-serif; font-size:clamp(3.25rem,7.7vw,8rem); font-weight:900; line-height:1; letter-spacing:-.075em; }
.nb-card-copy h3 { color:#1d1e22; font-size:clamp(1.2rem,1.8vw,1.875rem); font-weight:600; line-height:1.5; letter-spacing:-.04em; }
.nb-card-description { color:#62666d; font-size:1rem; line-height:1.85; margin:16px 0 24px; max-width:38em; word-break:keep-all; }
.nb-card-facts { margin:0 0 24px; padding-top:18px; border-top:1px solid #dedfe3; }
.nb-card-facts > div { display:grid; grid-template-columns:48px 1fr; gap:16px; padding:6px 0; font-size:.875rem; line-height:1.7; }
.nb-card-facts dt { color:#62666d; }
.nb-card-facts dd { color:#51565e; margin:0; word-break:keep-all; }
.nb-card-bottom { margin-top:0; padding:0; border:0; }
.nb-card-bottom .nb-text-button { display:inline-flex; align-items:center; padding:8px 0; min-width:0; min-height:44px; width:auto; color:#62666d; background:transparent; border:0; border-radius:0; font-size:.875rem; font-weight:500; transition:color .2s; }
.nb-card-bottom .nb-text-button:hover,.nb-scene-detail:hover { background:transparent; color:#202228; text-decoration:none;  }
.nb-info { margin-top:28px; color:#62666d; font-size:.875rem; }
#faq.nb-shop-faq { display:grid; grid-template-columns:1fr 1.7fr; column-gap:8vw; padding:72px 5vw 90px; background:#fff; color:#1d1e22; border-top:1px solid #dedfe3; }
.nb-shop-faq h2 { grid-column:1; grid-row:1 / span 3; margin:0; color:#1d1e22; font-size:clamp(1.75rem,3vw,3rem); letter-spacing:-.055em; font-weight:700; }
.nb-shop-faq details,.nb-service-links { grid-column:2; }
.nb-shop-faq details { border-color:#dedfe3; }
.nb-shop-faq summary { color:#1d1e22; font-size:1rem; font-weight:500; padding:23px 0; }
.nb-shop-faq details p { color:#62666d; font-size:1rem; }
.nb-service-links { gap:12px 28px; }
.nb-service-links a { color:#51565e; font-size:.875rem; font-weight:500; }
body[data-product-tab="shop"] footer { display:block; padding:50px 5vw 32px; text-align:left; background:#ffffff; color:#62666d; border-top:1px solid #dedfe3; }
body[data-product-tab="shop"] .footer-logo { color:#23252a; font-family:Arial,sans-serif; font-weight:900; font-size:clamp(2rem,10.9vw,11.5rem); line-height:1.15; letter-spacing:-.075em; margin-bottom:40px; white-space:nowrap; }
body[data-product-tab="shop"] .footer-actions { display:flex; align-items:center; justify-content:space-between; gap:20px; }
body[data-product-tab="shop"] .footer-copy { color:#62666d; font-size:.875rem; }
body[data-product-tab="shop"] .admin-entry { color:#62666d; border-color:#dedfe3; border-radius:0; }
.nb-product-dialog { width:min(1120px,calc(100vw - 40px)); border:1px solid #d9dce1; border-radius:0; color:#1d1e22; background:#ffffff; }
.nb-product-dialog::backdrop { background:#272b3652; backdrop-filter:blur(8px); }
.nb-detail-layout { grid-template-columns:1fr 1fr; }
.nb-detail-image.nb-detail-mockup { padding:28px; background:#f4f5f7; }
.nb-detail-copy { padding:70px 36px 36px; }
.nb-detail-copy h2 { color:#1d1e22; font-size:1.75rem; }
.nb-detail-copy .nb-card-kicker { color:#62666d; font-size:.875rem; }
.nb-detail-copy > p:not(.nb-card-kicker),.nb-detail-copy dt { color:#62666d; }
.nb-detail-copy dd { color:#1d1e22; }
.nb-detail-copy dl,.nb-detail-copy dl > div { border-color:#dedfe3; }
.nb-pending-label { color:#62666d; background:#f4f5f7; border:1px solid #dedfe3; border-radius:0; }
.nb-detail-close { color:#1d1e22; background:#fff; border:1px solid #747780; border-radius:0; }
.nb-product-dialog[open] { animation:nb-dialog-enter .4s ease; }
@keyframes nb-dialog-enter { from { opacity:0; } to { opacity:1; } }
.nb-shop button:focus-visible,.nb-motion-chapter a:focus-visible,.nb-motion-chapter button:focus-visible,.nb-product-dialog button:focus-visible { outline:2px solid #1d1e22; outline-offset:5px; }
html::after { content:'NEWBORN STUDY'; position:fixed; inset:0; z-index:10000; display:flex; align-items:flex-end; padding:0 5vw 5vh; background:#fff; color:#202228; font:900 clamp(1rem,1.4vw,1.3rem)/1 Arial,sans-serif; letter-spacing:-.055em; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .18s ease,visibility 0s linear .18s; }
html.nb-route-leaving::after { opacity:1; visibility:visible; transition:opacity .18s ease; }
@media(prefers-reduced-motion:reduce) {
 .nb-reveal .nb-card-visual,.nb-reveal .nb-card-topline,.nb-reveal .nb-card-series,.nb-reveal .nb-card-copy h3,.nb-reveal .nb-card-description,.nb-reveal .nb-card-facts,.nb-reveal .nb-card-bottom { opacity:1; transform:none; transition:none; }
 html::after { display:none; }
}
@media(min-width:1800px) { .nb-product-card { gap:100px; } }
@media(max-width:1000px) {
 .nb-product-card { gap:5vw; }
 .nb-card-visual.nb-card-visual-mockup { padding:18px; }
 .nb-card-series { font-size:clamp(3rem,7vw,5.5rem); }
 .nb-detail-copy { padding:65px 24px 28px; }
}
@media(max-width:768px) {
 body[data-product-tab="shop"] .nb-nav { padding-inline:20px; }
 body[data-product-tab="shop"] .nb-nav .nav-logo { font-size:1rem; }
 body[data-product-tab="shop"] .nb-nav .nav-links a { padding:10px 0; }
 body[data-product-tab="shop"] .nb-nav .nav-links .nav-cta { border:0; padding-inline:0; }
 .nb-motion-chapter,.nb-motion-chapter#hero { height:auto; }
 .nb-motion-pin { top:0; }
 .nb-catalog { padding:64px 20px 48px; }
 .nb-catalog-heading { padding-bottom:24px; }
 .nb-product-card { grid-template-columns:1fr; gap:28px; padding:36px 0 42px; }
 .nb-card-visual.nb-card-visual-mockup { padding:20px; }
 .nb-card-copy { padding:0; }
 .nb-card-series { font-size:clamp(3.25rem,15.8vw,7rem); margin-top:14px; }
 .nb-card-copy h3 { font-size:1.375rem; }
 .nb-card-description { margin-bottom:20px; }
 .nb-card-facts { margin-bottom:20px; }
 #faq.nb-shop-faq { display:block; padding:48px 20px 56px; }
 .nb-shop-faq h2 { margin-bottom:24px; }
 body[data-product-tab="shop"] footer { padding:32px 20px 24px; }
 body[data-product-tab="shop"] .footer-logo { font-size:10.5vw; margin-bottom:26px; }
 .nb-product-dialog { width:calc(100vw - 24px); max-height:calc(100dvh - 24px); }
 .nb-detail-layout { grid-template-columns:1fr; }
 .nb-detail-image.nb-detail-mockup { padding:24px; }
 .nb-detail-copy { padding:30px 24px; }
 .nb-detail-copy h2 { font-size:1.5rem; }
}
@media(prefers-reduced-motion:reduce) {
 .nb-product-dialog[open] { animation:none; }
}

/* Released products show a price and a direct ordering channel. */
.nb-card-bottom { gap:20px; }
.nb-card-price { font-size:clamp(1.5rem,2.2vw,2.25rem); color:#1d1e22; font-weight:650; letter-spacing:-.045em; white-space:nowrap; }
.nb-detail-copy > p.nb-detail-price { color:#1d1e22; font-size:2rem; line-height:1.3; font-weight:650; margin:24px 0 18px; letter-spacing:-.04em; }
.nb-purchase-button { display:flex; justify-content:center; align-items:center; min-height:56px; padding:14px 20px; border:1px solid #202228; border-radius:0; color:#fff; background:#202228; text-decoration:none; font-size:1rem; font-weight:600; }
.nb-purchase-button:hover { background:#3a3e45; }
.nb-purchase-button:focus-visible { outline:2px solid #1d1e22; outline-offset:5px; }
@media(max-width:768px) { .nb-card-price { display:block; width:100%; font-size:1.75rem; } }

/* Essential product information stays on the page; specifications live in detail. */
.nb-catalog { padding-top:30px; padding-bottom:25px; }
.nb-product-card:first-child { border-top:1px solid #dedfe3; }
.nb-card-copy .nb-card-name { font-family:Arial,Helvetica,sans-serif; font-size:clamp(3.5rem,7vw,7rem); font-weight:900; line-height:1.05; letter-spacing:-.075em; }
.nb-card-copy .nb-card-name-korean { font-family:inherit; font-size:clamp(2rem,3.5vw,3.5rem); font-weight:700; letter-spacing:-.06em; }
.nb-card-summary { color:#62666d; font-size:1rem; line-height:1.7; margin:20px 0 30px; word-break:keep-all; }
.nb-product-card[data-product-id="half-2028-math"] .nb-card-summary { font-size:.875rem; }
.nb-card-purpose { color:#41464e; font-size:1rem; line-height:1.8; margin:-12px 0 28px; word-break:keep-all; }
.nb-card-bottom { justify-content:space-between; align-items:center; padding-top:24px; border-top:1px solid #dedfe3; }
.nb-card-price { font-size:1.75rem; }
.nb-shop-links { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:20px 36px; padding:28px 5vw; background:#ffffff; }
.nb-shop-links a { display:inline-flex; align-items:center; min-height:44px; color:#62666d; text-decoration:none; font-size:.875rem; }
.nb-shop-links a:hover { color:#111; }
body[data-product-tab="shop"] footer { padding-top:24px; }
@media(max-width:768px) {
 .nb-catalog { padding-top:24px; padding-bottom:16px; }
 .nb-card-copy .nb-card-name { font-size:3.5rem; }
 .nb-card-copy .nb-card-name-korean { font-size:2.25rem; }
 .nb-card-summary { margin:12px 0 20px; }
 .nb-card-bottom { gap:16px; padding-top:20px; }
 .nb-card-price { width:auto; font-size:1.5rem; }
 .nb-shop-links { padding:16px 20px 24px; justify-content:flex-start; }
}

/* Shared product detail controls. */
.nb-detail-toolbar { position:sticky; top:0; height:0; z-index:3; }
.nb-detail-copy #nb-detail-description { color:#4c5057; font-size:1rem; line-height:1.85; word-break:keep-all; }
@media(max-width:768px) { .nb-card-purpose { margin:-4px 0 22px; } }
