/* Patient-first contact screens, using TalkMed's approved amethyst palette. */
.contact-welcome{position:relative;overflow:hidden;padding:clamp(24px,5vw,52px);border:1px solid #e8d9f5;border-radius:28px;background:radial-gradient(ellipse at 95% 15%,#e6c6ff90,transparent 45%),radial-gradient(ellipse at 5% 95%,#caeee990,transparent 55%),#fdf9ff;box-shadow:0 14px 42px #57317a0a}.contact-welcome h1{font-size:clamp(29px,4.4vw,46px);line-height:1.17;letter-spacing:-1px;margin:17px 0;color:#37214d}.contact-welcome h1 em{color:#7b3aa6;font-style:normal}.contact-welcome>p{max-width:540px;color:#665674;font-size:17px;line-height:1.7}.contact-main-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px;position:relative}.contact-choice{display:flex;align-items:center;gap:14px;text-align:left;min-height:120px;padding:22px;border:1px solid #dcc8ed;border-radius:20px;background:#fffdfef0;color:#49305f;box-shadow:0 7px 19px #6f3a920b;transition:transform .2s,box-shadow .2s}.contact-choice:hover{transform:translateY(-3px);box-shadow:0 12px 26px #7736a022}.contact-choice-primary{color:#fff;background:linear-gradient(125deg,#61309b,#9253bd);border-color:transparent}.contact-choice-icon{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;border-radius:16px;background:#efe3f8}.contact-choice-primary .contact-choice-icon{background:#ffffff20}.contact-choice span:nth-child(2){flex:1}.contact-choice strong{font-size:18px;display:block;line-height:1.4}.contact-choice small{display:block;font-size:14px;line-height:1.5;margin-top:6px;opacity:.86}.contact-choice>svg{width:20px;flex-shrink:0}.contact-help{display:block;margin:18px auto 0;min-height:44px}.contact-secondary{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.contact-small-card{display:flex;align-items:center;gap:14px;text-align:left;padding:20px;border:1px solid #e7ddec;border-radius:18px;background:#fff;color:#513769;min-width:0}.contact-small-card>svg:first-child{width:26px;flex-shrink:0;color:#8a4ab4}.contact-small-card span{flex:1}.contact-small-card strong,.contact-small-card small{display:block}.contact-small-card strong{font-size:15px}.contact-small-card small{margin-top:6px;font-size:14px;line-height:1.5;color:#756880}.contact-followup{margin:28px 0}.network-search-panel{background:#fffdff;border:1px solid #e7d8f1;border-radius:22px;padding:24px}.network-kind{display:flex;gap:10px;margin-bottom:24px}.network-kind button{flex:1;display:flex;gap:8px;align-items:center;justify-content:center;min-height:50px;border:1px solid #dccaeb;border-radius:14px;background:#faf5fd;color:#6c467f;font-weight:650;padding:12px}.network-kind button[aria-pressed=true]{background:#75439e;color:#fff;border-color:#75439e}.location-scopes{display:flex;flex-wrap:wrap;gap:8px}.location-scopes button{min-height:44px;border-radius:30px;padding:10px 17px;border:1px solid #dfd4e8;color:#70587f;background:#fff}.location-scopes button[aria-pressed=true]{background:#e7f3ef;border-color:#61a691;color:#235e4d;font-weight:650}.network-location-fields{display:grid;grid-template-columns:1fr 180px;gap:12px;margin-top:18px}.network-location-fields .btn{grid-column:1/-1;justify-self:start}.network-search-panel label:not(.search){font-size:14px;font-weight:600;color:#614c70}.network-search-panel select{display:block;width:100%;margin-top:7px;min-height:46px;padding:10px 12px;border:1px solid #d9c9e5;border-radius:12px;background:#fff;color:#4b315d;font-size:15px}.network-location-note{font-size:14px;line-height:1.6;color:#77627f;margin:12px 0 20px}.network-country,.network-profession{display:block;margin:18px 0}.network-more-filters{margin-top:20px;border-top:1px solid #eee3f4;padding-top:16px}.network-more-filters>summary{color:#704792;cursor:pointer;min-height:40px;font-size:15px}.network-more-filters[open] .catalogue-filters{margin-top:16px}.directory-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:24px 0 15px;font-size:14px;color:#706078}.contact-profile-card{display:flex;flex-direction:column;gap:16px;background:#fff;border:1px solid #e6d9ef;border-radius:22px;padding:24px;box-shadow:0 8px 24px #61427808}.contact-profile-top{display:flex;gap:14px;align-items:center}.contact-profile-top>div:last-child{min-width:0}.contact-profile-top .avatar{flex-shrink:0}.contact-profile-top h2{font-size:19px;line-height:1.4;margin:4px 0;color:#412a56}.contact-profile-top p{font-size:14px;margin:0;color:#786581}.contact-profession{font-size:12px;letter-spacing:.25px;color:#8c4fb2;font-weight:700}.contact-profile-expertise{font-size:15px;line-height:1.6;margin:0;flex:1;color:#66536f}.contact-profile-meta{display:grid;gap:9px;color:#6b5478;font-size:14px}.contact-profile-meta span{display:flex;gap:8px;align-items:center}.contact-profile-meta svg{width:17px;flex-shrink:0}.contact-profile-foot{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:12px;color:#72617e;flex-wrap:wrap}.contact-profile-card .btn{font-size:14px;min-height:48px}.contact-profile-notice{display:flex;align-items:flex-start;gap:10px;padding:18px;margin:20px 0;border-radius:14px;background:#f1eaf8;color:#6d5480;line-height:1.6;font-size:14px}.contact-profile-notice svg{width:20px;flex-shrink:0}.network-guidance button{width:100%;text-align:left;min-height:70px}.network-search-panel .directory-tools{margin-bottom:0}.contact-welcome .welcome-glitter{pointer-events:none}
@media(max-width:700px){.contact-main-actions,.contact-secondary{grid-template-columns:1fr}.contact-welcome{padding:26px 20px;border-radius:22px}.contact-welcome h1{font-size:30px;letter-spacing:-.7px}.contact-choice{min-height:102px;padding:17px;gap:12px}.contact-choice strong{font-size:17px}.contact-main-actions{margin-top:22px}.contact-secondary{gap:10px;margin:16px 0}.contact-small-card{padding:17px}.network-search-panel{padding:18px 15px}.network-kind{gap:7px;margin-bottom:20px}.network-kind button{font-size:13px;padding:10px 8px}.network-kind svg{width:18px;flex-shrink:0}.location-scopes{gap:6px}.location-scopes button{font-size:13px;padding:10px 12px}.network-location-fields{grid-template-columns:1fr}.network-location-fields .btn{justify-self:stretch}.contact-profile-card{padding:20px}.directory-toolbar{align-items:flex-start}.directory-toolbar .text-link{max-width:130px;text-align:right}.contact-profile-top .avatar.large{width:62px;height:62px}.contact-profile-top h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){.contact-choice{transition:none}.contact-choice:hover{transform:none}}

.contact-welcome>:not(.light-dust):not(.welcome-glitter){position:relative;z-index:1}.contact-welcome .welcome-glitter{top:10px;right:10px}.contact-welcome .light-dust{z-index:0}.contact-profile-card .btn-primary,.privacy-editor .btn-primary{background:linear-gradient(115deg,#7040a1,#9258b8);border-color:#7944a4}.contact-profile-card .btn-primary:hover,.privacy-editor .btn-primary:hover{background:#68358f}.protected-copy h3{display:flex;align-items:center;gap:8px}.protected-copy h3 svg{width:20px;height:20px;flex-shrink:0}.privacy-editor{gap:12px}.privacy-editor>label:not(.privacy-upload){margin:10px 0}.privacy-editor .form-actions{margin-top:10px}.contact-choice:focus-visible,.contact-small-card:focus-visible,.network-kind button:focus-visible,.location-scopes button:focus-visible{outline:3px solid #528f82;outline-offset:4px}

/* Registration is reachable before the contact-search content on mobile. */
.contact-account-access{margin:0 0 22px;padding:18px;border:1px solid #d9c5ec;border-radius:20px;background:linear-gradient(115deg,#f0e2fb,#f2fbf8);box-shadow:0 8px 24px #6134870c}
.contact-account-access h2{margin:0 0 12px;color:#4e2e69;font-size:1rem;line-height:1.5}
.contact-account-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.contact-account-button{display:flex;align-items:center;gap:12px;min-width:0;min-height:76px;padding:15px 18px;border:1px solid #76439e;border-radius:15px;background:linear-gradient(115deg,#643594,#8650ad);color:#fff;text-align:left;cursor:pointer}
.contact-account-button>svg{width:24px;height:24px;flex-shrink:0}
.contact-account-button>span{min-width:0}
.contact-account-button strong{display:block;font-size:1rem;line-height:1.4;font-weight:650;overflow-wrap:anywhere}
.contact-account-button small{display:block;margin-top:4px;font-size:.875rem;line-height:1.5}
.contact-account-professional{background:#fff;color:#593175;border-color:#a577c3}
.contact-account-button:hover{filter:brightness(.97)}
.contact-account-button:focus-visible{outline:3px solid #247765;outline-offset:4px}
@media(max-width:700px){.contact-account-access{padding:14px;margin-bottom:16px;border-radius:18px}.contact-account-options{grid-template-columns:1fr;gap:9px}.contact-account-button{min-height:70px;padding:12px 15px}}
