.elementor-3991 .elementor-element.elementor-element-0b3c91c{--display:flex;}/* Start custom CSS for html, class: .elementor-element-b07782a *//* ==========================================================================
   طراحی اختصاصی و لوکس لندینگ‌پیج «روان‌شناس مستقل» (نسخه اصلاح‌شده و بهینه‌سازی‌شده)
   معماری: تجربه کاربری شناختی، تایپوگرافی بدون خستگی، تبدیل‌محور و پایدار در موبایل
   پالت رنگی: کدنویسیِ شفقت (گریژ روشن، سرمه‌ای نیمه‌شب، آخرایی طلایی، سبز مریم‌گلی)
   ========================================================================== */

/* ۱. متغیرهای بنیادین هویت بصری (Design Tokens) */
:root {
    --bg-page: #F7F6F3;
    --bg-card: #FFFFFF;
    --bg-card-subtle: #F0EFEA;
    --bg-card-elevated: #FAF9F6;
    
    --text-primary: #0F172A;     /* سرمه‌ای نیمه‌شب عمیق */
    --text-prominent: #1E293B;   /* سرمه‌ای با کنتراست قطعی برای متن‌های مهم */
    --text-secondary: #334155;   /* خاکستری فولادی تیره و خوانا */
    --text-muted: #64748B;       /* خاکستری شناختی برای متادیتاها */
    --text-inverse: #FFFFFF;
    
    --accent-ochre: #B45309;     /* آخرایی طلایی */
    --accent-ochre-light: #FDF4E7;
    --accent-ochre-hover: #92400E;
    
    --accent-sage: #2D6A4F;      /* سبز مریم‌گلی رشد و امنیت */
    --accent-sage-light: #EBF5F0;
    --accent-sage-dark: #1B4332;
    
    --accent-danger: #991B1B;
    --accent-danger-light: #FEF2F2;
    --accent-danger-border: #F87171;
    
    --border-subtle: #E2E0D8;
    --border-strong: #CBD5E1;
    
    --font-stack: "Dana", "Yekan Bakh", "Vazirmatn", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    
    --shadow-sm: 0 2px 8px rgba(15, 23, 42, 0.04);
    --shadow-md: 0 8px 24px rgba(15, 23, 42, 0.07);
    --shadow-lg: 0 16px 40px rgba(15, 23, 42, 0.1);
    --shadow-glow: 0 0 28px rgba(180, 83, 9, 0.16);
    
    --radius-sm: 8px;
    --radius-md: 14px;
    --radius-lg: 20px;
    --radius-xl: 28px;
    
    --transition-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-smooth: 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

/* ۲. ریست ساختاری و تنظیمات پایه جهت مهار سرریزهای افقی */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
}

