/* Public FAQs: compact, readable answers with progressive search enhancement. */
.faq-page {background:linear-gradient(180deg,#f5f9f5,#fff 55%);}
.faq-page [hidden],.home-faqs [hidden] {display:none!important;}
.faq-intro {display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:36px;margin-bottom:28px;}
.faq-intro h2,.home-faqs-intro h2,.faq-next-step h2 {font-size:clamp(1.8rem,3.2vw,2.6rem);letter-spacing:-.035em;line-height:1.15;margin:8px 0 12px;}
.faq-intro > p {color:#51695b;line-height:1.7;margin:0 0 10px;max-width:580px;}
.faq-search-panel {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(200px,.8fr) auto;gap:14px;align-items:end;padding:25px;border:1px solid #49725a;border-radius:16px;background:linear-gradient(135deg,#133b2b,#204b36);color:#f2fbef;box-shadow:0 14px 34px #143c2510;}
.faq-search-panel label {display:block;font-weight:650;font-size:.85rem;margin-bottom:8px;}
.faq-search-panel input,.faq-search-panel select {display:block;width:100%;min-height:46px;border:1px solid #a8c2af;border-radius:8px;padding:11px 13px;background:#f8fcf7;color:#163a29;font:inherit;font-size:.92rem;box-sizing:border-box;}
.faq-search-panel input::placeholder {color:#617267;opacity:1;}
.faq-search-panel > p {grid-column:1/-1;font-size:.78rem;line-height:1.5;color:#d0e2d3;margin:0;}
.faq-reset {min-height:46px;padding:10px 16px;border:1px solid #8faf93;border-radius:8px;background:#ffffff0d;color:#f1faee;font:inherit;font-size:.85rem;cursor:pointer;}
.faq-reset:hover {background:#ffffff1c;}
.faq-topic-nav {display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 24px;}
.faq-topic-nav a {display:inline-flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid #c9dece;border-radius:7px;font-size:.75rem;line-height:1.35;text-decoration:none;color:#315c41;background:#ffffffb3;}
.faq-topic-nav a span {font-size:.65rem;color:#476a52;border-left:1px solid #d0e2d3;padding-left:8px;}
.faq-topic-nav a:hover {background:#e8f3e8;border-color:#7ea889;}
.faq-results-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid #d3e3d7;border-bottom:1px solid #d3e3d7;margin-bottom:30px;}
.faq-results-count {margin:0;color:#526a5b;font-size:.85rem;}
.faq-results-heading .text-link {font-size:.84rem;flex-shrink:0;}
.faq-topic {scroll-margin-top:120px;margin-bottom:35px;}
.faq-topic-heading {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px;}
.faq-topic-heading h2 {font-size:1.1rem;letter-spacing:-.015em;margin:0;color:#163e29;}
.faq-topic-heading > a {display:inline-flex;align-items:center;gap:6px;font-size:.77rem;color:#286b3d;text-underline-offset:3px;}
.faq-topic-heading svg,.faq-answer-links svg,.home-faq-link svg {width:14px;height:14px;}
.faq-article-grid,.home-faqs-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start;}
.faq-article {min-width:0;border:1px solid #cbded0;border-radius:10px;background:#ffffffc9;overflow:hidden;scroll-margin-top:120px;}
.faq-article summary {display:flex;align-items:center;justify-content:space-between;gap:18px;list-style:none;cursor:pointer;padding:17px 18px;color:#224c32;font-size:.88rem;font-weight:650;line-height:1.5;}
.faq-article summary::-webkit-details-marker {display:none;}
.faq-article summary:hover {background:#f0f7ee;}
.faq-toggle {flex-shrink:0;display:grid;place-items:center;width:23px;height:23px;border:1px solid #c2d9c6;border-radius:50%;color:#327346;font-size:1rem;font-weight:400;transition:transform .2s;}
.faq-article[open] {border-color:#8ab297;background:#fff;box-shadow:0 5px 18px #163b2405;}
.faq-article[open] .faq-toggle {transform:rotate(45deg);}
.faq-answer {padding:0 18px 18px;}
.faq-answer > p {font-size:.85rem;color:#506759;line-height:1.8;margin:0 0 14px;}
.faq-answer a {color:#23653b;text-underline-offset:3px;}
.faq-answer-links {display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;padding-top:12px;border-top:1px solid #e0ebe2;}
.faq-answer-links a,.home-faq-link {font-size:.74rem;display:inline-flex;align-items:center;gap:5px;}
.faq-answer > .faq-source {font-size:.72rem;line-height:1.6;color:#617367;}
.faq-article:target {border-color:#286e3d;box-shadow:0 0 0 3px #488b561f;}
.faq-no-results {padding:30px;border:1px dashed #94b59c;border-radius:12px;background:#f3f8ef;margin-bottom:30px;}
.faq-no-results h2 {font-size:1.25rem;margin:0 0 12px;}
.faq-no-results p {color:#536c5c;font-size:.9rem;}
.faq-next-step {display:flex;justify-content:space-between;align-items:center;gap:28px;background:linear-gradient(125deg,#173e2c,#244d34);color:#f0f9eb;padding:32px;border:1px solid #5e8867;border-radius:14px;margin-top:45px;}
.faq-next-step h2 {font-size:1.8rem;color:#f4fbee;}
.faq-next-step p {font-size:.88rem;color:#d2e5d4;margin:0;}
.faq-next-step .eyebrow {font-size:var(--ncf-eyebrow-size,14px);color:#bde3aa;font-weight:600;line-height:1.5;letter-spacing:.08em}
.faq-next-step .button {flex-shrink:0;background:#c6eab8;color:#163c25;border-color:#c6eab8;}
.home-faqs {background:linear-gradient(135deg,#eef5ec,#f8fbf6);border-top:1px solid #dce8d9;border-bottom:1px solid #dce8d9;}
.home-faqs-intro {display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px;}
.home-faqs-intro p:not(.eyebrow) {font-size:.9rem;color:#546b59;margin:0;}
.home-faqs-intro > .button {flex-shrink:0;font-size:.85rem;background:transparent;color:#245a35;border:1px solid #9abc9f;}
.faq-page :is(input,select,button,a,summary):focus-visible,.home-faqs :is(a,summary):focus-visible {outline:3px solid #43844b;outline-offset:4px;}
.faq-search-panel :is(input,select,button):focus-visible {outline-color:#c6edaf;}
@media(max-width:900px){.faq-search-panel{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.faq-reset{grid-column:1/-1;justify-self:start}.faq-intro{grid-template-columns:1fr;gap:8px}.faq-next-step{align-items:flex-start;flex-direction:column}.faq-topic{scroll-margin-top:150px}.faq-article{scroll-margin-top:150px}}
@media(max-width:600px){.faq-search-panel{grid-template-columns:1fr;padding:18px}.faq-article-grid,.home-faqs-grid{grid-template-columns:1fr}.faq-topic-nav{gap:6px}.faq-topic-nav a{font-size:.7rem;padding:7px 9px}.faq-results-heading,.home-faqs-intro{align-items:flex-start;flex-direction:column;gap:14px}.faq-topic-heading{align-items:flex-start}.faq-topic-heading h2{font-size:1rem;max-width:70%}.faq-topic-heading>a{font-size:.7rem}.faq-article summary{padding:15px;font-size:.86rem}.faq-answer{padding:0 15px 16px}.faq-next-step{padding:24px}}
@media(prefers-reduced-motion:reduce){.faq-toggle{transition:none}}

/* In-question help stays inside the form without replacing or clearing a draft. */
.job-question .job-field-help {margin-top:14px;border:1px solid #c4dbc7;border-radius:8px;background:#f3f8ef;box-shadow:none;overflow:hidden;}
.job-question .job-field-help > summary {display:flex;grid-template-columns:none;align-items:center;gap:9px;padding:11px 13px;min-height:42px;font-size:.78rem;font-weight:600;line-height:1.5;color:#28633b;list-style:none;}
.job-question .job-field-help > summary::after {content:'+';position:static;grid-column:auto;grid-row:auto;margin-left:auto;color:#28633b;}
.job-question .job-field-help[open] > summary::after {content:'−';}
.job-question .job-field-help > summary::-webkit-details-marker {display:none;}
.job-question .job-field-help > div {padding:0 13px 13px;}
.job-question .job-field-help p {margin:0 0 10px;font-size:.8rem;line-height:1.75;color:#4a6552;}
.job-question .job-field-help a {font-size:.76rem;color:#28633b;text-underline-offset:3px;}
.job-question .job-field-help :is(summary,a):focus-visible {outline:3px solid #43844b;outline-offset:2px;}
.service-explorer-context {padding:10px 13px;background:#eff6ec;border-left:3px solid #87ad75;color:#48674f;border-radius:0 6px 6px 0;font-size:.8rem;}
.faq-page .sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
