/* Final typography and responsive polish for public learning pages. */
.lv-vibrant-palette :is(.lv-about-story,.lv-contact-page,.lv-teacher-directory,.lv-forum-index,.lv-discussion-detail,.lv-discussion-create,.lv-news-page,.lv-news-detail,.lv-lesson-detail,.lv-editorial-profile,.lv-standard-profile,.lv-category-directory,.lv-lost) :is(h1,h2,h3,p,a) { overflow-wrap:anywhere; }
.lv-vibrant-palette :is(.lv-story-breadcrumb,.lv-contact-breadcrumb,.lv-directory-breadcrumb,.lv-news-breadcrumb,.lv-community-hero nav) { flex-wrap:wrap; row-gap:8px; }
.lv-vibrant-palette :is(.lv-community-intro,.lv-directory-section-head,.lv-contact-section-head,.lv-news-list-heading,.lv-news-card-top,.lv-news-card-bottom) { flex-wrap:wrap; }
.lv-vibrant-palette :is(.lv-reading-layout,.lv-profile-layout,.lv-create-layout,.lv-directory-hero-grid,.lv-contact-message,.lv-story-hero,.lv-news-heading-row)>* { min-width:0; }
.lv-vibrant-palette :is(.lv-contact-page,.lv-news-page,.lv-forum-index,.lv-category-directory) :is(input,textarea,select):focus-visible { outline:3px solid #2459a6; outline-offset:3px; }
/* Component sizes deliberately outrank the legacy Persian h2/h3 defaults. */
html[lang=fa] body.lv-vibrant-palette {
 --lv-type-lg:20px;
 --lv-type-xl:24px;
 --lv-type-2xl:30px;
}
html[lang=fa] body.lv-vibrant-palette :is(.lv-learning-card__header,.lv-learn-card-body) h3 {
 font-size:18px; line-height:1.75; letter-spacing:normal; margin:0; font-weight:600;
}
html[lang=fa] body.lv-vibrant-palette .lv-learning-card__header>div { min-width:0; }
html[lang=fa] body.lv-vibrant-palette .lv-learning-card__country { font-size:13px; line-height:1.8; margin-bottom:2px; }
html[lang=fa] body.lv-vibrant-palette .lv-learning-card__all { font-size:14px; line-height:1.8; display:flex; align-items:center; min-height:44px; }
html[lang=fa] body.lv-vibrant-palette .lv-learning-levels { gap:8px; margin-bottom:12px; }
html[lang=fa] body.lv-vibrant-palette .lv-learning-levels a { font-size:14px; line-height:1.5; font-weight:600; display:flex; align-items:center; justify-content:center; min-height:44px; direction:ltr; }
html[lang=fa] body.lv-vibrant-palette :is(.lv-learning-directory,.lv-home-page) .it-section-title {
 font-size:clamp(20px,1.8vw,24px); line-height:1.65; letter-spacing:normal;
}
html[lang=fa] body.lv-vibrant-palette :is(.lv-directory-card h3,.lv-contact-teacher-info h3,.lv-news-card h3,.lv-category-card h2,.lv-article-card-title,.it-blog-title,.it-course-title) {
 font-size:20px; line-height:1.8; letter-spacing:normal;
}
html[lang=fa] body.lv-vibrant-palette :is(.lv-learning-directory .it-breadcrumb-title,.lv-lesson-detail .it-breadcrumb-title,.lv-detail-hero h1,.lv-profile-hero h1,.lv-directory-hero h1,.lv-contact-hero h1,.lv-category-heading h1,.lv-news-heading-row h1,.lv-community-hero h1) {
 font-size:clamp(24px,2.2vw,30px); line-height:1.65; letter-spacing:normal; text-wrap:balance;
}
html[lang=fa] body.lv-vibrant-palette :is(.lv-story-intro h1,.lv-home-page .it-hero-title) {
 font-size:clamp(26px,2.6vw,34px); line-height:1.65; letter-spacing:normal; text-wrap:balance;
}
html[lang=fa] body.lv-vibrant-palette :is(.lv-story-principles h2,.lv-profile-main h2,.lv-method-grid h3) { font-size:22px; line-height:1.8; }
html[lang=fa] body.lv-vibrant-palette :is(.lv-reading-aside h2,.lv-profile-aside h2,.lv-create-guide h2) { font-size:18px; line-height:1.8; }
html[lang=fa] body.lv-vibrant-palette .lv-reading-body h2 { font-size:22px; line-height:1.8; }
html[lang=fa] body.lv-vibrant-palette .lv-reading-body h3 { font-size:20px; line-height:1.8; }
html[lang=fa] body.lv-vibrant-palette :is(.lv-reading-body,.lv-reading-summary) { letter-spacing:normal; }
html[lang=fa] body.lv-vibrant-palette .lv-learning-directory .it-breadcrumb-thumb>img:first-child { max-height:240px; width:100%; object-fit:cover; border-radius:16px; }
html[lang=fa] body.lv-vibrant-palette .lv-learning-directory .it-breadcrumb-shape-2 { display:none; }
html[lang=fa] body.lv-vibrant-palette .lv-learning-directory .postbox-tag-content { display:flex; flex-wrap:wrap; gap:8px; }
html[lang=fa] body.lv-vibrant-palette .lv-learning-directory .postbox-tag-content a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; margin:0; font-size:14px; }
html[lang=fa] body.lv-vibrant-palette .lv-learning-directory .lv-learn-card-body p { font-size:14px; line-height:1.95; margin-top:10px; }
html[lang=fa] body.lv-vibrant-palette :is(.lv-directory-grid,.lv-news-grid,.lv-category-grid) { gap:24px; }
html[lang=fa] .lv-community-welcome h2 { font-size:17px; line-height:1.8; }
html[lang=fa] .lv-community-guidelines h2 { font-size:14px; line-height:1.8; }
html[lang=fa] .lv-forum-index .lv-forum-side-card h2 { font-size:16px; line-height:1.8; }
html[lang=fa] .lv-directory-guide h2,html[lang=fa] .lv-directory-help h2 { font-size:17px; line-height:1.8; }
html[lang=fa] .lv-story-contact h2 { font-size:22px; line-height:1.8; }
html[lang=fa] .lv-story-purpose h2,html[lang=fa] .lv-story-details-intro h2 { font-size:clamp(21px,2vw,25px); line-height:1.9; }
html[lang=fa] .lv-contact-note h2 { font-size:24px; line-height:1.9; }
html[lang=fa] .lv-contact-form-panel h2 { font-size:21px; line-height:1.7; }
html[lang=fa] .lv-news-list-heading h2,html[lang=fa] .lv-community-list-heading h2 { font-size:21px; line-height:1.8; }
.lv-vibrant-palette :is(.lv-directory-help p,.lv-directory-guide p,.lv-community-guidelines p,.lv-community-order-note,.lv-forum-index .lv-forum-topic-cell p,.lv-forum-index .lv-forum-number,.lv-news-card-bottom>span) { color:#485b66; }
.lv-vibrant-palette .lv-news-active-search>span { flex-wrap:wrap; }
.lv-vibrant-palette .lv-contact-text-link { min-height:44px; }
.lv-vibrant-palette .lv-forum-reply-author small { color:#526b75; }
.lv-vibrant-palette .lv-contact-form-panel .form-control::placeholder { color:#687b76; }
@media(max-width:767px) {
 html[lang=fa] body.lv-vibrant-palette :is(.lv-learning-card__header,.lv-learn-card-body) h3 { font-size:17px; }
 html[lang=fa] body.lv-vibrant-palette :is(.lv-directory-card h3,.lv-contact-teacher-info h3,.lv-news-card h3,.lv-category-card h2,.lv-article-card-title,.it-blog-title,.it-course-title) { font-size:18px; }
 html[lang=fa] body.lv-vibrant-palette :is(.lv-reading-body h2,.lv-story-principles h2,.lv-profile-main h2) { font-size:21px; }
 html[lang=fa] body.lv-vibrant-palette .lv-reading-body h3 { font-size:18px; }
 html[lang=fa] body.lv-vibrant-palette :is(.lv-directory-grid,.lv-news-grid,.lv-category-grid) { gap:18px; }
 html[lang=fa] body.lv-vibrant-palette .lv-learning-directory .it-breadcrumb-thumb { margin-top:20px; }
 html[lang=fa] body.lv-vibrant-palette .lv-learning-directory .it-breadcrumb-thumb>img:first-child { max-height:180px; }
 html[lang=fa] body.lv-vibrant-palette :is(.lv-news-card,.lv-category-card) { padding:20px; }
 html[lang=fa] body.lv-vibrant-palette :is(.lv-learning-directory,.lv-home-page) :is(input:not([type=checkbox]):not([type=hidden]),textarea,select) { font-size:16px; }
 .lv-vibrant-palette :is(.lv-contact-page,.lv-forum-index,.lv-discussion-detail,.lv-discussion-create,.lv-news-page,.lv-news-detail,.lv-category-directory) :is(input:not([type=checkbox]):not([type=hidden]),textarea,select) { font-size:16px; }
 .lv-vibrant-palette :is(.lv-forum-side-more,.lv-forum-side-row,.lv-news-pagination a,.lv-news-pagination span,.lv-forum-pagination a,.lv-forum-pagination span) { min-height:44px; }
 .lv-vibrant-palette :is(.lv-news-pagination,.lv-forum-pagination-pages) { flex-wrap:wrap; row-gap:8px; }
 .lv-vibrant-palette .lv-contact-text-link { padding-top:0; }
 .lv-vibrant-palette .lv-forum-index .lv-forum-topic-cell p { -webkit-line-clamp:3; }
 html[lang=fa] .lv-directory-guide h2,html[lang=fa] .lv-directory-help h2 { font-size:16px; }
 html[lang=fa] .lv-contact-note h2 { font-size:24px; }
 html[lang=fa] .lv-contact-form-panel h2 { font-size:20px; }
 .lv-vibrant-palette .lv-contact-form-panel :is(.lv-captcha,.lv-captcha-challenge) { max-width:100%; }
 body.lv-detail-design .lv-profile-aside { top:auto; }
}
@media(max-width:575px) {
 .lv-vibrant-palette :is(.lv-directory-section-head,.lv-contact-section-head,.lv-news-list-heading) { align-items:flex-start; gap:12px; }
 .lv-vibrant-palette .lv-directory-count { max-width:100%; }
 html[lang=fa] .lv-directory-section-head h2 { font-size:21px; }
 html[lang=fa] .lv-story-contact h2 { font-size:20px; }
 .lv-vibrant-palette :is(.lv-forum-create-page,.lv-forum-reply-form) button[type=submit] { width:100%; }
 .lv-vibrant-palette .lv-form-actions { align-items:stretch; flex-direction:column; gap:12px; }
 .lv-vibrant-palette .lv-form-actions>a { display:flex; align-items:center; justify-content:center; min-height:44px; }
}