body.independent-psychologist-page {
    background-color: var(--bg-page);
    color: var(--text-primary);
    font-family: var(--font-stack);
    font-size: 16px;
    line-height: 1.85;
    direction: rtl;
    text-align: right;
    overflow-x: hidden;
    width: 100%;
    position: relative;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.site-container {
    width: 100%;
    max-width: 1280px;
    margin-inline: auto;
    padding-inline: 24px;
}

.svg-icon {
    display: inline-block;
    vertical-align: middle;
    flex-shrink: 0;
}

/* استایل ایزوله جهت نمایش دقیق کاراکترهای لاتین و کدهای عددی */
.ltr-code-dir {
    direction: ltr !important;
    unicode-bidi: isolate !important;
    display: inline-block;
    font-family: "Consolas", "Courier New", monospace;
}

/* ۳. نوار مانیفست و اطلاعیه ۱۰ اکتبر */
.top-announcement-bar {
    background-color: var(--text-primary);
    color: var(--bg-page);
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.announcement-content {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-size: 0.88rem;
    text-align: center;
}

.occasion-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background-color: rgba(180, 83, 9, 0.25);
    color: #FCD34D;
    padding: 4px 14px;
    border-radius: 50px;
    border: 1px solid rgba(252, 211, 77, 0.35);
    font-weight: 700;
}

.announcement-phrase {
    color: #E2E8F0;
    font-weight: 500;
}

/* ۴. بنر هیرو با ابعاد واقعی */
.hero-cover-showcase {
    width: 100%;
    background-color: #0A0F1D;
    position: relative;
    overflow: hidden;
}

.hero-image-container {
    width: 100%;
    max-width: 1920px;
    margin-inline: auto;
}

.hero-display-asset {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

/* ۵. نوار منابع و دانلود سریع (فهرست و منابع) زیر عکس کتاب */
.hero-sub-resource-bar {
    background-color: #0F172A;
    border-bottom: 2px solid var(--accent-ochre);
    padding-block: 18px;
    color: var(--text-inverse);
    box-shadow: var(--shadow-md);
}

.resource-bar-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.resource-prompt-text {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.resource-badge {
    background-color: rgba(180, 83, 9, 0.3);
    color: #FBBF24;
    border: 1px solid rgba(251, 191, 36, 0.4);
    font-size: 0.78rem;
    font-weight: 800;
    padding: 3px 12px;
    border-radius: 50px;
}

.resource-caption {
    font-size: 0.92rem;
    color: #CBD5E1;
    font-weight: 500;
}

.resource-actions-group {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.resource-quick-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 18px;
    border-radius: var(--radius-sm);
    text-decoration: none;
    font-size: 0.86rem;
    font-weight: 700;
    transition: all var(--transition-fast);
}

.toc-quick-btn {
    background-color: var(--accent-ochre);
    color: var(--text-inverse);
}

.toc-quick-btn:hover {
    background-color: var(--accent-ochre-hover);
    transform: translateY(-1px);
}

.ref-quick-btn {
    background-color: rgba(255, 255, 255, 0.1);
    color: #F1F5F9;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.ref-quick-btn:hover {
    background-color: rgba(255, 255, 255, 0.18);
    transform: translateY(-1px);
}

/* ۶. چیدمان دو ستونه دسکتاپ */
.presentation-two-column-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 420px;
    gap: 40px;
    padding-block: 48px;
    align-items: start;
}

.primary-editorial-flow {
    display: flex;
    flex-direction: column;
    gap: 44px;
    min-width: 0; /* جلوگیری از شکستگی و سرریز محتوای درونی */
}

/* ۷. سربرگ بیانیه اصلی کتاب */
.manifesto-intro-block {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.editorial-eyebrow {
    color: var(--accent-ochre);
    font-weight: 800;
    font-size: 0.95rem;
}

.editorial-headline {
    color: var(--text-primary);
    font-size: clamp(2rem, 4vw, 2.75rem);
    font-weight: 900;
    line-height: 1.3;
}

.editorial-subline {
    color: var(--text-secondary);
    font-size: 1.15rem;
    font-weight: 600;
    line-height: 1.6;
}

.empathy-hook-card {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-right: 4px solid var(--accent-ochre);
    padding: 24px;
    border-radius: var(--radius-md);
    margin-top: 10px;
    box-shadow: var(--shadow-sm);
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.hook-lead-text {
    color: var(--text-primary);
    font-size: 1.02rem;
    line-height: 1.85;
}

.hook-resolve-text {
    color: var(--accent-sage-dark);
    font-weight: 700;
    line-height: 1.8;
}

/* ۸. متن پشت جلد کتاب چاپی (پس از عنوان اصلی) */
.back-cover-sheet {
    background-color: #0F172A;
    color: #F8FAFC;
    padding: 38px;
    border-radius: var(--radius-xl);
    position: relative;
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: var(--shadow-lg);
}

.sheet-top-badge {
    margin-bottom: 16px;
}

.badge-text {
    background-color: rgba(255, 255, 255, 0.12);
    color: #E2E8F0;
    font-size: 0.8rem;
    font-weight: 700;
    padding: 4px 14px;
    border-radius: 50px;
}

.cover-bold-question {
    font-size: 1.35rem;
    font-weight: 800;
    color: #FBBF24;
    line-height: 1.65;
    margin-bottom: 20px;
}

.cover-body-prose {
    display: flex;
    flex-direction: column;
    gap: 14px;
    font-size: 0.98rem;
    color: #CBD5E1;
    line-height: 1.9;
}

.cover-final-claim {
    color: #FFFFFF;
    font-weight: 700;
    border-right: 3px solid var(--accent-ochre);
    padding-right: 14px;
    margin-top: 6px;
}

.cover-author-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding-top: 22px;
    margin-top: 22px;
    font-size: 0.88rem;
    color: #94A3B8;
}

.meta-avatar-data strong {
    color: #F8FAFC;
    display: block;
    font-size: 0.95rem;
}

/* ۹. بسته هدایا و جوایز ویژه (پس از متن پشت جلد) */
.bonuses-box-wrapper {
    background: linear-gradient(145deg, #FFFFFF, var(--bg-card-elevated));
    border: 2px solid var(--accent-ochre);
    border-radius: var(--radius-xl);
    padding: 34px;
    box-shadow: var(--shadow-glow);
}

.bonus-ribbon-tag {
    background-color: var(--accent-ochre);
    color: var(--text-inverse);
    font-size: 0.85rem;
    font-weight: 800;
    padding: 4px 16px;
    border-radius: 50px;
    display: inline-block;
    margin-bottom: 8px;
}

.bonuses-main-title {
    font-size: 1.65rem;
    font-weight: 900;
    color: var(--text-primary);
    margin-bottom: 6px;
}

.bonuses-lead-note {
    color: var(--text-secondary);
    font-size: 0.98rem;
    margin-bottom: 22px;
}

.value-stack-calculator-block {
    background-color: var(--bg-card-subtle);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 26px;
}

.stack-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.92rem;
    border-bottom: 1px dashed var(--border-strong);
    padding-bottom: 8px;
}

.stack-item-title {
    color: var(--text-primary);
    font-weight: 600;
}

.stack-item-val {
    color: var(--accent-ochre);
    font-weight: 800;
    flex-shrink: 0;
}

.stack-total-summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 8px;
    font-weight: 800;
    font-size: 1.05rem;
    color: var(--text-primary);
}

.total-figure {
    color: var(--accent-sage-dark);
    font-size: 1.3rem;
    font-weight: 900;
}

.bonus-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 16px;
}

.bonus-item-card {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.bonus-badge {
    color: var(--accent-ochre);
    font-size: 0.82rem;
    font-weight: 800;
}

.bonus-title {
    font-size: 0.98rem;
    font-weight: 800;
    color: var(--text-primary);
}

.bonus-text {
    font-size: 0.88rem;
    color: var(--text-secondary);
    line-height: 1.7;
}

/* ۱۰. چارچوب ۳ چرایی با رفع کامل کم‌رنگی متون (پاسخ به تصاویر ۳۶۴ و ۳۶۵) */
.three-whys-container {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.why-card {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    padding: 32px;
    box-shadow: var(--shadow-sm);
    transition: transform var(--transition-smooth), box-shadow var(--transition-smooth);
}

.why-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.why-card-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
}

.card-num-badge {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    color: var(--text-inverse);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    font-weight: 800;
    flex-shrink: 0;
}

.pain-anchor-card .card-num-badge {
    background-color: var(--accent-danger);
}

.authority-anchor-card .card-num-badge {
    background-color: var(--text-primary);
}

.urgency-anchor-card .card-num-badge {
    background-color: var(--accent-ochre);
}

.card-title-group {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.card-subtitle-tag {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--text-secondary);
}

.why-card-title {
    font-size: 1.3rem;
    font-weight: 800;
    line-height: 1.45;
    color: var(--text-primary);
}

/* اصلاح اختصاصی و قطعی متن زیر عنوان‌ها: کاملاً پررنگ، شفاف و خوانا */
.why-card-lead-prominent {
    color: var(--text-prominent) !important;
    font-size: 1.05rem;
    font-weight: 600;
    line-height: 1.85;
    margin-bottom: 20px;
    opacity: 1 !important;
}

.why-card-content p {
    color: var(--text-prominent);
    font-size: 1rem;
    line-height: 1.8;
}

.pain-list-detailed {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.pain-list-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    background-color: var(--accent-danger-light);
    border: 1px solid rgba(248, 113, 113, 0.35);
    padding: 16px;
    border-radius: var(--radius-sm);
}

.pain-icon-wrap {
    color: var(--accent-danger);
    margin-top: 3px;
}

.pain-text-wrap {
    font-size: 0.95rem;
    color: #450A0A;
    line-height: 1.75;
}

.authority-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
    margin-top: 20px;
}

.authority-sub-box {
    background-color: var(--bg-card-subtle);
    padding: 18px;
    border-radius: var(--radius-md);
    border: 1px solid var(--border-subtle);
}

.sub-box-title {
    font-size: 0.98rem;
    font-weight: 800;
    margin-bottom: 8px;
    color: var(--text-primary);
}

.authority-sub-box p {
    font-size: 0.9rem;
    color: var(--text-secondary);
    line-height: 1.7;
}

.loss-alert-box {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background-color: var(--accent-ochre-light);
    border: 1px solid rgba(180, 83, 9, 0.35);
    padding: 20px;
    border-radius: var(--radius-md);
    margin-top: 18px;
}

.alert-icon-col {
    color: var(--accent-ochre);
}

.alert-text-col {
    font-size: 0.96rem;
    color: #78350F;
    line-height: 1.8;
}

/* ۱۱. جدول مقایسه دوتایی ساید-بای-ساید با رفع کامل بریدگی در موبایل (مشکل تصویر ۳۶۶) */
.section-title-wrap {
    margin-bottom: 22px;
}

.sub-heading-pill {
    display: inline-block;
    background-color: var(--bg-card-subtle);
    color: var(--text-secondary);
    font-size: 0.82rem;
    font-weight: 700;
    padding: 4px 14px;
    border-radius: 50px;
    border: 1px solid var(--border-subtle);
    margin-bottom: 8px;
}

.main-heading-title {
    font-size: 1.6rem;
    font-weight: 800;
    color: var(--text-primary);
}

/* کانتینر ایزوله‌کننده اسکرول جهت مهار کامل عرض صفحه در موبایل */
.comparison-scroll-isolation-container {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 12px;
    border-radius: var(--radius-lg);
}

/* اسکرول‌بار ظریف برای آگاهی کاربر در تبلت و موبایل */
.comparison-scroll-isolation-container::-webkit-scrollbar {
    height: 6px;
}

.comparison-scroll-isolation-container::-webkit-scrollbar-track {
    background: var(--bg-card-subtle);
    border-radius: 10px;
}

.comparison-scroll-isolation-container::-webkit-scrollbar-thumb {
    background: var(--border-strong);
    border-radius: 10px;
}

.comparison-table-wrapper {
    min-width: 620px; /* تضمین خوانایی و جلوگیری از فشردگی یا شکسته شدن ستون‌ها */
    background-color: var(--bg-card);
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-subtle);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.comparison-responsive-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.92rem;
}

