/* Shared type and spacing system. Native system fonts use SF on Apple devices;
   Mardoto remains available when the platform needs Armenian glyphs. */
:root{
 --font-ui:-apple-system,BlinkMacSystemFont,"Segoe UI",Mardoto,sans-serif;
 --text-primary:#001E28;--text-secondary:#66696D;--accent:#0A4953;
 --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;
 --space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;
 --content-width:1360px;--page-gutter:40px;
 font-family:var(--font-ui);font-size:17px;line-height:1.5;
 font-optical-sizing:auto;-webkit-font-smoothing:antialiased;
 text-rendering:optimizeLegibility;
}
body{background:#F8FCFF;color:var(--text-primary)}
button,input,select,textarea{font-family:var(--font-ui)}
h1,h2,h3,.auth-art h1,.auth-panel h2,.page-heading h1,.banner-person h2,.sidebar-note p{font-family:var(--font-ui);font-weight:600;letter-spacing:-.035em}
:where(button,a,input,select,textarea):focus-visible{outline:3px solid #5697AA;outline-offset:4px}
.primary,.secondary{font-size:15px;line-height:1.35;min-height:44px;padding:12px 22px;font-weight:500;border-radius:999px}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;line-height:1.5;color:#33717C}
.muted{font-size:17px;line-height:1.6;color:var(--text-secondary)}
.ui-language select{font-size:13px;min-height:44px;padding:10px 12px}
.local-label{font-size:11px;border-color:#D2D5D9;background:#F6F9F9;color:#66696D}
/* One shared content edge aligns the navigation, results and footer. */
.directory-page{background:#F8FCFF}
.directory-topbar{max-width:none;width:100%;margin:0;padding:0 max(var(--page-gutter),calc((100vw - var(--content-width))/2));min-height:72px;gap:24px;background:#FFFFFFE8;border-bottom:1px solid #001E2810}
.directory-topbar .brand img{width:112px}
.directory-topbar nav{font-size:14px;gap:28px;font-weight:500}
.directory-topbar .topbar-right{gap:16px}
.directory-topbar .directory-signin{font-size:13px;min-height:36px;padding:9px 20px}
.directory-hero{width:calc(100% - 2 * var(--page-gutter));max-width:var(--content-width);margin:0 auto;padding:72px 0 56px;background:transparent;border-radius:0;text-align:center;display:block}
.directory-hero>div:first-child{width:100%;max-width:none}
.directory-hero .eyebrow{font-size:12px;letter-spacing:.1em;margin:0 0 16px}
.directory-hero h1{font-family:var(--font-ui);font-size:64px;font-weight:600;line-height:1.08;letter-spacing:-.045em;max-width:1000px;margin:0 auto 24px;text-wrap:balance;color:#001E28}
.directory-hero h1 em{font-style:normal;font-weight:600;color:#33717C}
.directory-hero>div>p{font-size:21px;line-height:1.5;max-width:760px;margin:0 auto;color:#66696D;text-wrap:pretty}
.directory-search{max-width:760px;margin:32px auto 0;padding:8px 16px;min-height:60px;gap:12px;background:#FFF;border:1px solid #001E2826;border-radius:16px;box-shadow:0 4px 20px #001E2805;text-align:left;transition:border-color .2s,box-shadow .2s}
.directory-search:focus-within{border-color:#33717C;box-shadow:0 0 0 4px #5697AA22}
.directory-search input{font-size:17px;min-height:44px;line-height:1.4}
.directory-search input::placeholder{font-size:17px;color:#66696D;opacity:1}
.directory-search>span{color:#33717C;display:flex;align-items:center}
.directory-search button{min-width:44px;min-height:44px;border-radius:50%}
.directory-body{width:calc(100% - 2 * var(--page-gutter));max-width:var(--content-width);margin:0 auto;padding:0 0 80px}
.directory-layout{grid-template-columns:232px minmax(0,1fr);gap:32px;align-items:start}
.directory-sidebar{padding:24px 20px;border:1px solid #001E2814;border-radius:20px;background:#FFF}
.filter-heading{gap:12px;align-items:flex-start;margin-bottom:20px}
.filter-heading h2{font-family:var(--font-ui);font-size:20px;line-height:1.3;letter-spacing:-.025em;font-weight:600}
.filter-heading button{font-size:12px;line-height:1.5;min-height:32px;color:#33717C;text-align:right}
.filter-section{padding:20px 0;border-color:#001E2814}
.filter-section summary{font-size:14px;line-height:1.5;min-height:32px;font-weight:600;color:#001E28;gap:12px}
.filter-options{margin-top:12px;gap:0}
.filter-options>label{font-size:14px;line-height:1.5;min-height:40px;padding:8px 0;gap:10px;color:#66696D;align-items:flex-start}
.filter-options input{width:16px;height:16px;flex:0 0 16px;margin-top:2px;accent-color:#0A4953}
.price-filter h3{font-size:14px;line-height:1.5;font-weight:600;margin-bottom:16px}
.price-filter label{font-size:13px;line-height:1.5;color:#66696D}
.price-filter input,.price-filter select{font-size:16px;min-height:44px;border-radius:10px;padding:10px 12px;border-color:#D2D5D9}
.price-filter small{font-size:12px;line-height:1.6;color:#66696D;margin-top:16px}
.results-heading{min-height:72px;gap:24px;margin-bottom:24px;align-items:center}
.results-heading h2{font-family:var(--font-ui);font-size:28px;font-weight:600;letter-spacing:-.035em;line-height:1.2;color:#001E28}
.results-heading p{font-size:13px;line-height:1.5;margin-top:8px;color:#66696D}
.result-controls{gap:16px;align-items:center}
.result-controls .sort-label{font-size:12px;line-height:1.4;gap:8px;color:#66696D;display:flex;flex-direction:column;align-items:stretch}
.result-controls select{font-size:14px;line-height:1.4;min-height:44px;padding:10px 32px 10px 12px;border:1px solid #001E2826;border-radius:10px;max-width:210px;background-color:#FFF;color:#001E28}
.active-filters{gap:8px}
.active-filters button{font-size:13px;line-height:1.4;padding:10px 12px;border-radius:999px;border-color:#CBE2E2;min-height:40px}
.directory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.therapist-card{border:1px solid #001E2814;border-radius:20px;padding:0;background:#FFF;box-shadow:0 4px 20px #001E2804;transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease}
.therapist-card>.directory-avatar{width:100%;height:auto;aspect-ratio:4/3;flex-basis:auto;border-radius:0;background:#EEF2F5;overflow:hidden}
.directory-avatar img{width:100%;height:100%;object-fit:cover;object-position:50% 24%;transition:transform .35s ease}
.therapist-card-content{padding:24px;gap:0;flex:1}
.therapist-card h3{font-family:var(--font-ui);font-size:22px;line-height:1.27;font-weight:600;letter-spacing:-.025em;overflow-wrap:anywhere;min-height:56px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.therapist-card-top{margin-bottom:16px;min-height:108px}
.therapist-card-top p{font-size:14px;line-height:1.5;margin-top:8px;color:#66696D}
.therapist-card-top small{font-size:13px;line-height:1.5;display:block;margin-top:4px;color:#66696D}
.therapist-card-bio{font-size:15px;line-height:1.6;color:#66696D;-webkit-line-clamp:3;min-height:72px;max-height:72px;margin:0 0 20px}
.directory-tags{gap:6px;min-height:56px;margin:0 0 20px;align-content:flex-start;align-items:flex-start}
.directory-tags>span{font-size:11px;font-weight:500;line-height:1.4;padding:6px 8px;border-radius:7px;background:#EEF2F5;color:#0A4953;max-width:100%;overflow-wrap:anywhere}
.therapist-card-languages{font-size:13px;line-height:1.6;color:#0A4953;padding-bottom:20px;margin-top:auto}
.therapist-card-languages>span{font-size:11px;line-height:1.5;color:#66696D;margin-bottom:4px;letter-spacing:0}
.therapist-card-bottom{border-color:#001E2814;padding-top:20px;gap:16px;flex-wrap:wrap;align-items:center}
.therapist-card-price>strong{font-size:24px;font-weight:600;line-height:1.2;letter-spacing:-.025em;color:#0A4953;font-variant-numeric:tabular-nums}
.therapist-card-price>span,.therapist-card-price>small{font-size:12px;line-height:1.6;color:#66696D;margin-top:4px}
.directory-view-profile{font-size:13px;font-weight:500;line-height:1.4;min-height:44px;padding:10px 14px;border-radius:999px;color:#0A4953;background:#EEF2F5;border-color:transparent;gap:8px;white-space:normal;text-align:center;max-width:100%;margin-left:auto}
.directory-view-profile svg{width:16px;height:16px}
#directory-more{padding-top:40px}
#directory-more>p{font-size:13px;color:#66696D;line-height:1.5;margin-bottom:16px}
#directory-more .secondary{font-size:15px;min-height:48px;border-radius:999px;padding:12px 24px;color:#0A4953}
.directory-footer{padding:40px max(var(--page-gutter),calc((100vw - var(--content-width))/2));background:#EEF2F5;border-color:#001E2810;gap:24px;align-items:center}
.directory-footer p,.directory-footer .legal-links{font-size:13px;line-height:1.5;color:#66696D}
.directory-empty{padding:64px 32px;border-radius:20px;background:#EEF2F5}
.directory-empty h3{font-family:var(--font-ui);font-size:28px;line-height:1.25;letter-spacing:-.035em}
.directory-empty p{font-size:17px;line-height:1.6}
/* Profile detail, forms and legal pages follow the same hierarchy. */
.profile-preview{width:min(780px,calc(100vw - 32px));border-radius:24px;max-height:calc(100dvh - 32px);box-shadow:0 24px 100px #001E2830}
.profile-preview>header{padding:24px 32px}
.profile-preview .preview-hero{padding:40px 32px;background:#EEF2F5}
.profile-preview .preview-hero h2{font-family:var(--font-ui);font-size:40px;font-weight:600;line-height:1.15;letter-spacing:-.035em;margin-top:20px;color:#001E28}
.profile-preview .preview-hero>.eyebrow{font-size:11px;letter-spacing:.1em;margin-top:20px}
.profile-preview .preview-hero>p{font-size:17px;line-height:1.5;margin-top:12px;color:#66696D}
.profile-preview .preview-hero .avatar{width:176px;height:176px}
.preview-body{padding:32px}
.profile-preview .preview-section{padding:24px 0}
.profile-preview .preview-section h3{font-size:15px;line-height:1.5;letter-spacing:0;text-transform:none;font-weight:600;margin-bottom:16px;color:#001E28}
.profile-preview .preview-bio,.profile-preview .preview-section article p{font-size:17px;line-height:1.7;color:#66696D}
.profile-preview .preview-section article strong{font-size:17px;line-height:1.5;color:#001E28}
.profile-preview .preview-section article small{font-size:13px;line-height:1.6;color:#66696D}
.preview-pricing{padding:24px;border-radius:16px}
.preview-pricing strong{font-size:32px;line-height:1.2;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.preview-pricing span,.preview-pricing small{font-size:13px;line-height:1.5;color:#66696D}
.profile-text-language{margin-top:24px;font-size:15px}
.profile-text-language select{font-size:15px;min-height:44px}
.original-text-note,.missing-translation,.original-price{font-size:14px;line-height:1.65}
.preview-tags>span{font-size:14px;line-height:1.5;padding:8px 12px;border-radius:8px}
.auth-art h1{font-size:64px;line-height:1.08;letter-spacing:-.045em;color:#001E28}
.auth-panel h2,.page-heading h1{font-size:40px;line-height:1.12;letter-spacing:-.035em;color:#001E28}
.auth-panel>.muted,.page-heading .muted{font-size:17px;line-height:1.6}
.auth-art>p{font-size:17px;line-height:1.6;color:#0A4953}
.auth-panel .eyebrow,.page-heading .eyebrow{font-size:11px}
.field{font-size:15px;line-height:1.5;margin-top:24px}
.field input,.field select,.field textarea{font-size:17px;line-height:1.5;min-height:50px;padding:12px 16px;border-radius:12px;border-color:#D2D5D9}
.field-note,.field>small,.consent,.auth-switch,.forgot-link{font-size:13px;line-height:1.6}
.profile-tabs button{font-size:14px;min-height:60px}
.section-heading h2{font-size:24px;line-height:1.25;letter-spacing:-.025em}
.section-heading p{font-size:15px;line-height:1.6}
.banner-person h2{font-size:30px;line-height:1.2}.banner-person p{font-size:14px;line-height:1.5}
.choice{font-size:14px;line-height:1.5;min-height:44px}
.legal-main{max-width:880px;margin:56px auto 80px}
.legal-main h1{font-size:48px;line-height:1.12;letter-spacing:-.04em}
.legal-document{font-size:17px;line-height:1.75;border-radius:20px;padding:48px;color:#001E28}
html[lang=hy] :is(.directory-hero h1,.profile-preview .preview-hero h2,.auth-art h1,.auth-panel h2,.page-heading h1){font-family:var(--font-ui);letter-spacing:-.015em}
html[lang=hy] .directory-hero h1{font-size:60px;line-height:1.2}
html[lang=ru] .directory-hero h1{font-family:var(--font-ui);font-size:60px;line-height:1.12}
html[lang=hy] :is(.eyebrow,.therapist-card h3,.results-heading h2){letter-spacing:0}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.therapist-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px #001E280C;border-color:#001E2826}.therapist-card:hover .directory-avatar img{transform:scale(1.025)}}
@media(min-width:761px) and (max-width:1250px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-layout{grid-template-columns:216px minmax(0,1fr);gap:24px}.therapist-card-content{padding:24px}.results-heading{align-items:flex-start}.result-controls{gap:12px}.result-controls select{font-size:13px}.directory-hero h1,html[lang=hy] .directory-hero h1,html[lang=ru] .directory-hero h1{font-size:56px}.directory-topbar nav{font-size:13px;gap:20px}}
@media(max-width:1000px){:root{--page-gutter:28px}.directory-topbar .local-label{display:none}.directory-topbar .topbar-right{gap:8px}.directory-layout{gap:24px;grid-template-columns:200px minmax(0,1fr)}.directory-sidebar{padding:20px 16px}.therapist-card-content{padding:20px}.therapist-card h3{font-size:21px}.directory-hero{padding-top:56px}.directory-hero>div>p{font-size:19px}.directory-topbar nav{gap:16px}.directory-topbar .brand img{width:104px}}
@media(max-width:760px){
 :root{--page-gutter:24px}
 .directory-topbar{padding:12px var(--page-gutter) 0;min-height:64px;flex-wrap:wrap;gap:8px 16px}
 .directory-topbar .brand img{width:104px}.directory-topbar .topbar-right{gap:4px;margin-left:auto}.directory-topbar .directory-signin{font-size:12px;min-height:36px;padding:8px 14px}
 .directory-topbar nav{width:100%;order:3;justify-content:center;gap:28px;font-size:13px;padding:12px 0;min-height:48px;margin:0;border-color:#001E2810}
 .directory-hero{padding:40px 0 36px;width:calc(100% - 2 * var(--page-gutter));margin:0 auto;text-align:center}
 .directory-hero .eyebrow{font-size:10px;letter-spacing:.08em;margin-bottom:16px}
 .directory-hero h1,html[lang=hy] .directory-hero h1,html[lang=ru] .directory-hero h1{font-size:40px;line-height:1.12;letter-spacing:-.035em;max-width:600px;margin:0 auto 20px}
 html[lang=hy] .directory-hero h1{font-size:38px;letter-spacing:-.015em;line-height:1.2}
 .directory-hero>div>p{font-size:17px;line-height:1.55;max-width:500px}
 .directory-search{margin-top:24px;min-height:56px;padding:6px 12px;gap:8px;border-radius:14px}
 .directory-search input,.directory-search input::placeholder{font-size:16px;min-height:42px}
 .directory-search svg{width:20px;height:20px}
 .directory-body{width:calc(100% - 2 * var(--page-gutter));margin:0 auto;padding-bottom:56px}
 .directory-layout{display:block}.directory-sidebar{display:none}
 .directory-mobile-tools{margin:0 0 24px;align-items:center}.directory-mobile-tools .secondary{font-size:14px;min-height:44px;border-radius:999px;padding:10px 16px}#mobile-result-count{font-size:13px;color:#66696D}
 .results-heading{margin-bottom:24px;gap:20px;min-height:0;align-items:flex-start}
 .results-heading h2{font-size:26px;line-height:1.2;letter-spacing:-.025em}.results-heading p{font-size:13px;line-height:1.5;margin-top:8px}
 .result-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);width:100%;gap:12px}
 .result-controls .sort-label{font-size:12px;min-width:0;width:100%;gap:8px;align-items:stretch}
 .result-controls .sort-label select{width:100%;max-width:100%;min-width:0;font-size:14px;min-height:44px;padding:10px 28px 10px 12px}
 .directory-grid{grid-template-columns:1fr;gap:24px}
 .therapist-card{border-radius:20px}.therapist-card>.directory-avatar{aspect-ratio:1/1}
 .therapist-card-content{padding:24px}.therapist-card h3{font-size:25px;line-height:1.24;min-height:0;letter-spacing:-.025em}
 .therapist-card-top{min-height:0;margin-bottom:20px}.therapist-card-top p{font-size:15px;margin-top:8px}.therapist-card-top small{font-size:13px;margin-top:4px}
 .therapist-card-bio{font-size:16px;line-height:1.6;min-height:0;max-height:77px;-webkit-line-clamp:3;margin-bottom:20px}
 .directory-tags{min-height:0;margin-bottom:20px;gap:8px}.directory-tags>span{font-size:12px;padding:7px 9px}
 .therapist-card-languages{font-size:14px;line-height:1.6;padding-bottom:20px}.therapist-card-languages>span{font-size:12px;margin-bottom:4px}
 .therapist-card-bottom{padding-top:20px;gap:16px;flex-wrap:wrap}.therapist-card-price>strong{font-size:26px}.therapist-card-price>span,.therapist-card-price>small{font-size:12px}
 .directory-view-profile{font-size:14px;min-height:44px;padding:12px 16px;border-radius:999px}
 .directory-footer{padding:32px var(--page-gutter);gap:24px}.directory-footer>p{font-size:13px}.directory-footer .legal-links{font-size:12px;gap:16px}
 .directory-filter-dialog{border-radius:20px}.directory-filter-dialog .filter-section summary{font-size:16px}.directory-filter-dialog .filter-options>label{font-size:16px;min-height:44px}
 .profile-preview{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:20px;padding:0}
 .profile-preview>header{padding:20px 24px}.profile-preview .preview-hero{padding:32px 24px}.profile-preview .preview-hero .avatar{width:156px;height:156px}
 .profile-preview .preview-hero h2{font-size:32px;line-height:1.2}.profile-preview .preview-hero>p{font-size:16px}
 .preview-body{padding:24px}.profile-preview .preview-section h3{font-size:15px}.profile-preview .preview-bio,.profile-preview .preview-section article p{font-size:16px;line-height:1.7}
 .preview-pricing{padding:20px}.preview-pricing strong{font-size:28px}.profile-text-language label{font-size:14px;gap:12px}.profile-text-language select{font-size:14px}
 .auth-panel h2,.page-heading h1{font-size:34px;line-height:1.15}.auth-art h1{font-size:44px;line-height:1.1}.auth-art>p{font-size:15px}
 .auth-panel>.muted,.page-heading .muted{font-size:16px}.field{font-size:14px;margin-top:24px}.field input,.field select,.field textarea{font-size:16px;min-height:48px}
 .section-heading h2{font-size:22px}.section-heading p{font-size:14px}.profile-tabs{gap:24px}.profile-tabs button{font-size:13px}
 .legal-main{margin:32px auto 56px;padding:0 24px}.legal-main h1{font-size:34px;line-height:1.2}.legal-document{font-size:16px;line-height:1.75;padding:24px;border-radius:16px}
}
@media(max-width:360px){:root{--page-gutter:16px}.directory-hero h1,html[lang=hy] .directory-hero h1,html[lang=ru] .directory-hero h1{font-size:34px;line-height:1.17}.directory-hero>div>p{font-size:16px}.therapist-card-content{padding:20px}.therapist-card h3{font-size:23px}.directory-view-profile{font-size:13px;padding:11px 14px}.preview-body{padding:20px}.profile-preview .preview-hero h2{font-size:28px}.legal-main{padding:0 16px}.legal-document{padding:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:760px){.results-heading>div:first-child{flex:0 0 100%;width:100%}.results-heading>.result-controls{flex:0 0 100%;width:100%}.result-controls .currency-label select{min-width:0}.results-heading h2{white-space:normal}}
@media(max-width:760px){.studio-topbar .local-label{display:none}.studio-topbar .topbar-right{gap:8px}.studio-topbar .ui-language select{padding:8px;min-height:44px}.profile-tabs{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.photo-editor p{font-size:12px}.photo-buttons .secondary,.photo-buttons .text-button{font-size:12px;min-height:44px}.photo-buttons{flex-wrap:wrap}.photo-editor>div{min-width:0}.profile-language>span,.profile-language button{font-size:12px}.profile-language{flex-wrap:wrap}.editor-actions .primary{font-size:14px;min-height:44px}}

/* Filters need intrinsic text wrapping at every sidebar/dialog width. */
.directory-sidebar,.directory-sidebar>div,.filter-section,.filter-options,.price-filter{min-width:0}
.filter-heading{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:8px;margin-bottom:12px}
.filter-heading h2{min-width:0;margin:0;max-width:100%;overflow-wrap:anywhere}
.filter-heading button{justify-self:start;max-width:100%;white-space:normal;text-align:left;padding:4px 0;min-height:32px;overflow-wrap:anywhere}
.filter-section summary{display:grid;grid-template-columns:minmax(0,1fr) 20px;justify-content:normal;align-items:center;gap:10px;overflow-wrap:anywhere}
.filter-section summary>span{display:grid;place-items:center;width:20px;height:20px;line-height:1;min-width:0;transform:none}
.filter-section[open] summary>span{transform:none}
.filter-section summary svg{display:block;width:13px;height:13px;transform:none;transition:transform .15s ease}
.filter-section[open] summary>span svg{transform:rotate(45deg)}
.filter-options{max-width:100%;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;padding:2px 8px 2px 0}
.filter-options>label{min-width:0;max-width:100%;width:100%;overflow-wrap:anywhere;gap:10px}
.filter-options>label>span{display:block;flex:1 1 0%;min-width:0;overflow-wrap:anywhere;white-space:normal}
.filter-options input{flex-shrink:0}
.price-filter h3,.price-filter label,.price-filter small{max-width:100%;overflow-wrap:anywhere;white-space:normal}
.price-filter input,.price-filter select{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
.directory-filter-dialog>header{gap:16px;align-items:center}
.directory-filter-dialog>header h2{min-width:0;overflow-wrap:anywhere}
.directory-filter-dialog>header .icon-button{flex:0 0 44px;width:44px;min-height:44px}
.directory-filter-dialog>div{min-width:0}
.directory-filter-dialog>footer{flex-wrap:wrap;gap:12px;align-items:stretch}
.directory-filter-dialog>footer button{min-width:0;max-width:100%;min-height:44px;white-space:normal;overflow-wrap:anywhere;text-align:center}
.directory-filter-dialog>footer [data-reset-filters]{flex:1 1 90px}
.directory-filter-dialog>footer [data-show-results]{flex:2 1 160px;line-height:1.4;padding:12px 16px;font-size:14px}
@media(prefers-reduced-motion:reduce){.filter-section summary svg{transition:none}}

/* Let each expanded group grow naturally; the page/dialog provides scrolling. */
.directory-sidebar .filter-options,.directory-filter-dialog .filter-options{max-height:none;overflow:visible;scrollbar-gutter:auto;padding-inline-end:0}
/* Low-resolution source photos stay at natural sizes in a calm portrait frame. */
.directory-avatar[data-photo-size=small],.directory-avatar[data-photo-size=medium],.photo-directory-preview{display:grid;place-items:center;background:radial-gradient(ellipse at 50% 45%,#FFF 0,#EEF2F5 85%);isolation:isolate}
.directory-avatar[data-photo-size=small] img,.photo-directory-preview[data-photo-size=small] img{width:auto;height:auto;max-width:min(72%,180px);max-height:180px;object-fit:contain;object-position:center;border-radius:14px;box-shadow:0 5px 20px #001E2812;transform:none}
.directory-avatar[data-photo-size=medium] img,.photo-directory-preview[data-photo-size=medium] img{width:auto;height:auto;max-width:min(80%,240px);max-height:220px;object-fit:contain;object-position:center;border-radius:16px;box-shadow:0 5px 24px #001E2810;transform:none}
.therapist-card:hover .directory-avatar[data-photo-size=small] img,.therapist-card:hover .directory-avatar[data-photo-size=medium] img{transform:none}
.profile-preview .preview-hero .avatar.photo-compact{width:120px;height:120px;flex-basis:120px}
.photo-editor .avatar.photo-compact{max-width:80px;max-height:80px}
.photo-guidance{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:24px;padding:24px;margin:0 0 28px;border:1px solid #D2D5D9;border-radius:16px;background:#F8FCFF;min-width:0}
.photo-guidance h3{font-size:17px;line-height:1.4;letter-spacing:-.015em;margin:0 0 12px}
.photo-guidance p{font-size:14px;line-height:1.65;margin:0 0 12px;color:#66696D;overflow-wrap:anywhere}
.photo-guidance .photo-quality-status{font-size:13px;line-height:1.6;padding:12px;border-radius:10px;background:#EEF2F5;color:#0A4953;margin:16px 0 0}
.photo-guidance .photo-quality-warning{background:#FDF8F1;color:#704F25}
.photo-preview-column{min-width:0;text-align:center;align-self:start}.photo-preview-column>span{font-size:12px;line-height:1.5;display:block;margin-bottom:10px;color:#66696D}
.photo-directory-preview{width:100%;aspect-ratio:4/3;border:1px solid #D2D5D9;border-radius:14px;overflow:hidden;color:#0A4953;font-size:28px}
.photo-directory-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 24%}
.photo-directory-preview[data-photo-size=small] img,.photo-directory-preview[data-photo-size=medium] img{max-width:76%;max-height:105px;border-radius:8px}
.photo-preview-column small{display:block;font-size:12px;line-height:1.6;color:#66696D;margin-top:10px;overflow-wrap:anywhere}
.photo-editor strong{font-size:15px;line-height:1.5}.photo-editor>div{min-width:0}
@media(max-width:1000px){.photo-guidance{grid-template-columns:minmax(0,1fr)}.photo-preview-column{width:180px;max-width:100%;justify-self:start}}
@media(max-width:760px){.photo-guidance{padding:20px;gap:20px}.photo-guidance h3{font-size:16px}.photo-guidance p{font-size:14px}.photo-preview-column{width:180px;justify-self:center}.directory-avatar[data-photo-size=medium] img{max-height:240px}.photo-editor{flex-wrap:wrap}.photo-editor>div{flex:1 1 140px}}
.directory-avatar[data-photo-size=small],.directory-avatar[data-photo-size=medium],.photo-directory-preview{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-content:stretch;justify-content:stretch}

/* Price above a stable two-button action row, including longer Armenian labels. */
.therapist-card-bottom{display:flex;flex-direction:column;align-items:stretch;gap:16px}
.therapist-card-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:stretch;width:100%}
.therapist-card-actions>a{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:48px;height:100%;margin:0;padding:10px 12px;border-radius:999px;font-size:13px;line-height:1.35;text-align:center;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
.therapist-card-actions svg{flex:0 0 16px}

/* Professional application: shared PsyGuard registration sequence. */
.application-shell{min-height:100vh;background:#f5f8f7}.application-topbar{background:#fff}.application-layout{max-width:1180px;padding:56px 32px 80px;margin:auto;display:grid;grid-template-columns:280px minmax(0,1fr);gap:48px;align-items:start}.application-steps h1{font-size:30px;line-height:1.18;letter-spacing:-.8px;margin:16px 0}.application-steps p{font-size:14px;line-height:1.6;color:var(--muted,#647572)}.application-steps nav{display:grid;gap:4px;margin:28px 0}.application-steps nav button{display:flex;text-align:left;align-items:center;gap:12px;background:none;border:0;border-radius:12px;padding:12px;color:#5b6c6c;font-size:14px;min-width:0;overflow-wrap:anywhere}.application-steps nav button span{font-size:12px;opacity:.7}.application-steps nav button[aria-current]{background:#dfecea;color:#0a4953;font-weight:600}.application-card{padding:36px;background:white;border:1px solid #e3eae7;border-radius:24px;min-width:0}.application-card h2{font-size:27px;line-height:1.25;letter-spacing:-.5px}.application-card p{line-height:1.6}.application-progress{display:flex;gap:16px;align-items:center;margin-bottom:28px;color:#627675;font-size:13px}.application-progress progress{width:100%;height:5px;accent-color:#0a4953}.application-progress span{white-space:nowrap}.application-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;align-items:center}.application-actions .form-error{flex-basis:100%;margin:0}.application-actions #save-state{margin-right:auto}.application-document{border:1px solid #dfe7e3;border-radius:16px;padding:20px;margin:16px 0;min-width:0}.application-document h3{font-size:16px;overflow-wrap:anywhere;margin:0 0 16px}.application-document h3 small{font-weight:400;color:#647572}.application-file{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:12px;min-width:0}.application-file a{overflow-wrap:anywhere;min-width:0}.application-summary{padding:24px;border-radius:18px;background:#f6f9f7}.application-summary .avatar{margin-bottom:16px}.application-summary dl{display:grid;grid-template-columns:1fr auto;gap:12px}.application-declaration{margin:24px 0}.application-complete{max-width:660px;margin:80px auto;padding:36px;text-align:center}.application-complete h1{font-size:40px;line-height:1.12;letter-spacing:-1px}.application-complete p{line-height:1.7;color:#576e6a}.application-check{display:grid;place-items:center;margin:0 auto 24px;background:#e1efea;border-radius:50%;width:80px;height:80px;color:#0a4953}.application-check svg{width:36px}.application-complete .button-row{justify-content:center;flex-wrap:wrap;margin-top:28px}.directory-therapist-signup{white-space:normal;text-align:center;font-size:13px;padding:10px 16px}
@media(max-width:900px){.application-layout{grid-template-columns:minmax(0,1fr);gap:24px;padding:24px 20px 56px}.application-steps nav{display:flex;overflow-x:auto;margin:16px 0 0;padding-bottom:8px}.application-steps nav button{flex-shrink:0}.application-steps h1{font-size:26px}.application-steps>p,.application-steps>a{display:none}.directory-topbar{flex-wrap:wrap;gap:12px}.directory-topbar .topbar-right{flex-wrap:wrap}.application-card{padding:24px}}
@media(max-width:480px){.application-layout{padding:20px 12px 40px}.application-card{padding:20px 16px;border-radius:18px}.application-actions .primary{width:100%;justify-content:center}.application-actions #save-state{font-size:12px}.application-topbar{padding:16px}.application-topbar .brand-sub,.application-topbar .brand-divider{display:none}.application-document{padding:16px}.application-complete{margin:24px auto;padding:32px 20px}.application-complete h1{font-size:32px}.application-card .photo-editor{flex-wrap:wrap}.directory-topbar .topbar-right{width:100%;justify-content:flex-end}.directory-therapist-signup{margin-right:auto;max-width:65%}}

.therapist-registration-page .auth-panel h1{font-size:36px;line-height:1.12;letter-spacing:-1px;margin:14px 0 18px}.therapist-registration-page .auth-panel{padding-top:44px;padding-bottom:44px}.therapist-registration-page .signup-approval-note{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;color:#576e6a;padding:16px;border-radius:12px;background:#eff6f2;margin:20px 0}.signup-approval-note svg{width:20px;min-width:20px}.therapist-registration-page .legal-links{flex-wrap:wrap;margin:12px 0 20px}.verification-address{overflow-wrap:anywhere;font-weight:600}.therapist-registration-page #signup-change-email,.therapist-registration-page #signup-resend{margin-right:16px}.therapist-registration-page .password-input input{min-width:0}@media(max-width:600px){.therapist-registration-page .auth-panel{padding:28px 20px}.therapist-registration-page .auth-panel h1{font-size:30px}}

.therapist-registration-page .auth-art h1{overflow-wrap:anywhere;font-size:clamp(30px,4vw,58px)}@media(max-width:600px){.therapist-registration-page .auth-art h1{font-size:30px;line-height:1.12;max-width:100%}.therapist-registration-page .auth-art{min-height:280px}}
@media(max-width:760px){.therapist-registration-page .auth-art{display:none}.therapist-registration-page .auth-layout{padding:0 16px}.therapist-registration-page .auth-panel{padding-top:20px}}

.application-feedback{display:block;margin-bottom:24px}.application-feedback p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;font-size:13px}

/* Keep the public mobile header in one compact row. */
@media(max-width:760px){.directory-topbar{flex-wrap:nowrap;align-items:center;padding:10px var(--page-gutter);min-height:64px;gap:12px}.directory-topbar nav{width:auto;flex-basis:auto;order:initial;justify-content:flex-end;min-height:44px;margin:0 0 0 auto;padding:0;border:0;gap:0}.directory-topbar nav a{font-size:13px;min-height:44px;line-height:1.4}.directory-topbar .brand{flex-shrink:0}}

/* The directory uses the same minimal navigation on desktop and mobile. */
.directory-topbar{flex-wrap:nowrap;align-items:center;padding:10px max(var(--page-gutter),calc((100vw - var(--content-width))/2));min-height:64px;gap:12px}.directory-topbar>.topbar-right,.directory-topbar .directory-nav-current{display:none}.directory-topbar nav{width:auto;flex-basis:auto;order:initial;justify-content:flex-end;min-height:44px;margin:0 0 0 auto;padding:0;border:0;gap:0;white-space:normal;text-align:right}.directory-topbar nav a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;line-height:1.4}.directory-topbar .brand{flex-shrink:0}.directory-footer-language{width:100%;padding-top:12px}.directory-footer-language select{min-height:44px}

/* Keep interface language available beside the therapist link at every width. */
.directory-topbar>.topbar-right{display:flex;width:auto;flex:0 0 auto;flex-wrap:nowrap;margin:0;gap:0}
.directory-topbar>.topbar-right>:not(.ui-language){display:none}
.directory-topbar .ui-language{margin:0;flex:0 0 auto}
.directory-topbar .ui-language select{min-height:44px;max-width:76px}
@media(max-width:480px){.directory-topbar{gap:8px}.directory-topbar .brand img{max-width:92px}.directory-topbar .ui-language select{padding-inline:7px}}
