/* Final editorial and form pass. Motion lives in motion.css. */
html{scroll-padding-top:0;scroll-behavior:auto}
.motion-group-card{scroll-margin-top:24px}
.hero-stage{background:var(--ink);color:var(--paper);overflow:clip}
.hero-stage .hero{min-height:740px;padding-block:62px 82px}
.hero-stage h1{font-size:clamp(48px,5.2vw,78px);line-height:1.25;margin-bottom:25px}
.hero-stage .hero-lead{line-height:1.8}
.hero-stage h1 em{color:var(--gold-light)}
.hero-stage .eyebrow,.hero-stage .hero-note{color:#c3bca9}
.hero-stage .hero-lead{color:#c5c8bd}
.hero-stage .availability{border-color:var(--rule-light);color:#b6b9ac}
.hero-stage .availability strong{color:var(--paper)}
.hero-stage .button-primary{color:var(--ink);background:var(--gold-light)}
.hero-stage .button-primary:hover{background:#eee0bd}
.hero-stage .button-primary span{color:var(--ink)}
.hero-stage .hero-index{border-color:var(--rule-light);color:#a8b09f}
.hero-stage .roster{background:#1d231e;border-color:#4c5547}
.hero-stage .roster-head,.hero-stage .roster-list li{border-color:#394334}
.hero-stage .roster::before{border-color:#655d45}
.hero-stage .micro-label,.hero-stage .roster-no,.hero-stage .roster-stamp,.hero-stage .roster-link{color:var(--gold-light)}
.hero-stage .roster-status{color:#b6bdad}
.roster-list a{display:block;padding-block:8px;transition:color 140ms ease}
.roster-list a:hover{color:var(--gold-light)}
.hero-stage .hero-index span:first-child{letter-spacing:.3em}
.entrust{background:var(--paper)}
.entrust .section-main>p,.entrust .history-note p{color:#4e584c}
.entrust .section-main>.light{color:#374331!important}
.entrust .section-kicker,.entrust .section-kicker span,.entrust .vertical-note,.entrust .history-note .micro-label{color:#746039}
.entrust .scripture{color:#6d5c36}
.entrust .scripture cite{color:#62695e}
.entrust .history-note{border-color:var(--rule);background:rgba(255,255,255,.18)}
.entrust .history-note h3{color:#5c5031}
.cycle-context{max-width:680px;margin:36px auto 0;color:#485242;font-size:17px;line-height:1.9}
.button{font-size:16px}
.notice-bar,.site-nav{font-size:14px}
.group-card .card-service{font-size:16px;line-height:1.8}
.group-card .card-heart{font-size:17px;line-height:1.8}
.group-card .card-heart{margin-bottom:20px}
.group-card>summary{min-height:395px}
.group-card .card-body p{font-size:16px;line-height:1.85}
.group-card>summary{transition:background-color 140ms ease}
.group-card>summary:hover{background:#202821}
.defense-list p,.work-grid p,.crossroads p,.credential-list p,.credential-end p,.need-grid p,.section-main>p,.history-note p,.group-examples p,.unseen p:last-child,.practice-grid p,.journey-list p,.takeaways span,.clarifications p,.faq summary,.faq p{font-size:16px}
.defense-mapping{padding-top:42px;margin-top:42px;border-top:1px solid var(--rule-light)}
.defense-mapping h3{font-size:27px;margin-bottom:24px}
.defense-mapping dl{margin:0}
.defense-mapping dl>div{display:grid;grid-template-columns:92px 1fr;gap:24px;padding:16px 0;border-bottom:1px solid var(--rule-light)}
.defense-mapping dt{font-family:var(--serif);font-size:20px;color:var(--gold-light)}
.defense-mapping dd{margin:0;color:#c8cebf;font-size:16px}
.registration{background:var(--paper-light);border-top:1px solid var(--rule)}
.registration-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,8vw,120px)}
.registration-intro{align-self:start}
.form-status{font-size:16px;color:#5c635b;max-width:26em;border-left:2px solid #8e7743;padding-left:18px;margin-top:32px}
.form-vacancies{font-size:16px;line-height:2;margin-top:35px}
.form-vacancies a{border-bottom:1px solid #8f805c}
.form-step{display:flex;gap:20px;align-items:center;font-size:14px;letter-spacing:.08em;color:#776039;padding-top:22px;border-top:1px solid var(--rule)}
.form-step span{font-family:var(--serif);font-size:24px;color:var(--ink);letter-spacing:.03em}
.registration-fields>label,.field-pair>label{display:flex;flex-direction:column;gap:10px;margin-bottom:24px;font-size:16px;font-weight:500}
.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.registration-fields input[type=text],.registration-fields input[type=tel],.registration-fields textarea{width:100%;min-width:0;border:1px solid #b5b7a9;background:transparent;border-radius:0;padding:13px 15px;font:inherit;color:var(--ink);line-height:1.7;transition:border-color 140ms ease,background-color 140ms ease}
.registration-fields textarea{resize:vertical;min-height:130px}
.registration-fields input::placeholder,.registration-fields textarea::placeholder{color:#70776a;font-size:15px;font-weight:400}
.registration-fields input:focus-visible,.registration-fields textarea:focus-visible{outline:2px solid #746039;outline-offset:3px;background:#fffdf7}
.field-help{margin-top:-13px;margin-bottom:36px;font-size:14px;color:#62695e}
.refuge-options{padding:0;border:0;margin:0 0 28px;display:flex;gap:24px;flex-wrap:wrap}
.refuge-options legend{margin-bottom:10px;font-size:16px}
.refuge-options label{display:flex;gap:10px;align-items:center;font-size:16px;cursor:pointer;min-height:36px}
.refuge-options input{width:18px;height:18px;accent-color:#3c4835}
.consent-pending{font-size:14px;color:#62695e;line-height:1.7;padding-top:18px;border-top:1px solid var(--rule)}
.registration-submit{width:100%;color:#525c4d;background:#e0e5d9;border-color:#bcc5b3;cursor:not-allowed;opacity:1;font-family:var(--sans);font-size:16px}
.registration-submit:active{transform:none}
.registration-submit:disabled{opacity:1}
@media(max-width:780px){.hero-stage .hero{min-height:0}.registration-grid{grid-template-columns:1fr;gap:36px}.registration-intro .section-title{max-width:none}.form-status{max-width:100%}.defense-mapping dl>div{grid-template-columns:65px 1fr;gap:16px}}
@media(max-width:520px){.notice-bar{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;padding:7px 18px;font-size:14px;line-height:1.7}.notice-bar>span:first-child{grid-column:1/-1}.notice-bar .notice-divider{display:none}.site-nav{gap:0;justify-content:space-between;overflow:visible;font-size:14px}.site-nav .nav-action{display:none}.hero-stage h1{font-size:clamp(40px,10.7vw,55px);line-height:1.4}.hero-stage .hero{padding-top:48px}.hero-stage .hero-actions{flex-direction:row;align-items:center;gap:17px}.hero-stage .hero-note{font-size:14px}.field-pair{grid-template-columns:1fr;gap:0}.defense-mapping h3{font-size:24px}.form-step{margin-top:24px}}
@media(max-width:520px){.group-card>summary{display:flex;flex-direction:column;align-items:flex-start;min-height:0;padding:25px 22px;gap:0}.group-card h3{font-size:28px;margin-top:13px}.group-card .vacancy{margin-top:16px}.group-card .card-service{margin-top:19px}.group-card .card-heart{margin-top:12px;margin-bottom:22px}.group-card .details-hint{margin-top:0}.group-card .card-body{padding:0 22px 25px}}
@media(prefers-reduced-motion:reduce){.roster-list a,.registration-fields input,.registration-fields textarea,.group-card>summary{transition:none}}

/* Contrast corrections measured against rendered paper and gold surfaces. */
:root{--muted:#66665d}
.seal,.unseen-mark,.defense-number,.layers b,.credential-no,.takeaways b{color:#746039}
.section:not(.section-dark) .section-kicker span{color:#746039}
.section:not(.section-dark) .section-title em{color:#806b3e}
.section.assigned .section-kicker span,.section.assigned .section-title em{color:#393729}
.cycle-caption,.practice-close,.commitment-copy .fine-print{color:#626158}
.credential-end strong{color:#746039}
.clarifications span{color:#69665d}
.button-light span{color:#746039}
.registration-fields input::placeholder,.registration-fields textarea::placeholder{color:#666d60}
.site-nav a:not(.nav-action):hover{color:#746039}

.defense-word,.nav-action span{color:#746039}
.nav-action:hover span{color:var(--gold-light)}

a:focus-visible,summary:focus-visible{outline-color:#746039}
.section-dark a:focus-visible,.section-dark summary:focus-visible,.hero-stage a:focus-visible,.closing a:focus-visible,.site-footer a:focus-visible{outline-color:var(--gold-light)}
.registration-fields input[type=text],.registration-fields input[type=tel],.registration-fields textarea{border-color:#858c7e}

.journey-date,.closing-status small{font-size:16px}
@media(max-width:520px){.closing-inner>p:not(.section-kicker){font-size:16px}}