.comparison-responsive-table th,
.comparison-responsive-table td {
    padding: 16px 20px;
    text-align: right;
    border-bottom: 1px solid var(--border-subtle);
    line-height: 1.65;
}

.comparison-responsive-table thead th {
    font-weight: 800;
    font-size: 0.95rem;
}

.th-aspect {
    background-color: var(--bg-card-subtle);
    width: 25%;
}

.th-traditional {
    background-color: #FEF2F2;
    color: var(--accent-danger);
    width: 37.5%;
}

.th-independent {
    background-color: var(--accent-sage-light);
    color: var(--accent-sage-dark);
    width: 37.5%;
}

.aspect-label {
    font-weight: 700;
    color: var(--text-primary);
    background-color: var(--bg-card-elevated);
}

.traditional-td {
    color: #7F1D1D;
    background-color: rgba(254, 242, 242, 0.4);
}

.independent-td.highlight-win {
    color: #14532D;
    background-color: rgba(235, 245, 240, 0.6);
    font-weight: 600;
}

/* ۱۲. سرفصل‌های ۹ گانه کتاب */
.curriculum-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
}

.chapter-card {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    padding: 20px;
    box-shadow: var(--shadow-sm);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.chapter-badge {
    background-color: var(--bg-card-subtle);
    color: var(--text-secondary);
    font-size: 0.75rem;
    font-weight: 800;
    padding: 2px 10px;
    border-radius: 50px;
    width: fit-content;
}

.chapter-name {
    font-size: 1rem;
    font-weight: 800;
    color: var(--text-primary);
    line-height: 1.45;
}

.chapter-brief {
    font-size: 0.88rem;
    color: var(--text-secondary);
    line-height: 1.65;
}

/* ۱۳. فیلتر مخاطب (برای شماست / برای شما نیست) */
.fit-grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
}

