/* A369: concise caregiver discovery, using the existing company design. */
.caregiver-page { background:#f6f9fd; color:#001c55; }
.caregiver-page [hidden] { display:none!important; }
.caregiver-main { width:min(100% - 40px,780px); margin:0 auto; padding:32px 0 40px; }
.caregiver-intro { margin:0 0 20px; }
.caregiver-intro .section-kicker { color:#075dbf; font-weight:650; letter-spacing:.07em; text-transform:uppercase; font-size:12px; margin:0 0 12px; }
.caregiver-intro h1 { font-size:clamp(30px,4vw,44px); line-height:1.12; letter-spacing:-.035em; margin:0 0 16px; }
.caregiver-intro p { color:#52657c; font-size:17px; line-height:1.65; margin:0; max-width:650px; }
.caregiver-card { background:#fff; border:1px solid #dbe5f0; border-radius:16px; padding:26px; box-shadow:0 8px 28px rgba(0,28,85,.035); }
.caregiver-card .field { margin:0 0 18px; }
.caregiver-card label { display:block; color:#18385f; font-size:15px; font-weight:600; margin-bottom:7px; }
.caregiver-card label span { color:#65768b; font-size:13px; font-weight:400; }
.caregiver-card select,.caregiver-card input[type="text"],.caregiver-card input[type="email"],.caregiver-card textarea { display:block; width:100%; min-height:48px; border:1px solid #bbcbdc; border-radius:8px; padding:11px 12px; background:#fff; color:#16375e; font:400 16px/1.4 "Segoe UI",Arial,sans-serif; box-sizing:border-box; }
.caregiver-card select:focus-visible,.caregiver-card input:focus-visible,.caregiver-card textarea:focus-visible { outline:3px solid #a7d2ff; outline-offset:2px; }
.caregiver-context { display:grid; grid-template-columns:1fr 1fr; gap:0 18px; }
.caregiver-context > .field { grid-column:1/-1; }
.caregiver-setting-fields { grid-column:1/-1; }
.caregiver-organization-details { margin:0 0 22px; }
.caregiver-organization-details summary { color:#075dbf; cursor:pointer; font-size:14px; line-height:1.5; }
.caregiver-organization-details[open] summary { margin-bottom:12px; }
.caregiver-question-block { margin:8px 0 0; padding:25px 0 0; border:0; border-top:1px solid #e0e8f2; min-width:0; }
.caregiver-question-block legend { float:left; width:100%; font-size:clamp(21px,3vw,26px); line-height:1.35; font-weight:650; letter-spacing:-.02em; padding:0; margin:0 0 10px; }
.caregiver-question-body { clear:both; }
.caregiver-period { color:#617186; font-size:14px; line-height:1.55; margin:0 0 18px; }
.caregiver-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.caregiver-choices .caregiver-choice { display:flex; align-items:center; gap:11px; border:1px solid #c9d7e6; border-radius:9px; padding:14px 15px; min-height:55px; margin:0; cursor:pointer; font-weight:500; box-sizing:border-box; }
.caregiver-choice:hover { background:#f4f8fe; border-color:#77a9e0; }
.caregiver-choice:has(input:checked) { background:#edf5ff; border-color:#075dbf; box-shadow:inset 0 0 0 1px #075dbf; }
.caregiver-choice input { width:18px; height:18px; margin:0; accent-color:#075dbf; flex:none; }
.caregiver-choice span { font-size:15px!important; color:#17395f!important; font-weight:500!important; }
.caregiver-comments,.caregiver-follow-up { margin-top:18px; padding-top:16px; border-top:1px solid #e0e8f2; }
.caregiver-comments summary,.caregiver-follow-up summary { color:#17395f; font-size:15px; font-weight:650; cursor:pointer; line-height:1.5; }
.caregiver-comments[open] summary,.caregiver-follow-up[open] summary { margin-bottom:15px; }
.caregiver-follow-up label.caregiver-consent { display:flex; align-items:flex-start; gap:10px; margin:0 0 16px; font-size:14px; font-weight:400; line-height:1.6; }
.caregiver-consent input { flex:none; width:18px; height:18px; margin:3px 0 0; accent-color:#075dbf; }
.caregiver-consent span { font:inherit!important; color:#415773!important; }
.caregiver-contact-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.caregiver-submit-area { margin-top:24px; }
.caregiver-privacy { color:#617186; font-size:12px; line-height:1.65; margin:0 0 18px; }
.caregiver-privacy a,.caregiver-help a { color:#075dbf; text-decoration:underline; }
.caregiver-security { min-height:24px; margin:0 0 14px; }
.caregiver-security-status { color:#617186; font-size:12px; line-height:1.5; margin:6px 0; }
.caregiver-retry { background:none; border:0; padding:6px 0; font:600 14px/1.5 "Segoe UI",Arial,sans-serif; color:#075dbf; cursor:pointer; text-decoration:underline; }
.caregiver-submit-area .button { min-height:50px; width:100%; }
.caregiver-status { margin:12px 0 0; font-size:14px; line-height:1.6; color:#415773; }
.caregiver-page .is-error { color:#a52036; }
.caregiver-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.caregiver-thanks { text-align:center; padding:46px 30px; }
.caregiver-thanks:focus { outline:none; }
.caregiver-thanks-mark { display:grid; place-items:center; width:54px; height:54px; border-radius:50%; background:#e5f3ec; color:#18784c; font-size:28px; margin:0 auto 18px; }
.caregiver-thanks h2 { font-size:28px; line-height:1.3; margin:0 0 14px; }
.caregiver-thanks p { color:#52657c; font-size:16px; line-height:1.65; }
.caregiver-thanks .button { margin-top:10px; }
.caregiver-help { text-align:center; font-size:13px; color:#617186; line-height:1.7; margin:22px 0 0; }
@media(max-width:600px) {
  .caregiver-main { width:calc(100% - 32px); padding:20px 0 30px; }
  .caregiver-intro p { font-size:16px; }
  .caregiver-card { padding:23px 20px; border-radius:12px; }
  .caregiver-contact-fields { grid-template-columns:1fr; gap:0; }
  .caregiver-choice span { font-size:14px!important; }
}
@media(max-width:380px) {
  .caregiver-card { padding:22px 16px; }
  .caregiver-choices .caregiver-choice { padding:11px 9px; gap:8px; }
}

/* A369.1: four frequency choices and a collapsed optional comment. */
.caregiver-card textarea { resize:vertical; min-height:76px; }
.caregiver-comments .field { margin-bottom:0; }
.caregiver-comments-help { color:#617186; font-size:12px; line-height:1.5; margin:7px 0 0; }
.caregiver-choice span { min-width:0; }
@media(max-width:299px) { .caregiver-choices { grid-template-columns:1fr; } }

/* Compact second question; interest does not opt the respondent into contact. */
.caregiver-interest-block { border:0; border-top:1px solid #e0e8f2; margin:20px 0 0; padding:18px 0 0; min-width:0; }
.caregiver-interest-block legend { float:left; width:100%; padding:0; margin:0 0 12px; font-size:18px; font-weight:650; line-height:1.4; letter-spacing:-.01em; }
.caregiver-interest-choices { clear:both; grid-template-columns:repeat(3,minmax(0,1fr)); }
.caregiver-interest-choices .caregiver-choice { justify-content:center; gap:8px; padding:10px 8px; min-height:46px; }
@media(max-width:299px) { .caregiver-interest-choices { grid-template-columns:1fr; } }

/* A373: branching experience form, matching existing controls and type. */
.experience-perspective,.experience-details { border:0; padding:0; margin:0; min-width:0; }
.experience-perspective > legend { font-size:21px; font-weight:650; line-height:1.35; margin-bottom:16px; padding:0; }
.experience-paths { grid-template-columns:1fr; }
.experience-details { margin-top:26px; }
.experience-question { min-width:0; border:0; border-top:1px solid #e0e8f2; margin:24px 0 0; padding:20px 0 0; }
.experience-question legend { float:left; width:100%; box-sizing:border-box; padding:0; margin:0 0 14px; font-size:18px; line-height:1.45; font-weight:650; }
.experience-question > .caregiver-choices,.experience-question > select,.experience-question > p { clear:both; }
.experience-age { display:flex!important; gap:10px; align-items:center; margin-top:24px; }
.experience-age input { flex:none; width:18px; height:18px; accent-color:#075dbf; }
.experience-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; }
@media(max-width:600px) { .caregiver-choices { grid-template-columns:1fr; } .experience-question legend { font-size:17px; } }

/* A373.2: separate eligibility from the invitation to share an experience. */
.caregiver-intro .experience-eligibility { margin-top:10px; font-size:14px; line-height:1.5; }
