/* Fifth Canvas Studio Complete v1.5.2 — native mobile navigation. */
/* The child header intentionally does NOT render legacy .fc-nav, .fc-nav__panel
 * or data-fc-nav. This prevents the parent fullscreen overlay controller
 * from mounting, irrespective of script caching or duplicate enqueues. */
.fc-studio-header { z-index: 100; }
.fc-studio-desktop-nav { display: block; }
.fc-studio-mobile-nav { display: none; }
.fc-studio-team-list { padding-bottom: clamp(4rem, 8vw, 7rem); }
.fc-studio-team-intro { margin-bottom: 2rem; }
.fc-studio-team-page .fc-people { list-style:none; padding-left:0; }
@media (max-width: 51.99em) {
  .fc-studio-header { background: #f5f2e5 !important; color: #141412 !important; }
  .fc-studio-header .fc-wordmark { color: #141412 !important; }
  .fc-studio-desktop-nav { display: none !important; }
  .fc-studio-mobile-nav { display: block; position: static; color: #141412; }
  .fc-studio-mobile-nav > summary {
    display: inline-flex; align-items: center; gap: .75rem;
    min-height: 2.75rem; padding: .5rem 0; cursor: pointer;
    font-size: .76rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: .19em; list-style: none; color: #141412;
    -webkit-tap-highlight-color: transparent;
  }
  .fc-studio-mobile-nav > summary::-webkit-details-marker { display: none; }
  .fc-studio-mobile-nav > summary::marker { content: ''; }
  .fc-studio-mobile-nav > summary:focus-visible { outline:2px solid #d83516; outline-offset:4px; }
  .fc-studio-mobile-nav__icon { position:relative; width: 1.4rem; height:.8rem; flex:none; }
  .fc-studio-mobile-nav__icon::before, .fc-studio-mobile-nav__icon::after {
    content:''; position:absolute; left:0; width:100%; height:2px; background:currentColor;
    transition: transform .15s ease, top .15s ease;
  }
  .fc-studio-mobile-nav__icon::before { top:1px; }
  .fc-studio-mobile-nav__icon::after { bottom:1px; }
  .fc-studio-mobile-nav[open] .fc-studio-mobile-nav__icon::before { top:6px; transform:rotate(45deg); }
  .fc-studio-mobile-nav[open] .fc-studio-mobile-nav__icon::after { bottom:4px; transform:rotate(-45deg); }
  .fc-studio-mobile-panel {
    position:absolute; top:100%; left:0; right:0;
    z-index:1000; padding:1rem var(--gutter) 1.25rem;
    max-height:calc(100dvh - 5.8rem); overflow-y:auto;
    overscroll-behavior:contain;
    background:#f5f2e5; color:#141412;
    border-top:1px solid #ded8c7; border-bottom:3px solid #e24421;
    box-shadow:0 18px 26px rgba(0,0,0,.16);
  }
  .fc-studio-mobile-list { display:flex; flex-direction:column; list-style:none;
    padding:0; margin:0; gap:0; }
  .fc-studio-mobile-list > li { list-style:none; margin:0; padding:0; border-bottom:1px solid #dcd7c7; }
  .fc-studio-mobile-list > li:last-child { border-bottom:0; }
  .fc-studio-mobile-list a { display:block; color:#141412 !important;
    text-decoration:none; padding:.9rem .5rem;
    font-family:var(--font-display); font-weight:600;
    font-size:clamp(1.45rem, 5.5vw, 2.05rem); line-height:1.15; }
  .fc-studio-mobile-list a:focus-visible, .fc-studio-mobile-list a:hover { color:#d83516 !important; }
}
/* v1.6.2: the large Fifth Canvas emblem sits BEHIND the hero typography
 * on desktop as well as mobile. The photo remains to the right on desktop
 * and appears below the copy on narrow screens. No duplicate mark on photo. */
.fc-hero__content { position: relative; isolation: isolate; }
.fc-studio-hero-watermark {
  position: absolute;
  display: block;
  z-index: -1;
  pointer-events: none;
  width: clamp(24rem, 36vw, 37rem);
  top: 5%;
  left: 20%;
  color: #e84b29;
  opacity: .31;
  transform: rotate(-9deg);
}
.fc-studio-hero-watermark__symbol { display:block; width:100%; height:auto; }
@media (max-width: 63.99em) {
  .fc-studio-hero-watermark {
    width: clamp(21rem, 88vw, 34rem);
    top: -.4rem;
    left: auto;
    right: -2.5rem;
    opacity: .32;
  }
  .fc-hero__media { aspect-ratio: 16 / 10; }
}
@media (max-width: 24em) {
  .fc-studio-hero-watermark { width: 96vw; right: -2rem; top: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .fc-studio-mobile-nav__icon::before, .fc-studio-mobile-nav__icon::after { transition:none; }
}
/* Non-disruptive contact form integrated into the original studio aesthetic. */
.fc-studio-form{display:grid;gap:1.1rem;margin-block:2rem 3rem;max-width:44rem}
.fc-studio-form label{display:block;font-weight:650;font-size:.875rem;margin-bottom:.38rem}
.fc-studio-form input:not([type=checkbox]),.fc-studio-form textarea,.fc-studio-form select{width:100%;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:3px;padding:.9rem 1rem;font:inherit}
.fc-studio-form textarea{min-height:10rem;resize:vertical}
.fc-studio-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
.fc-studio-form__consent{display:flex;gap:.8rem;align-items:flex-start;font-size:.85rem}
.fc-studio-form__consent input{margin-top:.24rem}
.fc-studio-form__notice{border:1px solid var(--color-border);padding:1rem 1.2rem;margin-top:1.5rem}
.fc-studio-form__honey{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.fc-studio-form button{justify-self:start;cursor:pointer}
@media(max-width:37em){.fc-studio-form__row{grid-template-columns:1fr}}
.fc-demo-status{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);padding:.5rem 0}

/* v1.6.3 — Final responsive studio footer.
 * Maintain the dark endpoint and desktop columns; on phones, make Explore a
 * two-column directory and keep enquiries compact. Scoped to the actual
 * footer structure, rather than changing the site-wide grid primitives. */
@media (max-width: 47.99em) {
  .fc-footer {
    min-height: 0;
    padding-block: clamp(2.25rem, 6vw, 3rem) 1.25rem;
  }
  .fc-footer__inner {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(1rem, 4vw, 2rem);
    row-gap: 1.45rem;
    align-items: start;
  }
  .fc-footer__brand {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
  }
  .fc-footer__brand-note {
    max-width: 25ch;
    margin: 0;
    font-size: .75rem;
    line-height: 1.55;
  }
  .fc-footer__statement {
    grid-column: 1 / -1;
    padding-bottom: 1.3rem;
    border-bottom: 1px solid rgba(236, 232, 220, .18);
  }
  .fc-footer__tagline {
    max-width: 34ch;
    margin: 0;
    font-size: clamp(1.06rem, 3.2vw, 1.2rem);
    line-height: 1.42;
  }
  .fc-footer__tagline::after {
    margin-top: .7rem;
  }
  .fc-footer__nav {
    grid-column: 1 / -1;
  }
  .fc-footer__heading {
    margin-bottom: .75rem;
  }
  .fc-footer__nav .fc-footer__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(.75rem, 4vw, 1.5rem);
    row-gap: .15rem;
    font-family: var(--font-body);
    font-size: .875rem;
    line-height: 1.3;
  }
  .fc-footer__nav .fc-footer__list li {
    min-width: 0;
  }
  .fc-footer__nav .fc-footer__list a {
    display: flex;
    min-height: 2.55rem;
    align-items: center;
    padding-block: .4rem;
    line-height: 1.3;
  }
  .fc-footer__contact {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
    gap: .75rem 1rem;
    align-items: center;
    padding-top: 1.15rem;
    border-top: 1px solid rgba(236, 232, 220, .18);
  }
  .fc-footer__contact .fc-footer__heading,
  .fc-footer__contact .fc-footer__contact-link {
    margin: 0;
  }
  .fc-footer__contact .fc-footer__contact-link {
    justify-self: end;
    text-align: right;
  }
  .fc-footer__contact-line,
  .fc-footer__social {
    grid-column: 1 / -1;
  }
  .fc-footer__base {
    margin-top: 1.75rem;
    padding-top: 1rem;
    align-items: flex-start;
    justify-content: flex-start;
    gap: .65rem;
  }
  .fc-footer__copyright {
    margin: 0;
  }
  .fc-footer__legal {
    display: flex;
    flex-wrap: wrap;
    column-gap: 1rem;
    row-gap: .5rem;
  }
  .fc-footer__legal li + li::before {
    display: none;
  }
}
@media (max-width: 25.99em) {
  .fc-footer__brand {
    grid-template-columns: 1fr;
    gap: .75rem;
  }
  .fc-footer__brand-note {
    max-width: 32ch;
  }
}

/* =========================================================
   v1.7.0 — Digital Comics: Fifth Canvas IP catalogue.
   External storefront/reader, no local commerce or page reader.
   ========================================================= */
.fc-comic--catalogue .fc-comic__grid { align-items: start; }
.fc-comic--catalogue .fc-comic__info { min-width: 0; }
.fc-comic--catalogue .fc-comic__title {
  max-width: 100%;
  font-size: clamp(2.25rem, 5.3vw, 4.4rem);
  line-height: 1.06;
  letter-spacing: -.035em;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: normal;
}
.fc-comic-catalogue__status {
  display: inline-block; margin: 0 0 1.25rem;
  padding: .45rem .75rem; background: #ede8d8;
  border: 1px solid #dbd1bc; color: #414039;
  font: 650 .68rem/1.25 var(--font-body, sans-serif);
  letter-spacing: .1em; text-transform: uppercase;
}
.fc-comic-catalogue__demo {
  padding: .85rem 1rem; border-left: 3px solid #c73f20;
  background: #f1e9da; color: #4b3027;
  font: 600 .8rem/1.6 var(--font-body, sans-serif);
}
.fc-comic-catalogue__stats { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .65rem; margin: 1.25rem 0 1.55rem; }
.fc-comic-catalogue__stats > div { display: flex; flex-direction: column; justify-content: center; gap: .3rem; padding: .95rem; border: 1px solid #dbd5c6; }
.fc-comic-catalogue__stats strong { font: 700 clamp(1.3rem,2.4vw,1.8rem)/1.1 var(--font-body, sans-serif); letter-spacing: -.03em; }
.fc-comic-catalogue__stats span { font: 550 .67rem/1.45 var(--font-body, sans-serif); color: #625f57; }
.fc-comic-catalogue__credits { margin: 1.6rem 0; padding-block: 1rem; border-top: 1px solid #dcd6c7; border-bottom: 1px solid #dcd6c7; }
.fc-comic-catalogue__credits > div { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.4fr); gap: .6rem; padding: .35rem 0; }
.fc-comic-catalogue__credits dt { font: 650 .7rem/1.5 var(--font-body, sans-serif); color: #696357; }
.fc-comic-catalogue__credits dd { margin: 0; font: 500 .81rem/1.5 var(--font-body, sans-serif); }
.fc-comic-catalogue__top-actions { display: flex; flex-wrap: wrap; gap: .65rem; }
.fc-comic-catalogue__top-actions .fc-button { max-width: 100%; }
.fc-comic-catalogue__section-title { margin: .35rem 0 .6rem; font: 650 clamp(1.95rem,3.3vw,3rem)/1.1 var(--font-display, serif); letter-spacing: -.03em; text-wrap: normal; }
.fc-comic-catalogue__section-intro { max-width: 60ch; margin: 0 0 2rem; color: #625f57; font-size: .95rem; line-height: 1.6; }
.fc-comic-catalogue__season-section { border-top: 1px solid #d8d1c1; }
.fc-comic-catalogue__season-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.15rem; }
.fc-comic-catalogue__season { min-width: 0; border: 1px solid #d8d1c1; background: #f8f5ea; padding: clamp(1rem,2.3vw,1.7rem); }
.fc-comic-catalogue__season-head { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: .5rem; border-bottom: 1px solid #ddd5c5; padding-bottom: .9rem; }
.fc-comic-catalogue__season-head h3,.fc-comic-catalogue__season--unassigned h3 { margin: 0; font: 650 clamp(1.25rem,2.3vw,1.75rem)/1.15 var(--font-display,serif); text-wrap: normal; }
.fc-comic-catalogue__season-head > span { font: 650 .72rem/1.5 var(--font-body,sans-serif); color: #615c52; }
.fc-comic-catalogue__season-prices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; margin: 1.1rem 0; }
.fc-comic-catalogue__season-prices div { min-width: 0; }
.fc-comic-catalogue__season-prices dt { margin: 0 0 .4rem; font: 600 .7rem/1.3 var(--font-body,sans-serif); color: #615c52; }
.fc-comic-catalogue__season-prices dd { margin: 0; font: 750 clamp(1.15rem,2.2vw,1.5rem)/1.2 var(--font-body,sans-serif); }
.fc-comic-catalogue__season-actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1rem; }
.fc-comic-catalogue__season-actions .fc-button { min-width: 0; white-space: normal; text-align: center; }
.fc-comic-catalogue__episode-list { border-top: 1px solid #d9d2c1; margin-top: 1.2rem; padding-top: 1.1rem; }
.fc-comic-catalogue__episode-list summary { cursor: pointer; list-style-position: inside; font: 700 .79rem/1.5 var(--font-body,sans-serif); }
.fc-comic-catalogue__episode-list summary span { margin-left: .5rem; }
.fc-comic-catalogue__episode-list ol,.fc-comic-catalogue__standalone-episodes { list-style: none; padding: 0; margin: 1rem 0 0; }
.fc-comic-catalogue__episode-list li,.fc-comic-catalogue__standalone-episodes li { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.5rem 1rem; padding: .75rem 0; border-bottom:1px solid #e0d8c9; }
.fc-comic-catalogue__episode-list li strong,.fc-comic-catalogue__standalone-episodes li span { display:block; font: 600 .79rem/1.4 var(--font-body,sans-serif); }
.fc-comic-catalogue__episode-list li span { display:block; margin-top:.25rem; font-size: .75rem; color:#665e53; }
.fc-comic-catalogue__episode-link { color:#a42f17; text-underline-offset: .18em; font: 650 .75rem/1.4 var(--font-body,sans-serif); }
.fc-comic-catalogue__preview-grid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; }
.fc-comic-catalogue__preview-grid figure { margin:0; min-width:0; }
.fc-comic-catalogue__preview-grid img { display:block; height:auto; width:100%; }
.fc-comic-catalogue__preview-note { margin-top:1rem; color:#696357; font-size:.78rem; }
.fc-cover__catalogue { display:flex; flex-direction:column; gap:.25rem; padding:0 .6rem .75rem; font: 600 .67rem/1.4 var(--font-body,sans-serif); color:#ebe4d6; }
.fc-cover__catalogue span:last-child { color:#f2bd9c; }
@media (max-width: 47.99em) {
  .fc-comic-catalogue__season-grid { grid-template-columns: 1fr; }
  .fc-comic-catalogue__preview-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fc-comic--catalogue .fc-comic__title { font-size: clamp(2.15rem,8vw,3.25rem); }
}
@media (max-width: 25em) {
  .fc-comic-catalogue__stats { gap: .4rem; }
  .fc-comic-catalogue__stats > div { padding:.7rem; }
  .fc-comic-catalogue__credits > div { grid-template-columns: 1fr; gap: .15rem; }
  .fc-comic-catalogue__preview-grid { grid-template-columns: 1fr; }
}