.fit-col {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    padding: 28px;
    box-shadow: var(--shadow-sm);
}

.fit-for-you {
    border-top: 4px solid var(--accent-sage);
}

.fit-not-for-you {
    border-top: 4px solid var(--accent-danger);
}

.fit-head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.fit-symbol-wrap {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.green-check {
    background-color: var(--accent-sage-light);
    color: var(--accent-sage);
}

.red-cross {
    background-color: var(--accent-danger-light);
    color: var(--accent-danger);
}

.fit-title {
    font-size: 1.08rem;
    font-weight: 800;
    color: var(--text-primary);
}

.fit-items-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 14px;
    font-size: 0.94rem;
    color: var(--text-secondary);
}

.fit-items-list li {
    position: relative;
    padding-right: 18px;
    line-height: 1.75;
}

.fit-items-list li::before {
    content: "•";
    position: absolute;
    right: 0;
    color: var(--text-muted);
    font-size: 1.2rem;
    line-height: 1;
}

/* ۱۴. بیوگرافی و اعتبار نویسنده */
.bio-card-wrapper {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-xl);
    padding: 36px;
    box-shadow: var(--shadow-sm);
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.instructor-title-tag {
    color: var(--accent-ochre);
    font-weight: 800;
    font-size: 0.88rem;
}

