/* Preserve the existing identity while clarifying forms and contact navigation. */
[hidden] { display: none !important; }
.site-header .nav-contact-panel a, .site-header .nav-contact-panel a:visited { color: var(--ink, #172726); }
.site-header .nav-contact-panel a:hover, .site-header .nav-contact-panel a:focus-visible, .site-header .nav-contact-panel a[aria-current] { color: var(--accent, #0f6e68); background: var(--bg-tint, #edeae1); }
.site-header .nav-contact-panel a:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.site-header .nav-contact[open] summary { color: var(--masthead-text, #f9f7f2); }
.site-header .nav-contact summary::selection, .site-header .nav-contact-panel a::selection { color: #f9f7f2; background: #1f4a44; }
.btn-coffee { color: var(--muted); background: transparent; border-color: var(--rule); }
.btn-coffee:hover { color: var(--accent); border-color: var(--accent); background: var(--surface); }
.coffee-choice { display: inline-flex; flex-direction: column; align-items: flex-start; gap: .2rem; }
.coffee-note { color: var(--muted); font: .72rem/1.3 var(--font-sans); }
.apply-block .btn-row { align-items: flex-start; }
.form-page .article-header { margin-bottom: 1.25rem; }
.form-page .page-lead { max-width: 68ch; }
.form-page .interest-form { max-width: 72ch; margin-top: 1.6rem; }
.form-page .interest-form fieldset { margin: 0 0 1.6rem; padding: 0; border: 0; }
.form-page .interest-form legend { width: 100%; font-size: 1.1rem; font-weight: 700; margin: 0 0 .35rem; }
.form-page .field-help { margin: 0 0 .65rem; color: var(--muted); font-size: .92rem; }
.choice-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem 1rem; }
.form-page .interest-form .check { margin: 0; padding: .55rem .25rem; align-items: flex-start; }
.choice-grid .check { border-bottom: 1px solid var(--rule); }
.form-page .interest-form .check input { flex: 0 0 auto; margin-top: .22rem; }
.form-page .interest-form label:not(.check) { margin-top: 1.15rem; }
.form-page .interest-form textarea { resize: vertical; }
.form-page .interest-form input:focus-visible, .form-page .interest-form select:focus-visible, .form-page .interest-form textarea:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.course-context { margin: 1.1rem 0 1.8rem; padding: 1.1rem 0; border-block: 1px solid var(--rule); }
.course-context h2 { font-size: 1.25rem; margin: 0 0 .65rem; }
.course-context p, .course-context li { font-size: .97rem; }
.intro-details summary { cursor: pointer; font: 700 1.15rem/1.35 var(--font-serif); color: var(--ink); padding-block: .25rem .6rem; }
.intro-details summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.intro-details .session-topics { padding-left: 1.4rem; }
.intro-details .session-topics li { margin-block: .4rem; }
.intro-details .quiet-row { display: flex; flex-wrap: wrap; gap: .6rem 1rem; }
.external-options { margin: 1.4rem 0; padding: 1rem 0; border-block: 1px solid var(--rule); max-width: 72ch; }
.external-options h2 { font-size: 1.2rem; margin: 0 0 .6rem; }
.external-options p { font-size: .95rem; margin: .5rem 0; }
.external-options .btn-row { gap: .6rem; margin: .8rem 0; }
.external-options .btn { font-size: .85rem; }
.external-options .external-list { margin: .75rem 0 0; padding-left: 1.25rem; }
.external-list li { margin: .55rem 0; }
.form-page .consent-block { margin-top: 1.6rem; }
.form-page .consent-block .check { font-size: .92rem; }
.form-page .privacy-details { margin: 1.8rem 0 2.2rem; max-width: 72ch; font-size: .9rem; color: var(--muted); }
.privacy-details summary { cursor: pointer; font: 600 .94rem/1.4 var(--font-sans); color: var(--muted); padding-block: .55rem; }
.privacy-details p { font-size: .9rem; }
.privacy-details summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.form-mode { color: var(--muted); border: 1px solid var(--rule); padding: .75rem; margin: 1rem 0; font-size: .9rem; }
.form-page .form-status { margin: .8rem 0 0; padding: .65rem 0; font-size: .98rem; }
.form-page .form-status[data-state=error] { color: #8b2820; }
.form-page .form-status[data-state=success] { color: var(--teal-deep, #1f4a44); }
.form-page .bot-field { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.community-signup { margin: .7rem 0 1.5rem; }
@media (max-width: 600px) { .choice-grid { grid-template-columns: 1fr; gap: .1rem; } .external-options .btn-row { align-items: stretch; flex-direction: column; } .external-options .btn { text-align: center; } .form-page .article-header h1 { font-size: clamp(1.8rem, 7vw, 2.4rem); } }
