/* NovaOrbital cinematic approval edition.
   Loaded after the existing theme. Card SVG geometry and artwork stay untouched. */
:root {
  --cinematic-panel: #0a1728;
  --cinematic-panel-high: #11233a;
  --cinematic-edge: #a6d6f342;
  --cinematic-edge-light: #d7efff70;
  --cinematic-ink: #f3f8fd;
  --cinematic-muted: #bdcddd;
  --cinematic-gold: #f1d293;
  --cinematic-radius: 22px;
  --cinematic-shadow: 0 24px 60px #0007, 0 6px 15px #0004,
    inset 0 1px 0 #edf9ff1f, inset 0 -1px 0 #020713;
  --text: var(--cinematic-ink);
  --muted: var(--cinematic-muted);
  --line: var(--cinematic-edge);
  --blue: #a3e2fa;
  --gold: var(--cinematic-gold);
  scroll-padding-top: 32px;
}

body { font-size: 16px; line-height: 1.7; overflow-x: clip; }
::selection { background: #c4eaff; color: #061225; }
h1, h2, h3 { text-wrap: balance; text-shadow: 0 2px 2px #0003; }
p { color: var(--cinematic-muted); text-wrap: pretty; }
button, a { touch-action: manipulation; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible {
  outline: 3px solid #d2f0ff; outline-offset: 5px;
  box-shadow: 0 0 0 8px #0b1b2de6;
}
.eyebrow { color: #a4dff6; letter-spacing: .15em; font-weight: 700; }
.muted { color: #b5c9da !important; }
.caption { color: #adc1d4; }
.section-heading { align-items: start; gap: 48px; }
.section-heading > p { color: #bdcddd; line-height: 1.8; }
.section-heading h2 { line-height: 1.13; }
.section, .studio-collection, .company-section { position: relative; }

/* The illustrated universe remains visible between substantial, legible surfaces. */
.novashower-space:after {
  background: linear-gradient(90deg, #02071182, #0207111f 56%, #0207112e),
    linear-gradient(180deg, #02071424, #02081708 50%, #02051060),
    url('/assets/public-site-refresh/cinematic/novaorbital-galaxy-4k.webp') center / cover no-repeat;
}
.review-bar { background: #061322; border-bottom: 1px solid #a3d9fb1e; color: #bed1e1; }
.review-bar a { color: #c2e7fb; text-decoration: underline; text-underline-offset: 3px; }
.site-header {
  border: 1px solid #b4ddf64a; border-radius: 18px;
  background: linear-gradient(140deg, #13253b, #071220 80%);
  box-shadow: 0 18px 45px #0006, inset 0 1px 0 #eaf8ff26, inset 0 -2px 0 #030810;
  backdrop-filter: none;
}
.site-header .brand { letter-spacing: .065em; }
.site-header .brand img { filter: drop-shadow(0 5px 12px #0008); }
.desktop-nav a { padding-block: 14px; color: #c8d9e7; }
.desktop-nav a:hover { color: #fff; }
.department-nav { gap: 24px; padding-bottom: 16px; }
.department-nav a { min-height: 42px; padding: 2px 15px; border-radius: 10px; }
.department-nav a[aria-current=page] {
  background: #0c2337; box-shadow: inset 0 1px 0 #c1e7ff20;
  color: #e3f5ff; text-shadow: none;
}
.department-nav a[aria-current=page]:after { bottom: -5px; }
.mobile-nav { margin: 0 3vw 12px; padding: 12px 18px; border: 1px solid var(--cinematic-edge); border-radius: 16px; background: #0a192b; }
.mobile-nav a { border-bottom-color: #bfdeef20; }
.mobile-nav a:last-child { border: 0; }
.menu-toggle { min-height: 44px; border: 1px solid #b8def23d; border-radius: 10px; background: #11263b; }

.button, .department-hero .button, .gaming-feature .button,
.studio-home .studio-primary, .classbound-closing .button:first-child {
  min-height: 51px; border: 1px solid #ffe9b8;
  border-radius: 11px; background: linear-gradient(150deg, #ffedbc, #efcc8a 56%, #d5ac66);
  color: #122033; font-weight: 750;
  box-shadow: 0 8px 20px #0005, inset 0 1px 0 #fff8e9, inset 0 -3px 0 #9a6d394a;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.button:hover, .department-hero .button:hover, .studio-home .studio-primary:hover {
  color: #091727; border-color: #fff1ce;
  background: linear-gradient(150deg, #fff4d7, #f8db9d 56%, #edc47b);
  box-shadow: 0 12px 24px #0007, 0 0 0 3px #f7d99315, inset 0 1px 0 #fff;
  transform: translateY(-2px);
}
.button.quiet, .department-hero .button.quiet, .classbound-page .classbound-hero .button.quiet {
  color: #e7f3fc; border: 1px solid #acd5ef63;
  background: linear-gradient(155deg, #152e47, #0a192c);
  box-shadow: 0 8px 20px #0004, inset 0 1px 0 #d8f0ff1c;
}
.button.quiet:hover { background: #1b3751; border-color: #bfeaff; color: white; }
.button.small { min-height: 42px; }
.project-link, .text-link, .author-jump { color: #edcf95; text-underline-offset: 5px; }
.project-link:hover, .text-link:hover, .author-jump:hover { color: #fff2d1; }

/* Hero: the established lockup and orbit become a dimensional centerpiece. */
.studio-home .studio-hero { padding-top: 30px; min-height: 710px; }
.home-hero:after {
  background: linear-gradient(90deg, #031020d9 0%, #0310208c 35%, #0310200a 70%),
    radial-gradient(ellipse at 76% 47%, #3156880f, transparent 65%);
}
.studio-home .hero-copy { padding-bottom: 60px; }
.studio-home .hero-copy h1 {
  font-size: clamp(46px, 4.9vw, 76px); line-height: 1.075;
  letter-spacing: -.05em; font-weight: 800; margin: 24px 0;
}
.studio-home .hero-copy h1 em {
  background: linear-gradient(110deg, #edf9ff 4%, #b8ebff 48%, #75bddd 100%);
  background-clip: text; -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; color: #baeafd;
  filter: drop-shadow(0 4px 10px #0003);
}
.studio-home .hero-description { color: #c7d8e7; line-height: 1.85; font-size: 17px; }
.studio-home .hero-brand-lockup strong { font-size: 22px; }
.studio-home .hero-brand-lockup span { color: #b6d8e9; font-size: 9px; }
.studio-home .hero-brand-lockup img { filter: drop-shadow(0 9px 16px #000a); }
.hero-foot { border-top: 1px solid #badffc30; color: #b4c7d8; }
.studio-home .hero-foot { font-size: 10px; padding: 23px 0; }
.brand-orbit { perspective: 1100px; transform-style: preserve-3d; }
.studio-home .brand-orbit { max-width: 590px; margin-block: 18px 54px; }
.brand-orbit:before {
  content: ''; position: absolute; inset: 19%; border-radius: 50%; z-index: 0;
  background: radial-gradient(circle, #071a2f 14%, #153758b8 50%, #79d8ff10 72%, transparent 73%);
  box-shadow: 0 0 80px #2c8fe321, inset 0 0 55px #020919;
  pointer-events: none; transform: rotateX(18deg);
}
.studio-home .brand-ring { animation-duration: 32s; opacity: .7; filter: drop-shadow(0 0 12px #7ccfff55); }
.studio-home .brand-ring-front { opacity: .55; }
.brand-orbit-core { transform-style: preserve-3d; }
.brand-orbit-core img { filter: drop-shadow(0 25px 18px #000a) drop-shadow(0 0 25px #63b9f02e); }
.brand-orbit-caption { color: #bdddf0; line-height: 1.8; letter-spacing: .16em; }
.orbit-department span { background: #071726; color: #effaff; border: 1px solid #badffe34; padding: 5px 11px; border-radius: 7px; text-shadow: none; box-shadow: 0 6px 12px #0007; }
.orbit-department img { filter: drop-shadow(0 15px 12px #000d) drop-shadow(0 0 10px #80cfff30); }
.brand-orbit[data-cinematic-visible=false] *, .brand-orbit[data-cinematic-visible=false]:before { animation-play-state: paused !important; }
.cinematic-depth {
  transform: perspective(1100px) translate3d(var(--cinematic-depth-x, 0px), var(--cinematic-depth-y, 0px), 0)
    rotateX(var(--cinematic-rotate-x, 0deg)) rotateY(var(--cinematic-rotate-y, 0deg));
  transition: transform .5s cubic-bezier(.2,.7,.2,1);
  backface-visibility: hidden;
}

/* One solid material system for every existing panel, including long-form pages. */
.studio-project, .department-feature, .department-card, .feature-grid article,
.department-explainer, .department-faq, .note-panel, .policy-content,
.author-restored, .author-personal-note, .collection, .book,
.classbound-scope-grid article, .classbound-order-list li, .classbound-journey li,
.classbound-legacy, .contact-layout > div, .review-row, .faq details {
  border: 1px solid var(--cinematic-edge);
  border-radius: var(--cinematic-radius);
  background: linear-gradient(145deg, #112339, #091727 56%, #061120);
  box-shadow: var(--cinematic-shadow);
  backdrop-filter: none;
}
.studio-project, .department-card { transition: border-color .25s ease, box-shadow .25s ease; }
.studio-project:hover, .studio-project:focus-within, .department-card:hover {
  border-color: #c6e6ff78; transform: none;
  box-shadow: 0 28px 65px #0009, 0 0 0 1px #9ad2f20b, inset 0 1px 0 #e6f7ff36;
}
.studio-project:before, .department-feature:before {
  content: ''; position: absolute; top: 0; left: 7%; right: 7%; height: 1px;
  background: linear-gradient(90deg, transparent, #d7eaf89c, transparent);
  pointer-events: none;
}
.department-feature { position: relative; }
.studio-collection { padding-top: 72px; }
.studio-collection .section-heading { margin-bottom: 34px; }
.studio-tabs {
  padding: 6px; gap: 4px; border: 1px solid var(--cinematic-edge);
  border-radius: 14px; background: #081727; box-shadow: inset 0 1px 0 #d9f1ff1c, 0 12px 30px #0003;
}
.studio-tab { border: 1px solid transparent; border-radius: 9px; padding: 15px 12px; min-height: 80px; }
.studio-tab + .studio-tab { border-left: 1px solid transparent; }
.studio-tab strong { font-family: inherit; font-size: 14px; }
.studio-tab span { color: #b1c4d6; font-size: 9px; line-height: 1.45; }
.studio-tab.active {
  border: 1px solid #abdaf35c; background: linear-gradient(135deg, #1c415d, #102a42);
  color: #f1fbff; box-shadow: inset 0 1px 0 #daf5ff30, 0 4px 12px #0005;
}
.studio-tab.active span { color: #d0e5f4; }
.studio-tab:hover { background: #15324a; }
.studio-projects { gap: 28px; }
.studio-project .project-copy { padding: 34px; }
.studio-project p:not(.eyebrow):not(.project-status), .department-feature p:not(.eyebrow) { color: #c0d0e0; }
.project-identity { margin-bottom: 26px; }
.project-status { display: inline-block; color: #c4d7e7; font-size: 11px; line-height: 1.65; }
.project-status:before { content: ''; display: inline-block; width: 5px; height: 5px; margin-right: 7px; border-radius: 50%; vertical-align: 2px; background: #a8d9e9; }
.project-identity h3 { letter-spacing: -.025em; }
.project-logo { filter: drop-shadow(0 8px 10px #0009); }
.classbound-feature .project-copy { padding: 40px 32px 40px 36px; }
.classbound-feature .project-visual { padding: 28px 28px 25px 0; }
.project-visual img { border: 1px solid #c0dced65; border-radius: 13px; box-shadow: 0 22px 35px #0009, 0 0 0 6px #0209108c; }
.project-visual figcaption { color: #b8ccdd; font-size: 11px; }
.dawn-project .project-copy, .animation-project .project-copy { padding-bottom: 0; }
.project-card-art { margin-top: 14px; background: radial-gradient(ellipse at 50% 70%, #57407638, transparent 70%); }
.project-character-art { border-top: 1px solid #d2e8fa24; margin-top: 30px; }
.compact-project .project-copy { padding: 29px; }
.compact-project h2 { font-size: 27px; }
.compact-project .project-link { padding-top: 23px; }
.company-section { padding-top: 80px; padding-bottom: 60px; }
.department-feature { padding: 34px; }

.department-hero, .utility-hero {
  background: radial-gradient(ellipse at 20% 45%, #041224ee, #04122496 44%, transparent 75%);
}
.department-hero h1 { font-size: clamp(43px, 4.55vw, 70px); line-height: 1.1; }
.department-hero .hero-description { color: #c8d6e5; line-height: 1.85; }
.department-hero-image, .wide-image, .product-screenshot, .mascot-panel,
.classbound-page .classbound-hero-frame, .classbound-concept-art {
  border: 1px solid #b8dcef59; border-radius: 18px;
  background-color: #081524; box-shadow: 0 25px 60px #0009, inset 0 1px 0 #eafaff20;
}
.department-hero-image { filter: saturate(1.04); }
.department-lockup span { color: #bed8eb; }
.status { display: inline-flex; width: fit-content; padding: 6px 11px; border: 1px solid #b3d7eb35; border-radius: 7px; background: #0d2033; color: #d2e5f2; }
.status i { box-shadow: 0 0 8px #b5e8ff35; }
.fact-strip, .classbound-page .classbound-facts {
  border: 1px solid #b7ddf043; border-radius: 14px; padding-block: 25px;
  background: linear-gradient(135deg, #142a41, #081827 80%); box-shadow: var(--cinematic-shadow);
  color: #c7d9e6; backdrop-filter: none;
}
.fact-strip strong { color: #f1d99e; }
.feature-grid { gap: 24px; }
.feature-grid article { padding: 30px; }
.feature-grid h3 { margin: 20px 0 15px; }
.feature-grid p { color: #c0d0df; }
.index-number { display: inline-block; border-bottom: 1px solid #edcf9466; color: #f2d59a; padding-bottom: 9px; min-width: 38px; }
.gaming-feature, .card-detail-story { border-block: 1px solid #bbaac537; background: linear-gradient(130deg, #101c2c, #101426 70%, #101a2a); }
.split-story { background: transparent; }
.tinted { border-block: 1px solid #b9dcee24; background: #091929eb; }
.department-explainer { padding: 42px; }
.department-explainer > p, .department-explainer li p { color: #c0d0df; }
.department-explainer li strong { color: #eed7a2; }
.department-faq { padding: 30px 34px; }
.department-faq .faq details, .classbound-page .classbound-faq details { background: #10233a; box-shadow: inset 0 1px 0 #d9edff0d; border: 1px solid #a3c9e631; border-radius: 12px; }
.faq details { border-radius: 14px; }
.faq details[open] { border-color: #bdddf067; }
.faq summary { color: #edf6fc; line-height: 1.6; font-weight: 600; }
.faq summary > span { flex: 0 0 auto; color: #bfe6fb; }
.faq details p { color: #bed0e0; }
.note-panel { border-left: 3px solid #cdb4ed; }
.stage > div { border: 1px solid #b2daf05e; background: linear-gradient(140deg, #163047, #081726); box-shadow: var(--cinematic-shadow); transform: none; }

/* Gallery containers change material; the reviewed card artwork does not change. */
.collectible { padding: 18px 18px 24px; border: 1px solid #adcee53d; border-radius: 20px; background: linear-gradient(145deg, #12253b, #071423); box-shadow: var(--cinematic-shadow); }
.collectible > .eyebrow, .collectible > h3 { padding-inline: 8px; }
.collectible h3 { font-size: 21px; line-height: 1.3; }
.card-grid { gap: 28px; }
.card-inspect { background: radial-gradient(ellipse at 50% 40%, #425d8b2a, transparent 74%); }
.card-inspect > span { border: 1px solid #b8cfdf24; border-radius: 8px; background: #0a182a; color: #edcf95; padding: 12px; }
.filters { gap: 9px; }
.filters .filter, .face-controls button { min-height: 44px; border: 1px solid #b4d5ec4d; border-radius: 9px; background: #10253c; color: #d2e2f0; box-shadow: inset 0 1px 0 #eaf6ff0f; }
.filters .filter.active, .book-section .filter.active, .face-controls button.active { border-color: #f5d8a3; background: linear-gradient(130deg, #ffeac0, #e7c182); color: #132538; box-shadow: 0 4px 12px #0004, inset 0 1px 0 #fff6dc; }
#card-dialog { border: 1px solid #a7cbe777; border-radius: 22px; background: #071422; box-shadow: 0 35px 100px #000d, inset 0 1px 0 #e2f5ff26; }
dialog::backdrop { background: #020610e6; backdrop-filter: blur(10px); }
.dialog-close { min-height: 42px; border: 1px solid #b5d6ec57; border-radius: 9px; background: #1a334b; }
.dialog-grid p { color: #c3d4e3; }

.book-section { border-block: 1px solid #b1d5ef2e; border-radius: 0; background: #071524e8; }
.book-section h2, .book-section h3 { color: #eff7fe; }
.book-section p, .book-section .eyebrow { color: #bed3e5; }
.book-grid { gap: 26px; }
.book { padding: 17px 17px 21px; display: flex; flex-direction: column; }
.book img { width: 100%; margin-bottom: 23px; border-radius: 5px; transform: none; box-shadow: 2px 3px 0 #d8dce03d, 4px 5px 0 #020815, 0 12px 20px #0008; }
.book:hover img { transform: translateY(-3px); }
.book h3 { font-size: 19px; line-height: 1.35; text-shadow: none; margin-top: 8px; }
.book > p:not(.eyebrow) { color: #bdcfdf; }
.book .book-actions { margin-top: auto; padding-top: 18px; gap: 7px; }
.retailer-link { min-height: 36px; display: inline-flex; align-items: center; padding: 6px 10px; border: 1px solid #d9c6993f; border-radius: 7px; background: #172b3f; color: #f1d9a6; }
.retailer-link:hover { color: #fff2cd; border-color: #f1d29b9c; background: #223c51; }
.collections { border-top: 1px solid #b2cfe936; gap: 25px; }
.collection { padding: 24px; }
.collection h3 { font-size: 22px; line-height: 1.3; }
.author-restored { padding: 42px; }
.author-restored .author-bio, .author-restored .author-bio p { color: #c9d9e7; }
.author-portrait { border: 1px solid #c1e0f555; border-radius: 17px; }
.author-personal-note { border-left: 3px solid #f0d69c; }

.classbound-scope-grid { gap: 23px; }
.classbound-scope-grid article { padding: 26px; }
.classbound-order-list li { border-top: 2px solid var(--order-color); border-radius: 16px; }
.classbound-order-list li > p:last-child { color: #c7d6e3; }
.classbound-journey li { padding: 25px; border-radius: 16px; }
.classbound-journey { gap: 20px; }
.classbound-journey h3 { font-size: 25px; }
.classbound-world { background: #081828d9; border-block: 1px solid #b7d9ef24; }
.classbound-frame-label { background: linear-gradient(90deg, #193149, #0c2035); }
.classbound-hero-frame figcaption, .classbound-concept-art figcaption { background: #0b1c2d; color: #c5d8e5; }
.classbound-page .classbound-hero-frame .department-hero-image { border: 0; border-radius: 0; box-shadow: none; }
.classbound-legacy { border-color: #d7bd8740; }

.contact-layout { gap: 28px; align-items: start; padding-top: 30px; }
.contact-layout > div { padding: 32px; }
.contact-layout p { color: #c3d2e1; }
.contact-row { margin-block: 0; padding: 18px 0; border-radius: 0; border-bottom: 1px solid #c5deed24; background: transparent; font-size: 21px; }
.contact-row:first-child { padding-top: 0; }
.contact-row:last-child { border-bottom: 0; padding-bottom: 0; }
.contact-row small { color: #adc7dc; }
.email-link { font-size: clamp(16px, 1.75vw, 22px); line-height: 1.9; }
.policy-layout { align-items: start; }
.policy-layout aside { position: sticky; top: 28px; padding: 25px; border: 1px solid #bddcf23b; border-radius: 16px; background: #0a1c2d; color: #c2d6e7; }
.policy-layout aside a { line-height: 1.8; }
.policy-content { padding: 0 35px 35px; }
.policy-content p, .policy-content li { color: #c5d5e3; }
.policy-content th, .policy-content td { padding: 13px; border: 1px solid #a9c7df2b; background: #122b40; }
.policy-content tr:nth-child(even) td { background: #0d2135; }
.review-row { padding: 27px; margin-block: 16px; }
.approval-summary > p:not(.eyebrow) { max-width: 920px; line-height: 1.85; }
.approval-summary li { color: #c4d6e6; margin-block: 10px; }
.draft-note { border: 1px solid #e4ca8840; border-left: 3px solid #e4ca88; border-radius: 10px; background: #112134; color: #d3dfeb; }

.closing-cta, .studio-home .closing-cta {
  border: 1px solid #bad8eb3a; border-radius: 22px;
  background: linear-gradient(135deg, #152c43, #0a182a 65%, #152236);
  box-shadow: var(--cinematic-shadow); margin: 40px auto 75px;
  max-width: min(1320px, 91vw); padding: 45px;
}
.closing-cta p { color: #c3d6e6; }
.footer { border-top: 1px solid #c1def238; background: linear-gradient(140deg, #0b1b2d, #040d1a); backdrop-filter: none; }
.footer-top, .footer-bottom, .footer .social-links { max-width: 1320px; margin-inline: auto; }
.footer-top p { color: #b5c9da; }
.footer-links { gap: 17px 38px; font-size: 13px; color: #cfdeeb; }
.footer-bottom { border-top: 1px solid #bcd6e82c; color: #b0c4d6; background: none; }
.footer .social-links { padding-top: 28px; margin-top: 20px; color: #b8d6eb; }
.novashower-control { border: 1px solid #b7d6eb5e; background: #102b40; border-radius: 10px; box-shadow: 0 8px 22px #0008, inset 0 1px 0 #edfaff20; backdrop-filter: none; }

@media (min-width: 1600px) {
  .studio-home .studio-hero { max-width: 1680px; min-height: 780px; }
  .studio-home .hero-copy h1 { font-size: 80px; }
  .studio-home .brand-orbit { max-width: 620px; }
  .studio-home .hero-copy { max-width: 720px; }
}
@media (max-width: 1100px) {
  .studio-home .hero-copy h1 { font-size: clamp(44px, 5vw, 58px); }
  .studio-home .hero-brand-lockup strong { font-size: 18px; }
  .studio-home .hero-brand-lockup span { font-size: 8px; }
  .studio-home .hero-description { font-size: 16px; }
  .studio-home .studio-hero { min-height: 660px; }
  .studio-project .project-copy { padding: 27px; }
  .compact-project h2 { font-size: 24px; }
  .classbound-feature .project-copy { padding: 30px; }
  .studio-tabs { gap: 4px; }
  .feature-grid article { padding: 25px; }
  .classbound-journey { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .book-grid { gap: 23px; }
  .contact-layout > div { padding: 26px; }
}
@media (max-width: 760px) {
  :root { --cinematic-radius: 18px; }
  .site-header { border-radius: 14px; }
  .department-nav { gap: 12px; padding-top: 3px; }
  .department-nav a { padding-inline: 11px; }
  .studio-home .studio-hero { padding-top: 10px; min-height: 0; }
  .studio-home .hero-copy { padding: 24px 0 15px; }
  .studio-home .hero-copy h1 { font-size: clamp(43px, 8.7vw, 62px); line-height: 1.08; margin: 22px 0; }
  .studio-home .hero-brand-lockup strong { font-size: 21px; }
  .studio-home .hero-brand-lockup span { font-size: 8px; }
  .studio-home .hero-description { font-size: 16px; line-height: 1.8; }
  .studio-home .brand-orbit { width: 91%; max-width: 470px; margin-block: 15px 53px; }
  .studio-home .hero-foot { padding: 20px 0; }
  .home-hero:after { background: linear-gradient(180deg, #061224b8, #03102050 48%, #06122440); }
  .orbit-department span { padding: 4px 7px; }
  .studio-collection, .company-section { padding-top: 48px; }
  .studio-tabs { margin-inline: 0; padding: 5px; scroll-padding-inline: 5px; border-radius: 12px; }
  .studio-tab { min-height: 76px; padding: 13px; min-width: 116px; }
  .studio-tab strong { font-size: 14px; }
  .studio-tab span { font-size: 8px; }
  .studio-projects { gap: 23px; }
  .studio-project .project-copy, .classbound-feature .project-copy { padding: 26px; }
  .classbound-feature .project-visual { padding: 0 20px 20px; }
  .dawn-project .project-copy, .animation-project .project-copy { padding-bottom: 0; }
  .project-character-art { margin-top: 25px; }
  .project-identity h3 { font-size: 24px; }
  .compact-project h2 { font-size: 28px; }
  .department-feature { padding: 27px 24px; }
  .department-hero h1 { font-size: clamp(41px, 8.9vw, 61px); }
  .department-hero-image { border-radius: 15px; }
  .section-heading { gap: 24px; }
  .fact-strip, .classbound-page .classbound-facts { border-radius: 12px; gap: 20px; }
  .department-explainer { padding: 28px 25px; }
  .department-faq { padding: 25px 18px; }
  .card-grid { gap: 23px 15px; }
  .collectible { padding: 10px 8px 18px; border-radius: 15px; }
  .collectible > .eyebrow, .collectible > h3 { padding-inline: 6px; }
  .collectible h3 { font-size: 18px; }
  .card-inspect > span { padding: 10px 8px; font-size: 10px; }
  .book-grid { gap: 24px 14px; }
  .book { padding: 12px 12px 17px; border-radius: 13px; }
  .book h3 { font-size: 17px; }
  .book .book-actions { gap: 7px; }
  .retailer-link { font-size: 11px; padding: 6px 8px; }
  .collection { padding: 20px; }
  .author-restored { padding: 25px; }
  .author-personal-note { padding: 28px; }
  .classbound-scope-grid article, .classbound-journey li { padding: 24px; }
  .classbound-order-list li { border-radius: 12px; }
  .classbound-journey { gap: 15px; }
  .classbound-journey h3 { font-size: 24px; }
  .contact-layout { gap: 24px; }
  .contact-layout > div { padding: 26px; }
  .contact-row { font-size: 20px; }
  .policy-layout aside { position: static; }
  .policy-content { padding: 0 23px 25px; }
  .policy-content table { display: block; max-width: 100%; overflow-x: auto; }
  .review-row { padding: 21px; }
  .closing-cta, .studio-home .closing-cta { max-width: 90vw; padding: 32px 27px; margin-block: 30px 52px; border-radius: 18px; }
  .footer-links { font-size: 12px; gap: 16px 23px; }
  .novashower-control { min-height: 42px; }
}
@media (max-width: 390px) {
  .studio-home .hero-brand-lockup strong { font-size: 18px; }
  .studio-home .hero-brand-lockup span { font-size: 7px; }
  .studio-home .hero-copy h1 { font-size: 41px; }
  .studio-project .project-copy, .classbound-feature .project-copy { padding: 24px; }
  .collectible h3 { font-size: 16px; }
  .book { padding: 10px 10px 15px; }
  .book h3 { font-size: 15px; }
  .retailer-link { font-size: 10px; padding-inline: 6px; }
  .classbound-journey { grid-template-columns: 1fr; }
  .department-feature { padding: 22px 19px; }
}

html[data-cinematic-motion=paused] *,
html[data-cinematic-motion=paused] *:before,
html[data-cinematic-motion=paused] *:after,
html[data-nova-motion=paused] *,
html[data-nova-motion=paused] *:before,
html[data-nova-motion=paused] *:after { animation-play-state: paused !important; }
html[data-nova-motion=paused] .cinematic-depth,
html[data-cinematic-motion=paused] .cinematic-depth { transition: none; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *:before, *:after { animation: none !important; transition: none !important; }
  .cinematic-depth { transform: none; }
  .button:hover, .book:hover img { transform: none; }
}
@media print {
  .novashower-space, #novashower-field, #novashower-edges, .novashower-control { display: none !important; }
  body { background: #fff; color: #152238; }
  .studio-project, .book, .department-explainer, .policy-content { background: #fff; box-shadow: none; color: #152238; border-color: #bbc7d0; }
  .policy-content p, .policy-content li { color: #24384b; }
}

/* Approval gallery uses real browser captures; the live pages remain the motion preview. */
.review-subheading { margin-top: 56px; margin-bottom: 24px; }
.review-comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.review-comparison figure { margin: 0; border: 1px solid var(--cinematic-edge-light); background: var(--cinematic-panel); border-radius: 16px; overflow: hidden; }
.review-comparison a { display: block; }
.review-comparison img { display: block; width: 100%; height: auto; }
.review-comparison figcaption { padding: 16px 20px; color: #d2e2ef; font-size: 14px; }
.review-route-links { display: flex; flex-wrap: wrap; gap: 12px; }
.review-route-links a { padding: 12px 20px; border: 1px solid var(--cinematic-edge); border-radius: 8px; background: #142b42; color: #e8d3a9; }
.review-route-links a:hover { border-color: #d9eefa; background: #203c54; }
@media (max-width: 760px) { .review-comparison { grid-template-columns: 1fr; } }