.instructor-name {
    font-size: 1.8rem;
    font-weight: 900;
    color: var(--text-primary);
}

.instructor-motto {
    font-size: 1.02rem;
    color: var(--text-secondary);
    font-style: italic;
    margin-top: 4px;
}

.credentials-chronicle-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.chronicle-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.chronicle-bullet {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--accent-ochre);
    margin-top: 9px;
    flex-shrink: 0;
}

.chronicle-text {
    font-size: 0.95rem;
    color: var(--text-secondary);
    line-height: 1.75;
}

.chronicle-text strong {
    color: var(--text-primary);
}

.vision-mission-duo {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 18px;
}

.vm-col {
    background-color: var(--bg-card-subtle);
    padding: 20px;
    border-radius: var(--radius-md);
    border: 1px solid var(--border-subtle);
}

.vm-head {
    font-size: 1rem;
    font-weight: 800;
    color: var(--text-primary);
    margin-bottom: 6px;
}

.vm-p {
    font-size: 0.9rem;
    color: var(--text-secondary);
    line-height: 1.7;
}

.core-values-wrapper {
    border-top: 1px solid var(--border-subtle);
    padding-top: 20px;
}

.values-caption {
    font-size: 0.95rem;
    font-weight: 800;
    margin-bottom: 12px;
}

.values-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.val-pill {
    background-color: var(--accent-sage-light);
    color: var(--accent-sage-dark);
    font-size: 0.85rem;
    font-weight: 700;
    padding: 5px 14px;
    border-radius: 50px;
}

/* ۱۵. بخش سوالات متداول */
.faq-accordion-group {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.faq-card {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    overflow: hidden;
    transition: border-color var(--transition-fast);
}

.faq-card[open] {
    border-color: var(--accent-ochre);
}

.faq-summary {
    padding: 18px 24px;
    font-weight: 700;
    font-size: 1rem;
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--text-primary);
    user-select: none;
}

.faq-summary::-webkit-details-marker {
    display: none;
}

.chevron-svg {
    transition: transform var(--transition-fast);
    color: var(--text-muted);
}

.faq-card[open] .chevron-svg {
    transform: rotate(180deg);
    color: var(--accent-ochre);
}

.faq-body-content {
    padding: 0 24px 20px 24px;
    font-size: 0.94rem;
    color: var(--text-secondary);
    line-height: 1.8;
    border-top: 1px solid var(--border-subtle);
    padding-top: 14px;
}

/* ۱۶. ستون کناری دسکتاپ: جعبه سفارش، قیمت و کپی کارت بانکی */
.sticky-order-panel {
    position: sticky;
    top: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.product-passport-card {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    padding: 24px;
    box-shadow: var(--shadow-md);
}

.passport-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 18px;
}

