/* Shared black / neon-pink direction. Theme choices retain their shapes. */
:root, :root[data-visitor-theme] {
  --future-paper: #080809 !important;
  --future-ink: #ffffff !important;
  --future-muted: #b7b7bd !important;
  --future-blue: var(--accent) !important;
  --future-text-blue: var(--accent) !important;
  --future-lime: var(--accent) !important;
  --theme-button-ink: #fff;
}
body { background: #080809; color: #fff; }
body main { color: #fff; }
body .site-nav, body.next-home .site-nav, body.next-home.next-scrolled .site-nav { background: transparent; border: 0; box-shadow: none; }
body .site-nav .menu-toggle { top: 14px; min-height: 40px; height: 40px; padding: 9px 14px; border-radius: 24px; font-size: 11px; }
body .site-nav-brand { background: transparent; padding: 0; border-radius: 0; color: #fff; }
body .header-search-toggle { background: transparent; box-shadow: none; }
body .menu-toggle, body.next-home .menu-toggle { min-height: 40px; height: 40px; padding: 9px 14px; font-size: 11px; border-radius: 24px; background: #262629; color: #fff; border: 1px solid #ffffff30; animation: studio-menu-arrival 1.1s cubic-bezier(.16,1,.3,1) .35s both; animation-play-state: paused; }
/* Hold the menu above the viewport until the page DOM is ready. */
body.menu-arrival-ready .menu-toggle { animation-play-state: running; }
@keyframes studio-menu-arrival { from { transform: translateY(calc(-100% - 120px)); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
@media (prefers-reduced-motion: reduce) { body .menu-toggle, body.next-home .menu-toggle { animation: none; } }
body main a { text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 1px; }
body.next-home main a { text-decoration: underline; text-underline-offset: 5px; }
body.next-home main a.next-cta { text-decoration: none; }
body main :is(.next-cta,.button-primary,.button-accent),
body .enquiry-panel button[type="submit"], body .next-home .next-cta {
  background: var(--accent) !important; color: #fff !important; border-color: var(--accent); text-decoration: none;
}
body :is(.next-close,.next-capabilities,.next-about,.next-art,.restored-info,.next-work) {
  background: #080809 !important; color: #fff !important;
}
body :is(.next-label,.next-eyebrow,.art-note,.restored-info p) { color: #b7b7bd; }
body :is(.next-close,.restored-info,.next-capabilities) :is(h2,h3,summary,a) { color: #fff; }
body .next-close .close-link { text-decoration: none; }
body .next-close .close-link em { color: var(--accent); }
body .next-tabs button[aria-selected="true"] { background: var(--accent); color: #fff; }
body .next-text-link { color: #fff; border-bottom: 0; }
body .next-cta:hover { background: #d90066 !important; }
/* Shadowban's numbered, high-contrast editorial details. */
body :is(.next-label,.next-eyebrow,.pricing-kicker,.detail-heading .eyebrow) { color: var(--accent); letter-spacing: .12em; }
body :is(.next-art,.next-about,.next-work,.restored-info) .next-label { border-left: 2px solid var(--accent); padding-left: 10px; }
body.next-home :is(h2 em,.outline-line) { color: var(--accent); }
body.next-home :is(h1,h2), body.restored-chapters #main .film-copy h2 { font-weight: 900; }
body .next-art-grid img { border-color: var(--accent) !important; }
body .next-cta, body .button-primary { border-radius: 8px; font-weight: 700; }
body .next-text-link, body .detail-text-link { text-decoration-color: var(--accent); }
body :is(.work-view,.work-view figcaption,.free-art-actions,.site-footer) { background: #131315 !important; color: #fff; }

/* Full-bleed opening. Only the copy moves; the film stays unobstructed. */
body.restored-chapters #ch-01 > .studio-opening {
  position: relative; display: flex; justify-content: flex-end;
  padding: 100px 5vw 105px; background: #080809; isolation: isolate;
}
body .studio-opening::after {
  content: ''; display: block; position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(transparent 35%, #08080930 55%, #080809c9);
  pointer-events: none;
}
body .studio-opening .next-intro { max-width: 820px; z-index: 2; }
body.restored-chapters #ch-01 .next-intro h1 {
  font-size: clamp(40px, 6.5vw, 90px); letter-spacing: -.065em; animation: none;
}
body .studio-opening .next-cinema {
  position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%;
  min-height: 0; max-height: none; transform: none;
}
body .studio-opening .cinema-viewport { height: 100%; border-radius: 0; overflow: hidden; }
body .studio-opening .cinema-viewport video { transform: none; object-fit: cover; }
body .studio-opening .cinema-top { top: 82px; left: auto; right: 20px; z-index: 3; }
body .studio-opening .hero-footnote { display: none; }
body .studio-opening .intro-bottom { flex-direction: column; align-items: flex-start; gap: 16px; margin-bottom: 0; }
body .studio-opening .intro-bottom p { max-width: 34ch; }
body .studio-opening .next-eyebrow { color: #fff; }
body .chapters.has-copy-reveal .studio-opening .next-intro {
  opacity: 0; transform: translateX(-32px);
  transition: opacity .5s ease, transform .6s cubic-bezier(.16,1,.3,1);
}
body .chapters.has-copy-reveal .is-copy-visible .studio-opening .next-intro {
  opacity: 1; transform: translateX(0);
}
body .menu-toggle-bars { display: none; }
body .site-nav .menu-toggle { min-width: 64px; gap: 0; padding: 9px 13px; }

/* Hide browser chrome and remove nested vertical scroll traps.
   The chapter viewport remains the single native swipe surface. */
html:has(body.restored-chapters) { height: 100%; overflow: hidden; }
body.restored-chapters { position: fixed; inset: 0; width: 100%; overflow: hidden; }
body.restored-chapters .chapters { scrollbar-width: none; scroll-padding: 0; }
body.restored-chapters .chapters::-webkit-scrollbar { display: none; width: 0; height: 0; }
body.restored-chapters .restored-designed > div { overflow: visible; }
body.restored-chapters:not([data-navigation="horizontal"]) .restored-designed:not(#ch-01) { height: auto; min-height: 100dvh; }
body.restored-chapters:not([data-navigation="horizontal"]) .restored-designed:not(#ch-01) > div { height: auto; min-height: 100dvh; }
body.restored-chapters .chapter-body { overflow: visible; max-height: none; }
@media (prefers-reduced-motion: reduce) {
  body .chapters.has-copy-reveal .studio-opening .next-intro { opacity: 1; transform: none; transition: none; }
}

/* No child scroll trap: native parent snapping handles vertical gestures. */
body.restored-chapters .restored-designed > div { overscroll-behavior-y: auto; }
body.restored-chapters #main #ch-05 .film-copy {
  inset: 0 0 auto; padding: 108px 5vw 28px;
  background: linear-gradient(#080809d9, #08080970 80%, transparent);
}
body.restored-chapters #main #ch-05 .film-copy h2 { max-width: 17ch; }
body.restored-chapters .optional-film .chapter-body { display: none; }
body.restored-chapters .optional-film .chapter-film { touch-action: pan-y pinch-zoom; }
body.restored-chapters[data-navigation="horizontal"] .optional-film .chapter-film { touch-action: pan-x pinch-zoom; }
body.restored-chapters .optional-film .watch-scrub-controls { pointer-events: none; inset: 110px 5vw 90px; max-width: none; }
body.restored-chapters .watch-scrub-controls :is(button,a) { pointer-events: auto; }
body.restored-chapters .watch-scrub-controls .scrub-label { display: block; max-width: 32ch; margin-top: 16px; color: #ddd; font-size: 13px; }
body.restored-chapters .watch-play-toggle { position: absolute; bottom: 34px; left: 0; padding: 10px 18px; border: 1px solid #fff6; border-radius: 30px; color: #fff; background: #171719; }
body.restored-chapters .watch-scrub-controls .scrub-contact { bottom: 0; }
body.restored-chapters .watch-scrub-controls .scrub-hint { bottom: 94px; }
body.restored-chapters #ch-07 .watch-scrub-controls .scrub-hint { position: absolute; bottom: 100px; margin: 0; }
body.restored-chapters #ch-07 .watch-scrub-controls .scrub-label { position: static; width: auto; height: auto; clip-path: none; overflow: visible; }

/* Visible travel indicators; these track sections, never film playback. */
body.restored-chapters .progress-rail { display: block !important; position: fixed; z-index: 120; top: 0; left: 0; right: 0; height: 4px; background: #ffffff15; pointer-events: none; }
body.restored-chapters .progress-rail-side { display: block !important; position: fixed; z-index: 120; top: 0; right: 0; bottom: 0; width: 3px; background: #ffffff15; pointer-events: none; }
body.restored-chapters .progress-rail i, body.restored-chapters .progress-rail-side i { display: block; width: 100%; height: 100%; transform-origin: top left; background: linear-gradient(90deg,#ff1684,#a767ff,#40d9ff,#ffdc5e); }
body.restored-chapters .progress-rail-side i { background: linear-gradient(#ff1684,#a767ff,#40d9ff,#ffdc5e); }

/* Clear, spaced FAQ with restrained pink numbering. */
.restored-faq { counter-reset: question; }
.restored-faq details { background: #171719; border: 1px solid #ffffff15; border-radius: 12px; padding: 17px 18px; margin: 10px 0; }
.restored-faq summary { display: flex; gap: 12px; list-style: none; align-items: baseline; color: #fff; }
.restored-faq summary::-webkit-details-marker { display: none; }
.restored-faq summary::before { counter-increment: question; content: '0' counter(question); color: var(--accent); font: 12px monospace; }
.restored-faq p { margin-bottom: 0; color: #d1d1d5; }
.pricing-card > summary { list-style: none; cursor: pointer; }
.pricing-card > summary::-webkit-details-marker { display: none; }
.pricing-body .button { display: inline-flex; }
@media (min-width: 701px) { .pricing-card > summary { pointer-events: none; } }
@media (max-width: 700px) {
  body.pricing-page .detail-heading { padding-bottom: 12px; margin-bottom: 16px; }
  body.pricing-page .detail-heading h1 { font-size: 32px; }
  body.pricing-page .detail-heading .detail-lead { font-size: 14px; margin-bottom: 0; }
  body.pricing-page .pricing-cards { display: grid; grid-template-columns: 1fr; gap: 10px; margin: 12px 0; }
  body.pricing-page .pricing-card { min-height: 0; padding: 14px 16px; border-radius: 12px; background: #171719; }
  body.pricing-page .pricing-card summary { position: relative; padding-right: 24px; }
  body.pricing-page .pricing-card summary::after { content: '+'; position: absolute; right: 0; top: 20px; color: var(--accent); font-size: 24px; }
  body.pricing-page .pricing-card[open] summary::after { content: '−'; }
  body.pricing-page .pricing-card .pricing-kicker { display: none; }
  body.pricing-page .pricing-card h2 { font-size: 21px; line-height: 1.15; white-space: normal; }
  body.pricing-page .pricing-price { font-size: 17px; margin: 8px 0 0; display: flex; gap: 6px; align-items: baseline; min-height: 0; }
  body.pricing-page .pricing-price small { font-size: 11px; }
  body.pricing-page .pricing-body { padding-top: 14px; }
  body.pricing-page .pricing-body ul { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 16px; }
  body.pricing-page .pricing-body li { font-size: 13px; margin: 0; }
  body.pricing-page .detail-closing { margin-top: 24px; padding: 18px; }
  body.pricing-page .detail-closing h2 { font-size: 24px; }
  body.pricing-page .detail-closing p { font-size: 14px; }
  body.restored-chapters #ch-01 > .studio-opening { padding: 88px 20px 100px; gap: 0; }
  body.restored-chapters #ch-01 .next-intro h1 { font-size: clamp(32px, 9.4vw, 54px); }
  body .studio-opening .intro-bottom { align-items: flex-start; flex-direction: column; }
  body .studio-opening .next-cinema { max-height: none; }
  body.restored-chapters #main #ch-05 .film-copy { padding: 96px 20px 26px; }
  body.restored-chapters .next-projects { display: flex; flex-flow: row nowrap; align-items: flex-start; gap: 16px; overflow-x: auto; }
  body.restored-chapters .next-project { flex: 0 0 65%; transform: none; margin-top: 0; }
  body.restored-chapters .next-project:nth-child(even) { padding-top: 0; }
  body.restored-chapters .project-art { height: clamp(175px, 29dvh, 260px); }
  body.restored-chapters .project-caption { min-height: 54px; align-items: flex-start; }
  body.restored-chapters .project-caption h3 { font-size: 17px; line-height: 1.2; letter-spacing: -.025em; }
  body .restored-faq details { padding: 14px; }
}

/* Capabilities over the Bugatti film; keep the lower frame clear. */
body.restored-chapters #ch-11 > .next-capabilities {
  position: relative; z-index: 1;
  background: linear-gradient(#080809d9, #08080999 55%, #08080915) !important;
}
body.restored-chapters #ch-11 .next-panels {
  background: transparent; border: 0; box-shadow: none;
}
body.restored-chapters #ch-11 :is(h2,h3,p,small) { color: #fff; }
body.restored-chapters #ch-11 .next-tabs button { background: #080809a6; color: #fff; }
body.restored-chapters #ch-11 .next-tabs button[aria-selected="true"] {
  background: var(--accent); color: #fff;
}
body.restored-chapters #ch-11 .next-cta { color: #fff !important; }

/* Reuse the gallery's moving rail in a single slanted homepage strip. */
body.restored-chapters #ch-08 .home-gallery-reel {
  margin: 22px -5vw 0; padding: 0 0 30px; overflow: visible;
  background: transparent; border: 0;
}
.home-gallery-reel::before, .home-gallery-reel::after { display: none; }
.home-reel-tools { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 5vw; margin-bottom: 30px; }
.home-reel-tools > span { color: #b7b7bd; font-size: 11px; }
.home-reel-angle { transform: rotate(-5deg); }
body .home-gallery-reel .gallery-showreel-viewport { padding: 12px 0; }
body .home-gallery-reel .gallery-rail-card { flex: 0 0 auto; width: clamp(180px, 23vw, 320px); }
body .home-gallery-reel .gallery-rail-media { aspect-ratio: 4 / 5; max-height: 44dvh; border-radius: 12px; border: 1px solid #ffffff30; }
body .home-gallery-reel .gallery-rail-media :is(img,video) { display: block; width: 100%; height: 100%; object-fit: cover; }
body .home-gallery-reel .gallery-rail-copy { padding-inline: 4px; }
body .home-gallery-reel .gallery-rail-copy strong { font-size: 13px; color: #fff; }
@media (max-width: 700px) {
  body.restored-chapters #ch-08 .home-gallery-reel { margin-inline: -20px; margin-top: 18px; }
  .home-reel-tools { padding-inline: 20px; }
  body .home-gallery-reel .gallery-rail-card { width: 48vw; max-width: 220px; }
  body .home-gallery-reel .gallery-rail-media { max-height: 29dvh; }
  body .home-gallery-reel .gallery-showreel-track { animation-duration: 90s; }
}
@media (min-width: 701px) {
  body.restored-chapters #ch-08 .next-heading-row h2 { font-size: clamp(42px, 5vw, 64px); }
  body .home-gallery-reel .gallery-rail-media { height: 27dvh; max-height: 285px; aspect-ratio: auto; }
}
body .home-gallery-reel .gallery-showreel-track { animation-duration: 90s; }

/* Contact and shared form controls use the same studio palette in every theme. */
:root body.enquiry-view { background: #080809; color: #fff; }
:root body .enquiry-panel { background: #171719; border-color: #ffffff30; }
:root body .enquiry-panel :is(input, textarea, select) { background: #080809; color: #fff; border-color: #ffffff50; }
:root body .enquiry-panel label { color: #fff; }
:root body :is(.enquiry-panel .button, .whatsapp-button) { background: var(--accent); color: #fff !important; border-color: var(--accent); }

/* Experience: compact editorial hierarchy and four legible brand marks. */
body.restored-chapters #ch-03 > .experience-panel {
  display: flex; flex-direction: column; justify-content: center; gap: 24px;
  padding: 100px 6vw 88px; background: #080809; color: #fff;
}
.experience-panel .next-label { margin: 0; }
body.restored-chapters #ch-03 h2 { font: 900 clamp(36px, 5vw, 68px)/1 Arial,sans-serif; letter-spacing: -.055em; margin: 0; }
.experience-heading h2 em { color: var(--accent); font-style: normal; }
.experience-heading > p { font-size: 16px; line-height: 1.45; max-width: 42ch; margin: 16px 0 0; color: #d4d4d8; }
.experience-stat { display: flex; align-items: center; gap: 22px; padding-block: 14px; border-block: 1px solid #ffffff24; }
.experience-stat strong { color: #fff; font: 900 clamp(64px,8vw,104px)/.85 Arial,sans-serif; letter-spacing: -.075em; }
.experience-stat strong span { color: var(--accent); }
.experience-stat p { font-size: 13px; line-height: 1.5; color: #b7b7bd; }
.experience-brands-label { font-size: 12px; color: #b7b7bd; margin: 0 0 12px; }
.experience-brand-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; }
.experience-brand { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 8px; min-height: 112px; padding: 14px; border: 1px solid #ffffff20; background: #171719; border-radius: 12px; }
.experience-brand img { width: 112px; max-width: 100%; height: 44px; object-fit: contain; filter: grayscale(1) brightness(0) invert(1); opacity: .85; }
.experience-brand span { color: #b7b7bd; font-size: 11px; }
.experience-link { align-self: flex-start; margin: 0; padding-block: 8px; }
@media (max-width: 700px) {
  body.restored-chapters #ch-03 > .experience-panel { padding: 88px 20px 76px; gap: 20px; justify-content: flex-start; }
  body.restored-chapters #ch-03 h2 { font-size: clamp(30px, 8.3vw, 42px); }
  .experience-heading > p { font-size: 14px; margin-top: 12px; }
  .experience-stat { gap: 20px; padding-block: 15px; }
  .experience-stat strong { font-size: 70px; }
  .experience-stat p { font-size: 12px; }
  .experience-brand-grid { grid-template-columns: repeat(2,1fr); gap: 8px; }
  .experience-brand { min-height: 87px; padding: 10px; }
  .experience-brand img { height: 38px; width: 105px; }
}
body.restored-chapters #ch-03 .experience-panel .next-label { color: var(--accent); font-size: 9px; letter-spacing: .1em; }
body.restored-chapters #ch-03 .experience-heading h2 em { color: var(--accent); }

/* Compact gallery entry and media-ready motion. */
body.restored-chapters #ch-08 .next-heading-row { display: flex; flex-direction: column; align-items: stretch; gap: 18px; margin-bottom: 0; }
body.restored-chapters #ch-08 .next-heading-row .next-cta { display: flex; justify-content: center; width: 100%; box-sizing: border-box; min-height: 40px; padding: 9px 14px; font-size: 13px; border-radius: 6px; }
body.restored-chapters #ch-08 .home-gallery-reel { margin-top: 34px; }
body .home-gallery-reel.is-loading .gallery-showreel-track { animation-play-state: paused; visibility: hidden; }

/* Latest project: a clear video stage with all copy outside the footage. */
body.restored-chapters .latest-project-panel {
  display: flex; flex-direction: column; justify-content: center; gap: 22px;
  padding: 90px max(20px, 6vw) 76px; background: #080809; color: #fff;
}
.latest-project-heading { width: 100%; max-width: 1000px; margin-inline: auto; }
.latest-project-heading .next-label { margin: 0 0 14px; color: var(--accent); }
body .latest-project-heading h2 { margin: 0; font-size: clamp(34px, 4.4vw, 64px); line-height: 1; letter-spacing: -.045em; }
.latest-project-heading h2 em { color: var(--accent); font-style: normal; }
.latest-project-heading > p:last-child { margin: 14px 0 0; color: #d4d4d8; font-size: 15px; line-height: 1.4; }
.latest-project-preview { position: relative; width: 100%; max-width: 1000px; aspect-ratio: 910 / 512; max-height: 45dvh; margin-inline: auto; overflow: hidden; border: 1px solid #ffffff30; border-radius: 12px; background: #171719; }
body .latest-project-preview video.chapter-film { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; opacity: 1; filter: none; }
.latest-project-panel > a { align-self: center; margin: 0; color: #fff; text-decoration: underline; text-underline-offset: 7px; }
@media (max-width: 700px) {
  body.restored-chapters .latest-project-panel { padding: 90px 20px 76px; gap: 24px; justify-content: center; }
  body .latest-project-heading h2 { font-size: clamp(32px, 9vw, 44px); }
  .latest-project-heading .next-label { font-size: 9px; letter-spacing: .08em; }
  .latest-project-heading > p:last-child { font-size: 14px; }
  .latest-project-preview { margin-block: 8px 0; flex-shrink: 0; }
  .latest-project-panel > a { align-self: flex-start; }
}

/* Keep the full experience panel clear of the mobile navigation. */
@media (max-width: 700px) {
  body.restored-chapters #ch-03 > .experience-panel {
    padding: 82px 20px 90px;
    gap: 13px;
  }
  body.restored-chapters #ch-03 h2 { font-size: clamp(27px, 7.4vw, 34px); }
  .experience-heading > p { margin-top: 9px; font-size: 13px; line-height: 1.35; }
  .experience-stat { gap: 16px; padding-block: 10px; }
  .experience-stat strong { font-size: 54px; }
  .experience-stat p { margin: 0; font-size: 11px; line-height: 1.4; }
  .experience-brands-label { margin-bottom: 8px; font-size: 11px; }
  .experience-brand { min-height: 65px; padding: 8px; gap: 4px; }
  .experience-brand img { width: 88px; height: 28px; }
  .experience-brand span { font-size: 10px; }
  .experience-link { font-size: 13px; padding-block: 6px; }
}

/* A compact hanging tab, flush with the viewport beneath the progress rail. */
body .site-nav .menu-toggle,
body.next-home .menu-toggle {
  position: fixed;
  top: 0;
  right: 20px;
  min-width: 76px;
  height: 48px;
  padding: 12px 16px 10px;
  border-top: 0;
  border-radius: 0 0 14px 14px;
  background: #080809;
  box-shadow: 0 6px 18px #0003;
}
@media (max-width: 700px) {
  body .site-nav .menu-toggle,
  body.next-home .menu-toggle { right: 16px; min-width: 70px; height: 44px; padding-inline: 13px; }
}

/* Visible text links and breadcrumbs across the studio pages. */
body a:is(.next-text-link, .detail-text-link, .experience-link, .scrub-contact),
body .latest-project-panel > a,
body .detail-reading a:not(.button),
body .breadcrumbs a {
  color: #ff1684 !important;
  text-decoration: underline;
  text-underline-offset: .25em;
  text-decoration-thickness: 1px;
}
body .breadcrumbs { color: #ff1684; }
body .breadcrumbs :is(li, span) { color: inherit; }
body a:is(.next-text-link, .detail-text-link, .experience-link, .scrub-contact):hover,
body .breadcrumbs a:hover { color: #ff79bc !important; }
body .site-nav .menu-toggle,
body.next-home .menu-toggle { box-shadow: 0 9px 20px #0008, 0 3px 7px #0005; }

/* One gentle directional pulse, without rapid flashing. */
body .chapter-arrow.is-direction-cue {
  color: #ff1684;
  animation: direction-cue 1.8s ease-in-out infinite;
}
@keyframes direction-cue {
  0%, 100% { color: #ff1684; opacity: 1; text-shadow: 0 0 12px #ff168466; }
  50% { color: #ff1684; opacity: .4; text-shadow: 0 0 0 transparent; }
}
@media (prefers-reduced-motion: reduce) {
  body .chapter-arrow.is-direction-cue { animation: none; color: #ff1684; }
}

/* Compact the capabilities chapter so its action clears mobile browser controls. */
@media (max-width: 700px) {
  body.restored-chapters #ch-11 > .next-capabilities {
    padding: 82px 20px 88px;
    justify-content: center;
  }
  body.restored-chapters #ch-11 .next-label { margin-bottom: 10px; }
  body.restored-chapters #ch-11 .next-capabilities h2 {
    margin-bottom: 18px;
    font-size: clamp(29px, 8.2vw, 38px);
    line-height: .98;
  }
  body.restored-chapters #ch-11 .next-tabs { padding-bottom: 8px; }
  body.restored-chapters #ch-11 .next-tabs button {
    min-height: 38px;
    padding: 8px 12px;
    font-size: 11px;
  }
  body.restored-chapters #ch-11 .next-panels { margin-top: 10px; padding: 13px; }
  body.restored-chapters #ch-11 .capability-symbol { display: none; }
  body.restored-chapters #ch-11 .next-panels h3 { margin: 0 0 7px; font-size: 24px; line-height: 1; }
  body.restored-chapters #ch-11 .next-panels p { margin: 0 0 10px; font-size: 12px; line-height: 1.45; }
  body.restored-chapters #ch-11 .next-panels .next-cta {
    min-height: 38px;
    margin-top: 10px;
    padding: 9px 14px;
    font-size: 12px;
  }
}

/* The moving gallery can also be dragged directly with a finger or pointer. */
body .home-gallery-reel .gallery-showreel-viewport {
  cursor: grab;
  touch-action: pan-y pinch-zoom;
  user-select: none;
}
body .home-gallery-reel.is-dragging .gallery-showreel-viewport { cursor: grabbing; }
body .home-gallery-reel.is-dragging .gallery-showreel-track { animation-play-state: paused; }
