.nsc-signup-trigger{align-self:flex-start;margin-top:12px}.nsc-signup-form{background:0 0;border:none;border-radius:0;margin-top:20px;padding:20px 0}.nsc-signup-form.is-success{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.nsc-signup-form .signup-success{color:var(--text-primary);margin:0;font-weight:700}.nsc-signup-form .signup-fields{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:768px){.nsc-signup-form .signup-fields{grid-template-columns:1fr 1fr}}.nsc-signup-form .signup-title,.nsc-signup-form .signup-error-summary,.nsc-signup-form .signup-actions{grid-column:1/-1}.nsc-signup-form .signup-title{color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:700}.nsc-signup-form .signup-group{flex-direction:column;gap:6px;min-width:0;display:flex}.nsc-signup-form .signup-group label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-primary);font-size:.8rem;font-weight:700}.nsc-signup-form .signup-group input{border:1.5px solid var(--border-strong);background:var(--surface-primary);color:var(--text-primary);border-radius:6px;padding:11px 13px;font-family:inherit;font-size:.95rem}.nsc-signup-form .signup-group input::placeholder{color:var(--text-secondary)}.nsc-signup-form .signup-group input:focus{outline:2px solid var(--focus-ring);outline-offset:1px;border-color:var(--border-strong)}.nsc-signup-form .signup-group input.has-error{border-color:var(--color-orange-dark)}.nsc-signup-form .signup-error{color:var(--color-orange-dark);margin:0;font-size:.8rem;font-weight:600}.nsc-signup-form .signup-error-summary{font-weight:600}.nsc-signup-form .signup-actions{align-items:center;gap:12px;margin-top:4px;display:flex}
#nsc--calendar{background:var(--surface-primary);flex-direction:column;min-height:100%;display:flex;position:relative}#nsc--calendar .calendar-hint{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);margin:0 0 28px;padding-bottom:20px;font-size:.95rem;line-height:1.6}#nsc--calendar .calendar-empty{color:var(--text-secondary)}#nsc--calendar .calendar-detail-heading{font-family:var(--font-lora);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin:0 0 36px;font-size:.75rem;font-weight:400}#nsc--calendar .nsc-upcoming-events{margin-top:0}#nsc--calendar .calendar-events{flex-direction:column;gap:48px;margin:0;padding:0;list-style:none;display:flex}#nsc--calendar .calendar-event{flex-direction:column;gap:0;display:flex}#nsc--calendar .calendar-event-name{font-family:var(--font-lora);color:var(--text-primary);margin:0 0 8px;font-size:clamp(1.8rem,5vw,2.4rem);font-weight:700;line-height:1.2}#nsc--calendar .calendar-event-subtitle{font-family:var(--font-lora);color:var(--text-secondary);margin:0 0 16px;font-size:1rem;font-style:italic;font-weight:400}#nsc--calendar .calendar-event-description{color:var(--text-primary);margin-bottom:20px;font-size:.95rem;line-height:1.65}#nsc--calendar .calendar-meta{flex-direction:column;gap:0;margin:24px 0;display:flex}#nsc--calendar .calendar-meta-row{border-bottom:1px solid var(--border-subtle);grid-template-columns:1fr auto;align-items:center;gap:24px;padding:12px 0;font-size:.9rem;display:grid}#nsc--calendar .calendar-meta-row:last-child{border-bottom:none}#nsc--calendar .calendar-meta-row dt{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin:0;font-size:.75rem;font-style:normal;font-weight:400}#nsc--calendar .calendar-meta-row dd{text-align:right;color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}#nsc--calendar .calendar-meta-icon{display:none}#nsc--calendar .calendar-note{color:var(--text-primary);background:0 0;border:none;border-radius:0;margin:20px 0;padding:0;font-size:.9rem;line-height:1.65}#nsc--calendar .calendar-note .calendar-note-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:8px;font-size:.75rem;font-weight:400;display:block}#nsc--calendar .calendar-gallery{flex-direction:column;gap:14px;margin-top:36px;display:flex}#nsc--calendar .calendar-gallery-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-accent);font-size:.75rem;font-weight:700}#nsc--calendar .calendar-gallery-grid{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:1440px){#nsc--calendar .calendar-gallery-grid{grid-template-columns:repeat(2,1fr)}}#nsc--calendar .calendar-photo{aspect-ratio:4/3;background:var(--surface-muted);border-radius:8px;position:relative;overflow:hidden}#nsc--calendar .calendar-photo img{width:100%;height:100%}