.edition-type-tag {
    background-color: var(--text-primary);
    color: var(--text-inverse);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 50px;
}

.delivery-badge {
    background-color: var(--accent-sage-light);
    color: var(--accent-sage-dark);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 50px;
}

.book-meta-table {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px;
    font-size: 0.88rem;
}

.meta-tr {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--border-subtle);
    padding-bottom: 6px;
}

.meta-th {
    color: var(--text-muted);
}

.meta-td {
    color: var(--text-primary);
    font-weight: 600;
}

.highlight-green {
    color: var(--accent-sage);
    font-weight: 700;
}

.price-calculator-display {
    background-color: var(--bg-card-subtle);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    text-align: center;
}

.crossed-anchor-price {
    font-size: 0.85rem;
    color: var(--text-muted);
}

.crossed-anchor-price del {
    color: var(--accent-danger);
    font-weight: 700;
}

.actual-investment-price {
    display: flex;
    justify-content: center;
    align-items: baseline;
    gap: 8px;
}

.investment-label {
    font-size: 0.92rem;
    font-weight: 700;
}

.price-digits {
    font-size: 2.1rem;
    font-weight: 900;
    color: var(--accent-ochre);
}

.currency-unit {
    font-size: 0.9rem;
    font-weight: 700;
}

.price-guarantee-note {
    font-size: 0.78rem;
    color: var(--text-muted);
}

/* ۱۷. استپر اجرایی و ویجت کپی شماره کارت (پاسخ به تصویر ۲۶۳) */
.order-execution-steps-box {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    padding: 24px;
    box-shadow: var(--shadow-sm);
}

.steps-title {
    font-size: 0.98rem;
    font-weight: 800;
    margin-bottom: 16px;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: 8px;
}

.stepper-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.step-point {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 0.88rem;
}

.step-num {
    width: 24px;
    height: 24px;
    background-color: var(--text-primary);
    color: var(--text-inverse);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 800;
    flex-shrink: 0;
    margin-top: 2px;
}

.step-desc {
    color: var(--text-secondary);
    line-height: 1.65;
    width: 100%;
}

.card-copy-interactive-widget {
    background-color: var(--bg-card-subtle);
    border: 1px solid var(--border-strong);
    border-radius: var(--radius-sm);
    padding: 12px 14px;
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}

.card-digits-display {
    display: flex;
    flex-direction: column;
    gap: 3px;
    text-align: right;
}

.bank-name-label {
    font-size: 0.74rem;
    color: var(--text-muted);
    font-weight: 700;
}

/* رفع کامل برعکس شدن ارقام شماره کارت */
.raw-card-number {
    font-size: 1rem;
    font-weight: 800;
    color: var(--text-primary);
    letter-spacing: 1.5px;
    direction: ltr !important;
    unicode-bidi: isolate !important;
    display: block;
}

.copy-clipboard-action-btn {
    background-color: var(--accent-ochre);
    color: var(--text-inverse);
    border: none;
    padding: 7px 14px;
    border-radius: 6px;
    font-family: inherit;
    font-size: 0.8rem;
    font-weight: 700;
    cursor: pointer;
    transition: background-color var(--transition-fast);
    flex-shrink: 0;
}

.copy-clipboard-action-btn:hover {
    background-color: var(--accent-ochre-hover);
}

.copy-clipboard-action-btn.copied {
    background-color: var(--accent-sage);
}

.direct-messengers-btns {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 10px;
}

.messenger-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 12px;
    border-radius: var(--radius-sm);
    font-size: 0.84rem;
    font-weight: 700;
    text-decoration: none;
    transition: opacity var(--transition-fast);
}

.messenger-btn:hover {
    opacity: 0.9;
}

.tg-btn {
    background-color: #0284C7;
    color: #FFFFFF;
}

.bale-btn {
    background-color: #059669;
    color: #FFFFFF;
}

/* ۱۸. کانتینر ادغام و استایل اختصاصی گرویتی‌فرم (هماهنگ با شورت‌کد) */
.gravity-form-integration-slot {
    background-color: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    padding: 24px;
    box-shadow: var(--shadow-sm);
}

