@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root {
  --ink: #120d1c;
  --ink-soft: #292033;
  --paper: #f4f1ed;
  --paper-bright: #fffdfa;
  --mist: #e5e0e9;
  --line: rgba(18, 13, 28, .16);
  --purple: #6533c7;
  --purple-bright: #9a6df0;
  --lavender: #d9ccff;
  --gold: #d9bc68;
  --serif: 'Playfair Display', Georgia, serif;
  --sans: 'DM Sans', Arial, sans-serif;
  --mono: 'DM Mono', monospace;
  --shadow: 7px 7px 0 var(--ink);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); font-size: 16px; line-height: 1.5; }
a { color: inherit; }
button, input, select { font: inherit; }
button { cursor: pointer; }
img { display: block; max-width: 100%; }
code { font-family: var(--mono); font-size: .87em; }

.skip-link { position: fixed; z-index: 100; top: -100px; left: 20px; padding: 10px 14px; background: var(--paper-bright); border: 2px solid var(--ink); }
.skip-link:focus { top: 20px; }
.section-wrap { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 14px; color: #61566c; font-family: var(--mono); font-size: 11px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.eyebrow-mark { display: inline-block; width: 8px; height: 8px; background: var(--purple); transform: rotate(45deg); }
.eyebrow--light { color: var(--lavender); }
.section-index { display: flex; align-items: center; gap: 11px; margin-bottom: 26px; color: #746b7d; font-family: var(--mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.section-index--light { color: rgba(255,255,255,.62); }
.index-rule { display: block; width: 44px; height: 1px; background: currentColor; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.04; }
h1, h2 { font-family: var(--serif); font-weight: 500; letter-spacing: -.045em; }
h1 em, h2 em, h3 em { color: var(--purple); font-style: italic; font-weight: 500; }

/* Header and navigation */
.site-header { position: sticky; z-index: 30; top: 0; display: flex; align-items: center; min-height: 77px; gap: 24px; padding: 12px max(24px, calc((100% - 1240px) / 2)); background: rgba(244, 241, 237, .94); border-bottom: 1px solid var(--line); backdrop-filter: blur(15px); }
.brand { display: inline-flex; align-items: center; gap: 9px; flex: 0 0 auto; text-decoration: none; }
.brand-mark { display: grid; width: 38px; height: 38px; place-items: center; overflow: hidden; border: 1px solid rgba(101, 51, 199, .72); background: var(--ink); box-shadow: 2px 2px 0 var(--purple); }
.brand-mark img { width: 100%; height: 100%; object-fit: cover; }
.brand-name { display: flex; flex-direction: column; font-family: var(--serif); font-size: 14px; line-height: .85; letter-spacing: -.03em; }
.brand-name b { font-weight: 600; }
.brand-name i { color: var(--purple); font-style: italic; }
.desktop-nav { display: flex; align-items: center; gap: 19px; margin-left: auto; font-size: 13px; font-weight: 600; }
.desktop-nav > a, .desktop-nav summary { text-decoration: none; white-space: nowrap; }
.desktop-nav > a:hover, .desktop-nav summary:hover { color: var(--purple); }
.nav-dropdown { position: relative; }
.nav-dropdown summary { list-style: none; cursor: pointer; }
.nav-dropdown summary::-webkit-details-marker { display: none; }
.nav-dropdown summary::after { content: '＋'; margin-left: 5px; color: var(--purple); }
.nav-dropdown[open] summary::after { content: '−'; }
.dropdown-bubble { position: absolute; top: calc(100% + 19px); right: 0; display: grid; width: 230px; padding: 14px; gap: 5px; border: 1px solid var(--ink); background: var(--paper-bright); box-shadow: 5px 5px 0 var(--ink); }
.dropdown-bubble a { padding: 8px 6px; text-decoration: none; font-size: 13px; }
.dropdown-bubble a:hover { background: var(--mist); color: var(--purple); }
.menu-guide { position: relative; display: flex; align-items: center; gap: 9px; margin: -2px 0 5px; padding: 4px 4px 12px; border-bottom: 1px solid var(--line); }
.guide-mark { display: grid; width: 30px; height: 30px; flex: 0 0 30px; place-items: center; border: 1px solid rgba(101, 51, 199, .55); border-radius: 50%; color: var(--purple); font-family: var(--serif); font-size: 9px; }
.menu-guide p { margin: 0; color: #625b69; font-family: var(--serif); font-size: 12px; font-style: italic; line-height: 1.3; }
.header-actions { display: flex; align-items: center; gap: 13px; }
.language-switch { display: flex; gap: 5px; align-items: center; color: #7b7182; font-family: var(--mono); font-size: 11px; }
.language-switch button { padding: 0; border: 0; color: inherit; background: transparent; }
.language-switch button[aria-pressed='true'] { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 44px; padding: 11px 16px; border: 1px solid var(--ink); font-size: 13px; font-weight: 700; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.button:hover { transform: translate(-2px, -2px); box-shadow: 4px 4px 0 var(--ink); }
.button--small { min-height: 36px; padding: 8px 12px; font-size: 12px; }
.button--dark { color: var(--paper-bright); background: var(--ink); }
.button--purple { color: var(--paper-bright); background: var(--purple); border-color: var(--purple); }
.button--outline { color: var(--paper-bright); border-color: var(--paper-bright); background: transparent; }
.button--paper { color: var(--ink); border-color: var(--paper-bright); background: var(--paper-bright); }
.button:disabled, .button[aria-disabled='true'] { cursor: not-allowed; opacity: .45; pointer-events: none; transform: none; box-shadow: none; }
.menu-toggle { display: none; width: 40px; height: 38px; padding: 8px; border: 1px solid var(--ink); background: transparent; }
.menu-toggle span { display: block; width: 100%; height: 1px; margin: 6px 0; background: var(--ink); }
.mobile-menu { display: none; }

/* Home */
.hero { position: relative; display: grid; grid-template-columns: .95fr 1.05fr; min-height: 665px; padding-top: 70px; overflow: hidden; }
.hero-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 58px 60px 92px 0; }
.hero h1 { max-width: 510px; margin-bottom: 23px; font-size: clamp(52px, 6.4vw, 91px); }
.hero-lede { max-width: 460px; margin-bottom: 28px; color: #574d60; font-size: 18px; line-height: 1.6; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 17px; }
.text-link { display: inline-flex; align-items: center; gap: 8px; border-bottom: 1px solid currentColor; padding-bottom: 3px; color: var(--ink); font-size: 13px; font-weight: 700; text-decoration: none; }
.text-link:hover { color: var(--purple); }
.hero-footnote { display: flex; align-items: center; gap: 12px; margin-top: 56px; color: #776c7e; font-family: var(--mono); font-size: 10px; letter-spacing: .04em; text-transform: uppercase; }
.chapter-number { color: var(--purple); font-family: var(--serif); font-size: 28px; font-style: italic; }
.hero-art { position: relative; min-height: 595px; margin: 0; overflow: hidden; background: var(--ink); }
.hero-art img { width: 100%; height: 100%; min-height: 595px; object-fit: cover; object-position: center; }
.hero-art-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(18,13,28,.2), transparent 45%, rgba(18,13,28,.28)); }
.art-caption { position: absolute; right: 18px; bottom: 20px; left: 18px; display: flex; justify-content: space-between; gap: 18px; color: rgba(255,255,255,.85); font-family: var(--mono); font-size: 9px; letter-spacing: .07em; text-transform: uppercase; }
.speech-bubble { position: absolute; padding: 18px 20px; background: var(--paper-bright); color: var(--ink); box-shadow: 4px 4px 0 rgba(0,0,0,.35); }
.speech-bubble--hero { top: 38px; left: 30px; width: min(265px, 55%); }
.bubble-label { display: block; margin-bottom: 7px; color: var(--purple); font-family: var(--mono); font-size: 9px; letter-spacing: .08em; }
.speech-bubble p { margin: 0; font-family: var(--serif); font-size: 16px; font-style: italic; line-height: 1.3; }
.bubble-tail { position: absolute; bottom: -15px; left: 26px; width: 0; height: 0; border-top: 16px solid var(--paper-bright); border-right: 12px solid transparent; }
.hero-side-stamp { position: absolute; top: 25px; right: 25px; display: grid; width: 49px; height: 49px; place-items: center; border: 1px solid rgba(255,255,255,.7); color: white; font-family: var(--serif); font-size: 13px; line-height: .8; text-align: center; }
.hero-bottomline { position: absolute; right: 0; bottom: 0; left: 0; display: flex; justify-content: space-between; padding: 14px 0; border-top: 1px solid var(--line); color: #685c70; font-family: var(--mono); font-size: 9px; letter-spacing: .06em; text-transform: uppercase; }
.manifesto-band { display: grid; grid-template-columns: 62px 1fr auto; align-items: center; gap: 28px; padding: 28px max(24px, calc((100% - 1180px) / 2)); color: white; background: var(--ink); }
.manifesto-seal { display: grid; width: 45px; height: 45px; place-items: center; border: 1px solid var(--purple-bright); color: var(--lavender); font-family: var(--serif); font-style: italic; }
.manifesto-band p { margin: 0; font-family: var(--serif); font-size: clamp(20px, 2.2vw, 31px); font-style: italic; line-height: 1.25; }
.manifesto-caption { color: var(--lavender); font-family: var(--mono); font-size: 9px; letter-spacing: .07em; text-align: right; }
.intro-section { padding-top: 105px; padding-bottom: 96px; }
.intro-grid, .membership-heading, .disciplines-heading { display: grid; grid-template-columns: 1fr .9fr; align-items: start; gap: 70px; }
.intro-heading h2, .membership-heading h2, .disciplines-heading h2 { margin-bottom: 0; font-size: clamp(42px, 5vw, 72px); }
.intro-copy { max-width: 510px; padding-top: 28px; }
.intro-copy p:not(.lead-copy) { color: #685d70; }
.lead-copy { font-family: var(--serif); font-size: 23px; line-height: 1.36; }
.discipline-ribbon { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; margin-top: 70px; padding-top: 20px; border-top: 1px solid var(--line); color: #6a5f70; font-family: var(--mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.discipline-ribbon i { color: var(--purple); font-style: normal; }
.process-section, .app-section { padding: 100px 0; color: white; background: var(--ink); }
.process-heading { display: grid; grid-template-columns: 1fr .72fr; gap: 60px; margin-bottom: 48px; }
.process-heading h2, .app-story h2 { margin-bottom: 0; color: white; font-size: clamp(43px, 5.2vw, 73px); }
.process-heading h2 em, .app-story h2 em { color: var(--lavender); }
.process-intro { align-self: end; margin: 0; color: rgba(255,255,255,.66); font-size: 16px; line-height: 1.65; }
.process-steps { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(255,255,255,.25); border-bottom: 1px solid rgba(255,255,255,.25); }
.process-step { min-height: 245px; padding: 23px 23px 28px 0; border-right: 1px solid rgba(255,255,255,.17); }
.process-step + .process-step { padding-left: 23px; }
.process-step:last-child { border: 0; }
.step-no { color: var(--purple-bright); font-family: var(--mono); font-size: 11px; }
.process-step h3 { margin: 45px 0 9px; color: white; font-family: var(--serif); font-size: 24px; font-weight: 500; }
.process-step p { color: rgba(255,255,255,.62); font-size: 14px; line-height: 1.5; }
.process-foot { display: flex; justify-content: space-between; align-items: center; gap: 25px; margin-top: 33px; }
.process-foot p { max-width: 570px; margin: 0 auto 0 0; color: var(--lavender); font-family: var(--serif); font-size: 18px; font-style: italic; }
.process-sigil { color: var(--purple-bright); }
.membership-section { padding-top: 105px; padding-bottom: 100px; }
.membership-lede, .disciplines-heading > p { margin: 27px 0 0; color: #685d70; line-height: 1.65; }
.status-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 50px; }
.status-card { display: flex; flex-direction: column; min-height: 390px; padding: 23px; border: 1px solid var(--ink); background: var(--paper-bright); }
.status-card--individual { color: white; background: var(--ink); }
.status-card--individual .status-tag, .status-card--individual .status-main p { color: rgba(255,255,255,.65); }
.status-top, .status-bottom { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.status-no, .status-tag { font-family: var(--mono); font-size: 10px; letter-spacing: .07em; text-transform: uppercase; }
.status-tag { color: #766a7d; text-align: right; }
.status-main { flex: 1; padding-top: 58px; }
.status-main h3 { margin-bottom: 12px; font-family: var(--serif); font-size: 31px; font-weight: 500; }
.status-main p { color: #706578; font-size: 14px; line-height: 1.5; }
.status-price { display: flex; align-items: baseline; gap: 6px; margin: 0; font-family: var(--mono); }
.status-price strong { font-family: var(--serif); font-size: 33px; font-weight: 500; }
.status-price span { font-size: 10px; letter-spacing: .04em; }
.status-card .button { min-height: 39px; font-size: 11px; }
.status-card--individual .button { color: var(--ink); background: var(--paper-bright); }
.member-flow-prompt { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 25px; padding: 20px 24px; border-left: 3px solid var(--purple); background: var(--mist); }
.member-flow-prompt p { margin: 0; color: #54485d; font-size: 14px; }
.terms-panel { display: grid; grid-template-columns: 155px 1fr 205px; gap: 30px; margin-top: 62px; padding: 30px; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
.terms-crest { align-self: start; border: 1px solid var(--line); }
.terms-copy h3 { margin: 0 0 15px; font-family: var(--serif); font-size: 31px; font-weight: 500; }
.terms-copy > p { color: #5e5267; font-size: 14px; line-height: 1.55; }
.terms-copy .terms-disclaimer { margin-bottom: 0; padding-top: 12px; border-top: 1px solid var(--line); color: #86788d; font-size: 12px; }
.terms-note { align-self: stretch; padding: 15px; border-left: 1px solid var(--line); color: #706578; font-size: 12px; }
.terms-note span { color: var(--purple); font-family: var(--mono); font-size: 10px; }
.disciplines-section { padding: 100px 0; background: #ebe7e3; }
.lane-list { margin-top: 48px; border-top: 1px solid var(--ink); }
.lane-row { display: grid; grid-template-columns: 42px 34px 1fr 1fr 20px; align-items: center; gap: 22px; padding: 20px 5px; border-bottom: 1px solid var(--ink); }
.lane-number, .lane-eyebrow { color: #726675; font-family: var(--mono); font-size: 10px; letter-spacing: .08em; }
.lane-mark { color: var(--purple); font-size: 21px; }
.lane-row h3 { margin: 2px 0 0; font-family: var(--serif); font-size: 30px; font-weight: 500; }
.lane-row > p { margin: 0; color: #675b6c; font-size: 14px; }
.lane-arrow { color: var(--purple); font-size: 21px; }
.audience-invite { display: grid; grid-template-columns: 1fr 38px 1fr; gap: 33px; margin-top: 70px; padding: 36px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.invite-index { color: var(--purple); font-family: var(--mono); font-size: 10px; letter-spacing: .07em; }
.audience-invite h3 { margin: 12px 0; font-family: var(--serif); font-size: 33px; font-weight: 500; }
.audience-invite p { max-width: 390px; color: #675b6c; font-size: 14px; }
.invite-divider { display: grid; place-items: center; color: var(--purple); }
.app-grid { display: grid; grid-template-columns: 1.02fr .98fr; gap: 80px; }
.app-story { padding-top: 17px; }
.app-lede { max-width: 520px; margin-top: 25px; color: rgba(255,255,255,.67); font-size: 16px; line-height: 1.65; }
.app-format-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 25px; }
.app-format-list span { padding: 7px 9px; border: 1px solid rgba(255,255,255,.3); color: var(--lavender); font-family: var(--mono); font-size: 10px; }
.app-availability { max-width: 520px; margin-top: 23px; padding-left: 13px; border-left: 2px solid var(--purple-bright); color: rgba(255,255,255,.56); font-size: 12px; line-height: 1.5; }
.plans-label { margin: 0 0 12px; color: var(--lavender); font-family: var(--mono); font-size: 10px; letter-spacing: .07em; }
.plan-card { margin-bottom: 12px; padding: 22px; color: var(--ink); background: var(--paper-bright); }
.plan-card--master { color: white; background: var(--purple); }
.plan-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.plan-kicker { display: block; color: #776a82; font-family: var(--mono); font-size: 9px; letter-spacing: .08em; }
.plan-card--master .plan-kicker { color: var(--lavender); }
.plan-heading h3 { margin: 5px 0 0; font-family: var(--serif); font-size: 35px; font-weight: 500; }
.plan-price { display: flex; align-items: baseline; gap: 6px; margin: 0; font-family: var(--mono); text-align: right; }
.plan-price strong { font-family: var(--serif); font-size: 29px; font-weight: 500; }
.plan-price span { font-size: 9px; }
.plan-desc { margin: 22px 0 14px; color: #5d5266; font-size: 13px; line-height: 1.45; }
.plan-card--master .plan-desc { color: rgba(255,255,255,.82); }
.plan-includes { font-family: var(--mono); font-size: 9px; letter-spacing: .02em; }
.app-contact { display: flex; justify-content: space-between; padding: 13px 1px; color: var(--lavender); border-bottom: 1px solid rgba(255,255,255,.35); font-family: var(--mono); font-size: 10px; letter-spacing: .05em; text-decoration: none; text-transform: uppercase; }
.app-bottom-art { display: grid; grid-template-columns: 120px 1fr auto; align-items: center; gap: 30px; margin-top: 70px; padding-top: 15px; border-top: 1px solid rgba(255,255,255,.25); color: var(--lavender); font-family: var(--mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.app-bottom-art p { margin: 0; }
.app-bottom-art a { color: white; text-decoration: none; }

/* Contact scene */
.contact-scene { position: relative; isolation: isolate; min-height: 570px; padding: 105px 0; color: white; background-color: var(--ink); background-image: linear-gradient(90deg, rgba(18,13,28,.96) 0%, rgba(18,13,28,.88) 45%, rgba(18,13,28,.42) 67%, rgba(18,13,28,.24) 100%), url('/images/contact-manga-panel.webp'); background-repeat: no-repeat; background-size: 100% 100%, auto 100%; background-position: center, right center; }
.contact-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(280px, .46fr); gap: 100px; align-items: end; }
.contact-copy h2 { max-width: 640px; margin-bottom: 22px; color: white; font-size: clamp(52px, 6.1vw, 86px); }
.contact-copy h2 em { color: var(--lavender); }
.contact-copy > p { max-width: 570px; color: rgba(255,255,255,.8); font-size: 18px; line-height: 1.62; }
.contact-card { padding: 25px; border: 1px solid rgba(255,255,255,.8); background: rgba(18,13,28,.82); backdrop-filter: blur(5px); }
.contact-card .eyebrow { color: var(--lavender); }
.contact-card p { color: rgba(255,255,255,.71); font-size: 14px; line-height: 1.55; }
.contact-card .button { width: 100%; margin-top: 10px; }
.contact-scene-caption { position: absolute; right: 24px; bottom: 15px; color: rgba(255,255,255,.54); font-family: var(--mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }

/* Products page */
.products-hero { display: grid; grid-template-columns: 1fr .75fr; align-items: center; gap: 90px; min-height: 525px; padding-top: 80px; padding-bottom: 80px; }
.products-hero h1 { margin-bottom: 20px; font-size: clamp(52px, 6vw, 85px); }
.products-lede { max-width: 540px; color: #675b6c; font-size: 17px; line-height: 1.6; }
.products-crest { position: relative; max-width: 390px; margin: auto; padding: 22px; border: 1px solid var(--ink); background: var(--ink); }
.products-crest img { width: 100%; }
.products-crest figcaption { padding-top: 14px; color: var(--lavender); font-family: var(--mono); font-size: 10px; letter-spacing: .07em; text-transform: uppercase; }
.crest-corner { position: absolute; top: -17px; right: -1px; padding: 4px 8px; color: white; background: var(--purple); font-family: var(--mono); font-size: 9px; }
.release-section { padding: 80px 0 95px; }
.release-heading { display: grid; grid-template-columns: 1fr .9fr; gap: 70px; align-items: end; }
.release-heading h2 { margin-bottom: 0; font-size: clamp(42px, 5vw, 70px); }
.release-heading > p { color: #6b5f70; line-height: 1.6; }
.release-slots { display: grid; grid-template-columns: 1fr 1fr; margin-top: 47px; border-top: 1px solid var(--ink); border-left: 1px solid var(--ink); }
.release-slot { display: grid; grid-template-columns: 35px 1fr; gap: 15px; min-height: 170px; padding: 20px; border-right: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
.slot-number, .slot-type, .slot-status { font-family: var(--mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.slot-type { color: var(--purple); }
.release-slot h3 { margin: 24px 0 0; font-family: var(--serif); font-size: 24px; font-weight: 500; }
.slot-status { grid-column: 2; align-self: end; color: #746a79; }
.release-slot--video-game { min-height: 244px; color: var(--paper-bright); background: linear-gradient(125deg, #180b25 0%, #2e1354 52%, #100b17 100%); }
.release-slot--video-game .slot-number, .release-slot--video-game .slot-type, .release-slot--video-game .slot-status { color: #d7b2ff; }
.video-game-copy { align-self: center; padding: 18px 20px 18px 0; }
.release-slot--video-game h3 { margin: 12px 0 8px; color: var(--paper-bright); font-size: clamp(28px, 3vw, 42px); }
.video-game-copy p { max-width: 410px; margin: 0; color: rgba(255,255,255,.72); font-size: 14px; line-height: 1.55; }
.release-slot--bilo { grid-column: 1 / -1; grid-template-columns: 35px 142px minmax(0, 1fr); min-height: 275px; align-items: start; color: #24191a; background: linear-gradient(112deg, #f3e5c1 0%, #ffd8bd 58%, #f0b2a0 100%); }
.release-slot--bilo .slot-number, .release-slot--bilo .slot-type, .release-slot--bilo .slot-status { color: #8d3450; }
.bilo-cover { width: 122px; margin: 0; padding: 6px; border: 1px solid rgba(120,42,64,.72); background: #fff7e4; box-shadow: 4px 4px 0 rgba(87,35,49,.24); }
.bilo-cover img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
.bilo-copy { align-self: center; padding-right: 22px; }
.release-slot--bilo h3 { margin: 13px 0 9px; color: #24191a; font-size: clamp(28px, 3vw, 42px); }
.bilo-copy p { max-width: 570px; margin: 0; color: rgba(36,25,26,.75); font-size: 14px; line-height: 1.55; }
.release-slot--bilo .slot-status { grid-column: 3; align-self: end; }
.release-slot--mamais { grid-column: 1 / -1; grid-template-columns: 35px 142px minmax(0, 1fr); min-height: 275px; align-items: start; color: var(--paper-bright); background: linear-gradient(108deg, #100b10 0%, #2b1e2f 54%, #20151a 100%); }
.release-slot--mamais .slot-number, .release-slot--mamais .slot-type, .release-slot--mamais .slot-status { color: #e4be65; }
.mamais-cover { width: 122px; margin: 0; padding: 6px; border: 1px solid rgba(228,190,101,.78); background: #170f13; box-shadow: 4px 4px 0 rgba(0,0,0,.38); }
.mamais-cover img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
.mamais-copy { align-self: center; padding-right: 22px; }
.release-slot--mamais h3 { margin: 13px 0 9px; color: var(--paper-bright); font-size: clamp(28px, 3vw, 42px); }
.mamais-copy p { max-width: 570px; margin: 0; color: rgba(255,255,255,.72); font-size: 14px; line-height: 1.55; }
.release-slot--mamais .slot-status { grid-column: 3; align-self: end; }
.release-slot--tratarote { grid-column: 1 / -1; grid-template-columns: 35px 142px minmax(0, 1fr); min-height: 265px; align-items: start; color: var(--paper-bright); background: linear-gradient(106deg, #17100d 0%, #2e1c0e 62%, #120d1c 100%); }
.release-slot--tratarote .slot-number { color: #ebca69; }
.tratarote-card { width: 122px; margin: 0; padding: 6px; border: 1px solid rgba(235,202,105,.76); background: #100b08; box-shadow: 4px 4px 0 rgba(0,0,0,.34); }
.tratarote-card img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
.tratarote-copy { align-self: center; padding-right: 22px; }
.release-slot--tratarote .slot-type { color: #ebca69; }
.release-slot--tratarote h3 { margin: 13px 0 9px; color: var(--paper-bright); font-size: clamp(28px, 3vw, 42px); }
.tratarote-copy p { max-width: 570px; margin: 0; color: rgba(255,255,255,.72); font-size: 14px; line-height: 1.55; }
.release-slot--tratarote .slot-status { grid-column: 3; align-self: end; color: #e9c46a; }
.store-note { display: grid; grid-template-columns: 35px 1fr auto; gap: 20px; align-items: center; margin-top: 27px; padding: 20px; border-left: 3px solid var(--purple); background: var(--mist); }
.store-note p { margin: 0; color: #605469; font-size: 14px; }
.store-mark { color: var(--purple); }
.release-invite { padding: 86px 0; color: white; background: var(--purple); }
.release-invite h2 { margin-bottom: 18px; color: white; font-size: clamp(46px, 5vw, 72px); }
.release-invite h2 em { color: var(--lavender); }
.release-invite p:not(.eyebrow) { max-width: 580px; color: rgba(255,255,255,.75); }
.invite-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 25px; }

/* Member wireframes */
.member-page, .dashboard-page, .login-page { min-height: 100vh; background: #ece8e3; }
.wireframe-banner { display: flex; justify-content: center; gap: 9px; padding: 9px 22px; color: var(--paper-bright); background: var(--purple); font-family: var(--mono); font-size: 10px; letter-spacing: .06em; text-align: center; text-transform: uppercase; }
.wireframe-banner strong { color: var(--lavender); }
.member-hero, .dashboard-hero, .access-hero { padding: 66px 0 40px; border-bottom: 1px solid var(--line); }
.member-hero-grid { display: grid; grid-template-columns: 1fr .75fr; gap: 70px; align-items: end; }
.member-hero h1, .dashboard-hero h1, .access-hero h1 { margin-bottom: 0; font-size: clamp(48px, 6vw, 82px); }
.member-hero .lede, .access-hero .lede { max-width: 530px; margin: 22px 0 0; color: #64586c; font-size: 17px; line-height: 1.6; }
.member-hero-note { padding: 21px; border-left: 3px solid var(--purple); background: var(--paper-bright); color: #63566b; font-size: 14px; }
.membership-flow { width: min(1180px, calc(100% - 48px)); margin: 45px auto 92px; }
.flow-progress { display: grid; grid-template-columns: repeat(4, 1fr); margin-bottom: 38px; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); }
.flow-step { display: flex; gap: 12px; align-items: center; min-height: 67px; padding: 11px 15px; border-right: 1px solid var(--line); color: #746879; font-size: 13px; }
.flow-step:last-child { border-right: 0; }
.flow-step b { display: grid; width: 24px; height: 24px; place-items: center; color: white; background: var(--ink); font-family: var(--mono); font-size: 10px; font-weight: 500; }
.flow-step.is-current { color: var(--ink); background: var(--paper-bright); }
.flow-step.is-current b { background: var(--purple); }
.tier-section { padding: 0; border: 0; }
.tier-section legend { margin-bottom: 18px; font-family: var(--serif); font-size: 31px; font-weight: 500; }
.tier-section > p { margin: -6px 0 24px; color: #6c6071; font-size: 14px; }
.tier-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.tier-option { position: relative; display: flex; min-height: 312px; flex-direction: column; padding: 22px; border: 1px solid var(--ink); background: var(--paper-bright); cursor: pointer; transition: background .18s ease, transform .18s ease, box-shadow .18s ease; }
.tier-option:hover { transform: translate(-2px, -2px); box-shadow: 4px 4px 0 var(--ink); }
.tier-option input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.tier-option:has(input:checked) { color: white; background: var(--ink); box-shadow: 5px 5px 0 var(--purple); }
.tier-option:has(input:focus-visible) { outline: 3px solid var(--purple-bright); outline-offset: 3px; }
.tier-option-top { display: flex; justify-content: space-between; gap: 16px; color: #73677a; font-family: var(--mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.tier-option:has(input:checked) .tier-option-top { color: var(--lavender); }
.tier-icon { display: grid; width: 30px; height: 30px; place-items: center; border: 1px solid currentColor; font-family: var(--serif); font-size: 16px; }
.tier-option h3 { margin: auto 0 11px; font-family: var(--serif); font-size: 33px; font-weight: 500; }
.tier-option p { min-height: 65px; margin: 0; color: #6b5e70; font-size: 13px; line-height: 1.45; }
.tier-option:has(input:checked) p { color: rgba(255,255,255,.68); }
.tier-price { display: flex; align-items: baseline; gap: 5px; margin-top: 18px; font-family: var(--mono); }
.tier-price strong { font-family: var(--serif); font-size: 31px; font-weight: 500; }
.tier-price span { font-size: 10px; letter-spacing: .06em; }
.selection-layout { display: grid; grid-template-columns: 1fr .78fr; gap: 24px; margin-top: 30px; }
.flow-panel { padding: 25px; border: 1px solid var(--ink); background: var(--paper-bright); }
.flow-panel h3 { margin-bottom: 14px; font-family: var(--serif); font-size: 27px; font-weight: 500; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.field-label { display: block; margin-bottom: 6px; font-family: var(--mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.field-control { width: 100%; min-height: 44px; padding: 0 11px; border: 1px solid var(--ink); border-radius: 0; color: var(--ink); background: var(--paper); }
.checkbox-line { display: flex; align-items: flex-start; gap: 10px; margin-top: 21px; color: #66596d; font-size: 13px; line-height: 1.4; }
.checkbox-line input { margin-top: 3px; accent-color: var(--purple); }
.selection-summary { color: white; background: var(--ink); }
.selection-summary h3 { color: white; }
.selection-summary .summary-status { margin-bottom: 20px; color: var(--lavender); font-family: var(--mono); font-size: 10px; letter-spacing: .07em; text-transform: uppercase; }
.summary-tier { margin: 0 0 6px; color: white; font-family: var(--serif); font-size: 32px; }
.summary-price { margin: 0 0 23px; color: var(--lavender); font-family: var(--mono); font-size: 12px; }
.summary-list { display: grid; gap: 12px; padding-top: 19px; border-top: 1px solid rgba(255,255,255,.25); }
.summary-list div { display: flex; justify-content: space-between; gap: 10px; color: rgba(255,255,255,.7); font-size: 12px; }
.summary-list strong { color: white; font-weight: 500; text-align: right; }
.prototype-note { margin: 19px 0 0; color: #7a6c7f; font-size: 12px; line-height: 1.45; }
.flow-actions { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 30px; padding-top: 23px; border-top: 1px solid var(--line); }
.flow-actions .text-link { font-size: 12px; }

.dashboard-shell { width: min(1180px, calc(100% - 48px)); display: grid; grid-template-columns: 255px 1fr; gap: 22px; margin: 42px auto 92px; }
.dashboard-sidebar { align-self: start; border: 1px solid var(--ink); background: var(--paper-bright); }
.profile-stub { padding: 24px; border-bottom: 1px solid var(--ink); }
.avatar-stub { display: grid; width: 54px; height: 54px; place-items: center; margin-bottom: 14px; color: var(--paper-bright); background: var(--purple); font-family: var(--serif); font-size: 22px; }
.profile-stub h2 { margin-bottom: 4px; font-family: var(--serif); font-size: 25px; font-weight: 500; }
.profile-stub p { margin: 0; color: #7c6e80; font-size: 12px; }
.dashboard-nav { display: grid; padding: 9px; }
.dashboard-nav a, .dashboard-logout { padding: 11px 12px; border: 0; color: #594d60; background: transparent; font-size: 13px; text-align: left; text-decoration: none; }
.dashboard-nav a.is-active { color: white; background: var(--ink); }
.dashboard-nav a:hover:not(.is-active), .dashboard-logout:hover { color: var(--purple); background: var(--mist); }
.dashboard-main { min-width: 0; }
.dashboard-header { display: flex; justify-content: space-between; gap: 28px; align-items: flex-end; margin-bottom: 24px; }
.dashboard-header h1 { margin: 4px 0 0; font-size: 46px; }
.dashboard-header p { max-width: 295px; margin: 0; color: #6b5f70; font-size: 13px; }
.dashboard-stats { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--ink); }
.stat-cell { min-height: 105px; padding: 18px; border-right: 1px solid var(--ink); background: var(--paper-bright); }
.stat-cell:last-child { border-right: 0; }
.stat-label { display: block; color: #756a7b; font-family: var(--mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.stat-value { display: block; margin-top: 17px; font-family: var(--serif); font-size: 22px; }
.stat-value small { color: #776a7c; font-family: var(--sans); font-size: 12px; }
.dashboard-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 20px; margin-top: 20px; }
.dashboard-card { padding: 23px; border: 1px solid var(--ink); background: var(--paper-bright); }
.dashboard-card h2 { margin-bottom: 15px; font-family: var(--serif); font-size: 27px; font-weight: 500; }
.empty-profile { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.empty-field { padding: 12px 0; border-bottom: 1px solid var(--line); }
.empty-field span { display: block; margin-bottom: 5px; color: #7a6e7d; font-family: var(--mono); font-size: 9px; letter-spacing: .06em; text-transform: uppercase; }
.empty-field b { color: #a198a5; font-size: 13px; font-weight: 500; }
.journey-list { display: grid; gap: 0; }
.journey-item { display: grid; grid-template-columns: 30px 1fr auto; gap: 12px; align-items: center; padding: 13px 0; border-bottom: 1px solid var(--line); }
.journey-item:last-child { border-bottom: 0; }
.journey-no { display: grid; width: 22px; height: 22px; place-items: center; border: 1px solid var(--ink); color: var(--ink); font-family: var(--mono); font-size: 9px; }
.journey-item.is-next .journey-no { color: white; border-color: var(--purple); background: var(--purple); }
.journey-item h3 { margin: 0; font-family: var(--sans); font-size: 13px; }
.journey-item p { margin: 1px 0 0; color: #786c7d; font-size: 11px; }
.journey-state { color: #766986; font-family: var(--mono); font-size: 9px; letter-spacing: .05em; text-transform: uppercase; }
.billing-empty { display: flex; min-height: 148px; flex-direction: column; justify-content: space-between; color: white; background: var(--ink); }
.billing-empty h2 { color: white; }
.billing-empty p { margin: 0; color: rgba(255,255,255,.68); font-size: 13px; line-height: 1.5; }
.dashboard-card .button { margin-top: 17px; }

.access-page-main { display: grid; min-height: calc(100vh - 77px); place-items: center; padding: 52px 24px; background: radial-gradient(circle at 70% 15%, rgba(154,109,240,.3), transparent 26%), var(--ink); }
.access-panel { display: grid; grid-template-columns: .95fr 1.05fr; width: min(1000px, 100%); min-height: 520px; border: 1px solid var(--paper-bright); }
.access-copy { display: flex; flex-direction: column; justify-content: space-between; padding: 42px; color: white; background: linear-gradient(145deg, rgba(101,51,199,.96), rgba(18,13,28,.96)); }
.access-copy h1 { margin: 0 0 18px; color: white; font-size: 54px; }
.access-copy p { max-width: 360px; color: rgba(255,255,255,.78); }
.access-copy-footer { color: var(--lavender); font-family: var(--mono); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.access-card { display: flex; flex-direction: column; justify-content: center; padding: 50px; color: var(--ink); background: var(--paper-bright); }
.access-card h2 { margin-bottom: 13px; font-family: var(--serif); font-size: 35px; font-weight: 500; }
.access-card > p { color: #6c6071; font-size: 14px; line-height: 1.55; }
.oauth-button { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 52px; margin: 26px 0 17px; border: 1px solid var(--ink); color: var(--paper-bright); background: var(--ink); font-weight: 700; text-decoration: none; }
.oauth-button::before { content: '✦'; color: var(--lavender); }
.access-divider { display: flex; align-items: center; gap: 10px; color: #887d8d; font-family: var(--mono); font-size: 9px; letter-spacing: .06em; text-transform: uppercase; }
.access-divider::before, .access-divider::after { content: ''; flex: 1; height: 1px; background: var(--line); }
.access-card .text-link { width: max-content; margin-top: 18px; }
.local-auth { margin-top: 18px; padding-top: 17px; border-top: 1px solid var(--line); }
.local-auth h3 { margin: 0 0 10px; font-size: 15px; font-weight: 700; }
.local-auth form h4 { margin: 0; color: var(--ink); font-family: var(--serif); font-size: 21px; font-weight: 500; }
.local-auth-tabs { display: flex; margin-bottom: 13px; border-bottom: 1px solid var(--line); }
.local-auth-tabs button { flex: 1; padding: 9px 7px; border: 0; border-bottom: 2px solid transparent; color: #766a7c; background: transparent; font: 700 11px var(--sans); cursor: pointer; }
.local-auth-tabs button.is-active { border-bottom-color: var(--purple); color: var(--ink); }
.local-auth form { display: grid; gap: 10px; }
.local-auth form[hidden] { display: none; }
.local-auth .field-label { margin-bottom: 5px; font-size: 11px; }
.local-auth .field-control { min-height: 42px; background: var(--paper); }
.local-auth .button { justify-content: center; margin-top: 2px; }
.inline-button { width: max-content; padding: 2px 0; border: 0; color: var(--purple); background: transparent; font: 700 12px var(--sans); text-decoration: underline; cursor: pointer; }
.form-help, .local-auth-message { margin: 0; color: #756977; font-size: 11px; line-height: 1.45; }
.local-auth-message { min-height: 17px; margin-top: 10px; color: #4b375e; }
.local-auth-message.is-error { color: #8f263e; }
.subscription-status { margin: 14px 0; padding: 10px 12px; border-left: 3px solid var(--purple); color: var(--ink); background: var(--mist); font-size: 13px; font-weight: 700; }
.local-password-enrollment { display: grid; gap: 10px; margin-top: 18px; padding-top: 17px; border-top: 1px solid var(--line); }
.local-password-enrollment p { margin: 0; color: #6c6071; font-size: 12px; line-height: 1.5; }
.local-password-enrollment .button { justify-content: center; }

.demo-toast { position: fixed; z-index: 80; right: 22px; bottom: 22px; max-width: 355px; padding: 15px 17px; border: 1px solid var(--paper-bright); color: white; background: var(--ink); box-shadow: 5px 5px 0 var(--purple); font-size: 13px; line-height: 1.45; }
.demo-toast--error { background: #6d1e31; box-shadow: 5px 5px 0 var(--ink); }
.reveal-ready .reveal { opacity: 0; transform: translateY(12px); }
.reveal-ready .reveal.is-visible { opacity: 1; transform: translateY(0); transition: opacity .42s ease, transform .42s ease; }

/* Studio representative */
.studio-representative { padding: 105px 0; }
.studio-representative-card { display: grid; grid-template-columns: .92fr 1.08fr; min-height: 440px; border: 1px solid var(--ink); background: var(--paper-bright); box-shadow: var(--shadow); }
.studio-logo-stage { position: relative; display: grid; min-height: 420px; place-items: center; padding: 30px; overflow: hidden; background: radial-gradient(circle at 50% 50%, rgba(35,214,230,.22), transparent 31%), radial-gradient(circle at 32% 21%, rgba(154,109,240,.48), transparent 36%), #110b1b; }
.studio-logo-stage::before { position: absolute; inset: 17px; border: 1px solid rgba(255,255,255,.18); content: ''; }
.studio-logo-link { position: relative; z-index: 1; display: block; width: min(100%, 560px); transition: transform .18s ease; }
.studio-logo-link:hover { transform: translateY(-3px); }
.studio-logo-link:focus-visible, .studio-mark-link:focus-visible { outline: 3px solid var(--purple-bright); outline-offset: 5px; }
.studio-stamp, .studio-corner { position: absolute; z-index: 2; display: grid; place-items: center; width: 49px; height: 49px; border: 1px solid rgba(255,255,255,.65); color: white; font-family: var(--serif); font-size: 12px; line-height: .8; text-align: center; }
.studio-stamp { right: 24px; bottom: 22px; }
.studio-representative-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 56px; }
.studio-representative-copy h2, .studio-waypoints h2 { margin: 0 0 20px; font-size: clamp(42px, 4.6vw, 67px); }
.studio-representative-copy > p { max-width: 510px; margin-bottom: 23px; color: #615569; font-size: 16px; line-height: 1.65; }
.studio-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 15px; }
.studio-founder-tease { position: relative; max-width: 510px; margin: 2px 0 26px; padding: 17px 18px 16px; border-left: 3px solid var(--purple); background: var(--mist); }
.studio-founder-tease p { margin: 0; color: var(--ink); font-family: var(--serif); font-size: 18px; font-style: italic; line-height: 1.35; }
.studio-founder-tease cite { display: block; margin-top: 9px; color: #6b5f72; font-family: var(--mono); font-size: 9px; font-style: normal; letter-spacing: .07em; text-transform: uppercase; }
.studio-page main { overflow: hidden; }
.studio-hero { display: grid; grid-template-columns: .95fr 1.05fr; align-items: center; min-height: 600px; gap: 72px; padding: 86px 0; }
.studio-hero-copy h1 { max-width: 580px; margin-bottom: 22px; font-size: clamp(52px, 6vw, 86px); }
.studio-lede { max-width: 520px; margin-bottom: 30px; color: #5d5265; font-size: 18px; line-height: 1.65; }
.studio-mark-figure { position: relative; display: grid; min-height: 430px; place-items: center; margin: 0; padding: 32px; overflow: hidden; background: radial-gradient(circle at 50% 50%, rgba(35,214,230,.24), transparent 31%), radial-gradient(circle at 34% 20%, rgba(154,109,240,.52), transparent 37%), #110b1b; }
.studio-mark-figure::before { position: absolute; inset: 18px; border: 1px solid rgba(255,255,255,.17); content: ''; }
.studio-mark-link { position: relative; z-index: 1; display: block; width: min(100%, 680px); transition: transform .18s ease; }
.studio-mark-link:hover { transform: translateY(-3px); }
.studio-mark-figure figcaption { position: absolute; z-index: 2; right: 21px; bottom: 18px; left: 21px; color: rgba(255,255,255,.78); font-family: var(--mono); font-size: 9px; letter-spacing: .07em; text-transform: uppercase; }
.studio-corner { top: 22px; right: 22px; }
.founder-section { padding: 98px 0; background: #ebe7e3; }
.founder-layout { display: grid; grid-template-columns: .78fr 1fr .46fr; align-items: center; gap: 46px; }
.founder-heading h2 { margin: 0; font-size: clamp(42px, 4.8vw, 67px); }
.founder-card { position: relative; margin: 0; padding: 38px 40px 34px; color: white; background: var(--ink); box-shadow: var(--shadow); }
.founder-mark { display: block; color: var(--purple-bright); font-family: var(--serif); font-size: 52px; line-height: .45; }
.founder-card p { margin: 13px 0 19px; font-family: var(--serif); font-size: clamp(25px, 3vw, 38px); font-style: italic; line-height: 1.2; }
.founder-card cite { color: var(--lavender); font-family: var(--mono); font-size: 10px; font-style: normal; letter-spacing: .07em; text-transform: uppercase; }
.founder-tail { position: absolute; bottom: -18px; left: 44px; width: 0; height: 0; border-top: 19px solid var(--ink); border-right: 16px solid transparent; }
.founder-context { margin: 0; color: #675b6f; font-size: 14px; line-height: 1.65; }
.studio-waypoints { padding: 105px 0; }
.studio-waypoint-grid { display: grid; grid-template-columns: 1fr .7fr .72fr; align-items: end; gap: 45px; }
.studio-waypoint-grid > p { margin: 0; color: #665a6d; line-height: 1.65; }
.waypoint-actions { display: grid; justify-items: start; gap: 17px; }

/* Footer */
.site-footer { color: rgba(255,255,255,.72); background: #0e0a15; }
.footer-top { display: grid; grid-template-columns: 1fr 1fr auto; align-items: center; gap: 30px; padding: 40px 0; }
.brand--footer { color: white; }
.footer-top p { margin: 0; font-family: var(--serif); font-size: 20px; font-style: italic; }
.footer-email { color: var(--lavender); font-family: var(--mono); font-size: 11px; text-decoration: none; }
.footer-bottom { display: grid; grid-template-columns: auto 1fr auto auto auto; align-items: center; gap: 30px; padding: 17px 0; border-top: 1px solid rgba(255,255,255,.17); color: rgba(255,255,255,.46); font-family: var(--mono); font-size: 9px; letter-spacing: .05em; text-transform: uppercase; }
.footer-bottom a { color: var(--lavender); text-decoration: none; }
.language-switch--footer button[aria-pressed='true'] { color: white; }

@media (max-width: 1320px) and (min-width: 981px) {
  .desktop-nav, .header-cta { display: none; }
  .site-header { justify-content: space-between; }
  .header-actions { margin-left: auto; }
  .menu-toggle { display: block; }
  .mobile-menu { position: absolute; top: 100%; right: 0; left: 0; padding: 15px 24px 24px; border-bottom: 1px solid var(--ink); background: var(--paper-bright); box-shadow: 0 10px 16px rgba(18,13,28,.12); }
  .mobile-menu.is-open { display: grid; gap: 5px; }
  .mobile-menu a { padding: 10px 0; border-bottom: 1px solid var(--line); font-weight: 600; text-decoration: none; }
}

@media (max-width: 980px) {
  .desktop-nav, .header-cta { display: none; }
  .site-header { justify-content: space-between; }
  .header-actions { margin-left: auto; }
  .menu-toggle { display: block; }
  .mobile-menu { position: absolute; top: 100%; right: 0; left: 0; padding: 15px 24px 24px; border-bottom: 1px solid var(--ink); background: var(--paper-bright); box-shadow: 0 10px 16px rgba(18,13,28,.12); }
  .mobile-menu.is-open { display: grid; gap: 5px; }
  .mobile-menu a { padding: 10px 0; border-bottom: 1px solid var(--line); font-weight: 600; text-decoration: none; }
  .mobile-cta { color: var(--purple); }
  .hero { grid-template-columns: 1fr; padding-top: 0; }
  .hero-copy { min-height: 530px; padding: 70px 0 80px; }
  .hero-art { min-height: 490px; }
  .hero-art img { min-height: 490px; }
  .hero-bottomline { bottom: auto; top: 100%; padding: 13px 0; }
  .manifesto-band { grid-template-columns: 55px 1fr; }
  .manifesto-caption { grid-column: 2; text-align: left; }
  .intro-grid, .membership-heading, .disciplines-heading, .process-heading, .app-grid, .products-hero, .release-heading, .member-hero-grid { grid-template-columns: 1fr; gap: 28px; }
  .status-list, .tier-grid { grid-template-columns: 1fr; }
  .status-card { min-height: 280px; }
  .status-main { padding-top: 30px; }
  .terms-panel { grid-template-columns: 125px 1fr; }
  .terms-note { grid-column: 1 / -1; border-top: 1px solid var(--line); border-left: 0; }
  .process-steps { grid-template-columns: repeat(2, 1fr); }
  .process-step:nth-child(2) { border-right: 0; }
  .process-step:nth-child(3) { border-top: 1px solid rgba(255,255,255,.17); }
  .process-step:nth-child(4) { border-top: 1px solid rgba(255,255,255,.17); border-right: 0; }
  .contact-grid { grid-template-columns: 1fr; gap: 35px; }
  .products-hero { padding-top: 60px; }
  .dashboard-shell { grid-template-columns: 1fr; }
  .dashboard-sidebar { display: grid; grid-template-columns: 240px 1fr; }
  .profile-stub { border-right: 1px solid var(--ink); border-bottom: 0; }
  .dashboard-nav { grid-template-columns: repeat(3, 1fr); align-content: center; }
  .access-panel { grid-template-columns: 1fr; }
  .access-copy { min-height: 250px; }
  .studio-representative-card, .studio-hero, .founder-layout, .studio-waypoint-grid { grid-template-columns: 1fr; gap: 30px; }
  .studio-hero { min-height: 0; }
  .studio-logo-stage, .studio-mark-figure { min-height: 350px; }
  .founder-layout { align-items: start; }
  .founder-context { max-width: 560px; }
}

@media (max-width: 650px) {
  .section-wrap, .membership-flow, .dashboard-shell { width: min(100% - 32px, 1180px); }
  .site-header { min-height: 64px; padding: 10px 16px; }
  .brand-name { font-size: 12px; }
  .hero-copy { min-height: auto; padding: 62px 0; }
  .hero h1, .member-hero h1, .dashboard-hero h1, .access-hero h1 { font-size: 52px; }
  .hero-lede, .contact-copy > p { font-size: 16px; }
  .hero-art, .hero-art img { min-height: 405px; }
  .speech-bubble--hero { top: 20px; left: 18px; width: 72%; }
  .art-caption { flex-direction: column; gap: 4px; }
  .hero-bottomline { display: none; }
  .manifesto-band { padding: 26px 16px; gap: 14px; }
  .manifesto-band p { font-size: 21px; }
  .intro-section, .membership-section, .disciplines-section, .process-section, .app-section { padding: 70px 0; }
  .process-steps { grid-template-columns: 1fr; }
  .process-step, .process-step:nth-child(2), .process-step:nth-child(3), .process-step:nth-child(4) { min-height: 178px; padding: 21px 0; border-top: 1px solid rgba(255,255,255,.17); border-right: 0; }
  .process-step:first-child { border-top: 0; }
  .process-step h3 { margin-top: 26px; }
  .process-foot, .member-flow-prompt, .flow-actions, .footer-top, .footer-bottom { flex-direction: column; align-items: flex-start; }
  .process-foot { display: flex; }
  .member-flow-prompt { display: flex; }
  .terms-panel { grid-template-columns: 1fr; padding: 20px; }
  .terms-crest { max-width: 120px; }
  .lane-row { grid-template-columns: 30px 25px 1fr 18px; gap: 9px; }
  .lane-row > p { display: none; }
  .audience-invite { grid-template-columns: 1fr; }
  .invite-divider { display: none; }
  .app-bottom-art { grid-template-columns: 1fr; gap: 10px; }
  .contact-scene { min-height: 640px; padding: 80px 0; background-position: center, center; }
  .contact-card { padding: 20px; }
  .release-slots { grid-template-columns: 1fr; }
  .release-slot--video-game { min-height: 195px; }
  .video-game-copy { padding: 8px 0 10px; }
  .release-slot--video-game h3 { margin: 8px 0 6px; font-size: 27px; }
  .video-game-copy p { font-size: 12px; }
  .release-slot--bilo { grid-template-columns: 28px 94px minmax(0, 1fr); min-height: 210px; gap: 11px; padding: 14px; }
  .bilo-cover { width: 88px; padding: 4px; }
  .bilo-copy { padding-right: 0; }
  .release-slot--bilo h3 { margin: 8px 0 6px; font-size: 27px; }
  .bilo-copy p { font-size: 12px; }
  .release-slot--bilo .slot-status { grid-column: 3; font-size: 8px; }
  .release-slot--mamais { grid-template-columns: 28px 94px minmax(0, 1fr); min-height: 210px; gap: 11px; padding: 14px; }
  .mamais-cover { width: 88px; padding: 4px; }
  .mamais-copy { padding-right: 0; }
  .release-slot--mamais h3 { margin: 8px 0 6px; font-size: 27px; }
  .mamais-copy p { font-size: 12px; }
  .release-slot--mamais .slot-status { grid-column: 3; font-size: 8px; }
  .release-slot--tratarote { grid-template-columns: 28px 94px minmax(0, 1fr); min-height: 210px; gap: 11px; padding: 14px; }
  .tratarote-card { width: 88px; padding: 4px; }
  .tratarote-copy { padding-right: 0; }
  .release-slot--tratarote h3 { margin-top: 8px; font-size: 28px; }
  .tratarote-copy p { font-size: 12px; }
  .release-slot--tratarote .slot-status { grid-column: 3; font-size: 8px; }
  .store-note { grid-template-columns: 25px 1fr; }
  .store-note .text-link { grid-column: 2; }
  .member-hero, .dashboard-hero { padding-top: 46px; }
  .wireframe-banner { font-size: 8px; }
  .flow-progress { grid-template-columns: 1fr 1fr; }
  .flow-step:nth-child(2) { border-right: 0; }
  .flow-step:nth-child(n+3) { border-top: 1px solid var(--line); }
  .tier-option { min-height: 250px; }
  .selection-layout, .dashboard-grid { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; }
  .dashboard-sidebar { grid-template-columns: 1fr; }
  .profile-stub { border-right: 0; border-bottom: 1px solid var(--ink); }
  .dashboard-nav { grid-template-columns: 1fr 1fr; }
  .dashboard-header { display: block; }
  .dashboard-header p { margin-top: 12px; }
  .dashboard-stats { grid-template-columns: 1fr; }
  .stat-cell { min-height: auto; border-right: 0; border-bottom: 1px solid var(--ink); }
  .stat-cell:last-child { border-bottom: 0; }
  .access-page-main { padding: 28px 16px; }
  .access-copy, .access-card { padding: 30px; }
  .access-copy h1 { font-size: 45px; }
  .empty-profile { grid-template-columns: 1fr; }
  .studio-representative, .studio-waypoints { padding: 70px 0; }
  .studio-logo-stage { min-height: 285px; padding: 22px; }
  .studio-mark-figure { min-height: 300px; padding: 22px; }
  .studio-representative-copy { padding: 30px 23px; }
  .studio-representative-copy h2, .studio-waypoints h2, .founder-heading h2 { font-size: 43px; }
  .studio-hero { padding: 58px 0 70px; }
  .studio-hero-copy h1 { font-size: 53px; }
  .studio-lede { font-size: 16px; }
  .founder-section { padding: 70px 0; }
  .founder-card { padding: 29px 25px 27px; }
  .founder-card p { font-size: 28px; }
  .studio-actions { align-items: flex-start; flex-direction: column; }
  .footer-top, .footer-bottom { display: flex; gap: 16px; padding: 25px 0; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .reveal-ready .reveal { opacity: 1; transform: none; }
}


/* Bilingual project agreement and NDA discussion draft */
.agreement-page {
  --agreement-ink: #291c31;
  --agreement-plum: #4e2a5d;
  --agreement-lavender: #a99ab8;
  --agreement-gold: #a98745;
  --agreement-paper: #fffdfa;
  color: var(--agreement-ink);
  background:
    radial-gradient(ellipse at 8% 14%, rgba(141, 112, 167, .16), transparent 34rem),
    radial-gradient(ellipse at 95% 37%, rgba(206, 180, 112, .14), transparent 30rem),
    linear-gradient(145deg, #f2eef3 0%, #f7f4ef 54%, #ece7f0 100%);
}
.agreement-page::before {
  position: fixed;
  z-index: -1;
  inset: 0;
  background-image: repeating-linear-gradient(135deg, rgba(83, 54, 94, .035) 0 1px, transparent 1px 13px);
  content: "";
  pointer-events: none;
}
.agreement-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(250px, .6fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: end;
  padding-top: clamp(3.5rem, 7vw, 6.5rem);
  padding-bottom: clamp(2.5rem, 5vw, 4.5rem);
}
.agreement-intro h1 {
  max-width: 850px;
  margin: .65rem 0 1.1rem;
  color: #24172b;
  font-family: var(--font-display, Georgia, serif);
  font-size: clamp(2.8rem, 6.5vw, 6rem);
  font-weight: 600;
  line-height: .98;
  letter-spacing: -.055em;
}
.agreement-intro h1 em { color: #71527e; font-weight: 500; }
.agreement-lede { max-width: 670px; color: #574a5d; font-size: clamp(1rem, 1.5vw, 1.2rem); line-height: 1.7; }
.agreement-intro-note {
  padding: 1.25rem 1.35rem;
  border: 1px solid rgba(101, 69, 115, .2);
  border-left: 3px solid var(--agreement-gold);
  border-radius: 0 16px 16px 0;
  background: rgba(255, 253, 250, .66);
  box-shadow: 0 14px 40px rgba(54, 35, 63, .055);
}
.agreement-intro-note > span, .agreement-toolbar strong {
  color: #76578a;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .13em;
}
.agreement-intro-note p { margin: .55rem 0 0; color: #514654; font-size: .92rem; line-height: 1.65; }
.agreement-stage { padding: 0 0 6rem; }
.agreement-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
  border-top: 1px solid rgba(73, 48, 83, .17);
  border-bottom: 1px solid rgba(73, 48, 83, .17);
}
.agreement-toolbar p { max-width: 640px; margin: .4rem 0 0; color: #625767; font-size: .88rem; line-height: 1.5; }
.agreement-toolbar .button { flex: 0 0 auto; }
.agreement-downloads {
  display: flex;
  width: min(100% - 2rem, 980px);
  align-items: center;
  justify-content: space-between;
  gap: .8rem 1.2rem;
  margin: .8rem auto 0;
  padding: .8rem 1rem;
  border: 1px solid rgba(87, 61, 98, .17);
  border-radius: 4px;
  background: rgba(255, 253, 250, .82);
}
.agreement-downloads__title { margin: 0; color: #57475e; font-size: .8rem; font-weight: 750; line-height: 1.45; }
.agreement-downloads__links { display: flex; flex-wrap: wrap; gap: .55rem; }
.agreement-downloads__links .button { min-height: 40px; font-size: .7rem; }
.agreement-preview {
  width: min(100% - 2rem, 980px);
  margin: 1.25rem auto 0;
  overflow: hidden;
  border: 1px solid rgba(87, 61, 98, .18);
  border-radius: 5px;
  background: var(--agreement-paper);
  box-shadow: 0 12px 35px rgba(40, 25, 47, .07);
}
.agreement-preview > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .9rem 1.1rem;
  color: #4f3a5b;
  font-size: .88rem;
  font-weight: 750;
  cursor: pointer;
  list-style: none;
}
.agreement-preview > summary::-webkit-details-marker { display: none; }
.agreement-preview > summary::after { color: #9a8250; content: "+"; font-size: 1.2rem; line-height: 1; }
.agreement-preview[open] > summary { border-bottom: 1px solid rgba(77, 53, 87, .16); }
.agreement-preview[open] > summary::after { content: "−"; }
.agreement-preview-content { padding: 1rem; }
.agreement-preview-content > p { max-width: 780px; margin: 0 auto 1rem; color: #625767; font-size: .84rem; line-height: 1.6; }
.agreement-preview-figure { max-width: 820px; margin: 0 auto; padding: .65rem; border: 1px solid #e5dfe8; background: #fff; }
.agreement-preview-link { display: block; }
.agreement-preview-image { display: block; width: 100%; height: auto; background: #fff; }
.agreement-preview-figure figcaption { padding: .65rem .25rem .1rem; color: #726778; font-size: .74rem; line-height: 1.5; text-align: center; }
.agreement-sheet {
  position: relative;
  width: min(100% - 2rem, 980px);
  margin: 2rem auto 0;
  padding: clamp(1.35rem, 4.5vw, 3.5rem);
  overflow: hidden;
  border: 1px solid rgba(87, 61, 98, .18);
  border-radius: 5px;
  background: var(--agreement-paper);
  box-shadow: 0 28px 90px rgba(40, 25, 47, .13), 0 3px 12px rgba(40, 25, 47, .06);
}
.agreement-sheet::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 17%;
  height: 8px;
  background: linear-gradient(90deg, #a99ab8 0%, #795d89 55%, #b69759 100%);
  content: "";
}
.agreement-document-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 0 0 1.5rem;
  border-bottom: 1px solid rgba(77, 53, 87, .2);
}
.agreement-document-brand { display: flex; align-items: center; gap: .7rem; }
.agreement-logo { display: inline-flex; width: 38px; height: 38px; flex: 0 0 38px; align-items: center; justify-content: center; overflow: hidden; border: 1px solid rgba(95, 67, 105, .2); border-radius: 50%; background: #f5f1f6; }
.agreement-logo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.agreement-document-brand .brand-name { display: grid; color: #33233b; font-size: .7rem; line-height: 1.05; letter-spacing: .13em; }
.agreement-document-brand .brand-name i { color: #80688a; font-size: .58rem; font-style: normal; }
.agreement-document-meta { display: grid; gap: .35rem; text-align: right; }
.agreement-document-meta span { color: #5d4a64; font-size: .62rem; font-weight: 750; letter-spacing: .09em; }
.agreement-document-meta strong { color: #9a8250; font-size: .62rem; letter-spacing: .08em; }
.agreement-warning {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: .8rem;
  align-items: start;
  margin: 1.4rem 0 1.1rem;
  padding: 1rem 1.1rem;
  border: 1px solid rgba(157, 126, 70, .24);
  background: #f8f4e9;
}
.agreement-warning > span { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%; background: #e9dfc7; color: #6f5726; font-weight: 800; }
.agreement-warning p { margin: 0; color: #514942; font-size: .82rem; line-height: 1.55; }
.agreement-warning p strong { color: #4b3b20; }
.agreement-section { padding: 1.5rem 0 1.65rem; border-bottom: 1px solid rgba(77, 53, 87, .17); }
.agreement-section-head { display: flex; gap: .75rem; align-items: baseline; margin-bottom: .45rem; }
.agreement-section-head > span { color: #9a8250; font-family: var(--font-display, Georgia, serif); font-size: .95rem; font-weight: 700; }
.agreement-section-head h2 { margin: 0; color: #35253d; font-family: var(--font-display, Georgia, serif); font-size: clamp(1.25rem, 2.4vw, 1.75rem); font-weight: 600; line-height: 1.2; }
.agreement-section-intro { max-width: 760px; margin: 0 0 1rem; color: #685d6d; font-size: .83rem; line-height: 1.55; }
.agreement-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem 1rem; margin-top: 1rem; }
.agreement-field-grid--compact { gap: .75rem 1rem; }
.agreement-field--wide { grid-column: 1 / -1; }
.agreement-field { display: grid; min-width: 0; gap: .35rem; color: #584a60; font-size: .72rem; font-weight: 700; line-height: 1.4; }
.agreement-field input, .agreement-field select, .agreement-field textarea {
  width: 100%; min-width: 0; border: 1px solid #d8cedd; border-radius: 3px; padding: .65rem .72rem;
  outline: 0; background: #fffefa; color: #312436; font: inherit; font-size: .83rem; font-weight: 450;
}
.agreement-field textarea { min-height: 82px; resize: vertical; line-height: 1.5; }
.agreement-field input:focus, .agreement-field select:focus, .agreement-field textarea:focus { border-color: #795c88; box-shadow: 0 0 0 3px rgba(121, 92, 136, .13); }
.agreement-field input[readonly] { background: #f4f0f5; color: #5c4c64; }
.agreement-project-grid { margin-top: 1.25rem; }
.agreement-tier-set { min-width: 0; margin: 1rem 0 1.1rem; padding: 0; border: 0; }
.agreement-tier-set legend { margin-bottom: .6rem; color: #584a60; font-size: .74rem; font-weight: 750; }
.agreement-tier-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .65rem; }
.agreement-tier { display: flex; min-width: 0; align-items: flex-start; gap: .55rem; padding: .85rem; border: 1px solid #ded5e2; border-radius: 4px; background: linear-gradient(150deg, #fffefa, #faf7fb); cursor: pointer; }
.agreement-tier:has(input:checked) { border-color: #80628e; box-shadow: inset 0 0 0 1px #80628e; background: #f5f0f7; }
.agreement-tier input { margin: .25rem 0 0; accent-color: #765784; }
.agreement-tier > span { display: grid; gap: .4rem; }
.agreement-tier b { color: #392943; font-family: var(--font-display, Georgia, serif); font-size: .95rem; }
.agreement-tier small { color: #665a6c; font-size: .69rem; line-height: 1.4; }
.agreement-tier strong { color: #604271; font-size: .9rem; }
.agreement-tier strong i { color: #746878; font-size: .66rem; font-style: normal; font-weight: 500; }
.agreement-payment-note { display: flex; gap: .75rem; align-items: flex-start; margin-top: 1rem; padding: .9rem; border-left: 3px solid #a98745; background: #f7f3e9; }
.agreement-note-mark { display: grid; width: 28px; height: 28px; flex: 0 0 28px; place-items: center; border-radius: 50%; background: #ebe2ce; color: #66542c; font-size: .64rem; font-weight: 800; }
.agreement-payment-note p { margin: 0; color: #5a5145; font-size: .78rem; line-height: 1.55; }
.agreement-payment-note strong { color: #493a22; }
.agreement-contact-line { margin: .85rem 0 0; color: #5b5060; font-size: .79rem; line-height: 1.55; }
.agreement-contact-line a { color: #654575; font-weight: 750; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.agreement-clause { padding: 1rem 0 .3rem; }
.agreement-clause h3, .nda-clause h3 { margin: 0 0 .4rem; color: #513d5b; font-size: .9rem; font-weight: 750; }
.agreement-clause p, .nda-clause p { margin: 0; color: #564d5a; font-size: .79rem; line-height: 1.65; }
.agreement-clause--highlight { margin: .75rem 0; padding: 1rem; border: 1px solid rgba(116, 83, 132, .22); background: linear-gradient(125deg, rgba(234, 225, 239, .72), rgba(249, 246, 239, .8)); }
.agreement-clause--highlight h3 { color: #573e65; }
.nda-clause { padding: .85rem 0 .35rem; }
.nda-caution { margin: 1rem 0 0; padding: .75rem .9rem; border: 1px dashed rgba(141, 100, 68, .36); color: #63543f; background: #faf6ec; font-size: .75rem; line-height: 1.55; }
.agreement-date-field { margin: 1rem 0; padding: .75rem .9rem; border: 1px solid #ddd4e1; }
.agreement-date-field legend { padding: 0 .35rem; color: #5c4e63; font-size: .75rem; font-weight: 700; }
.date-inputs { display: flex; align-items: end; gap: .5rem; }
.date-inputs label { display: grid; width: 92px; gap: .25rem; color: #66596c; font-size: .66rem; }
.date-inputs input { width: 100%; min-width: 0; border: 1px solid #d8cedd; border-radius: 3px; padding: .5rem .45rem; color: #312436; background: #fffefa; font: inherit; font-size: .8rem; }
.signature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
.signature-card { display: grid; align-content: start; gap: .5rem; min-width: 0; padding: .9rem; border: 1px solid #ddd4e1; background: #fffdfa; }
.signature-card > p { margin: 0; color: #49384f; font-size: .75rem; font-weight: 750; }
.signature-card > strong { color: #4c3955; font-size: .78rem; }
.signature-card > small { color: #726778; font-size: .69rem; }
.signature-rule { height: 28px; border-bottom: 1px solid #796c7e; }
.date-inputs--signature { gap: .35rem; margin-top: .25rem; }
.date-inputs--signature label { width: 62px; }
.agreement-final-note { margin: 1rem 0 0; color: #645b67; font-size: .74rem; line-height: 1.55; }
.agreement-document-foot { display: flex; justify-content: space-between; gap: 1rem; padding-top: 1rem; color: #725f78; font-size: .58rem; font-weight: 750; letter-spacing: .09em; }
.agreement-document-foot span:first-child { margin-right: auto; color: #54405e; }
@media (max-width: 720px) {
  .agreement-intro { grid-template-columns: 1fr; gap: 1.4rem; }
  .agreement-intro-note { max-width: 560px; }
  .agreement-toolbar { align-items: flex-start; flex-direction: column; }
  .agreement-toolbar .button { width: 100%; justify-content: center; }
  .agreement-downloads { width: calc(100% - 1rem); align-items: stretch; flex-direction: column; }
  .agreement-downloads__links { display: grid; grid-template-columns: 1fr; }
  .agreement-downloads__links .button { width: 100%; justify-content: center; }
  .agreement-preview { width: calc(100% - 1rem); }
  .agreement-preview > summary { padding: .8rem; font-size: .82rem; }
  .agreement-preview-content { padding: .7rem; }
  .agreement-preview-figure { padding: .35rem; }
  .agreement-sheet { width: min(100% - 1rem, 980px); padding: 1.2rem .9rem; }
  .agreement-document-head { align-items: flex-start; }
  .agreement-document-meta { max-width: 46%; }
  .agreement-document-meta span { font-size: .52rem; }
  .agreement-document-brand .brand-name { font-size: .59rem; }
  .agreement-field-grid, .signature-grid { grid-template-columns: 1fr; }
  .agreement-field--wide { grid-column: auto; }
  .agreement-tier-grid { grid-template-columns: 1fr; }
  .agreement-tier { padding: .7rem; }
  .agreement-document-foot { flex-direction: column; gap: .35rem; }
}
@media print {
  @page { size: auto; margin: 14mm; }
  html, body { background: #fff !important; color: #211a24 !important; }
  .agreement-page::before, .site-header, .wireframe-banner, .agreement-intro, .agreement-toolbar, .agreement-downloads, .agreement-preview, .site-footer, .skip-link { display: none !important; }
  .agreement-stage { padding: 0 !important; }
  .agreement-sheet { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: #fff !important; }
  .agreement-sheet::after { height: 4px; }
  .agreement-section, .agreement-clause, .nda-clause, .signature-card { break-inside: avoid; }
  .agreement-field input, .agreement-field select, .agreement-field textarea, .date-inputs input { border: 0 !important; border-bottom: 1px solid #9d93a2 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: #211a24 !important; }
  .agreement-field textarea { min-height: 54px; }
  .agreement-warning, .agreement-payment-note, .agreement-clause--highlight, .nda-caution { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  .agreement-document-foot { margin-top: 10mm; border-top: 1px solid #b9afbd; }
}
