/* Maestro Contact — states for the approved corridor form. Uses the theme's own tokens. */
.corridor .cfield__opt { margin-left: 8px; text-transform: none; letter-spacing: 0.04em; font-size: 10.5px; color: var(--dim); opacity: 0.85; }
.corridor .cfield__select {
  -webkit-appearance: none; appearance: none; cursor: pointer; padding-right: 26px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%239fb6d6' stroke-width='1.4'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 4px center;
}
.corridor .cfield__select option { background: #07101f; color: #e6eefb; }
.corridor .cfield__err { font-size: 12.5px; line-height: 1.4; color: #ffc2c2; letter-spacing: 0.01em; }
.corridor .cfield__err:empty { display: none; }
.corridor .cfield.is-invalid .cfield__in { border-bottom-color: rgba(255, 170, 170, 0.8); }
.corridor .cfield.is-invalid .cfield__k { color: #ffcdcd; }
.corridor .cfield__in:disabled { opacity: 0.6; }
.corridor__status { margin: 0; font-size: 13.5px; line-height: 1.45; color: #ffcdcd; text-align: center; }
.corridor__status[hidden] { display: none; }
#corridorSend.is-sending { opacity: 0.75; cursor: progress; }
.corridor__form[hidden] { display: none; }
.corridor__success { display: grid; justify-items: center; gap: 14px; margin-top: 18px; text-align: center; outline: none; }
.corridor__success[hidden] { display: none; }
.corridor__success-star { width: 8px; height: 8px; border-radius: 50%; background: var(--core); box-shadow: 0 0 34px 12px rgba(180, 214, 255, 0.5), 0 0 90px 36px rgba(120, 165, 235, 0.22); animation: starBreatheDot 6s ease-in-out infinite; margin-bottom: 6px; }
.corridor__success-title { margin: 0; font-size: clamp(22px, 2.6vw, 30px); font-weight: 300; line-height: 1.25; color: var(--core); text-shadow: 0 0 30px rgba(160, 200, 255, 0.45); }
.corridor__success-text { margin: 0; max-width: 44ch; font-size: 16px; line-height: 1.6; color: var(--mist); }
.corridor__success-note { margin: 0; font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--dim); }
.corridor__success-note[hidden] { display: none; }
.corridor__success-close { margin-top: 8px; }
/* One full frame, and one scroll at most.
 *
 * This used to cap the corridor's height and give its contents a scrollbar of
 * their own, so the whole composition would fit whatever the window. It did
 * fit — but at 1366×768 and 1536×720 the Transmit button ended up below the
 * fold of a scrolling region inside a dialog, which is the one place a submit
 * button must never be. The corridor is a two-column composition on those
 * sizes now (see main.css) and has the room it needs, so the inner scroller
 * is gone. On a short phone the page itself scrolls, which is ordinary and
 * reachable; a nested one was neither. */
.corridor__inner { padding: 2px 6px 4px; }
.mc-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
@media (prefers-reduced-motion: reduce) { .corridor__success-star { animation: none; } }
/* Browser autofill (choosing a saved name or email) keeps the corridor's transparent field. */
.cfield__in:-webkit-autofill,
.cfield__in:-webkit-autofill:hover,
.cfield__in:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--frost);
  caret-color: var(--frost);
  transition: background-color 600000s 0s, color 600000s 0s, border-color 0.3s, box-shadow 0.4s;
}
.cfield__in:autofill { background: none; }