.slot-instruction-banner {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--border-subtle);
    padding-bottom: 10px;
}

.slot-title {
    font-size: 0.98rem;
    font-weight: 800;
    color: var(--text-primary);
}

.slot-note {
    font-size: 0.78rem;
    color: var(--text-muted);
}

.custom-gravity-form-embed-wrapper {
    background-color: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    display: block;
    width: 100%;
    text-align: right;
}

/* استایل‌های جامع و واکنش‌گرای فیلدها و دکمه گرویتی‌فرم */
.custom-gravity-form-embed-wrapper .gform_wrapper {
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
    direction: rtl !important;
    text-align: right !important;
}

.custom-gravity-form-embed-wrapper .gform_wrapper form {
    text-align: right !important;
}

.custom-gravity-form-embed-wrapper .gform_fields {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.custom-gravity-form-embed-wrapper .gfield {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    text-align: right !important;
}

.custom-gravity-form-embed-wrapper .gfield_label {
    display: block !important;
    font-family: var(--font-stack) !important;
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    color: var(--text-primary) !important;
    margin-bottom: 6px !important;
    text-align: right !important;
}

.custom-gravity-form-embed-wrapper .gfield_required {
    color: var(--accent-danger) !important;
    margin-right: 4px !important;
}

.custom-gravity-form-embed-wrapper .ginput_container input[type="text"],
.custom-gravity-form-embed-wrapper .ginput_container input[type="tel"],
.custom-gravity-form-embed-wrapper .ginput_container input[type="number"],
.custom-gravity-form-embed-wrapper .ginput_container input[type="email"],
.custom-gravity-form-embed-wrapper .ginput_container textarea {
    width: 100% !important;
    font-family: var(--font-stack) !important;
    font-size: 0.92rem !important;
    color: var(--text-primary) !important;
    background-color: #FFFFFF !important;
    border: 1px solid var(--border-strong) !important;
    border-radius: var(--radius-sm) !important;
    padding: 10px 14px !important;
    box-shadow: none !important;
    outline: none !important;
    box-sizing: border-box !important;
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast) !important;
    text-align: right !important;
}

.custom-gravity-form-embed-wrapper .ginput_container textarea {
    min-height: 80px !important;
    resize: vertical !important;
}

.custom-gravity-form-embed-wrapper .ginput_container input:focus,
.custom-gravity-form-embed-wrapper .ginput_container textarea:focus {
    border-color: var(--accent-ochre) !important;
    box-shadow: 0 0 0 3px rgba(180, 83, 9, 0.15) !important;
}

.custom-gravity-form-embed-wrapper .gfield_description {
    font-size: 0.78rem !important;
    color: var(--text-muted) !important;
    margin-top: 4px !important;
    line-height: 1.5 !important;
}

.custom-gravity-form-embed-wrapper .gform_footer {
    margin-top: 18px !important;
    padding: 0 !important;
    text-align: center !important;
}

.custom-gravity-form-embed-wrapper .gform_footer input[type="submit"],
.custom-gravity-form-embed-wrapper .gform_button {
    width: 100% !important;
    background-color: var(--accent-ochre) !important;
    color: var(--text-inverse) !important;
    font-family: var(--font-stack) !important;
    font-size: 0.96rem !important;
    font-weight: 800 !important;
    padding: 12px 20px !important;
    border: none !important;
    border-radius: var(--radius-sm) !important;
    cursor: pointer !important;
    transition: background-color var(--transition-fast), transform var(--transition-fast) !important;
    box-shadow: 0 4px 12px rgba(180, 83, 9, 0.25) !important;
}

.custom-gravity-form-embed-wrapper .gform_footer input[type="submit"]:hover,
.custom-gravity-form-embed-wrapper .gform_button:hover {
    background-color: var(--accent-ochre-hover) !important;
    transform: translateY(-1px) !important;
}

.custom-gravity-form-embed-wrapper .gform_confirmation_message {
    background-color: var(--accent-sage-light) !important;
    border: 1px solid rgba(45, 106, 79, 0.35) !important;
    border-radius: var(--radius-md) !important;
    padding: 20px !important;
    color: var(--text-primary) !important;
    font-size: 0.95rem !important;
    line-height: 1.85 !important;
    text-align: right !important;
}

