/* A quiet, readable application studio inside the creator campaign. */
body.apply-page.premiere {
  --application-ink: #321c3d;
  --application-secondary: #71566f;
  --application-accent: #9b3469;
  background: #f7f0f5 !important;
  color: var(--application-ink);
  color-scheme: light;
  scrollbar-color: #a785aa #f7f0f5;
}
.apply-page ::selection { background: #ecc3dd; color: #321c3d; }
.apply-page .application {
  width: min(100%, 1080px);
  max-width: 1080px;
  margin: 0 auto;
  padding: 36px 40px 80px;
}
.apply-page .application-home {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  margin-bottom: 40px;
  color: var(--application-secondary);
  font-size: 14px;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: #b69ab3;
  text-underline-offset: 5px;
  transition: color 180ms ease-out;
}
.apply-page .application-home .ui-icon { width: 20px; height: 20px; }
.apply-page .application-home:hover { color: var(--application-accent); }
.apply-page .application a:focus-visible,
.apply-page .application button:focus-visible {
  outline: 3px solid #8d49b0;
  outline-offset: 5px;
}
.apply-page .apply-heading { gap: 32px; align-items: center; }
.apply-page .application h1 {
  font-size: clamp(32px, 5.8vw, 64px);
  line-height: 1.14;
  letter-spacing: -.035em;
  margin: 0;
  text-wrap: balance;
}
.apply-page .application h1 em {
  background: none;
  color: var(--application-accent);
  -webkit-text-fill-color: currentColor;
}
.apply-page .apply-tag {
  margin: 24px 0 0;
  font-size: 12px;
  letter-spacing: .08em;
  color: var(--application-accent);
}
.apply-page .application-stamp {
  width: 116px;
  height: 126px;
  border-radius: 16px;
  font-size: 17px;
  background: #e3c9f3;
  color: #573167;
  box-shadow: 0 12px 25px #3d1b4d12;
  transform: rotate(7deg);
  line-height: 1.35;
}
.apply-page .application-stamp .insta-motion { display: none !important; }
.apply-page .application .intro {
  margin: 24px 0 0;
  font-size: 16px;
  line-height: 1.75;
  color: var(--application-secondary);
  max-width: 65ch;
}
.apply-page .application .notice {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 36px 0;
  padding: 20px 22px;
  border: 1px solid #d5b9c9;
  border-radius: 12px;
  background: #f4e5ed;
  color: #6f3655;
  font-size: 14px;
  line-height: 1.75;
}
.apply-page .notice .ui-icon { width: 21px; height: 21px; flex: 0 0 21px; margin-top: 2px; }
.apply-page .application form {
  padding: 42px 44px;
  background: #fffaf6;
  border: 1px solid #e2cedc;
  border-radius: 16px;
  box-shadow: none;
}
.apply-page .application fieldset {
  min-width: 0;
  margin: 0 0 42px;
  padding: 26px 0 0;
  border: 0;
  border-top: 1px solid #e2cedc;
}
.apply-page .application legend {
  max-width: 100%;
  padding-right: 18px;
  font-size: 23px;
  font-weight: 800;
  line-height: 1.45;
  letter-spacing: -.025em;
  color: var(--application-ink);
}
.apply-page .application .fields { gap: 24px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.apply-page .application label {
  display: block;
  min-width: 0;
  margin: 0 0 24px;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.5;
  color: #57364f;
}
.apply-page .application .fields label { margin-bottom: 0; }
.apply-page .application .photo-uploads input[type="file"] { width: 100%; min-width: 0; padding: 11px; font-size: 13px; color: #5c3d5f; }
.apply-page .application .photo-uploads input[type="file"]::file-selector-button { border: 0; border-radius: 10px; padding: 10px 14px; margin-right: 12px; color: #fff8f2; background: #713e72; font: inherit; font-weight: 700; cursor: pointer; }
.apply-page .application input,
.apply-page .application select,
.apply-page .application textarea {
  min-width: 0;
  width: 100%;
  min-height: 54px;
  margin-top: 9px;
  padding: 14px 16px;
  border: 1px solid #bfa7b8;
  border-radius: 10px;
  background: #fffdfb;
  color: var(--application-ink);
  font-size: 16px;
  line-height: 1.5;
  caret-color: #a6316d;
  transition: border-color 180ms ease-out, background-color 180ms ease-out;
}
.apply-page .application textarea { min-height: 160px; resize: vertical; }
.apply-page .application input::placeholder,
.apply-page .application textarea::placeholder { color: #80677b; opacity: 1; }
.apply-page .application input:hover,
.apply-page .application select:hover,
.apply-page .application textarea:hover { border-color: #96768e; }
.apply-page .application input:focus,
.apply-page .application select:focus,
.apply-page .application textarea:focus {
  border-color: #8950a2;
  outline: 2px solid #8950a2;
  outline-offset: 3px;
  background: #fff;
}
.apply-page .application input:user-invalid,
.apply-page .application select:user-invalid,
.apply-page .application textarea:user-invalid { border-color: #ab3653; background: #fff7f7; }
.apply-page .application input:disabled,
.apply-page .application select:disabled,
.apply-page .application textarea:disabled { background: #eee6ec; color: #755d70; cursor: not-allowed; }
.apply-page .application fieldset > p,
.apply-page .application .privacy-note {
  max-width: 72ch;
  color: var(--application-secondary);
  font-size: 14px;
  line-height: 1.8;
  margin: 0 0 24px;
}
.apply-page .application .primary {
  min-height: 60px;
  gap: 24px;
  padding: 18px 26px;
  border-radius: 12px;
  background: #713955;
  color: #fff9f5;
  box-shadow: 0 8px 20px #54243e1a;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: .025em;
  animation: none;
  transition: background-color 180ms ease-out, transform 180ms ease-out;
}
.apply-page .application .primary:after { display: none; }
.apply-page .application .primary:hover { background: #8b3c65; transform: translateY(-2px); }
.apply-page .application .primary:active { transform: translateY(0); }
.apply-page .application .primary:disabled { opacity: .55; transform: none; cursor: not-allowed; }
.apply-page .application .primary .insta-motion { width: 23px; height: 23px; margin: 0; animation: none; }
.apply-page #form-status {
  color: #842d4b;
  font-size: 15px;
  line-height: 1.8;
  margin: 24px 0 0;
  border-radius: 10px;
}
.apply-page #form-status:empty { display: none; }
.apply-page #form-status:not(:empty) { padding: 18px 20px; background: #f8e5ea; }
.apply-page #form-status:focus { outline: 2px solid #a44367; outline-offset: 4px; }

/* A dark creator studio, using the show palette while keeping fields legible. */
body.apply-page.premiere { --application-ink:#fff5ed; --application-secondary:#ddc8dd; --application-accent:#ffb8d2; background:#211229!important; color:#fff5ed; }
.apply-page .application { max-width:1120px; }
.apply-page .application-home { color:#f2d8e9; text-decoration-color:#f393c6; }
.apply-page .application-home:hover { color:#fff; }
.apply-page .application h1 { color:#fff4eb; font-size:clamp(38px,6.3vw,72px); line-height:1.04; }
.apply-page .application h1 em { color:#ffb7d0; }
.apply-page .apply-tag,.apply-page .application .intro { color:#e4cee1; }
.apply-page .application .notice { background:#3a203a; border-color:#9b6a8b; color:#ffe0eb; }
.apply-page .application form { background:#311c39; border-color:#674460; box-shadow:0 24px 60px #10091c66; }
.apply-page .application fieldset { border-color:#765572; }
.apply-page .application legend { color:#ffd2e5; }
.apply-page .application label { color:#fff4ed; }
.apply-page .application input,.apply-page .application select,.apply-page .application textarea { background:#fff9f4; color:#321c3d; border-color:#d8b8cd; }
.apply-page .application input::placeholder,.apply-page .application textarea::placeholder { color:#765b70; }
.apply-page .application input:focus,.apply-page .application select:focus,.apply-page .application textarea:focus { background:#fff; color:#321c3d; outline-color:#f19bc7; }
.apply-page .application .primary { background:#ed9fc4; color:#2a1531; box-shadow:0 12px 24px #12081966; }
.apply-page .application .primary:hover { background:#ffc1dc; }
.apply-page .application .photo-uploads input[type="file"] { color:#523454; }
.apply-page #form-status:not(:empty) { color:#57243d; background:#ffe1ed; }
.apply-page footer { background:#170d20; }
.apply-page footer {
  gap: 32px;
  padding: 36px max(24px, calc((100vw - 1000px)/2));
  background: #2c1c36;
}
.apply-page footer .footer-show-brand { width: 154px; }
.apply-page footer p { font-size: 12px; line-height: 1.8; }
.apply-page footer p span { color: #d2b6d0; }
.apply-page footer > a:last-child { font-size: 13px; padding: 14px 18px; min-height: 44px; border-radius: 10px; }
@media (max-width: 700px) {
  .apply-page .application { padding: 18px 18px 48px; }
  .apply-page .application-home { margin-bottom: 28px; }
  .apply-page .apply-heading { gap: 16px; }
  .apply-page .application h1 { font-size: clamp(28px, 7.8vw, 48px); letter-spacing: -.035em; }
  .apply-page .application-stamp { width: 74px; height: 88px; font-size: 12px; border-radius: 12px; }
  .apply-page .apply-tag { font-size: 11px; margin-top: 18px; }
  .apply-page .application .intro { margin-top: 22px; font-size: 15px; }
  .apply-page .application .notice { padding: 17px 16px; margin: 26px 0; font-size: 13px; gap: 10px; }
  .apply-page .application form { padding: 28px 20px; }
  .apply-page .application fieldset { margin-bottom: 34px; padding-top: 22px; }
  .apply-page .application legend { font-size: 20px; padding-right: 12px; }
  .apply-page .application .fields { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .apply-page .application input,
  .apply-page .application select,
  .apply-page .application textarea { padding: 14px 12px; font-size: 16px; }
  .apply-page .application .primary { width: 100%; justify-content: center; font-size: 12px; gap: 14px; padding: 17px 12px; }
  .apply-page .application .privacy-note { font-size: 13px; }
  .apply-page footer { padding: 32px 24px; }
  .apply-page footer p { width: 100%; }
}
@media (max-width: 380px) {
  .apply-page .application { padding-inline: 14px; }
  .apply-page .application form { padding-inline: 16px; }
  .apply-page .application-stamp { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .apply-page .application-home,
  .apply-page .application input,
  .apply-page .application select,
  .apply-page .application textarea,
  .apply-page .application .primary { transition: none; }
}
