@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&display=swap');

:root {
    --primary: #103A8C; --primary-hover: #0A2A6B; --primary-tint: #E8ECFA;
    --secondary: #F47A20; --secondary-hover: #DC6816; --secondary-tint: #FEEEDF;
    --bg: #F8FAFC; --card: #FFFFFF; --border: #E5E7EB; --border-strong: #D1D5DB;
    --text: #1F2937; --text-muted: #6B7280; --text-soft: #9CA3AF;
    --success: #10B981; --success-bg: #ECFDF5; --success-border: #A7F3D0;
    --danger: #DC2626; --danger-bg: #FEF2F2;
    --info-bg: #EFF6FF; --info-border: #BFDBFE;
    --radius-card: 16px; --radius-btn: 12px;
    --shadow-sm: 0 1px 2px rgba(15,23,42,.04);
    --shadow-md: 0 4px 12px rgba(15,23,42,.06);
    --shadow-lg: 0 12px 32px rgba(15,23,42,.10);
    --container: 1200px; --header-h: 80px;
  }
  *,*::before,*::after { box-sizing:border-box; }
  html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
  body { margin:0; font-family:'Inter',system-ui,sans-serif; font-size:15px; line-height:1.55; color:var(--text); background:var(--bg); -webkit-font-smoothing:antialiased; font-feature-settings:'cv11','ss01','tnum'; }
  h1,h2,h3,h4 { margin:0; font-weight:700; letter-spacing:-0.02em; line-height:1.2; }
  p { margin:0; }
  a { color:var(--primary); text-decoration:none; }
  a:hover { text-decoration:underline; }
  button { font-family:inherit; cursor:pointer; }
  .app-header { position:sticky; top:0; z-index:40; height:var(--header-h); background:var(--card); border-bottom:1px solid var(--border); }
  .header-inner { max-width:var(--container); height:100%; margin:0 auto; padding:0 24px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
  .brand { display:flex; align-items:center; gap:10px; color:var(--text); text-decoration:none; }
  .brand:hover { text-decoration:none; }
  .brand-logo { width:44px; height:44px; border-radius:10px; object-fit:contain; background:#fff; padding:2px; }
  .brand-word .n1 { font-family:'Playfair Display',Georgia,serif; font-weight:700; font-size:20px; color:var(--text); line-height:1.15; letter-spacing:-.01em; }
  .brand-word .n1 .accent-word { color:#0F766E; font-style:italic; }
  .brand-word .n2 { font-size:11px; color:var(--text-muted); font-weight:500; letter-spacing:.02em; font-style:italic; }
  .header-actions { display:flex; gap:8px; align-items:center; }
  .btn-login { display:inline-flex; align-items:center; justify-content:center; height:40px; padding:0 16px; background:transparent; color:var(--text); border:1px solid var(--border-strong); border-radius:10px; font-size:13px; font-weight:600; text-decoration:none; line-height:1.2; max-width:280px; text-align:center; }
  .btn-login:hover { background:var(--bg); text-decoration:none; color:var(--text); }
  .btn-demo { display:inline-flex; align-items:center; gap:6px; height:40px; padding:0 16px; background:transparent; color:var(--text-muted); border:0; border-radius:10px; font-size:14px; font-weight:600; text-decoration:none; font-family:inherit; cursor:pointer; }
  .btn-demo:hover { background:var(--bg); color:var(--text); text-decoration:none; }
  .cta-header { display:inline-flex; align-items:center; gap:6px; height:40px; padding:0 18px; background:var(--primary); color:#fff; border-radius:10px; font-size:14px; font-weight:600; text-decoration:none; }
  .cta-header:hover { background:var(--primary-hover); color:#fff; text-decoration:none; }
  .menu-btn { display:none; background:transparent; border:1px solid var(--border); width:40px; height:40px; border-radius:10px; align-items:center; justify-content:center; }
  @media (max-width:900px) { .header-actions .btn-login, .header-actions .btn-demo, .header-actions .cta-header { display:none; } .menu-btn { display:flex; } .brand-word .n2 { display:none; } }
  .mobile-menu { position:fixed; inset:0 0 0 auto; width:min(320px,90vw); z-index:60; background:var(--card); border-left:1px solid var(--border); transform:translateX(100%); transition:transform .3s ease-out; padding:24px 20px; display:flex; flex-direction:column; gap:8px; box-shadow:var(--shadow-lg); }
  .mobile-menu.show { transform:translateX(0); }
  .mobile-menu-backdrop { position:fixed; inset:0; background:rgba(15,23,42,.5); z-index:55; display:none; }
  .mobile-menu-backdrop.show { display:block; }
  .mobile-menu a { padding:12px 14px; border-radius:10px; color:var(--text); font-size:15px; font-weight:500; text-decoration:none; }
  .mobile-menu a:hover { background:var(--bg); }
  .mobile-menu .cta-header { justify-content:center; margin-top:8px; }
  .mobile-menu-close { align-self:flex-end; background:transparent; border:0; font-size:24px; color:var(--text-muted); cursor:pointer; padding:0 6px 8px; }
  .hero { padding:72px 24px 40px; background:linear-gradient(180deg, var(--card) 0%, var(--bg) 100%); border-bottom:1px solid var(--border); }
  .hero-inner { max-width:var(--container); margin:0 auto; text-align:center; }
  .hero h1 { font-family:'Playfair Display',Georgia,serif; font-size:56px; font-weight:600; letter-spacing:-0.02em; max-width:900px; margin:0 auto 20px; line-height:1.08; color:var(--text); }
  .hero h1 .accent { color:var(--primary); font-style:italic; }
  .hero h1 .amp { color:#0F766E; font-style:italic; font-weight:500; }
  .hero-sub { font-family:'Inter',sans-serif; font-size:18px; color:var(--text-muted); max-width:640px; margin:0 auto 44px; line-height:1.6; }
  @media (max-width:640px) { .hero { padding:48px 16px 28px; } .hero h1 { font-size:36px; } .hero-sub { font-size:16px; margin-bottom:32px; } }

  /* Top banner — compact, picture in middle */
  .top-banner {
    background:linear-gradient(90deg, #0F5D5A 0%, #147170 60%, #1a8b8b 100%);
    padding:28px 24px;
    border-bottom:1px solid var(--border);
  }
  .top-banner-inner {
    max-width:var(--container);
    margin:0 auto;
    display:grid;
    grid-template-columns:1fr auto 1fr;
    gap:24px;
    align-items:center;
  }
  .top-banner-tag {
    color:#fff;
    font-family:'Playfair Display',Georgia,serif;
    font-size:20px;
    font-weight:500;
    line-height:1.3;
    font-style:italic;
  }
  .top-banner-tag.right { text-align:right; }
  .top-banner-image {
    width:180px; height:120px;
    border-radius:14px;
    background:#147170;
    border:2px solid #147170;
    display:grid; place-items:center;
    color:rgba(255,255,255,.75);
    text-align:center;
    font-size:12px; font-weight:600;
    padding:0;
    line-height:1.4;
    overflow:hidden;
  }
  .top-banner-image img {
    width:100%; height:100%; object-fit:cover; object-position:center bottom;
    border-radius:12px;
    transform:scale(2);
    transform-origin:center bottom;
  }
  @media (max-width:700px) {
    .top-banner { padding:20px 16px; }
    .top-banner-inner { grid-template-columns:1fr; text-align:center; gap:14px; }
    .top-banner-tag { font-size:15px; }
    .top-banner-tag.right { text-align:center; }
    .top-banner-image { width:140px; height:96px; margin:0 auto; }
  }

  /* THREE-CARD hero grid — Elysium-style */
  .hero-paths { display:grid; grid-template-columns:repeat(3, 1fr); gap:14px; max-width:920px; margin:0 auto; }
  .path-card {
    background:var(--card); border:1px solid rgba(148,163,184,.32);
    border-radius:14px; overflow:hidden;
    text-decoration:none; color:var(--text);
    display:flex; flex-direction:column;
    text-align:left; padding:0;
    box-shadow:0 8px 24px rgba(15,31,78,.07);
    transition:transform .18s, box-shadow .18s, border-color .18s;
  }
  .path-card:hover { transform:translateY(-3px); border-color:rgba(16,58,140,.3); box-shadow:0 16px 34px rgba(15,31,78,.14); text-decoration:none; }
  .path-card .path-band {
    background:#0F766E; color:#fff;
    padding:14px 16px;
    display:flex; align-items:center; gap:10px;
    min-height:82px;
  }
  .path-work .path-band { background:#103A8C; }
  .path-portal .path-band { background:#0B1F4E; }
  .path-band-icon {
    width:32px; height:32px; border-radius:9px;
    background:rgba(255,255,255,.15);
    display:grid; place-items:center; color:#fff; flex-shrink:0;
  }
  .path-band-icon svg { width:18px; height:18px; }
  .path-band h2 {
    color:#fff; font-family:'Playfair Display',Georgia,serif;
    font-size:17px; font-weight:600; line-height:1.24; letter-spacing:-.01em;
    margin:0;
  }
  .path-visual {
    height:108px; position:relative; overflow:hidden;
    background-image:url('../images/care-paths-triptych.png');
    background-repeat:no-repeat;
    background-size:300% auto;
    background-position:left center;
  }
  .path-work .path-visual { background-position:center center; }
  .path-portal .path-visual { background-position:right 70%; }
  .path-visual::after {
    content:''; position:absolute; inset:0;
    background:linear-gradient(180deg, transparent 35%, rgba(7,20,48,.66) 100%);
  }
  .visual-caption { position:absolute; left:14px; bottom:10px; z-index:2; max-width:calc(100% - 64px); color:#fff; font-size:11px; font-weight:700; letter-spacing:.01em; text-shadow:0 1px 4px rgba(0,0,0,.45); }
  .path-visual .chev {
    position:absolute; right:12px; bottom:9px;
    width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.95);
    display:grid; place-items:center; color:#0F766E;
    box-shadow:var(--shadow-md); z-index:2;
  }
  .path-work .path-visual .chev { color:#103A8C; }
  .path-portal .path-visual .chev { color:#0B1F4E; }
  .path-foot {
    padding:11px 16px 14px;
    border-top:1px solid var(--border);
    display:flex; flex-direction:column; gap:5px;
  }
  .path-foot p { font-size:12px; color:var(--text-muted); line-height:1.45; margin:0; }
  .path-foot .goto {
    font-size:13px; font-weight:700; color:var(--text);
    display:inline-flex; align-items:center; gap:6px;
  }
  .path-care .path-foot .goto { color:#0F766E; }
  .path-work .path-foot .goto { color:#103A8C; }
  .path-portal .path-foot .goto { color:#0B1F4E; }
  @media (max-width:760px) {
    .hero-paths { grid-template-columns:1fr; max-width:430px; gap:12px; }
    .path-card { display:grid; grid-template-columns:112px 1fr; grid-template-rows:auto auto; }
    .path-card .path-band { grid-column:2; min-height:72px; padding:11px 14px; }
    .path-visual { grid-column:1; grid-row:1 / span 2; height:100%; min-height:142px; background-size:auto 100%; }
    .path-care .path-visual { background-position:16.5% center; }
    .path-work .path-visual { background-position:50% center; }
    .path-portal .path-visual { background-position:83.5% 70%; }
    .visual-caption { display:none; }
    .path-foot { grid-column:2; padding:9px 14px 12px; }
  }

  /* Blur the dashboard body content */
  .dash-body { position:relative; }
  .dash-blur-wrap { filter:blur(4px); pointer-events:none; user-select:none; }
  .dash-preview-badge {
    position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
    background:rgba(15,31,78,.94); color:#fff;
    padding:10px 18px; border-radius:10px;
    font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
    box-shadow:var(--shadow-lg);
    z-index:5;
    display:flex; align-items:center; gap:8px;
  }
  .dash-preview-badge .l { width:6px; height:6px; border-radius:50%; background:#F59E0B; }
  .dash-preview { max-width:920px; margin:56px auto 0; padding:0 12px; }
  .dash-frame { background:#fff; border:1px solid var(--border); border-radius:16px; overflow:hidden; box-shadow:var(--shadow-lg); }
  .dash-bar { background:#F3F4F6; border-bottom:1px solid var(--border); padding:8px 14px; display:flex; align-items:center; gap:6px; }
  .dash-bar .d { width:11px; height:11px; border-radius:50%; }
  .dash-bar .d.r { background:#EF4444; } .dash-bar .d.y { background:#F59E0B; } .dash-bar .d.g { background:#10B981; }
  .dash-bar-title { font-size:12px; color:var(--text-muted); margin-left:12px; font-weight:500; }
  .dash-body { display:grid; grid-template-columns:180px 1fr; min-height:280px; }
  .dash-sidebar { background:#0B1F4E; padding:16px 12px; display:flex; flex-direction:column; gap:4px; }
  .dash-sb-brand { display:flex; align-items:center; gap:8px; padding:6px 10px; margin-bottom:8px; }
  .dash-sb-brand .m { width:22px; height:22px; border-radius:6px; background:linear-gradient(135deg,#F97316,#F59E0B); }
  .dash-sb-brand span { color:#fff; font-size:12.5px; font-weight:700; font-family:'Playfair Display',serif; }
  .dash-sb-item { padding:7px 10px; border-radius:6px; font-size:11.5px; color:#93A5D4; display:flex; align-items:center; gap:8px; }
  .dash-sb-item.active { background:rgba(255,255,255,.1); color:#fff; }
  .dash-sb-item .dot { width:6px; height:6px; border-radius:50%; background:currentColor; opacity:.7; }
  .dash-main { padding:20px 22px; background:#FAFBFC; }
  .dash-h { font-size:15px; font-weight:700; color:var(--text); margin-bottom:4px; }
  .dash-sh { font-size:11.5px; color:var(--text-muted); margin-bottom:16px; }
  .dash-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:16px; }
  .dash-stat { background:#fff; border:1px solid var(--border); border-radius:8px; padding:10px 12px; }
  .dash-stat .l { font-size:9.5px; color:var(--text-muted); text-transform:uppercase; letter-spacing:.06em; margin-bottom:4px; font-weight:600; }
  .dash-stat .v { font-size:18px; font-weight:700; color:var(--text); font-family:'Playfair Display',serif; }
  .dash-stat .d { font-size:9.5px; color:var(--success); margin-top:2px; font-weight:600; }
  .dash-list { background:#fff; border:1px solid var(--border); border-radius:8px; padding:10px 0; }
  .dash-row { padding:6px 14px; display:flex; align-items:center; gap:10px; font-size:11.5px; }
  .dash-row .av { width:20px; height:20px; border-radius:50%; background:linear-gradient(135deg, var(--primary-tint), var(--secondary-tint)); flex-shrink:0; }
  .dash-row .name { color:var(--text); font-weight:500; flex:1; }
  .dash-row .badge { padding:2px 8px; border-radius:10px; font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
  .dash-row .badge.ok { background:var(--success-bg); color:#065F46; }
  .dash-row .badge.pend { background:#FEF3C7; color:#78350F; }
  @media (max-width:600px) {
    .dash-body { grid-template-columns:1fr; min-height:auto; }
    .dash-sidebar { display:none; }
    .dash-preview { margin-top:36px; }
  }
  section.sect { padding:72px 24px; max-width:var(--container); margin:0 auto; }
  section.sect.tinted { background:var(--card); max-width:none; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
  section.sect.tinted > .sect-inner { max-width:var(--container); margin:0 auto; }
  .sect-eyebrow { display:inline-block; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--primary); margin-bottom:10px; }
  .sect-title { font-size:36px; letter-spacing:-0.02em; max-width:640px; }
  .sect-lead { font-size:17px; color:var(--text-muted); max-width:640px; margin-top:12px; line-height:1.6; }
  @media (max-width:640px) { section.sect { padding:48px 16px; } .sect-title { font-size:28px; } .sect-lead { font-size:15.5px; } }
  .services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:40px; }
  .svc-card { background:var(--card); border:1px solid var(--border); border-radius:14px; padding:24px; transition:transform .15s, box-shadow .15s; }
  .svc-card:hover { transform:translateY(-2px); box-shadow:var(--shadow-md); }
  .svc-ico { width:44px; height:44px; border-radius:11px; background:var(--primary-tint); color:var(--primary); display:grid; place-items:center; margin-bottom:14px; }
  .svc-ico svg { width:22px; height:22px; }
  .svc-card h3 { font-size:17px; margin-bottom:6px; }
  .svc-card p { font-size:14px; color:var(--text-muted); }
  @media (max-width:900px) { .services-grid { grid-template-columns:repeat(2,1fr); } }
  @media (max-width:520px) { .services-grid { grid-template-columns:1fr; } }
  .two-col { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; margin-top:40px; }
  .two-col-card h3 { font-size:22px; margin-bottom:14px; }
  .two-col-card ul { list-style:none; padding:0; margin:14px 0; }
  .two-col-card ul li { padding:8px 0 8px 26px; font-size:14.5px; position:relative; color:var(--text); }
  .two-col-card ul li::before { content:''; position:absolute; left:0; top:12px; width:16px; height:16px; border-radius:50%; background:var(--success-bg); background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2310B981' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>"); background-repeat:no-repeat; background-position:center; }
  .two-col-actions { display:flex; gap:10px; margin-top:20px; flex-wrap:wrap; }
  @media (max-width:800px) { .two-col { grid-template-columns:1fr; gap:32px; } }
  .btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; height:48px; padding:0 22px; border-radius:var(--radius-btn); font-family:inherit; font-size:15px; font-weight:600; border:1px solid transparent; text-decoration:none; cursor:pointer; transition:background .15s, border-color .15s, box-shadow .15s; }
  .btn:hover { text-decoration:none; }
  .btn svg { width:18px; height:18px; }
  .btn-primary { background:var(--primary); color:#fff; box-shadow:0 1px 2px rgba(16,58,140,.3); }
  .btn-primary:hover { background:var(--primary-hover); color:#fff; box-shadow:0 4px 12px rgba(16,58,140,.3); }
  .btn-secondary { background:var(--card); color:var(--text); border-color:var(--border-strong); }
  .btn-secondary:hover { background:var(--bg); border-color:var(--text-soft); color:var(--text); }
  .btn-accent { background:var(--secondary); color:#fff; }
  .btn-accent:hover { background:var(--secondary-hover); color:#fff; }
  .btn-ghost { background:transparent; color:var(--primary); border-color:transparent; padding:0 12px; }
  .btn-ghost:hover { background:var(--primary-tint); color:var(--primary); }

.policy-search { position:relative; max-width:640px; margin:32px auto 24px; }
  .policy-search input { width:100%; height:56px; padding:0 20px 0 52px; background:var(--card); border:1px solid var(--border); border-radius:14px; font-family:inherit; font-size:15px; color:var(--text); box-shadow:var(--shadow-sm); transition:border-color .15s, box-shadow .15s; }
  .policy-search input:focus { outline:none; border-color:var(--primary); box-shadow:0 0 0 4px rgba(16,58,140,.10); }
  .policy-search svg { position:absolute; left:20px; top:50%; transform:translateY(-50%); color:var(--text-muted); }
  .policy-search-info { text-align:center; font-size:13px; color:var(--text-muted); margin-bottom:24px; }
  .policy-search-info b { color:var(--text); }
  .policy-list { display:grid; grid-template-columns:1fr 1fr; gap:14px; max-width:1080px; margin:0 auto; }
  @media (max-width:800px) { .policy-list { grid-template-columns:1fr; } }
  .policy-card { background:var(--card); border:1px solid var(--border); border-radius:14px; overflow:hidden; transition:box-shadow .18s, border-color .18s; }
  .policy-card:hover:not(.open) { box-shadow:var(--shadow-md); border-color:var(--border-strong); }
  .policy-card.hidden { display:none; }
  .policy-card.open { grid-column:1/-1; border-color:var(--primary); box-shadow:var(--shadow-md); }
  .policy-head { padding:20px; width:100%; background:transparent; border:0; text-align:left; display:flex; align-items:flex-start; gap:14px; font-family:inherit; color:inherit; cursor:pointer; }
  .policy-ico { flex-shrink:0; width:44px; height:44px; border-radius:11px; background:var(--primary-tint); color:var(--primary); display:grid; place-items:center; }
  .policy-ico svg { width:22px; height:22px; }
  .policy-title { flex:1 1 auto; min-width:0; }
  .policy-title-heading { display:block; font-size:15.5px; font-weight:700; letter-spacing:-0.02em; margin-bottom:4px; line-height:1.35; }
  .policy-title-description { display:block; font-size:13px; color:var(--text-muted); line-height:1.5; }
  .policy-meta { font-size:10.5px; font-weight:700; color:var(--text-muted); text-transform:uppercase; letter-spacing:.05em; padding:4px 8px; background:var(--bg); border-radius:6px; white-space:nowrap; margin-top:2px; }
  .policy-chev { flex-shrink:0; color:var(--text-soft); margin-top:12px; transition:transform .3s; }
  .policy-card.open .policy-chev { transform:rotate(180deg); color:var(--primary); }
  .policy-body { max-height:0; overflow:hidden; transition:max-height .35s ease-out; }
  .policy-card.open .policy-body { max-height:8000px; }
  .policy-body-inner { padding:8px 24px 28px 24px; border-top:1px solid var(--border); padding-top:22px; font-size:14px; line-height:1.65; color:var(--text); }
  .policy-body-inner h4 { font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--primary); margin-top:20px; margin-bottom:8px; }
  .policy-body-inner h4:first-child { margin-top:0; }
  .policy-body-inner p { margin-bottom:12px; color:var(--text); }
  .policy-body-inner ul { padding-left:20px; margin:6px 0 12px; }
  .policy-body-inner ul li { margin-bottom:4px; font-size:13.5px; }
  .policy-body-inner .legal-grid { display:grid; grid-template-columns:1fr; gap:6px; background:var(--bg); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin:8px 0 16px; font-size:13px; }
  .policy-body-inner .legal-grid strong { color:var(--primary); font-weight:600; }
  .policy-body-inner .callout { background:var(--danger-bg); border:1px solid #FECACA; border-left:4px solid var(--danger); padding:12px 16px; border-radius:10px; margin:12px 0; font-size:13.5px; color:#7F1D1D; }
  .policy-body-inner .callout.info { background:var(--info-bg); border-color:var(--info-border); border-left-color:#2563EB; color:#1E40AF; }
  .policy-body-inner .callout.warn { background:#FEF3C7; border-color:#FDE68A; border-left-color:#B45309; color:#78350F; }
  .policy-body-inner .review-line { font-size:12px; color:var(--text-muted); padding-top:14px; margin-top:16px; border-top:1px dashed var(--border); display:flex; gap:16px; flex-wrap:wrap; }
  mark { background:#FEF3C7; color:var(--text); padding:1px 3px; border-radius:3px; font-weight:600; }
  .contact-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:40px; margin-top:40px; }
  .contact-item { display:flex; gap:14px; align-items:flex-start; padding:14px 0; border-bottom:1px solid var(--border); }
  .contact-item:last-child { border-bottom:0; }
  .contact-ico { flex-shrink:0; width:40px; height:40px; border-radius:10px; background:var(--primary-tint); color:var(--primary); display:grid; place-items:center; }
  .contact-item strong { display:block; font-size:14px; margin-bottom:2px; }
  .contact-item span { font-size:14px; color:var(--text-muted); }
  .contact-item a { color:var(--primary); font-weight:500; }
  .contact-form { background:var(--card); border:1px solid var(--border); border-radius:16px; padding:28px; }
  .contact-form h3 { font-size:19px; margin-bottom:16px; }
  .contact-form-status { min-height:22px; margin:12px 0 0; font-size:14px; font-weight:600; text-align:center; }
  .contact-form-status.loading { color:var(--primary); }
  .contact-form-status.ok { color:#047857; }
  .contact-form-status.err { color:var(--danger); }
  .field { margin-bottom:14px; }
  .field label { display:block; font-size:13px; font-weight:600; margin-bottom:6px; }
  .field input, .field select, .field textarea { width:100%; padding:11px 14px; border:1px solid var(--border); border-radius:10px; background:var(--card); font-family:inherit; font-size:15px; transition:border-color .15s, box-shadow .15s; }
  .field input:focus, .field select:focus, .field textarea:focus { outline:none; border-color:var(--primary); box-shadow:0 0 0 3px rgba(16,58,140,.12); }
  .field textarea { resize:vertical; min-height:100px; line-height:1.55; }
  .phone-field { display:flex; align-items:stretch; gap:6px; width:100%; }
  .phone-field .phone-dial-code { flex:0 0 auto; width:auto !important; min-width:96px; max-width:130px; cursor:pointer; }
  .phone-field input[type=tel] { flex:1 1 auto; min-width:0; }
  @media (max-width:420px) { .phone-field { flex-wrap:wrap; } .phone-field .phone-dial-code { flex:1 1 100%; max-width:none; } .phone-field input[type=tel] { flex:1 1 100%; } }
  @media (max-width:800px) { .contact-grid { grid-template-columns:1fr; gap:28px; } }
  .site-footer { background:#0B1F4E; color:#DBE3F7; padding:56px 24px 28px; }
  .footer-inner { max-width:var(--container); margin:0 auto; display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:40px; }
  .footer-col h4 { font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#8FA5D6; margin-bottom:14px; }
  .footer-col ul { list-style:none; padding:0; margin:0; }
  .footer-col ul li { margin-bottom:9px; }
  .footer-col ul li a { color:#DBE3F7; font-size:13.5px; text-decoration:none; }
  .footer-col ul li a:hover { color:#fff; }
  .footer-brand-line { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
  .footer-brand-line strong { font-size:16px; color:#fff; }
  .footer-tag { font-size:14px; color:#DBE3F7; line-height:1.65; margin-bottom:10px; }
  .footer-login-button { display:inline-flex; align-items:center; justify-content:center; margin-top:16px; min-height:40px; padding:9px 15px; border:1px solid rgba(219,227,247,.4); border-radius:9px; background:rgba(255,255,255,.08); color:#fff; font-family:inherit; font-size:12.5px; font-weight:700; line-height:1.35; text-decoration:none; cursor:default; transition:background .15s, border-color .15s, transform .15s; }
  .footer-login-button:hover { background:rgba(255,255,255,.15); border-color:#8FA5D6; color:#fff; text-decoration:none; transform:translateY(-1px); }
  .footer-login-button:focus-visible { outline:3px solid rgba(147,165,212,.5); outline-offset:3px; }
  /* Footer policy search — compact, links to full policies section */
  .footer-policy-search { max-width:var(--container); margin:32px auto 0; padding:16px 0; border-top:1px solid #1E3373; }
  .footer-policy-search h4 { font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#8FA5D6; margin-bottom:10px; }
  .footer-policy-search-wrap { position:relative; max-width:520px; }
  .footer-policy-search-wrap input { width:100%; height:44px; padding:0 14px 0 42px; background:rgba(255,255,255,.06); border:1px solid #1E3373; border-radius:10px; font-family:inherit; font-size:14px; color:#fff; }
  .footer-policy-search-wrap input::placeholder { color:#93A5D4; }
  .footer-policy-search-wrap input:focus { outline:none; border-color:#93A5D4; background:rgba(255,255,255,.09); }
  .footer-policy-search-wrap svg { position:absolute; left:14px; top:50%; transform:translateY(-50%); color:#93A5D4; }
  .footer-policy-search a.view-all { display:inline-block; margin-top:10px; font-size:12.5px; color:#93A5D4; text-decoration:underline; }
  .footer-policy-search a.view-all:hover { color:#fff; }

  /* Modals — Log in + See demo */
  .modal-backdrop { position:fixed; inset:0; background:rgba(15,23,42,.55); z-index:100; display:none; align-items:center; justify-content:center; padding:20px; }
  .modal-backdrop.show { display:flex; }
  .modal { background:var(--card); border-radius:16px; max-width:440px; width:100%; padding:28px; box-shadow:var(--shadow-lg); position:relative; max-height:90vh; overflow-y:auto; }
  .modal.wide { max-width:720px; padding:24px; }
  .modal-close { position:absolute; top:12px; right:12px; background:transparent; border:0; width:36px; height:36px; border-radius:8px; color:var(--text-muted); font-size:22px; cursor:pointer; }
  .modal-close:hover { background:var(--bg); color:var(--text); }

  /* Shared form submission confirmation */
  .submit-confirm-backdrop { position:fixed; inset:0; z-index:1300; display:none; align-items:center; justify-content:center; padding:20px; background:rgba(11,31,78,.58); backdrop-filter:blur(3px); }
  .submit-confirm-backdrop.show { display:flex; animation:submitConfirmFade .16s ease-out; }
  .submit-confirm-dialog { position:relative; width:min(100%,480px); padding:32px; border:1px solid rgba(255,255,255,.5); border-radius:18px; background:#fff; box-shadow:0 28px 70px rgba(5,18,46,.28); text-align:center; }
  .submit-confirm-dialog h3 { margin:12px 36px 9px; color:#0B1F4E; font:700 25px/1.2 'Playfair Display',Georgia,serif; }
  .submit-confirm-dialog > p { max-width:390px; margin:0 auto; color:#5D6B7E; font-size:14.5px; line-height:1.6; }
  .submit-confirm-dialog .submit-confirm-note { margin-top:9px; color:#7A8798; font-size:12.5px; }
  .submit-confirm-icon { display:grid; place-items:center; width:54px; height:54px; margin:0 auto; border-radius:50%; background:#E8ECFA; color:#103A8C; font-size:27px; font-weight:800; }
  .submit-confirm-close { position:absolute; top:13px; right:13px; display:grid; place-items:center; width:34px; height:34px; padding:0; border:0; border-radius:9px; background:transparent; color:#748196; font-size:24px; line-height:1; }
  .submit-confirm-close:hover { background:#F1F5F9; color:#243447; }
  .submit-confirm-actions { display:flex; justify-content:center; gap:10px; margin-top:24px; }
  .submit-confirm-actions .btn { justify-content:center; min-width:165px; }
  @keyframes submitConfirmFade { from { opacity:0; } to { opacity:1; } }
  @media (max-width:520px) {
    .submit-confirm-backdrop { align-items:flex-end; padding:12px; }
    .submit-confirm-dialog { padding:29px 20px 22px; border-radius:18px; }
    .submit-confirm-dialog h3 { margin-left:28px; margin-right:28px; font-size:22px; }
    .submit-confirm-actions { flex-direction:column-reverse; }
    .submit-confirm-actions .btn { width:100%; }
  }
  .modal h3 { font-family:'Playfair Display',serif; font-size:24px; margin-bottom:6px; letter-spacing:-.01em; }
  .modal p.sub { font-size:14px; color:var(--text-muted); margin-bottom:20px; line-height:1.55; }

  .footer-copy { max-width:var(--container); margin:20px auto 0; padding-top:20px; border-top:1px solid #1E3373; font-size:12px; color:#8FA5D6; display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; }
  @media (max-width:900px) { .footer-inner { grid-template-columns:1fr 1fr; gap:32px; } }
  @media (max-width:520px) { .footer-inner { grid-template-columns:1fr; } }
  #toast { position:fixed; left:50%; bottom:24px; transform:translateX(-50%) translateY(20px); background:var(--text); color:#fff; padding:12px 20px; border-radius:10px; font-size:14px; font-weight:500; box-shadow:var(--shadow-lg); opacity:0; pointer-events:none; z-index:70; transition:opacity .2s, transform .2s; max-width:min(400px, calc(100vw - 32px)); }
  #toast.show { opacity:1; transform:translateX(-50%) translateY(0); }
  #toast.ok { background:var(--success); }
  #toast.err { background:var(--danger); }

  /* Standalone login password control */
  #loginModal .field:has(#lg-pw) { position:relative; }
  #loginModal #lg-pw { padding-right:66px; }
  .password-toggle { position:absolute; right:10px; bottom:8px; height:32px; padding:0 8px; border:0; border-radius:7px; background:var(--primary-tint); color:var(--primary); font:600 12px/1 inherit; cursor:pointer; }
  .password-toggle:hover { background:#dbe7ff; }


/* Internal MVC pages */
body.internal-page {
  --navy:#0b1f4e;
  --blue:#103a8c;
  --teal:#0f766e;
  --orange:#f47a20;
  --ink:#1f2937;
  --muted:#667085;
  --line:#e2e8f0;
  --paper:#ffffff;
  --wash:#f6f8fc;
  --success:#047857;
}


body.internal-page { margin:0; color:var(--ink); background:var(--wash); font:15px/1.55 Inter,system-ui,-apple-system,"Segoe UI",sans-serif; }











body.internal-page .route-main { max-width:1080px; margin:auto; padding:52px 22px 72px; }
body.internal-page .route-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr); gap:38px; align-items:center; margin-bottom:34px; }
body.internal-page .eyebrow { display:inline-flex; padding:5px 9px; border-radius:999px; background:#e6f5f2; color:var(--teal); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
body.internal-page .route-hero h1,
body.internal-page .simple-hero h1 { margin:13px 0 12px; color:var(--navy); font:700 clamp(34px,5vw,54px)/1.05 Georgia,serif; letter-spacing:-.025em; }
body.internal-page .route-hero p,
body.internal-page .simple-hero p { max-width:690px; margin:0; color:var(--muted); font-size:17px; }
body.internal-page .hero-photo { min-height:280px; border-radius:22px; background:url('../images/care-home.jpg') center/cover; box-shadow:0 20px 45px rgba(11,31,78,.16); }
body.internal-page .hero-photo.callback-photo { background-image:url('../images/care-callback-client.png'); }
body.internal-page .hero-photo.recruiter-photo { background-image:url('../images/care-paths-triptych.png'); background-position:right center; }
body.internal-page .content-grid { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:26px; align-items:start; }
body.internal-page .panel { background:var(--paper); border:1px solid var(--line); border-radius:18px; padding:26px; box-shadow:0 10px 28px rgba(15,23,42,.06); }
body.internal-page .panel h2 { margin:0 0 6px; color:var(--navy); font:700 25px/1.2 Georgia,serif; }
body.internal-page .panel-lead { margin:0 0 22px; color:var(--muted); }
body.internal-page .field-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
body.internal-page .field { margin-bottom:16px; }
body.internal-page .field.full { grid-column:1/-1; }
body.internal-page .field label { display:block; margin-bottom:6px; font-size:13px; font-weight:700; }
body.internal-page .field input,
body.internal-page .field select,
body.internal-page .field textarea { width:100%; padding:11px 13px; border:1px solid #cfd7e5; border-radius:10px; background:#fff; color:var(--ink); }
body.internal-page .field textarea { min-height:112px; resize:vertical; }
body.internal-page .field input:focus,
body.internal-page .field select:focus,
body.internal-page .field textarea:focus { outline:0; border-color:var(--blue); box-shadow:0 0 0 3px rgba(16,58,140,.12); }
body.internal-page .button { display:inline-flex; min-height:44px; align-items:center; justify-content:center; padding:10px 17px; border:1px solid transparent; border-radius:10px; background:var(--blue); color:#fff; font-weight:750; text-decoration:none; cursor:pointer; }
body.internal-page .button:hover { background:#0a2a6b; }
body.internal-page .button.secondary { background:#fff; border-color:#cfd7e5; color:var(--navy); }
body.internal-page .button.teal { background:var(--teal); }
body.internal-page .button-row { display:flex; flex-wrap:wrap; gap:10px; }
body.internal-page .info-list { margin:12px 0 0; padding:0; list-style:none; }
body.internal-page .info-list li { padding:11px 0; border-bottom:1px solid var(--line); color:var(--muted); }
body.internal-page .info-list li:last-child { border:0; }
body.internal-page .info-list strong { display:block; color:var(--ink); }
body.internal-page .notice { margin-top:18px; padding:14px 16px; border-radius:11px; background:#eff6ff; color:#1e40af; font-size:13px; }
body.internal-page .success-box { display:none; margin-top:18px; padding:18px; border:1px solid #a7f3d0; border-radius:12px; background:#ecfdf5; color:#065f46; }
body.internal-page .success-box.show { display:block; }
body.internal-page .success-box.loading { border-color:#bfdbfe; background:#eff6ff; color:#1e40af; }
body.internal-page .success-box.error { border-color:#fecaca; background:#fef2f2; color:#b91c1c; }
body.internal-page .simple-hero { max-width:760px; margin-bottom:34px; }
body.internal-page .recruiter-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:26px 0 16px; }
body.internal-page .recruiter-tab { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 18px; border:1px solid var(--line); border-radius:14px; background:#fff; color:var(--navy); text-decoration:none; box-shadow:0 6px 16px rgba(15,23,42,.04); }
body.internal-page .recruiter-tab span { font-size:17px; font-weight:800; }
body.internal-page .recruiter-tab small { color:var(--muted); font-weight:700; }
body.internal-page .recruiter-tab:hover { border-color:var(--blue); }
body.internal-page .recruiter-tab.active { border-color:var(--navy); background:var(--navy); color:#fff; }
body.internal-page .recruiter-tab.active small { color:#dbeafe; }
body.internal-page .recruiter-search { display:grid; grid-template-columns:minmax(0,1fr) 150px auto auto; align-items:end; gap:12px; margin:0 0 18px; padding:20px; border:1px solid var(--line); border-radius:16px; background:#fff; box-shadow:0 8px 20px rgba(15,23,42,.05); }
body.internal-page .recruiter-search .field { margin:0; }
body.internal-page .recruiter-search .button { white-space:nowrap; }
body.internal-page .recruiter-clear { border-color:#cfd7e5; background:#fff; color:var(--navy); }
body.internal-page .recruiter-clear:hover { background:#f8fafc; }
body.internal-page .job-tools { display:flex; flex-wrap:wrap; gap:8px; margin:18px 0 30px; }
body.internal-page .filter-button { display:inline-flex; align-items:center; padding:8px 13px; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--navy); font-weight:700; text-decoration:none; cursor:pointer; }
body.internal-page .filter-button.active { background:var(--navy); border-color:var(--navy); color:#fff; }
body.internal-page .recruiter-section-heading { display:flex; align-items:end; justify-content:space-between; gap:18px; margin:0 0 16px; }
body.internal-page .recruiter-section-heading h2 { margin:4px 0 0; color:var(--navy); font:700 28px/1.2 Georgia,serif; }
body.internal-page .recruiter-count { padding:6px 10px; border-radius:999px; background:#e7f8f5; color:#0f766e; font-size:12px; font-weight:750; }
body.internal-page .recruiter-results-summary { margin:0 0 12px; color:var(--muted); font-size:13px; }
body.internal-page .recruiter-message { display:flex; flex-direction:column; gap:5px; padding:20px; border:1px solid var(--line); border-radius:14px; background:#fff; color:var(--muted); }
body.internal-page .recruiter-message strong { color:var(--navy); }
body.internal-page .recruiter-message.error { border-color:#fecaca; background:#fef2f2; color:#991b1b; }
body.internal-page .recruiter-message.error strong { color:#991b1b; }
body.internal-page .job-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
body.internal-page .job-card { display:flex; flex-direction:column; gap:12px; background:#fff; border:1px solid var(--line); border-radius:16px; padding:20px; box-shadow:0 8px 20px rgba(15,23,42,.05); }
body.internal-page .job-card[hidden] { display:none; }
body.internal-page .job-card h2 { margin:0; color:var(--navy); font-size:19px; }
body.internal-page .job-meta { display:flex; flex-wrap:wrap; gap:7px; }
body.internal-page .job-meta span { padding:4px 8px; border-radius:7px; background:#f1f5f9; color:#475569; font-size:11px; font-weight:700; }
body.internal-page .job-card p { margin:0; color:var(--muted); }
body.internal-page .job-card .job-company { color:var(--ink); font-weight:700; }
body.internal-page .job-description { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
body.internal-page .job-card .button { margin-top:auto; align-self:flex-start; }
body.internal-page .pagination { display:flex; flex-wrap:wrap; justify-content:center; gap:7px; margin:24px 0 0; }
body.internal-page .pagination-link { display:inline-flex; min-width:42px; min-height:42px; align-items:center; justify-content:center; padding:8px 12px; border:1px solid var(--line); border-radius:9px; background:#fff; color:var(--navy); font-weight:700; text-decoration:none; }
body.internal-page .pagination-link:hover { border-color:var(--blue); }
body.internal-page .pagination-link.active { border-color:var(--navy); background:var(--navy); color:#fff; }
body.internal-page .pagination-link.disabled { pointer-events:none; opacity:.45; }
body.internal-page .pagination-direction { min-width:84px; }
body.internal-page .pagination-ellipsis { display:inline-flex; min-width:30px; min-height:42px; align-items:center; justify-content:center; color:var(--muted); font-weight:800; }
body.internal-page .recruiter-results { margin-top:30px; }
body.internal-page .shift-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; }
body.internal-page .shift-details div { padding:10px; border-radius:10px; background:#f8fafc; }
body.internal-page .shift-details dt { color:var(--muted); font-size:11px; font-weight:750; text-transform:uppercase; letter-spacing:.04em; }
body.internal-page .shift-details dd { margin:2px 0 0; color:var(--ink); font-weight:750; }
body.internal-page .employer-callout { margin-top:26px; padding:24px; border-radius:18px; background:var(--navy); color:#dbe3f7; }
body.internal-page .employer-callout h2 { margin:0 0 5px; color:#fff; font:700 24px/1.2 Georgia,serif; }
body.internal-page .employer-callout p { margin:0 0 15px; }
body.internal-page .policy-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:28px; }
body.internal-page .policy-nav { position:sticky; top:96px; padding:18px; border:1px solid var(--line); border-radius:14px; background:#fff; }
body.internal-page .policy-nav a { display:block; padding:7px 0; color:var(--navy); font-size:13px; font-weight:650; text-decoration:none; }
body.internal-page .policy-copy { padding:28px; border:1px solid var(--line); border-radius:18px; background:#fff; }
body.internal-page .policy-copy section { padding:0 0 25px; margin:0 0 25px; border-bottom:1px solid var(--line); }
body.internal-page .policy-copy section:last-child { border:0; margin:0; padding:0; }
body.internal-page .policy-copy h2 { margin:0 0 8px; color:var(--navy); font:700 24px/1.2 Georgia,serif; }
body.internal-page .policy-copy p,
body.internal-page .policy-copy li { color:#475569; }

/* Home care initial assessment */
body.care-assessment-page { background:#f4f7fb; }
body.care-assessment-page .assessment-shell { width:min(100% - 32px, 1040px); margin:42px auto 76px; }
body.care-assessment-page .assessment-hero { position:relative; overflow:hidden; padding:38px 40px; border:1px solid #dce4ee; border-radius:22px; background:linear-gradient(135deg,#fff 0%,#eef5ff 64%,#e9f7f4 100%); box-shadow:0 18px 44px rgba(15,31,78,.08); }
body.care-assessment-page .assessment-hero::after { content:''; position:absolute; width:220px; height:220px; right:-70px; top:-85px; border-radius:50%; background:rgba(15,118,110,.08); }
body.care-assessment-page .assessment-eyebrow,
body.care-assessment-page .assessment-section-number { display:inline-flex; color:#0f766e; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
body.care-assessment-page .assessment-hero h1 { max-width:760px; margin:9px 0 13px; color:#0b1f4e; font:700 clamp(34px,5vw,50px)/1.08 'Playfair Display',Georgia,serif; letter-spacing:-.025em; }
body.care-assessment-page .assessment-hero > p { max-width:790px; color:#536174; font-size:17px; }
body.care-assessment-page .assessment-privacy { display:flex; align-items:flex-start; gap:10px; max-width:820px; margin-top:22px; padding:14px 16px; border:1px solid #b9e4d7; border-radius:12px; background:#ecf8f4; color:#21654f; font-size:14px; }
body.care-assessment-page .assessment-progress { position:sticky; top:92px; z-index:18; margin:20px 0; padding:15px 18px; border:1px solid #dce4ee; border-radius:15px; background:rgba(255,255,255,.94); box-shadow:0 9px 24px rgba(15,31,78,.07); backdrop-filter:blur(10px); }
body.care-assessment-page .assessment-progress-meta { display:flex; justify-content:space-between; gap:12px; margin-bottom:8px; color:#667085; font-size:13px; font-weight:700; }
body.care-assessment-page .assessment-progress-track { height:8px; overflow:hidden; border-radius:99px; background:#e8edf4; }
body.care-assessment-page .assessment-progress-track span { display:block; width:5%; height:100%; border-radius:inherit; background:linear-gradient(90deg,#103a8c,#0f766e); transition:width .25s ease; }
body.care-assessment-page .assessment-card { display:none; padding:32px; border:1px solid #dce4ee; border-radius:18px; background:#fff; box-shadow:0 14px 38px rgba(15,31,78,.07); }
body.care-assessment-page .assessment-card.active { display:block; animation:assessment-enter .22s ease-out; }
@keyframes assessment-enter { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:none; } }
body.care-assessment-page .assessment-card h2,
body.care-assessment-page .assessment-success h2 { margin:4px 0 7px; color:#0b1f4e; font:700 27px/1.2 'Playfair Display',Georgia,serif; }
body.care-assessment-page .assessment-section-intro { margin:0 0 20px; color:#667085; }
body.care-assessment-page .assessment-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; }
body.care-assessment-page .assessment-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
body.care-assessment-page .assessment-field { min-width:0; margin:18px 0 0; padding:0; border:0; }
body.care-assessment-page .assessment-field.full { grid-column:1/-1; }
body.care-assessment-page .assessment-field label,
body.care-assessment-page .assessment-field legend { display:block; margin:0 0 7px; padding:0; color:#26364a; font-size:14px; font-weight:700; }
body.care-assessment-page .assessment-field label > span,
body.care-assessment-page .assessment-field legend > span { color:#bd3434; }
body.care-assessment-page .assessment-field input:not([type=radio]):not([type=checkbox]),
body.care-assessment-page .assessment-field select,
body.care-assessment-page .assessment-field textarea { width:100%; min-height:46px; padding:11px 13px; border:1px solid #cbd5e1; border-radius:10px; outline:none; background:#fff; color:#243447; font:inherit; transition:border-color .15s,box-shadow .15s; }
body.care-assessment-page .assessment-field textarea { min-height:108px; resize:vertical; }
body.care-assessment-page .assessment-field textarea.assessment-long-answer { min-height:180px; }
body.care-assessment-page .assessment-field input:focus,
body.care-assessment-page .assessment-field select:focus,
body.care-assessment-page .assessment-field textarea:focus { border-color:#103a8c; box-shadow:0 0 0 3px rgba(16,58,140,.11); }
body.care-assessment-page .assessment-field input.invalid,
body.care-assessment-page .assessment-field select.invalid,
body.care-assessment-page .assessment-field textarea.invalid { border-color:#c53d3d; box-shadow:0 0 0 3px rgba(197,61,61,.09); }
body.care-assessment-page .assessment-field small { display:block; margin-top:6px; color:#667085; font-size:12px; }
body.care-assessment-page .assessment-password-wrap { position:relative; }
body.care-assessment-page .assessment-password-wrap input { padding-right:44px; }
body.care-assessment-page .assessment-password-toggle { position:absolute; top:50%; right:6px; transform:translateY(-50%); display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; padding:0; border:0; border-radius:8px; background:transparent; color:#667085; cursor:pointer; }
body.care-assessment-page .assessment-password-toggle:hover { background:#eef2f7; color:#243447; }
body.care-assessment-page .assessment-password-toggle:focus-visible { outline:3px solid rgba(16,58,140,.18); outline-offset:2px; }
body.care-assessment-page .assessment-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
body.care-assessment-page .assessment-choices.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
body.care-assessment-page .assessment-choices label { position:relative; margin:0; cursor:pointer; }
body.care-assessment-page .assessment-choices input { position:absolute; opacity:0; pointer-events:none; }
body.care-assessment-page .assessment-choices label > span { display:flex; align-items:center; min-height:44px; padding:10px 13px; border:1px solid #d5dee8; border-radius:10px; background:#fff; color:#3d4d5f; font-size:13.5px; font-weight:650; transition:border-color .15s,background .15s,box-shadow .15s; }
body.care-assessment-page .assessment-choices label:hover > span { border-color:#97a9c1; background:#f8fafc; }
body.care-assessment-page .assessment-choices input:focus-visible + span { outline:3px solid rgba(16,58,140,.18); outline-offset:2px; }
body.care-assessment-page .assessment-choices input:checked + span { border-color:#103a8c; background:#edf2ff; color:#103a8c; box-shadow:0 0 0 2px rgba(16,58,140,.07); }
body.care-assessment-page .assessment-conditional { display:none; margin-top:12px; }
body.care-assessment-page .assessment-conditional.show { display:block; }
body.care-assessment-page .assessment-callout { margin-top:18px; padding:14px 16px; border-left:4px solid #103a8c; border-radius:9px; background:#f3f7ff; color:#4b5d72; font-size:13.5px; }
body.care-assessment-page .assessment-callout p { margin:0 0 9px; }
body.care-assessment-page .assessment-callout p:last-child { margin-bottom:0; }
body.care-assessment-page .assessment-emergency { margin-top:20px; padding:17px; border:1px solid #f0caca; border-radius:12px; background:#fff7f7; }
body.care-assessment-page .assessment-emergency > strong { color:#9f2f2f; }
body.care-assessment-page .assessment-internal-note { margin-top:20px; padding:14px 16px; border:1px solid #eadca7; border-radius:10px; background:#fff9e8; color:#665723; font-size:13px; }
body.care-assessment-page .assessment-table-wrap { overflow:auto; margin-top:18px; border:1px solid #dce4ee; border-radius:12px; }
body.care-assessment-page .assessment-care-table { width:100%; min-width:720px; border-collapse:collapse; }
body.care-assessment-page .assessment-care-table th,
body.care-assessment-page .assessment-care-table td { padding:12px; border-bottom:1px solid #e4eaf1; text-align:center; font-size:13px; }
body.care-assessment-page .assessment-care-table th { background:#f7f9fc; color:#526174; font-size:12px; text-transform:uppercase; letter-spacing:.03em; }
body.care-assessment-page .assessment-care-table th:first-child,
body.care-assessment-page .assessment-care-table td:first-child { position:sticky; left:0; z-index:2; min-width:155px; background:#fff; text-align:left; font-weight:700; }
body.care-assessment-page .assessment-care-table th:first-child { background:#f7f9fc; }
body.care-assessment-page .assessment-care-table tr:last-child td { border-bottom:0; }
body.care-assessment-page .assessment-care-table input { width:18px; height:18px; accent-color:#103a8c; }
body.care-assessment-page .assessment-nav { display:flex; justify-content:space-between; gap:12px; margin-top:28px; padding-top:22px; border-top:1px solid #e7ecf2; }
body.care-assessment-page .assessment-nav .btn { min-width:130px; justify-content:center; }
body.care-assessment-page .assessment-nav .btn:disabled { opacity:.45; cursor:not-allowed; }
body.care-assessment-page .assessment-alert { display:none; margin:0 0 18px; padding:14px 16px; border:1px solid #f2b8b8; border-radius:12px; background:#fff1f1; color:#8f2525; font-size:14px; }
body.care-assessment-page .assessment-alert.show { display:block; }
body.care-assessment-page .assessment-validation-summary { margin:0 0 18px; padding:14px 16px; border:1px solid #f2b8b8; border-radius:12px; background:#fff1f1; color:#8f2525; }
body.care-assessment-page .assessment-validation-summary.validation-summary-valid { display:none; }
body.care-assessment-page .assessment-validation-summary ul { margin:0; padding-left:20px; }
body.care-assessment-page .assessment-success { display:none; padding:50px 30px; border:1px solid #cde5db; border-radius:20px; background:#fff; box-shadow:0 18px 42px rgba(15,31,78,.08); text-align:center; }
body.care-assessment-page .assessment-success.show { display:block; }
body.care-assessment-page .assessment-success-icon { display:grid; place-items:center; width:62px; height:62px; margin:0 auto 16px; border-radius:50%; background:#e4f5ee; color:#16845d; font-size:30px; font-weight:800; }
body.care-assessment-page .assessment-success p { max-width:620px; margin:10px auto 0; color:#667085; }
body.care-assessment-page .assessment-reference { display:inline-flex; margin:22px auto; padding:10px 14px; border-radius:9px; background:#f1f5f9; color:#536174; font-size:14px; }
body.care-assessment-page .assessment-success .btn { display:flex; width:max-content; margin:0 auto; }
body.care-assessment-page .assessment-submitting { pointer-events:none; opacity:.72; }

@media (max-width:760px) {
  body.care-assessment-page .assessment-shell { width:min(100% - 24px,1040px); margin:24px auto 54px; }
  body.care-assessment-page .assessment-hero { padding:27px 23px; }
  body.care-assessment-page .assessment-progress { top:88px; }
  body.care-assessment-page .assessment-card { padding:23px 20px; }
  body.care-assessment-page .assessment-grid,
  body.care-assessment-page .assessment-grid.three,
  body.care-assessment-page .assessment-choices,
  body.care-assessment-page .assessment-choices.three { grid-template-columns:1fr; }
  body.care-assessment-page .assessment-choices.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.care-assessment-page .assessment-nav { position:sticky; bottom:0; z-index:8; margin:25px -20px -23px; padding:14px 20px; background:rgba(255,255,255,.96); box-shadow:0 -8px 22px rgba(15,31,78,.06); backdrop-filter:blur(8px); }
  body.care-assessment-page .assessment-nav .btn { min-width:0; flex:1; }
}


@media (max-width:800px) {
  body.internal-page .route-hero,
body.internal-page .content-grid,
body.internal-page .policy-layout { grid-template-columns:1fr; }
  body.internal-page .recruiter-search { grid-template-columns:minmax(0,1fr) 130px; }
  body.internal-page .hero-photo { min-height:220px; }
  body.internal-page .policy-nav { position:static; }
}
@media (max-width:620px) {
  
  
  
  body.internal-page .route-main { padding:36px 16px 54px; }
  body.internal-page .field-grid,
body.internal-page .job-grid { grid-template-columns:1fr; }
  body.internal-page .recruiter-tabs { grid-template-columns:1fr; }
  body.internal-page .recruiter-search { grid-template-columns:1fr; }
  body.internal-page .recruiter-search .button { width:100%; }
  body.internal-page .recruiter-section-heading { align-items:flex-start; flex-direction:column; }
  body.internal-page .panel { padding:20px; }
}


/* Policies page */
body.welltrust-policies-page { --primary:#103A8C;--primary-hover:#0A2A6B;--primary-tint:#E8ECFA;--secondary:#F47A20;--bg:#F8FAFC;--card:#FFFFFF;--border:#E5E7EB;--border-strong:#D1D5DB;--text:#1F2937;--text-muted:#6B7280;--text-soft:#9CA3AF;--success:#10B981;--success-bg:#ECFDF5;--success-border:#A7F3D0;--danger:#DC2626;--danger-bg:#FEF2F2;--info-bg:#EFF6FF;--info-border:#BFDBFE;--shadow-sm:0 1px 2px rgba(15,23,42,.04);--shadow-md:0 4px 12px rgba(15,23,42,.06);--shadow-lg:0 12px 32px rgba(15,23,42,.10);--container:1200px;--header-h:80px; }
  body.welltrust-policies-page *,
body.welltrust-policies-page *::before,
body.welltrust-policies-page *::after { box-sizing:border-box; }
  html:has(> body.welltrust-policies-page) { scroll-behavior:smooth; }
  body.welltrust-policies-page { margin:0; font-family:'Inter',system-ui,sans-serif; font-size:15px; line-height:1.55; color:var(--text); background:var(--bg); -webkit-font-smoothing:antialiased; }
  body.welltrust-policies-page h1,
body.welltrust-policies-page h2,
body.welltrust-policies-page h3,
body.welltrust-policies-page h4 { margin:0; font-weight:700; letter-spacing:-0.02em; line-height:1.2; }
  body.welltrust-policies-page p { margin:0; }
  body.welltrust-policies-page a { color:var(--primary); text-decoration:none; }
  body.welltrust-policies-page a:hover { text-decoration:underline; }
  body.welltrust-policies-page button { font-family:inherit; cursor:pointer; }
  
  
  
  
  
  
  
  
  body.welltrust-policies-page .link-back { background:transparent; color:var(--text-muted); }
  body.welltrust-policies-page .link-back:hover { background:var(--bg); color:var(--text); text-decoration:none; }
  body.welltrust-policies-page .cta-header { background:var(--primary); color:#fff; }
  body.welltrust-policies-page .cta-header:hover { background:var(--primary-hover); color:#fff; text-decoration:none; }
  body.welltrust-policies-page .page-hero { padding:56px 24px 24px; background:linear-gradient(180deg, var(--card) 0%, var(--bg) 100%); border-bottom:1px solid var(--border); }
  body.welltrust-policies-page .page-hero-inner { max-width:var(--container); margin:0 auto; text-align:center; }
  body.welltrust-policies-page .page-hero h1 { font-family:'Playfair Display',Georgia,serif; font-size:42px; font-weight:600; letter-spacing:-.02em; margin-bottom:12px; }
  body.welltrust-policies-page .page-hero p { font-size:16px; color:var(--text-muted); max-width:620px; margin:0 auto; }
  body.welltrust-policies-page .policy-search { position:relative; max-width:640px; margin:32px auto 16px; }
  body.welltrust-policies-page .policy-search input { width:100%; height:56px; padding:0 20px 0 52px; background:var(--card); border:1px solid var(--border); border-radius:14px; font-family:inherit; font-size:15px; color:var(--text); box-shadow:var(--shadow-sm); }
  body.welltrust-policies-page .policy-search input:focus { outline:none; border-color:var(--primary); box-shadow:0 0 0 4px rgba(16,58,140,.10); }
  body.welltrust-policies-page .policy-search svg { position:absolute; left:20px; top:50%; transform:translateY(-50%); color:var(--text-muted); }
  body.welltrust-policies-page .policy-search-info { text-align:center; font-size:13px; color:var(--text-muted); }
  body.welltrust-policies-page .policy-search-info b { color:var(--text); }
  body.welltrust-policies-page .policy-list-wrap { max-width:1080px; margin:0 auto; padding:40px 24px 72px; }
  body.welltrust-policies-page .policy-list { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
  @media (max-width:800px) { body.welltrust-policies-page .policy-list { grid-template-columns:1fr; } body.welltrust-policies-page .page-hero h1 { font-size:32px; } }
  body.welltrust-policies-page .policy-card { background:var(--card); border:1px solid var(--border); border-radius:14px; overflow:hidden; transition:box-shadow .18s, border-color .18s; }
  body.welltrust-policies-page .policy-card:hover:not(.open) { box-shadow:var(--shadow-md); border-color:var(--border-strong); }
  body.welltrust-policies-page .policy-card.hidden { display:none; }
  body.welltrust-policies-page .policy-card.open { grid-column:1/-1; border-color:var(--primary); box-shadow:var(--shadow-md); }
  body.welltrust-policies-page .policy-head { padding:20px; width:100%; background:transparent; border:0; text-align:left; display:flex; align-items:flex-start; gap:14px; font-family:inherit; color:inherit; cursor:pointer; }
  body.welltrust-policies-page .policy-ico { flex-shrink:0; width:44px; height:44px; border-radius:11px; background:var(--primary-tint); color:var(--primary); display:grid; place-items:center; }
  body.welltrust-policies-page .policy-ico svg { width:22px; height:22px; }
  body.welltrust-policies-page .policy-title { flex:1 1 auto; min-width:0; }
  body.welltrust-policies-page .policy-title-heading { display:block; font-size:15.5px; font-weight:700; letter-spacing:-0.02em; margin-bottom:4px; line-height:1.35; }
  body.welltrust-policies-page .policy-title-description { display:block; font-size:13px; color:var(--text-muted); line-height:1.5; }
  body.welltrust-policies-page .policy-meta { font-size:10.5px; font-weight:700; color:var(--text-muted); text-transform:uppercase; letter-spacing:.05em; padding:4px 8px; background:var(--bg); border-radius:6px; white-space:nowrap; margin-top:2px; }
  body.welltrust-policies-page .policy-chev { flex-shrink:0; color:var(--text-soft); margin-top:12px; transition:transform .3s; }
  body.welltrust-policies-page .policy-card.open .policy-chev { transform:rotate(180deg); color:var(--primary); }
  body.welltrust-policies-page .policy-body { max-height:0; overflow:hidden; transition:max-height .35s ease-out; }
  body.welltrust-policies-page .policy-card.open .policy-body { max-height:8000px; }
  body.welltrust-policies-page .policy-body-inner { padding:22px 24px 28px 24px; border-top:1px solid var(--border); font-size:14px; line-height:1.65; }
  body.welltrust-policies-page .policy-body-inner h4 { font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--primary); margin-top:20px; margin-bottom:8px; }
  body.welltrust-policies-page .policy-body-inner h4:first-child { margin-top:0; }
  body.welltrust-policies-page .policy-body-inner p { margin-bottom:12px; }
  body.welltrust-policies-page .policy-body-inner ul { padding-left:20px; margin:6px 0 12px; }
  body.welltrust-policies-page .policy-body-inner ul li { margin-bottom:4px; font-size:13.5px; }
  body.welltrust-policies-page .policy-body-inner .legal-grid { display:grid; grid-template-columns:1fr; gap:6px; background:var(--bg); border:1px solid var(--border); border-radius:10px; padding:14px 16px; margin:8px 0 16px; font-size:13px; }
  body.welltrust-policies-page .policy-body-inner .legal-grid strong { color:var(--primary); font-weight:600; }
  body.welltrust-policies-page .policy-body-inner .callout { background:var(--danger-bg); border:1px solid #FECACA; border-left:4px solid var(--danger); padding:12px 16px; border-radius:10px; margin:12px 0; font-size:13.5px; color:#7F1D1D; }
  body.welltrust-policies-page .policy-body-inner .callout.info { background:var(--info-bg); border-color:var(--info-border); border-left-color:#2563EB; color:#1E40AF; }
  body.welltrust-policies-page .policy-body-inner .callout.warn { background:#FEF3C7; border-color:#FDE68A; border-left-color:#B45309; color:#78350F; }
  body.welltrust-policies-page .policy-body-inner .review-line { font-size:12px; color:var(--text-muted); padding-top:14px; margin-top:16px; border-top:1px dashed var(--border); display:flex; gap:16px; flex-wrap:wrap; }
  body.welltrust-policies-page mark { background:#FEF3C7; color:var(--text); padding:1px 3px; border-radius:3px; font-weight:600; }
  
  
  
  

/* Application page */
/* ===== TOKENS ===== */
  body.welltrust-apply-page {
    --primary: #103A8C;
    --primary-hover: #0A2A6B;
    --primary-tint: #E8ECFA;
    --secondary: #F47A20;
    --secondary-hover: #DC6816;
    --bg: #F8FAFC;
    --card: #FFFFFF;
    --border: #E5E7EB;
    --border-strong: #D1D5DB;
    --text: #1F2937;
    --text-muted: #6B7280;
    --text-soft: #9CA3AF;
    --info-bg: #EFF6FF;
    --info-border: #BFDBFE;
    --info-icon: #2563EB;
    --success: #10B981;
    --success-bg: #ECFDF5;
    --success-border: #A7F3D0;
    --danger: #DC2626;
    --danger-bg: #FEF2F2;
    --danger-border: #FECACA;
    --radius-card: 16px;
    --radius-btn: 12px;
    --shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);
    --shadow-md: 0 4px 12px rgba(15, 23, 42, .06);
    --shadow-lg: 0 12px 32px rgba(15, 23, 42, .10);
    --container: 1200px;
    --header-h: 80px;
    --action-h: 88px;
  }

  /* ===== RESET ===== */
  body.welltrust-apply-page *,
body.welltrust-apply-page *::before,
body.welltrust-apply-page *::after { box-sizing:border-box; }
  html:has(> body.welltrust-apply-page) { -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
  body.welltrust-apply-page {
    margin:0;
    font-family:'Inter', system-ui, -apple-system, Segoe UI, sans-serif;
    font-size:15px;
    line-height:1.5;
    color:var(--text);
    background:var(--bg);
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
    font-feature-settings:'cv11','ss01','tnum';
  }
  body.welltrust-apply-page h1,
body.welltrust-apply-page h2,
body.welltrust-apply-page h3,
body.welltrust-apply-page h4,
body.welltrust-apply-page h5,
body.welltrust-apply-page h6 { margin:0; font-weight:700; letter-spacing:-0.015em; line-height:1.2; }
  body.welltrust-apply-page p { margin:0; }
  body.welltrust-apply-page button { font-family:inherit; }
  body.welltrust-apply-page input,
body.welltrust-apply-page select,
body.welltrust-apply-page textarea { font-family:inherit; font-size:15px; }
  body.welltrust-apply-page a { color:var(--primary); text-decoration:none; }
  body.welltrust-apply-page a:hover { text-decoration:underline; }

  /* ===== SR-ONLY ===== */
  body.welltrust-apply-page .sr { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

  /* ===== HEADER ===== */
  
  
  
  
  
  
  
  

  
  body.welltrust-apply-page .icon-btn {
    display:inline-flex; align-items:center; gap:6px;
    height:40px; padding:0 14px;
    background:transparent; border:1px solid var(--border);
    border-radius:10px;
    color:var(--text);
    font-size:14px; font-weight:500;
    cursor:pointer;
    transition:border-color .15s, background .15s;
  }
  body.welltrust-apply-page .icon-btn:hover { border-color:var(--border-strong); background:#F9FAFB; }
  body.welltrust-apply-page .icon-btn svg { width:16px; height:16px; }

  body.welltrust-apply-page .saved-chip {
    display:inline-flex; align-items:center; gap:6px;
    height:36px; padding:0 12px;
    background:var(--success-bg); border:1px solid var(--success-border);
    border-radius:9px;
    color:#047857; font-size:13px; font-weight:600;
  }
  body.welltrust-apply-page .saved-chip .dot { width:8px; height:8px; border-radius:50%; background:var(--success); }
  body.welltrust-apply-page .saved-chip.saving .dot { background:var(--secondary); animation:pulse 1.2s ease-in-out infinite; }
  @keyframes pulse { 0%,100% { opacity:1; } 50% { opacity:.4; } }

  @media (max-width:720px) {
    
    body.welltrust-apply-page .icon-btn { padding:0 10px; }
    body.welltrust-apply-page .icon-btn span { display:none; }
    body.welltrust-apply-page .saved-chip { padding:0 10px; }
  }

  /* ===== MAIN ===== */
  body.welltrust-apply-page main { max-width:var(--container); margin:0 auto; padding:48px 24px calc(var(--action-h) + 48px); }
  @media (max-width:640px) {
    body.welltrust-apply-page main { padding:32px 16px calc(var(--action-h) + 32px); }
  }

  /* ===== PAGE TITLE ===== */
  body.welltrust-apply-page .page-title h1 {
    font-size:44px;
    letter-spacing:-0.025em;
    color:var(--text);
    max-width:820px;
  }
  body.welltrust-apply-page .page-title p {
    font-size:18px;
    color:var(--text-muted);
    margin-top:12px;
    max-width:640px;
    line-height:1.55;
  }
  @media (max-width:640px) {
    body.welltrust-apply-page .page-title h1 { font-size:32px; }
    body.welltrust-apply-page .page-title p { font-size:16px; margin-top:10px; }
  }

  /* ===== STEPPER ===== */
  body.welltrust-apply-page .stepper {
    display:flex; align-items:center;
    margin:40px 0 32px;
    padding:6px 0;
    overflow-x:auto;
    scrollbar-width:none;
  }
  body.welltrust-apply-page .stepper::-webkit-scrollbar { display:none; }
  body.welltrust-apply-page .step { display:flex; align-items:center; flex:1 1 auto; min-width:0; }
  body.welltrust-apply-page .step-btn {
    display:flex; align-items:center; gap:12px;
    background:transparent; border:0; padding:8px 4px;
    cursor:pointer; color:inherit;
    font-family:inherit;
    white-space:nowrap;
    transition:opacity .15s;
  }
  body.welltrust-apply-page .step-btn:hover { opacity:.85; }
  body.welltrust-apply-page .step-circle {
    flex-shrink:0;
    width:36px; height:36px;
    border-radius:50%;
    display:grid; place-items:center;
    font-weight:700; font-size:14px;
    background:var(--card);
    border:1.5px solid var(--border-strong);
    color:var(--text-soft);
    font-feature-settings:'tnum';
    transition:all .2s;
  }
  body.welltrust-apply-page .step.done .step-circle {
    background:var(--primary); border-color:var(--primary); color:#fff;
  }
  body.welltrust-apply-page .step.current .step-circle {
    background:var(--card); border-color:var(--primary); color:var(--primary);
    box-shadow:0 0 0 4px rgba(16, 58, 140, .10);
  }
  body.welltrust-apply-page .step-label { font-size:14px; font-weight:600; color:var(--text-soft); }
  body.welltrust-apply-page .step.done .step-label { color:var(--primary); }
  body.welltrust-apply-page .step.current .step-label { color:var(--text); }
  body.welltrust-apply-page .step-line {
    flex:1 1 auto; height:1.5px; background:var(--border);
    margin:0 12px; min-width:20px;
  }
  body.welltrust-apply-page .step.done + .step .step-line { background:var(--primary); }

  @media (max-width:900px) {
    body.welltrust-apply-page .step-label { display:none; }
    body.welltrust-apply-page .step { flex:0 0 auto; }
    body.welltrust-apply-page .step-line { min-width:32px; }
    body.welltrust-apply-page .step-btn { padding:8px 2px; }
  }

  /* ===== CV UPLOAD CARD ===== */
  body.welltrust-apply-page .cv-card {
    background:var(--card);
    border:1px solid var(--border);
    border-radius:var(--radius-card);
    padding:32px;
    display:flex; align-items:center; gap:24px;
    margin-bottom:16px;
    transition:border-color .15s, box-shadow .15s;
  }
  body.welltrust-apply-page .cv-card:hover { border-color:var(--border-strong); box-shadow:var(--shadow-sm); }
  body.welltrust-apply-page .cv-card.has-file { border-color:var(--success-border); background:linear-gradient(180deg, var(--success-bg) 0%, var(--card) 60%); }
  body.welltrust-apply-page .cv-icon {
    flex-shrink:0;
    width:64px; height:64px; border-radius:16px;
    background:var(--primary-tint);
    color:var(--primary);
    display:grid; place-items:center;
  }
  body.welltrust-apply-page .cv-icon svg { width:32px; height:32px; }
  body.welltrust-apply-page .cv-card.has-file .cv-icon { background:var(--success-bg); color:var(--success); }
  body.welltrust-apply-page .cv-content { flex:1 1 auto; min-width:0; }
  body.welltrust-apply-page .cv-content h2 { font-size:20px; margin-bottom:6px; }
  body.welltrust-apply-page .cv-content p { font-size:14px; color:var(--text-muted); }
  body.welltrust-apply-page .cv-actions { display:flex; flex-direction:column; align-items:flex-end; gap:6px; flex-shrink:0; }
  body.welltrust-apply-page .cv-actions .btn { min-width:170px; }
  body.welltrust-apply-page .cv-actions .status { font-size:13px; color:var(--text-muted); font-weight:500; }
  body.welltrust-apply-page .cv-actions .status.ok { color:var(--success); }

  @media (max-width:720px) {
    body.welltrust-apply-page .cv-card { flex-direction:column; align-items:flex-start; gap:16px; padding:22px; }
    body.welltrust-apply-page .cv-actions { width:100%; align-items:stretch; }
    body.welltrust-apply-page .cv-actions .btn { width:100%; }
  }

  /* ===== INFO BANNER ===== */
  body.welltrust-apply-page .info-banner {
    background:var(--info-bg);
    border:1px solid var(--info-border);
    border-radius:var(--radius-card);
    padding:16px;
    display:flex; gap:12px; align-items:flex-start;
    margin-bottom:24px;
  }
  body.welltrust-apply-page .info-banner .ico {
    flex-shrink:0;
    width:32px; height:32px; border-radius:8px;
    background:var(--info-icon); color:#fff;
    display:grid; place-items:center;
  }
  body.welltrust-apply-page .info-banner .ico svg { width:16px; height:16px; }
  body.welltrust-apply-page .info-banner p { font-size:14px; line-height:1.55; color:#1E40AF; }
  body.welltrust-apply-page .info-banner p strong { color:#1E3A8A; }

  /* ===== ACCORDIONS ===== */
  body.welltrust-apply-page .sections-title { font-size:20px; margin:32px 0 16px; letter-spacing:-0.01em; }
  body.welltrust-apply-page .accordions { display:flex; flex-direction:column; gap:12px; }
  body.welltrust-apply-page .accordion {
    background:var(--card);
    border:1px solid var(--border);
    border-radius:var(--radius-card);
    overflow:hidden;
    transition:box-shadow .2s, border-color .2s;
  }
  body.welltrust-apply-page .accordion:hover:not(.open) { box-shadow:var(--shadow-md); border-color:var(--border-strong); }
  body.welltrust-apply-page .accordion.open { box-shadow:var(--shadow-md); border-color:rgba(16, 58, 140, .3); }
  body.welltrust-apply-page .accordion.complete .acc-ico { background:var(--success-bg); color:var(--success); }
  body.welltrust-apply-page .accordion.complete .acc-status { background:var(--success-bg); color:var(--success); border-color:var(--success-border); }

  body.welltrust-apply-page .acc-head {
    min-height:90px;
    padding:20px 24px;
    display:flex; align-items:center; gap:16px;
    cursor:pointer;
    background:transparent;
    border:0;
    width:100%;
    text-align:left;
    font-family:inherit; color:inherit;
  }
  body.welltrust-apply-page .acc-ico {
    flex-shrink:0;
    width:48px; height:48px; border-radius:12px;
    background:var(--primary-tint); color:var(--primary);
    display:grid; place-items:center;
    transition:background .2s, color .2s;
  }
  body.welltrust-apply-page .acc-ico svg { width:22px; height:22px; }
  body.welltrust-apply-page .acc-title { flex:1 1 auto; min-width:0; }
  body.welltrust-apply-page .acc-title-heading { display:block; font-size:17px; font-weight:700; letter-spacing:-0.02em; line-height:1.2; margin-bottom:3px; }
  body.welltrust-apply-page .acc-title-description { display:block; font-size:14px; color:var(--text-muted); }
  body.welltrust-apply-page .acc-status {
    flex-shrink:0;
    font-size:11px; font-weight:600;
    padding:4px 10px;
    border-radius:6px;
    background:#F3F4F6; color:var(--text-muted);
    border:1px solid var(--border);
    text-transform:uppercase; letter-spacing:.03em;
  }
  body.welltrust-apply-page .acc-chev {
    flex-shrink:0;
    color:var(--text-soft);
    transition:transform .3s, color .2s;
  }
  body.welltrust-apply-page .accordion.open .acc-chev { transform:rotate(180deg); color:var(--primary); }
  body.welltrust-apply-page .accordion.open .acc-ico { background:var(--primary); color:#fff; }

  body.welltrust-apply-page .acc-body {
    max-height:0;
    overflow:hidden;
    transition:max-height 300ms ease-out;
  }
  body.welltrust-apply-page .accordion.open .acc-body { max-height:4000px; }
  body.welltrust-apply-page .acc-body-inner {
    padding:8px 24px 28px;
    border-top:1px solid var(--border);
    padding-top:24px;
  }

  @media (max-width:640px) {
    body.welltrust-apply-page .acc-head { padding:16px 18px; min-height:80px; gap:12px; }
    body.welltrust-apply-page .acc-ico { width:40px; height:40px; border-radius:10px; }
    body.welltrust-apply-page .acc-ico svg { width:20px; height:20px; }
    body.welltrust-apply-page .acc-title-heading { font-size:15px; }
    body.welltrust-apply-page .acc-title-description { font-size:12.5px; }
    body.welltrust-apply-page .acc-status { display:none; }
    body.welltrust-apply-page .acc-body-inner { padding:20px 18px 22px; }
  }

  /* ===== FORM PRIMITIVES ===== */
  body.welltrust-apply-page .field { display:flex; flex-direction:column; gap:6px; margin-bottom:16px; }
  body.welltrust-apply-page .field label { font-size:13px; font-weight:600; color:var(--text); }
  body.welltrust-apply-page .field .hint { font-size:12.5px; color:var(--text-muted); line-height:1.45; }
  body.welltrust-apply-page .field input[type=text],
body.welltrust-apply-page .field input[type=email],
body.welltrust-apply-page .field input[type=tel],
body.welltrust-apply-page .field input[type=date],
body.welltrust-apply-page .field select,
body.welltrust-apply-page .field textarea {
    width:100%; padding:11px 14px;
    background:var(--card);
    border:1px solid var(--border);
    border-radius:10px;
    color:var(--text);
    transition:border-color .15s, box-shadow .15s;
  }
  body.welltrust-apply-page .field input:focus,
body.welltrust-apply-page .field select:focus,
body.welltrust-apply-page .field textarea:focus {
    outline:none;
    border-color:var(--primary);
    box-shadow:0 0 0 3px rgba(16, 58, 140, .12);
  }
  body.welltrust-apply-page .field select {
    -webkit-appearance:none;
    appearance:none;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23103A8C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat:no-repeat;
    background-position:right 14px center;
    background-size:14px;
    padding-right:40px;
    cursor:pointer;
  }
  body.welltrust-apply-page .field textarea { resize:vertical; min-height:88px; line-height:1.55; }
  body.welltrust-apply-page .grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
  @media (max-width:520px) { body.welltrust-apply-page .grid-2 { grid-template-columns:1fr; } }

  /* Sub-block inside an accordion (e.g. Next of kin inside Personal Details) */
  body.welltrust-apply-page .sub-block {
    background:#F9FAFB;
    border:1px solid var(--border);
    border-radius:12px;
    padding:18px 20px;
    margin-top:8px;
  }
  body.welltrust-apply-page .sub-block-head { display:flex; align-items:center; gap:12px; margin-bottom:14px; padding-bottom:12px; border-bottom:1px solid var(--border); }
  body.welltrust-apply-page .sub-block-ico {
    width:36px; height:36px; border-radius:9px;
    background:var(--primary-tint); color:var(--primary);
    display:grid; place-items:center;
    flex-shrink:0;
  }
  body.welltrust-apply-page .sub-block-ico svg { width:18px; height:18px; }
  body.welltrust-apply-page .sub-block-head h4 { font-size:14.5px; color:var(--primary); font-weight:700; letter-spacing:-0.005em; }
  body.welltrust-apply-page .sub-block-head p { font-size:12.5px; color:var(--text-muted); margin-top:2px; line-height:1.45; }
  @media (max-width:520px) {
    body.welltrust-apply-page .sub-block { padding:14px 15px; }
    body.welltrust-apply-page .sub-block-head h4 { font-size:13.5px; }
    body.welltrust-apply-page .sub-block-head p { font-size:12px; }
  }

  body.welltrust-apply-page .checkline { display:flex; align-items:flex-start; gap:10px; padding:12px 0; }
  body.welltrust-apply-page .checkline input[type=checkbox],
body.welltrust-apply-page .checkline input[type=radio] {
    margin-top:2px; width:18px; height:18px; accent-color:var(--primary); cursor:pointer; flex-shrink:0;
  }
  body.welltrust-apply-page .checkline label { font-size:14px; line-height:1.55; color:var(--text); cursor:pointer; font-weight:400; }
  body.welltrust-apply-page .checkline label strong { font-weight:600; }
  body.welltrust-apply-page .checklist { display:flex; flex-direction:column; gap:2px; padding:6px 14px; background:#F9FAFB; border-radius:10px; border:1px solid var(--border); }
  /* Two-column grid for care-setting checkboxes */
  body.welltrust-apply-page .setting-grid { display:grid; grid-template-columns:1fr 1fr; gap:2px 12px; padding:8px 14px; background:#F9FAFB; border-radius:10px; border:1px solid var(--border); }
  @media (max-width:480px) { body.welltrust-apply-page .setting-grid { grid-template-columns:1fr; } }

  /* ===== BUTTONS ===== */
  body.welltrust-apply-page .btn {
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    height:52px; padding:0 22px;
    border-radius:var(--radius-btn);
    font-family:inherit; font-size:15px; font-weight:600;
    cursor:pointer;
    border:1px solid transparent;
    transition:background .15s, border-color .15s, color .15s, transform .05s, box-shadow .15s;
    text-decoration:none;
  }
  body.welltrust-apply-page .btn:active { transform:translateY(1px); }
  body.welltrust-apply-page .btn svg { width:18px; height:18px; }
  body.welltrust-apply-page .btn-primary {
    background:var(--primary); color:#fff;
    box-shadow:0 1px 2px rgba(16, 58, 140, .3);
  }
  body.welltrust-apply-page .btn-primary:hover { background:var(--primary-hover); box-shadow:0 4px 12px rgba(16, 58, 140, .3); }
  body.welltrust-apply-page .btn-secondary {
    background:var(--card); color:var(--text);
    border-color:var(--border-strong);
  }
  body.welltrust-apply-page .btn-secondary:hover { background:#F9FAFB; border-color:var(--text-soft); }
  body.welltrust-apply-page .btn-accent {
    background:var(--secondary); color:#fff;
    box-shadow:0 1px 2px rgba(244, 122, 32, .3);
  }
  body.welltrust-apply-page .btn-accent:hover { background:var(--secondary-hover); }
  body.welltrust-apply-page .btn-ghost { background:transparent; color:var(--primary); border-color:transparent; padding:0 12px; height:40px; }
  body.welltrust-apply-page .btn-ghost:hover { background:var(--primary-tint); }
  body.welltrust-apply-page .btn-sm { height:40px; padding:0 16px; font-size:13.5px; border-radius:10px; }

  /* ===== REFEREE CARDS ===== */
  body.welltrust-apply-page .refcard {
    background:#F9FAFB;
    border:1px solid var(--border);
    border-radius:12px;
    padding:20px;
    margin-bottom:12px;
    position:relative;
  }
  body.welltrust-apply-page .refcard-head {
    display:flex; align-items:center; justify-content:space-between;
    margin-bottom:12px;
    padding-bottom:12px;
    border-bottom:1px solid var(--border);
  }
  body.welltrust-apply-page .refcard-head h4 { font-size:15px; color:var(--primary); }
  body.welltrust-apply-page .refcard-remove {
    background:transparent; border:0; color:var(--danger);
    font-size:12px; font-weight:600; cursor:pointer;
    padding:6px 10px; border-radius:6px;
  }
  body.welltrust-apply-page .refcard-remove:hover { background:var(--danger-bg); }
  body.welltrust-apply-page .add-referee-btn {
    width:100%; margin-top:8px;
    height:52px;
    background:transparent; border:1.5px dashed var(--border-strong);
    border-radius:12px;
    color:var(--primary); font-weight:600; font-size:14px;
    cursor:pointer;
    transition:border-color .15s, background .15s;
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
  }
  body.welltrust-apply-page .add-referee-btn:hover { border-color:var(--primary); background:var(--primary-tint); }

  /* Certificate cards + expiry status */
  body.welltrust-apply-page .cert-status {
    font-size:11px; font-weight:700;
    padding:4px 10px; border-radius:20px;
    border:1px solid; letter-spacing:.02em;
    white-space:nowrap;
  }
  body.welltrust-apply-page .cert-card[data-status="expired"] { border-color:var(--danger-border); background:linear-gradient(180deg, #FEF2F2 0%, #F9FAFB 40%); }
  body.welltrust-apply-page .cert-card[data-status="expiring"] { border-color:#FDE68A; background:linear-gradient(180deg, #FEF3C7 0%, #F9FAFB 40%); }
  body.welltrust-apply-page .cert-file-upload {
    width:100%; padding:10px 14px;
    background:var(--primary-tint); border:1px dashed var(--primary);
    border-radius:10px; color:var(--primary); font-weight:600; font-size:13px;
    cursor:pointer;
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
  }
  body.welltrust-apply-page .cert-file-upload:hover { background:#DBE3F7; }
  body.welltrust-apply-page .cert-file-attached {
    display:flex; align-items:center; gap:10px;
    padding:10px 12px; background:var(--success-bg); border:1px solid var(--success-border);
    border-radius:10px; font-size:13px; color:#065F46;
  }
  body.welltrust-apply-page .cert-file-attached > span:first-of-type { font-weight:600; flex:1 1 auto; word-break:break-word; }
  body.welltrust-apply-page .cert-file-size { color:var(--text-muted); font-size:12px; }
  body.welltrust-apply-page .cert-file-replace {
    background:transparent; border:1px solid var(--success); color:var(--success);
    padding:4px 10px; border-radius:6px; font-size:11px; font-weight:600; cursor:pointer;
  }
  body.welltrust-apply-page .cert-file-replace:hover { background:var(--success); color:#fff; }

  /* ===== ACTION BAR ===== */
  body.welltrust-apply-page .action-bar {
    position:fixed; left:0; right:0; bottom:0;
    height:var(--action-h);
    background:var(--card);
    border-top:1px solid var(--border);
    z-index:30;
    padding-bottom:env(safe-area-inset-bottom);
    box-shadow:0 -2px 20px rgba(15, 23, 42, .04);
  }
  body.welltrust-apply-page .action-inner {
    max-width:var(--container);
    height:var(--action-h);
    margin:0 auto;
    padding:0 24px;
    display:flex; align-items:center; justify-content:space-between; gap:16px;
  }
  body.welltrust-apply-page .action-status { display:flex; align-items:center; gap:12px; }
  body.welltrust-apply-page .shield {
    width:36px; height:36px; border-radius:10px;
    background:var(--success); color:#fff;
    display:grid; place-items:center;
    flex-shrink:0;
  }
  body.welltrust-apply-page .shield svg { width:18px; height:18px; }
  body.welltrust-apply-page .action-status-text { font-size:14px; font-weight:600; color:var(--text); }
  body.welltrust-apply-page .action-status-text small { display:block; font-size:12px; color:var(--text-muted); font-weight:500; margin-top:2px; }
  body.welltrust-apply-page .action-buttons { display:flex; gap:10px; align-items:center; }

  @media (max-width:720px) {
    body.welltrust-apply-page .action-inner { padding:0 14px; gap:10px; }
    body.welltrust-apply-page .action-status-text small { display:none; }
    body.welltrust-apply-page .action-status-text { font-size:13px; }
    body.welltrust-apply-page .btn { height:48px; padding:0 16px; font-size:14px; }
    body.welltrust-apply-page .action-buttons .btn-secondary { display:none; }
    body.welltrust-apply-page .action-buttons .btn { min-width:0; }
  }
  @media (max-width:400px) {
    body.welltrust-apply-page .action-status .shield { width:32px; height:32px; }
    body.welltrust-apply-page .action-inner { padding:0 10px; }
    body.welltrust-apply-page .action-status-text { font-size:12px; }
    body.welltrust-apply-page .btn { padding:0 12px; font-size:13px; height:44px; }
    body.welltrust-apply-page .btn svg { width:16px; height:16px; }
  }

  /* ===== VALIDATION ===== */
  body.welltrust-apply-page .req { color:var(--danger); font-weight:700; margin-left:2px; }
  body.welltrust-apply-page .field.invalid input,
body.welltrust-apply-page .field.invalid select,
body.welltrust-apply-page .field.invalid textarea {
    border-color:var(--danger);
    background:#FFFBFB;
    box-shadow:0 0 0 3px rgba(220, 38, 38, .10);
  }
  body.welltrust-apply-page .field.invalid label { color:var(--danger); }
  body.welltrust-apply-page .field.invalid { animation:wt-shake .35s ease-out; }
  @keyframes wt-shake {
    0%,100% { transform:translateX(0); }
    20% { transform:translateX(-4px); }
    40% { transform:translateX(4px); }
    60% { transform:translateX(-3px); }
    80% { transform:translateX(2px); }
  }

  /* SPOTLIGHT — the exact field the applicant is being sent to */
  body.welltrust-apply-page .field.spotlight { position:relative; }
  body.welltrust-apply-page .field.spotlight input,
body.welltrust-apply-page .field.spotlight select,
body.welltrust-apply-page .field.spotlight textarea,
body.welltrust-apply-page .field.invalid.spotlight input,
body.welltrust-apply-page .field.invalid.spotlight select,
body.welltrust-apply-page .field.invalid.spotlight textarea {
    border-color:var(--danger) !important;
    background:#FFFBFB !important;
    animation:wt-pulse 1.6s ease-in-out infinite !important;
  }
  @keyframes wt-pulse {
    0%,100% { box-shadow:0 0 0 4px rgba(220,38,38,.35), 0 0 20px rgba(220,38,38,.25); }
    50%     { box-shadow:0 0 0 8px rgba(220,38,38,.12), 0 0 30px rgba(220,38,38,.08); }
  }
  body.welltrust-apply-page .field.spotlight label { color:var(--danger); font-weight:700; }
  body.welltrust-apply-page .field.spotlight > label::after {
    content:" ← COMPLETE THIS";
    color:var(--danger);
    font-weight:800;
    font-size:11px;
    letter-spacing:.05em;
    margin-left:6px;
    padding:2px 8px;
    background:var(--danger-bg);
    border:1px solid var(--danger-border);
    border-radius:6px;
    display:inline-block;
    animation:wt-flash 1.4s ease-in-out infinite;
    vertical-align:middle;
  }
  @keyframes wt-flash {
    0%,100% { opacity:1; transform:translateX(0); }
    50%     { opacity:.55; transform:translateX(-3px); }
  }
  @media (max-width:480px) {
    body.welltrust-apply-page .field.spotlight > label::after {
      display:block; margin-left:0; margin-top:4px; width:fit-content;
    }
  }
  body.welltrust-apply-page .field-err { font-size:12.5px; color:var(--danger); font-weight:500; display:flex; align-items:center; gap:4px; }

  /* Accordion has-errors visual: red left stripe + red-tinted head + strong border */
  body.welltrust-apply-page .accordion.has-errors {
    border-color:var(--danger);
    box-shadow:0 4px 12px rgba(220, 38, 38, .10), inset 3px 0 0 var(--danger);
  }
  body.welltrust-apply-page .accordion.has-errors .acc-head { background:linear-gradient(90deg, #FFF5F5 0%, transparent 40%); }
  body.welltrust-apply-page .accordion.has-errors .acc-ico { background:var(--danger-bg); color:var(--danger); }
  body.welltrust-apply-page .accordion.has-errors .acc-title-heading { color:var(--danger); }

  body.welltrust-apply-page .valid-banner {
    background:var(--danger-bg);
    border:1px solid var(--danger-border);
    border-radius:var(--radius-card);
    padding:16px 20px;
    margin-bottom:20px;
    display:none;
  }
  body.welltrust-apply-page .valid-banner.show { display:block; animation:wt-shake .35s ease-out; }
  body.welltrust-apply-page .valid-banner h4 { color:var(--danger); font-size:15px; margin-bottom:6px; display:flex; align-items:center; gap:8px; }
  body.welltrust-apply-page .valid-banner h4 svg { width:18px; height:18px; }
  body.welltrust-apply-page .valid-banner ul { margin:8px 0 0; padding-left:22px; color:#7F1D1D; font-size:13.5px; line-height:1.65; }
  body.welltrust-apply-page .valid-banner ul li { margin-bottom:2px; }
  body.welltrust-apply-page .valid-banner ul li a { color:#7F1D1D; text-decoration:underline; cursor:pointer; }
  body.welltrust-apply-page .valid-banner ul li a:hover { text-decoration:none; background:rgba(220,38,38,.08); border-radius:3px; padding:0 3px; margin:0 -3px; }

  /* ===== SUCCESS SCREEN ===== */
  body.welltrust-apply-page .success-panel {
    background:var(--card);
    border:1px solid var(--success-border);
    border-radius:var(--radius-card);
    padding:48px 32px;
    text-align:center;
  }
  body.welltrust-apply-page .success-panel .tick {
    width:80px; height:80px; border-radius:50%;
    background:var(--success); color:#fff;
    margin:0 auto 20px;
    display:grid; place-items:center;
    box-shadow:0 8px 24px rgba(16, 185, 129, .3);
  }
  body.welltrust-apply-page .success-panel h2 { font-size:26px; margin-bottom:8px; }
  body.welltrust-apply-page .success-panel p { font-size:16px; color:var(--text-muted); max-width:520px; margin:0 auto 12px; }
  body.welltrust-apply-page .success-panel .ref {
    display:inline-block;
    margin-top:20px; padding:12px 18px;
    background:var(--bg); border:1px solid var(--border);
    border-radius:10px;
    font-family:ui-monospace, SF Mono, Menlo, monospace;
    font-size:15px; font-weight:600; color:var(--primary);
  }
  body.welltrust-apply-page .success-actions {
    display:flex; gap:10px; justify-content:center; flex-wrap:wrap;
    margin-top:32px;
    max-width:640px; margin-left:auto; margin-right:auto;
  }
  @media (max-width:520px) {
    body.welltrust-apply-page .success-actions { flex-direction:column; align-items:stretch; }
    body.welltrust-apply-page .success-actions .btn { width:100%; }
  }
  body.welltrust-apply-page .success-note {
    max-width:560px; margin:28px auto 0;
    padding:16px 18px;
    background:var(--info-bg);
    border:1px solid var(--info-border);
    border-radius:12px;
    display:flex; gap:12px; align-items:flex-start;
    text-align:left;
    font-size:13.5px; color:#1E40AF; line-height:1.55;
  }
  body.welltrust-apply-page .success-note-icon {
    width:28px; height:28px; border-radius:7px;
    background:var(--info-icon); color:#fff;
    display:grid; place-items:center;
    flex-shrink:0;
  }

  /* Confirmation email preview panel on success screen */
  body.welltrust-apply-page .email-panel {
    max-width:720px; margin:32px auto 0;
    background:var(--card);
    border:1px solid var(--border);
    border-radius:14px;
    text-align:left;
    overflow:hidden;
    box-shadow:var(--shadow-sm);
  }
  body.welltrust-apply-page .email-panel-head {
    padding:18px 22px;
    background:linear-gradient(180deg, var(--primary-tint) 0%, #F5F7FC 100%);
    border-bottom:1px solid var(--border);
    display:flex; gap:16px; align-items:flex-start; justify-content:space-between; flex-wrap:wrap;
  }
  body.welltrust-apply-page .email-panel-title {
    font-size:15px; font-weight:700; color:var(--primary);
    display:flex; align-items:center; gap:8px;
  }
  body.welltrust-apply-page .email-panel-title svg { color:var(--primary); }
  body.welltrust-apply-page .email-panel-sub {
    font-size:13px; color:var(--text-muted); margin-top:6px;
    max-width:400px; line-height:1.5;
  }
  body.welltrust-apply-page .email-panel-head .btn { flex-shrink:0; }

  body.welltrust-apply-page .email-preview {
    background:#FCFCFD;
  }
  body.welltrust-apply-page .email-preview-head { padding:14px 22px; border-bottom:1px solid var(--border); background:#F9FAFB; }
  body.welltrust-apply-page .email-row { display:grid; grid-template-columns:60px 1fr; gap:12px; padding:2px 0; font-size:12.5px; }
  body.welltrust-apply-page .email-lbl { color:var(--text-muted); font-weight:600; text-transform:uppercase; letter-spacing:.03em; font-size:10.5px; padding-top:3px; }
  body.welltrust-apply-page .email-val { color:var(--text); word-break:break-word; }
  body.welltrust-apply-page .email-preview-body {
    margin:0; padding:20px 24px;
    font-family:ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
    font-size:12.5px; line-height:1.65;
    color:var(--text);
    white-space:pre-wrap; word-break:break-word;
    max-height:420px; overflow-y:auto;
    background:#FCFCFD;
  }
  @media (max-width:520px) {
    body.welltrust-apply-page .email-panel-head { padding:14px 16px; flex-direction:column; }
    body.welltrust-apply-page .email-panel-head .btn { width:100%; }
    body.welltrust-apply-page .email-preview-head { padding:12px 16px; }
    body.welltrust-apply-page .email-preview-body { padding:16px; font-size:12px; max-height:320px; }
    body.welltrust-apply-page .email-row { grid-template-columns:50px 1fr; gap:8px; }
  }

  /* ===== FOOTER ===== */
  
  
  
  
  
  
  
  
  
  
  
  body.welltrust-apply-page .footer-gdpr {
    max-width:var(--container);
    margin:14px auto 0;
    padding:12px 16px;
    background:var(--card);
    border:1px solid var(--border);
    border-radius:10px;
    display:flex; align-items:center; gap:12px; flex-wrap:wrap;
    font-size:12.5px; color:var(--text-muted); line-height:1.55;
  }
  body.welltrust-apply-page .footer-gdpr .gdpr-lock {
    width:28px; height:28px; border-radius:7px;
    background:var(--primary-tint); color:var(--primary);
    display:grid; place-items:center; flex-shrink:0;
  }
  body.welltrust-apply-page .footer-gdpr strong { color:var(--text); }
  body.welltrust-apply-page .footer-gdpr > span { flex:1 1 300px; }
  body.welltrust-apply-page .footer-gdpr a { color:var(--primary); font-weight:500; }
  body.welltrust-apply-page .footer-reset-btn {
    display:inline-flex; align-items:center; gap:6px;
    background:transparent; border:1px solid var(--border-strong);
    color:var(--text-muted);
    font-family:inherit; font-size:12px; font-weight:600;
    padding:6px 12px; border-radius:8px;
    cursor:pointer; flex-shrink:0;
    transition:border-color .15s, color .15s;
  }
  body.welltrust-apply-page .footer-reset-btn:hover { border-color:var(--danger); color:var(--danger); background:var(--danger-bg); }

  /* Duplicate submission existing-record card */
  body.welltrust-apply-page .dupe-existing {
    background:var(--primary-tint);
    border:1px solid rgba(16,58,140,.2);
    border-radius:10px;
    padding:14px 16px;
  }
  body.welltrust-apply-page .dupe-existing-title {
    font-family:ui-monospace,monospace; font-size:14px; font-weight:700;
    color:var(--primary); margin-bottom:10px;
  }
  body.welltrust-apply-page .dupe-existing-meta { font-size:13px; color:var(--text); line-height:1.65; }
  body.welltrust-apply-page .dupe-existing-meta strong { color:var(--text-muted); font-weight:600; margin-right:4px; }
  @media (max-width:800px) {
    body.welltrust-apply-page .footer-gdpr { flex-direction:column; align-items:flex-start; text-align:left; }
    body.welltrust-apply-page .footer-reset-btn { align-self:flex-start; }
  }
  @media (max-width:800px) {
    
  }

  /* ===== TOAST ===== */
  body.welltrust-apply-page #toast {
    position:fixed; left:50%; bottom:calc(var(--action-h) + 20px);
    transform:translateX(-50%) translateY(20px);
    background:var(--text); color:#fff;
    padding:12px 20px; border-radius:10px;
    font-size:14px; font-weight:500;
    box-shadow:var(--shadow-lg);
    opacity:0; pointer-events:none;
    transition:opacity .2s, transform .2s;
    z-index:60;
    max-width:min(400px, calc(100vw - 32px));
  }
  body.welltrust-apply-page #toast.show { opacity:1; transform:translateX(-50%) translateY(0); }
  body.welltrust-apply-page #toast.ok { background:var(--success); }
  body.welltrust-apply-page #toast.err { background:var(--danger); }

  /* CV Autofill preview */
  body.welltrust-apply-page .autofill-row {
    display:grid; grid-template-columns:auto 150px 1fr; gap:14px;
    padding:12px 14px; border:1px solid var(--border); border-radius:10px;
    background:#F9FAFB; margin-bottom:8px; align-items:center;
  }
  body.welltrust-apply-page .autofill-row input[type=checkbox] { width:18px; height:18px; accent-color:var(--primary); cursor:pointer; }
  body.welltrust-apply-page .autofill-row .af-label { font-size:12px; font-weight:600; color:var(--text-muted); text-transform:uppercase; letter-spacing:.03em; }
  body.welltrust-apply-page .autofill-row .af-value { font-size:14px; color:var(--text); font-weight:500; word-break:break-word; }
  body.welltrust-apply-page .autofill-row .af-value.empty { color:var(--text-soft); font-style:italic; font-weight:400; }
  body.welltrust-apply-page .autofill-row.skipped { opacity:.5; }
  @media (max-width:520px) {
    body.welltrust-apply-page .autofill-row { grid-template-columns:auto 1fr; }
    body.welltrust-apply-page .autofill-row .af-label { grid-column:2; }
    body.welltrust-apply-page .autofill-row .af-value { grid-column:2; }
  }
  body.welltrust-apply-page .cv-parsing-status {
    display:flex; align-items:center; gap:10px;
    padding:10px 14px; margin-top:8px;
    background:var(--info-bg); border:1px solid var(--info-border);
    border-radius:10px; font-size:13px; color:#1E40AF;
  }
  body.welltrust-apply-page .cv-spinner {
    width:16px; height:16px; border:2px solid #BFDBFE; border-top-color:var(--info-icon);
    border-radius:50%; animation:cvspin .8s linear infinite;
    flex-shrink:0;
  }
  @keyframes cvspin { to { transform:rotate(360deg); } }

  /* ==== MODALS ==== */
  body.welltrust-apply-page .wt-modal-backdrop {
    position:fixed; inset:0;
    background:rgba(15, 23, 42, .5);
    display:none; align-items:center; justify-content:center;
    z-index:50;
    padding:20px;
    animation:wtFadeIn .18s ease-out;
  }
  body.welltrust-apply-page .wt-modal-backdrop.show { display:flex; }
  @keyframes wtFadeIn { from { opacity:0; } to { opacity:1; } }
  body.welltrust-apply-page .wt-modal {
    background:var(--card);
    border-radius:var(--radius-card);
    box-shadow:var(--shadow-lg);
    width:100%; max-width:520px;
    max-height:calc(100vh - 40px);
    display:flex; flex-direction:column;
    overflow:hidden;
  }
  body.welltrust-apply-page .wt-modal-wide { max-width:820px; }
  body.welltrust-apply-page .wt-modal-head {
    padding:20px 24px;
    border-bottom:1px solid var(--border);
    display:flex; align-items:center; justify-content:space-between;
    gap:12px;
    flex-shrink:0;
  }
  body.welltrust-apply-page .wt-modal-head h3 { font-size:18px; letter-spacing:-0.01em; }
  body.welltrust-apply-page .wt-modal-close {
    background:transparent; border:0;
    width:32px; height:32px; border-radius:8px;
    color:var(--text-muted); font-size:22px; line-height:1;
    cursor:pointer;
    display:grid; place-items:center;
  }
  body.welltrust-apply-page .wt-modal-close:hover { background:var(--bg); color:var(--text); }
  body.welltrust-apply-page .wt-modal-body { padding:20px 24px 24px; overflow-y:auto; flex:1; }
  body.welltrust-apply-page .submission-state-backdrop { z-index:1200; }
  body.welltrust-apply-page .submission-state-dialog { max-width:460px; }
  body.welltrust-apply-page .submission-state-content {
    padding:36px 28px;
    text-align:center;
  }
  body.welltrust-apply-page .submission-state-content h3 { margin:18px 0 8px; }
  body.welltrust-apply-page .submission-state-content p,
  body.welltrust-apply-page .submission-error-content p { color:var(--text-muted); line-height:1.55; }
  body.welltrust-apply-page .submission-spinner {
    display:block;
    width:48px;
    height:48px;
    margin:0 auto;
    border:4px solid var(--border);
    border-top-color:var(--primary);
    border-radius:50%;
    animation:submission-spin .8s linear infinite;
  }
  body.welltrust-apply-page .submission-error-content { text-align:center; }
  body.welltrust-apply-page .submission-error-icon {
    display:grid;
    place-items:center;
    width:52px;
    height:52px;
    margin:0 auto 16px;
    border-radius:50%;
    background:var(--danger-bg);
    color:var(--danger);
    font-size:28px;
    font-weight:800;
  }
  body.welltrust-apply-page .submission-error-note { margin:8px 0 20px; font-size:13px; }
  body.welltrust-apply-page .submission-success-content {
    padding:34px 28px;
    text-align:center;
  }
  body.welltrust-apply-page .submission-success-content h3 { margin:16px 0 8px; }
  body.welltrust-apply-page .submission-success-content > p { color:var(--text-muted); line-height:1.55; }
  body.welltrust-apply-page .submission-success-icon {
    display:grid;
    place-items:center;
    width:58px;
    height:58px;
    margin:0 auto;
    border-radius:50%;
    background:var(--success-bg);
    color:var(--success);
    font-size:30px;
    font-weight:800;
  }
  body.welltrust-apply-page .submission-reference {
    margin:16px 0 22px;
    padding:10px 12px;
    border-radius:10px;
    background:var(--bg);
  }
  @keyframes submission-spin { to { transform:rotate(360deg); } }
  @media (max-width:520px) {
    body.welltrust-apply-page .wt-modal-backdrop { padding:0; align-items:stretch; }
    body.welltrust-apply-page .wt-modal { max-width:100%; max-height:100vh; border-radius:0; height:100vh; }
    body.welltrust-apply-page .wt-modal-head { padding:16px 18px; }
    body.welltrust-apply-page .wt-modal-head h3 { font-size:16px; }
    body.welltrust-apply-page .wt-modal-body { padding:16px 18px 24px; }
  }

  /* ==== APPLICATION DOCUMENT VIEW (viewable + printable) ==== */
  body.welltrust-apply-page .app-doc {
    max-width:760px; margin:0 auto;
    background:#fff; color:var(--text);
    font-size:13.5px; line-height:1.55;
  }
  body.welltrust-apply-page .app-doc-head {
    display:flex; justify-content:space-between; align-items:flex-start;
    padding-bottom:14px; margin-bottom:18px;
    border-bottom:2px solid var(--primary);
    gap:16px;
  }
  body.welltrust-apply-page .app-doc-org { font-weight:700; font-size:16px; color:var(--primary); }
  body.welltrust-apply-page .app-doc-org-sub { font-size:11.5px; color:var(--text-muted); margin-top:3px; line-height:1.45; }
  body.welltrust-apply-page .app-doc-meta { text-align:right; font-size:11px; color:var(--text-muted); line-height:1.5; }
  body.welltrust-apply-page .app-doc-title { font-size:24px; font-weight:700; letter-spacing:-0.015em; margin-bottom:2px; }
  body.welltrust-apply-page .app-doc-subtitle { font-size:13px; color:var(--text-muted); margin-bottom:6px; }
  body.welltrust-apply-page .app-doc-ref {
    display:inline-block; font-family:ui-monospace,monospace;
    background:var(--primary-tint); color:var(--primary);
    padding:4px 10px; border-radius:6px;
    font-size:12px; font-weight:600;
    margin-bottom:20px;
  }
  body.welltrust-apply-page .app-doc-sect {
    margin-top:22px; padding-top:16px;
    border-top:1px solid var(--border);
  }
  body.welltrust-apply-page .app-doc-sect:first-of-type { border-top:0; padding-top:0; margin-top:0; }
  body.welltrust-apply-page .app-doc-sect h4 {
    font-size:13.5px; color:var(--primary); font-weight:700;
    text-transform:uppercase; letter-spacing:.06em;
    margin-bottom:10px;
  }
  body.welltrust-apply-page .app-doc-row {
    display:grid; grid-template-columns:200px 1fr;
    gap:12px; padding:5px 0;
    font-size:13px;
    border-bottom:1px dotted var(--border);
  }
  body.welltrust-apply-page .app-doc-row:last-child { border-bottom:0; }
  body.welltrust-apply-page .app-doc-lbl { color:var(--text-muted); font-weight:500; }
  body.welltrust-apply-page .app-doc-val { color:var(--text); }
  body.welltrust-apply-page .app-doc-val.empty { color:var(--text-soft); font-style:italic; }
  @media (max-width:520px) {
    body.welltrust-apply-page .app-doc-row { grid-template-columns:1fr; gap:2px; padding:8px 0; }
    body.welltrust-apply-page .app-doc-lbl { font-size:11px; text-transform:uppercase; letter-spacing:.03em; }
    body.welltrust-apply-page .app-doc-sig { grid-template-columns:1fr; gap:20px; }
    body.welltrust-apply-page .app-doc-head { flex-direction:column; }
    body.welltrust-apply-page .app-doc-meta { text-align:left; }
    body.welltrust-apply-page .app-doc-title { font-size:20px; }
  }
  body.welltrust-apply-page .app-doc-refcard {
    background:#F9FAFB; border:1px solid var(--border);
    border-radius:10px; padding:12px 14px;
    margin-bottom:10px;
  }
  body.welltrust-apply-page .app-doc-refcard-title {
    font-size:13.5px; font-weight:700;
    color:var(--primary); margin-bottom:8px;
    padding-bottom:6px; border-bottom:1px solid var(--border);
  }
  body.welltrust-apply-page .app-doc-tick {
    display:flex; align-items:flex-start; gap:8px;
    padding:5px 0; font-size:13px;
  }
  body.welltrust-apply-page .app-doc-tick-mark {
    width:16px; height:16px; border-radius:4px;
    background:var(--success); color:#fff;
    display:grid; place-items:center;
    font-size:11px; font-weight:700;
    flex-shrink:0; margin-top:1px;
  }
  body.welltrust-apply-page .app-doc-tick-mark.no { background:var(--danger); }
  body.welltrust-apply-page .app-doc-sig {
    display:grid; grid-template-columns:1fr 1fr; gap:32px;
    margin-top:32px; padding-top:20px;
    border-top:1px solid var(--border);
  }
  body.welltrust-apply-page .app-doc-sig-block { min-height:70px; }
  body.welltrust-apply-page .app-doc-sig-line {
    font-family:'Fraunces', Georgia, serif;
    font-size:20px; font-style:italic;
    padding-bottom:6px; border-bottom:1px solid var(--text);
  }
  body.welltrust-apply-page .app-doc-sig-lbl {
    font-size:10.5px; text-transform:uppercase;
    letter-spacing:.06em; color:var(--text-muted);
    margin-top:4px;
  }
  body.welltrust-apply-page .app-doc-footer {
    margin-top:24px; padding-top:14px;
    border-top:1px solid var(--border);
    font-size:10.5px; color:var(--text-muted);
    line-height:1.55; text-align:center;
  }

  /* ==== PRINT — clean A4 output ==== */
  @media print {
    body.welltrust-apply-page > *:not(#printTarget) { display:none !important; }
    body.welltrust-apply-page #printTarget { display:block !important; padding:0; margin:0; }
    body.welltrust-apply-page .app-doc { max-width:100%; font-size:11pt; }
    body.welltrust-apply-page .app-doc-head { border-color:#000; }
    @page { size:A4; margin:15mm 15mm 18mm 15mm; }
    body.welltrust-apply-page a { color:inherit; text-decoration:none; }
  }

  /* ==================== NEW: AGREEMENT SECTIONS ==================== */
  body.welltrust-apply-page .agreement-body { padding:16px 20px 20px; }
  body.welltrust-apply-page .agreement-text { background:var(--bg); border:1px solid var(--border); border-radius:12px; padding:18px 20px; margin-bottom:20px; max-height:340px; overflow-y:auto; font-size:14px; line-height:1.65; }
  body.welltrust-apply-page .agreement-text h4 { font-size:13.5px; margin:14px 0 6px; color:var(--primary); text-transform:uppercase; letter-spacing:.04em; font-weight:700; }
  body.welltrust-apply-page .agreement-text h4:first-child { margin-top:0; }
  body.welltrust-apply-page .agreement-text p { margin:0 0 10px; }
  body.welltrust-apply-page .agreement-text ul { padding-left:22px; margin:6px 0 12px; }
  body.welltrust-apply-page .agreement-text ul li { margin-bottom:5px; }
  body.welltrust-apply-page .agreement-text strong { color:var(--text); }

  /* Confirm checklist inside agreements */
  body.welltrust-apply-page .agreement-checks { display:flex; flex-direction:column; gap:12px; margin-bottom:16px; }
  body.welltrust-apply-page .agreement-check { display:flex; align-items:flex-start; gap:12px; padding:14px 16px; background:var(--card); border:1.5px solid var(--border); border-radius:10px; cursor:pointer; transition:border-color .12s, background .12s; }
  body.welltrust-apply-page .agreement-check:hover { border-color:var(--primary-tint); }
  body.welltrust-apply-page .agreement-check.checked { border-color:var(--success); background:var(--success-bg); }
  body.welltrust-apply-page .agreement-check input[type=checkbox] { margin-top:2px; flex-shrink:0; width:18px; height:18px; cursor:pointer; accent-color:var(--primary); }
  body.welltrust-apply-page .agreement-check label { font-size:14px; line-height:1.5; cursor:pointer; flex:1; color:var(--text); }
  body.welltrust-apply-page .agreement-check.checked label { color:#065F46; font-weight:500; }

  /* GDPR quiz */
  body.welltrust-apply-page .quiz-intro { font-size:14px; color:var(--text-muted); margin-bottom:16px; padding:12px 16px; background:#EFF6FF; border-left:4px solid #2563EB; border-radius:8px; }
  body.welltrust-apply-page .quiz-questions { display:flex; flex-direction:column; gap:16px; margin-bottom:20px; }
  body.welltrust-apply-page .quiz-q { background:var(--card); border:1.5px solid var(--border); border-radius:12px; padding:18px 20px; transition:border-color .15s, background .15s; }
  body.welltrust-apply-page .quiz-q .q-num { font-size:11px; font-weight:700; color:var(--text-muted); letter-spacing:.08em; text-transform:uppercase; margin-bottom:6px; }
  body.welltrust-apply-page .quiz-q .q-text { font-weight:600; font-size:14.5px; margin-bottom:14px; line-height:1.5; color:var(--text); }
  body.welltrust-apply-page .quiz-q .q-options { display:flex; gap:10px; flex-wrap:wrap; }
  body.welltrust-apply-page .quiz-q .q-opt { display:inline-flex; align-items:center; gap:8px; padding:9px 18px; background:var(--card); border:1.5px solid var(--border-strong); border-radius:10px; cursor:pointer; font-size:14px; font-weight:600; flex:1; min-width:100px; justify-content:center; user-select:none; }
  body.welltrust-apply-page .quiz-q .q-opt input { margin:0; accent-color:var(--primary); }
  body.welltrust-apply-page .quiz-q .q-opt:hover { border-color:var(--primary); background:var(--primary-tint); }
  body.welltrust-apply-page .quiz-q .q-opt.selected { border-color:var(--primary); background:var(--primary-tint); color:var(--primary); }
  body.welltrust-apply-page .quiz-q.correct { border-color:var(--success); background:var(--success-bg); }
  body.welltrust-apply-page .quiz-q.correct .q-opt.selected { border-color:var(--success); background:#fff; color:#065F46; }
  body.welltrust-apply-page .quiz-q.incorrect { border-color:var(--danger); background:#FEF2F2; }
  body.welltrust-apply-page .quiz-q.incorrect .q-opt.selected { border-color:var(--danger); background:#fff; color:#991B1B; }
  body.welltrust-apply-page .quiz-q .q-feedback { display:none; margin-top:12px; padding:10px 14px; border-radius:8px; font-size:13.5px; line-height:1.5; }
  body.welltrust-apply-page .quiz-q.correct .q-feedback { display:block; background:#fff; color:#065F46; border:1px solid var(--success-border); }
  body.welltrust-apply-page .quiz-q.incorrect .q-feedback { display:block; background:#fff; color:#991B1B; border:1px solid #FECACA; }
  body.welltrust-apply-page .quiz-q .q-feedback strong { display:block; margin-bottom:2px; }
  body.welltrust-apply-page .quiz-summary { padding:14px 16px; background:var(--bg); border:1px solid var(--border); border-radius:10px; font-size:13.5px; color:var(--text); margin-bottom:16px; }
  body.welltrust-apply-page .quiz-summary.pass { background:var(--success-bg); border-color:var(--success-border); color:#065F46; }
  body.welltrust-apply-page .quiz-summary.pass strong { color:#065F46; }

  /* Signature pad */
  body.welltrust-apply-page .signature-pad-wrap { margin:20px 0 16px; }
  body.welltrust-apply-page .signature-pad-wrap > label { display:block; font-size:13px; font-weight:600; margin-bottom:8px; color:var(--text); }
  body.welltrust-apply-page .signature-canvas-wrap { position:relative; }
  body.welltrust-apply-page .signature-canvas { border:2px dashed var(--border-strong); border-radius:12px; background:#fff; display:block; width:100%; cursor:crosshair; touch-action:none; }
  body.welltrust-apply-page .signature-canvas.signed { border-style:solid; border-color:var(--success); background:#FBFFFC; }
  body.welltrust-apply-page .signature-canvas-placeholder { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); font-size:13px; color:var(--text-soft); pointer-events:none; font-style:italic; }
  body.welltrust-apply-page .signature-canvas.signed + .signature-canvas-placeholder { display:none; }
  body.welltrust-apply-page .signature-controls { display:flex; gap:10px; margin-top:10px; justify-content:space-between; align-items:center; flex-wrap:wrap; }
  body.welltrust-apply-page .signature-clear { padding:7px 14px; background:transparent; border:1px solid var(--border); border-radius:8px; font-size:12.5px; font-weight:600; color:var(--text-muted); cursor:pointer; font-family:inherit; }
  body.welltrust-apply-page .signature-clear:hover { border-color:var(--danger); color:var(--danger); background:#FEF2F2; }
  body.welltrust-apply-page .signature-status { font-size:12.5px; color:var(--text-muted); font-weight:600; display:inline-flex; align-items:center; gap:5px; }
  body.welltrust-apply-page .signature-status.signed { color:var(--success); }
  body.welltrust-apply-page .signature-status.signed::before { content:'\2713'; font-size:14px; font-weight:800; }

  /* Accept button (per agreement) */
  body.welltrust-apply-page .accept-row { display:flex; justify-content:flex-end; margin-top:12px; }
  body.welltrust-apply-page .accept-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:11px 24px; background:var(--primary); color:#fff; border:0; border-radius:10px; font-family:inherit; font-size:14.5px; font-weight:600; cursor:pointer; transition:background .12s; }
  body.welltrust-apply-page .accept-btn:hover:not(:disabled) { background:var(--primary-hover); }
  body.welltrust-apply-page .accept-btn:disabled { background:var(--border-strong); color:var(--text-soft); cursor:not-allowed; }
  body.welltrust-apply-page .accept-btn.accepted { background:var(--success); pointer-events:none; }
  body.welltrust-apply-page .accept-btn.accepted::before { content:'\2713'; font-size:16px; font-weight:800; }

  /* Code of Conduct list */
  body.welltrust-apply-page .conduct-list { display:flex; flex-direction:column; gap:10px; }
  body.welltrust-apply-page .conduct-list .agreement-check label { font-size:14.5px; font-weight:500; }
  body.welltrust-apply-page .conduct-list .agreement-check label strong { color:var(--primary); }

  /* Final review section */
  body.welltrust-apply-page .review-block { background:var(--bg); border:1px solid var(--border); border-radius:12px; padding:18px 20px; margin-bottom:16px; }
  body.welltrust-apply-page .review-block h5 { font-size:13.5px; color:var(--primary); text-transform:uppercase; letter-spacing:.05em; margin:0 0 10px; font-weight:700; }
  body.welltrust-apply-page .review-block p { font-size:13.5px; margin:0 0 6px; color:var(--text); }
  body.welltrust-apply-page .review-block p strong { color:var(--primary); }

  /* Section badges — Accepted state */
  body.welltrust-apply-page .acc-status.accepted { background:var(--success-bg); color:#065F46; border-color:var(--success-border); }

/* Shared MVC layout additions */
.mobile-login-link { padding:12px 14px; border:0; border-radius:10px; background:transparent; color:var(--text); font:500 15px/1.2 inherit; text-align:left; cursor:pointer; }
.mobile-login-link:hover { background:var(--bg); }
.footer-logo { width:36px; height:36px; border-radius:9px; object-fit:contain; background:#fff; }
.footer-company { margin-top:10px; color:#8FA5D6; font-size:12px; }
.login-submit { width:100%; margin-top:6px; }
.login-help { margin-top:16px; padding-top:16px; border-top:1px solid var(--border); color:var(--text-muted); text-align:center; font-size:13px; }
body.welltrust-apply-page .footer-gdpr { max-width:var(--container); margin:28px auto 0; padding:16px 24px; }