.custom-gravity-form-embed-wrapper .validation_error,
.custom-gravity-form-embed-wrapper .gform_validation_errors {
    background-color: var(--accent-danger-light) !important;
    border: 1px solid var(--accent-danger-border) !important;
    border-radius: var(--radius-sm) !important;
    padding: 12px !important;
    color: var(--accent-danger) !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    margin-bottom: 14px !important;
    text-align: right !important;
}

.custom-gravity-form-embed-wrapper .validation_message {
    color: var(--accent-danger) !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    margin-top: 4px !important;
}

.custom-gravity-form-embed-wrapper .gform_ajax_spinner {
    margin-inline: 8px !important;
    vertical-align: middle !important;
}

/* ۱۹. نشان گارانتی بازگشت وجه و ۱ جلد کتاب هدیه دلخواه */
.bold-guarantee-shield-box {
    background-color: var(--accent-sage-light);
    border: 1px solid rgba(45, 106, 79, 0.25);
    border-radius: var(--radius-lg);
    padding: 20px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
}

.shield-icon-badge {
    color: var(--accent-sage);
    flex-shrink: 0;
}

.shield-copy {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.shield-title {
    font-size: 0.94rem;
    font-weight: 800;
    color: var(--accent-sage-dark);
}

.shield-text {
    font-size: 0.84rem;
    color: #1F3E31;
    line-height: 1.7;
}

/* ۲۰. نوار چسبان موبایل برای اقدام سریع */
.mobile-sticky-action-dock {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--bg-card);
    border-top: 1px solid var(--border-subtle);
    padding: 12px 20px;
    box-shadow: 0 -4px 16px rgba(15, 23, 42, 0.09);
    z-index: 999;
}

.dock-content-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 600px;
    margin-inline: auto;
    width: 100%;
}

.dock-price-info {
    display: flex;
    flex-direction: column;
}

.dock-label {
    font-size: 0.74rem;
    color: var(--text-muted);
}

.dock-val {
    font-size: 0.92rem;
    color: var(--text-primary);
}

.dock-val strong {
    color: var(--accent-ochre);
}

.dock-cta-button {
    background-color: var(--accent-ochre);
    color: var(--text-inverse);
    text-decoration: none;
    font-size: 0.88rem;
    font-weight: 800;
    padding: 10px 20px;
    border-radius: var(--radius-sm);
    transition: background-color var(--transition-fast);
}

.dock-cta-button:hover {
    background-color: var(--accent-ochre-hover);
}

/* ۲۱. تنظیمات تکمیلی رسپانسیو و رفع کامل مشکلات چیدمان در موبایل */
@media (max-width: 1024px) {
    .presentation-two-column-layout {
        grid-template-columns: 1fr;
        gap: 36px;
        padding-block: 32px;
    }
    
    .sidebar-checkout-col {
        order: -1; /* نمایش فرم خرید در بالای صفحه برای موبایل و تبلت */
    }
    
    .sticky-order-panel {
        position: static;
    }
    
    .mobile-sticky-action-dock {
        display: block;
    }
    
    body.independent-psychologist-page {
        padding-bottom: 74px; /* فضای امن جهت عدم تداخل با نوار چسبان */
    }
}

@media (max-width: 768px) {
    .site-container {
        padding-inline: 16px !important;
    }
    .hero-sub-resource-bar {
        padding-block: 16px;
    }
    .resource-bar-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }
    .resource-actions-group {
        width: 100%;
        flex-direction: column;
        gap: 8px;
    }
    .resource-quick-btn {
        width: 100%;
        justify-content: center;
        text-align: center;
    }
    .why-card {
        padding: 22px;
    }
    .bonuses-box-wrapper {
        padding: 22px;
    }
    .back-cover-sheet {
        padding: 24px;
    }
    .bio-card-wrapper {
        padding: 22px;
    }
    .stack-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
    .total-figure {
        font-size: 1.15rem;
    }
    /* جلوگیری از چسبیدن لبه‌های جدول به انتهای صفحه در موبایل */
    .comparison-scroll-isolation-container {
        margin-inline: -16px;
        padding-inline: 16px;
        width: calc(100% + 32px);
    }
}/* End custom CSS */