:root{
  --teal-950:#0f332e; --teal-800:#1c5c53; --teal-600:#2c8a79; --teal-500:#3aa08f;
  --teal-300:#8fcabe; --teal-100:#e3f2ee; --cream:#faf6ee; --cream-2:#f3ecdd;
  --paper:#ffffff; --ink:#1c2624; --ink-soft:#5c6866; --coral:#ee7b53; --gold:#e2ab3e;
  --radius-lg:28px; --radius-md:18px; --radius-sm:12px;
  --shadow:0 10px 30px -14px rgba(15,51,46,.28);
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;overflow-x:hidden;}
body{
  font-family:'Vazirmatn',sans-serif; background:var(--cream); color:var(--ink);
  -webkit-font-smoothing:antialiased; padding-bottom:78px; overflow-x:hidden;
}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
img,svg{display:block;max-width:100%;}
.wrap{max-width:640px;margin:0 auto;position:relative;background:var(--cream);min-height:100vh;}

header.top{
  position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;background:rgba(250,246,238,.9);backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(28,92,83,.08);
}
.brand{display:flex;align-items:center;gap:8px;}
.brand .logo-mark{width:34px;height:34px;border-radius:10px;object-fit:cover;}
.brand-text{display:flex;flex-direction:column;line-height:1;}
.brand-text .name{font-weight:800;font-size:19px;color:var(--teal-800);}
.brand-text .tag{font-size:9px;color:var(--ink-soft);font-weight:500;margin-top:2px;}
.menu-btn{width:38px;height:38px;border-radius:12px;background:var(--teal-100);display:flex;align-items:center;justify-content:center;}

.hero{position:relative;padding:20px 20px 34px;background:radial-gradient(120% 100% at 50% 0%, var(--teal-100) 0%, var(--cream) 62%);text-align:center;}
.hero .eyebrow{display:inline-flex;align-items:center;gap:6px;background:var(--paper);color:var(--teal-600);font-size:12px;font-weight:700;padding:6px 14px;border-radius:99px;box-shadow:var(--shadow);margin-bottom:16px;}
.hero .eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--coral);display:inline-block;}
.hero h1{font-size:28px;line-height:1.35;font-weight:800;margin:0 0 10px;color:var(--teal-950);}
.hero h1 em{color:var(--teal-600);font-style:normal;}
.hero p.sub{font-size:14.5px;color:var(--ink-soft);max-width:380px;margin:0 auto 22px;line-height:1.9;}
.hero-media{width:220px;margin:0 auto 16px;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow);}
.hero-media img{width:100%;}
.hero-video-wrap{position:relative;}
.hero-video-sound{position:absolute;left:8px;bottom:8px;width:34px;height:34px;border-radius:50%;border:none;background:rgba(0,0,0,.55);color:#fff;font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;}
.cta-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:99px;font-weight:700;font-size:14px;transition:transform .15s ease;}
.btn:active{transform:scale(.96);}
.btn-primary{background:var(--teal-600);color:#fff;box-shadow:0 12px 24px -10px rgba(44,138,121,.55);}
.btn-ghost{background:var(--paper);color:var(--teal-800);border:1.5px solid var(--teal-100);}
.btn-sm{padding:9px 16px;border-radius:99px;font-weight:700;font-size:12.5px;background:var(--teal-100);color:var(--teal-800);}
.btn-sm:disabled,button:disabled{opacity:.4;cursor:not-allowed;}
.btn-danger{background:#fdece4;color:var(--coral);}

section.block{padding:34px 18px 6px;}
.block-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px;}
.block-head h2{font-size:19px;font-weight:800;color:var(--teal-950);margin:0;}
.block-head p.eyebrow-sm{font-size:11.5px;color:var(--teal-600);font-weight:700;margin:0 0 4px;}
.block-head a.see-all{font-size:12px;font-weight:700;color:var(--teal-600);}

.feature-scroll,.grid-scroll{display:flex;gap:12px;overflow-x:auto;padding:2px 2px 10px;}
.grid-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.card{background:var(--paper);border-radius:var(--radius-md);padding:16px 14px;box-shadow:var(--shadow);}
.feature-card{scroll-snap-align:start;flex:0 0 auto;width:150px;background:var(--paper);border-radius:var(--radius-md);padding:16px 14px;box-shadow:var(--shadow);}
.feature-card .ico,.cat-card .ico{width:34px;height:34px;border-radius:10px;background:var(--teal-100);display:flex;align-items:center;justify-content:center;margin-bottom:12px;color:var(--teal-600);font-size:18px;}
.feature-card h3,.cat-card h3{font-size:13.5px;font-weight:700;margin:0 0 6px;color:var(--teal-950);}
.feature-card p,.cat-card p{font-size:11.5px;color:var(--ink-soft);line-height:1.7;margin:0;}

.cat-card{display:flex;flex-direction:column;gap:8px;position:relative;}
.cat-card img.thumb{width:100%;border-radius:12px;aspect-ratio:16/10;object-fit:cover;margin-bottom:6px;}
.cat-card a.stretch{position:absolute;inset:0;border-radius:inherit;}
.fav-btn{position:absolute;top:10px;left:10px;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;font-size:15px;box-shadow:var(--shadow);z-index:2;}
.fav-btn.active{color:var(--gold);}

.program-card{background:var(--paper);border-radius:var(--radius-lg);padding:18px;box-shadow:var(--shadow);display:flex;gap:14px;align-items:flex-start;margin-bottom:14px;position:relative;}
.program-card .num{width:42px;height:42px;flex:0 0 auto;border-radius:12px;background:var(--teal-950);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;}
.program-card h3{font-size:14.5px;font-weight:800;margin:0 0 6px;color:var(--teal-950);}
.program-card p{font-size:12px;color:var(--ink-soft);line-height:1.8;margin:0 0 10px;}
.program-meta{display:flex;gap:8px;flex-wrap:wrap;}
.meta-chip{font-size:10.5px;font-weight:700;padding:4px 10px;border-radius:99px;background:var(--cream-2);color:var(--teal-800);}
.card-link{position:absolute;inset:0;border-radius:inherit;}

.article-card{background:var(--paper);border-radius:var(--radius-md);padding:16px;box-shadow:var(--shadow);margin-bottom:12px;position:relative;}
.article-card .article-tag{font-size:10.5px;font-weight:700;color:var(--coral);margin-bottom:8px;display:block;}
.article-card h3{font-size:14.5px;font-weight:700;margin:0 0 6px;color:var(--teal-950);line-height:1.6;}
.article-card .meta{font-size:11px;color:var(--ink-soft);display:flex;gap:10px;align-items:center;}

.course-card{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;margin-bottom:16px;}
.course-card img.thumb{width:100%;aspect-ratio:16/9;object-fit:cover;}
.course-card .body{padding:16px;}
.course-card h3{font-size:15px;font-weight:800;margin:0 0 6px;color:var(--teal-950);}
.course-card p{font-size:12.5px;color:var(--ink-soft);line-height:1.8;margin:0 0 12px;}
.course-price{font-weight:800;color:var(--teal-700,var(--teal-600));font-size:14px;}

.chip-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.chip{background:var(--teal-100);color:var(--teal-800);font-size:11.5px;font-weight:600;padding:7px 12px;border-radius:99px;}

.zones-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.zone-card{background:var(--paper);border-radius:var(--radius-md);padding:14px 8px;box-shadow:var(--shadow);text-align:center;font-size:12px;font-weight:700;color:var(--teal-800);}
.zone-card .ico{font-size:22px;margin-bottom:6px;}

.problem-item{display:flex;align-items:center;justify-content:space-between;padding:11px 4px;border-bottom:1px dashed var(--cream-2);font-size:13px;}
.problem-item:last-child{border-bottom:none;}
.problem-item span.name{font-weight:600;color:var(--ink);}
.problem-item span.tag{font-size:10px;background:#fdece4;color:var(--coral);padding:3px 8px;border-radius:99px;font-weight:700;}

.section-hero{padding:26px 18px 6px;text-align:center;}
.section-hero h1{font-size:22px;font-weight:800;color:var(--teal-950);margin:0 0 8px;}
.section-hero p{font-size:13px;color:var(--ink-soft);line-height:1.8;margin:0 auto;max-width:400px;}

.detail-media{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);margin:0 18px 18px;background:var(--cream-2);}
.detail-media img{width:100%;height:auto;display:block;background:var(--cream-2);}
.video-frame{width:100%;aspect-ratio:16/9;border:none;background:#000;border-radius:var(--radius-lg);overflow:hidden;}
.video-frame iframe,.video-frame video{width:100%;height:100%;border:none;}

.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-soft);margin:0 0 8px;}
.breadcrumb a{color:var(--teal-600);font-weight:600;}
.breadcrumb .sep{color:var(--teal-300);}
.breadcrumb .current{color:var(--teal-950);font-weight:700;}
.faq-block{padding:0 18px 20px;}
.faq-list{display:flex;flex-direction:column;gap:10px;}
.faq-item{background:var(--paper);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:12px 14px;}
.faq-item summary{font-weight:700;font-size:13.5px;color:var(--teal-950);cursor:pointer;list-style:none;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::before{content:'+';color:var(--teal-600);font-weight:800;margin-left:8px;}
.faq-item[open] summary::before{content:'–';}
.faq-item p{margin:10px 0 0;font-size:13px;line-height:1.9;color:var(--ink-soft);}
.content-body{padding:0 18px 20px;font-size:14px;line-height:2.1;color:var(--ink);}
.content-body p{margin:0 0 14px;}

footer{padding:40px 20px 30px;text-align:center;}
footer h4{font-size:15px;font-weight:800;color:var(--teal-950);margin:0 0 6px;}
footer p{font-size:12px;color:var(--ink-soft);margin:0 0 18px;}
.footer-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:18px;}
.footer-links a{font-size:11.5px;font-weight:600;color:var(--teal-800);background:var(--teal-100);padding:7px 12px;border-radius:99px;}
footer .copyright{font-size:10.5px;color:#9aa8a5;}

nav.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:50;max-width:640px;margin:0 auto;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-top:1px solid rgba(28,92,83,.08);display:flex;justify-content:space-around;align-items:flex-start;padding:8px 4px calc(8px + env(safe-area-inset-bottom));}
.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--ink-soft);padding:4px 2px;border-radius:12px;flex:1;min-width:0;font-size:9px;font-weight:600;}
.nav-item svg{width:20px;height:20px;flex-shrink:0;}
.nav-item .nav-emoji{font-size:19px;line-height:1;flex-shrink:0;}
.nav-item span{line-height:1.25;max-width:100%;text-wrap:balance;overflow-wrap:break-word;}
.nav-item.active{color:var(--teal-600);}

/* بزرگ‌نمایی تصویر با کلیک (کیفیت اصلی) */
.zoomable{cursor:zoom-in;touch-action:manipulation;}
.lightbox-overlay{position:fixed;inset:0;z-index:200;background:rgba(10,20,18,.92);display:none;align-items:center;justify-content:center;padding:24px;touch-action:manipulation;}
.lightbox-overlay.show{display:flex;}
.lightbox-overlay img{max-width:100%;max-height:90vh;object-fit:contain;border-radius:10px;}
.lightbox-close{position:fixed;top:16px;left:16px;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;touch-action:manipulation;}
body.lightbox-lock{position:fixed;left:0;right:0;width:100%;overflow:hidden;}

.overlay{position:fixed;inset:0;background:rgba(15,51,46,.5);z-index:60;display:none;}
.overlay.show{display:block;}
.sheet{position:absolute;bottom:0;left:0;right:0;max-width:640px;margin:0 auto;background:var(--paper);border-radius:26px 26px 0 0;padding:22px 20px 30px;max-height:80vh;overflow-y:auto;}
.sheet-handle{width:38px;height:4px;background:var(--cream-2);border-radius:99px;margin:0 auto 18px;}
.sheet h3{font-size:16px;font-weight:800;margin:0 0 14px;color:var(--teal-950);}
.sheet-link{display:flex;align-items:center;justify-content:space-between;padding:13px 4px;border-bottom:1px solid var(--cream-2);font-size:13.5px;font-weight:600;}
.sheet-link:last-of-type{border-bottom:none;}
.sheet-close{margin-top:16px;width:100%;text-align:center;padding:12px;background:var(--cream-2);border-radius:14px;font-weight:700;font-size:13px;color:var(--teal-800);}

/* ---- forms ---- */
.form-card{background:var(--paper);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:20px;margin:0 18px;}
.field-group{margin-bottom:14px;}
.field-group label{display:block;font-size:12px;font-weight:700;color:var(--ink-soft);margin-bottom:5px;}
.field-group input,.field-group textarea,.field-group select{width:100%;padding:11px 12px;border:1.5px solid var(--cream-2);border-radius:10px;font-family:inherit;font-size:13px;background:var(--cream);color:var(--ink);}
.field-group textarea{min-height:110px;resize:vertical;}

/* چک‌باکس‌ها: سایز ثابت و هم‌ترازِ متن، به‌جای رندر بزرگ و پیش‌فرض مرورگر/iOS */
input[type="checkbox"]{-webkit-appearance:none;appearance:none;flex:0 0 auto;width:19px;height:19px;border:1.5px solid var(--teal-300);border-radius:6px;background:var(--paper);position:relative;cursor:pointer;vertical-align:middle;margin:0;accent-color:var(--teal-600);}
input[type="checkbox"]:checked{background:var(--teal-600);border-color:var(--teal-600);}
input[type="checkbox"]:checked::after{content:'';position:absolute;top:2px;left:6px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(35deg);}
.field-group label:has(input[type="checkbox"]){display:flex;align-items:center;gap:8px;font-weight:600;color:var(--ink);margin-bottom:0;line-height:1.6;}
.check-row{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--ink);margin-bottom:0;cursor:pointer;}

/* گرید چک‌باکس‌های صفحه (مثل «این بنر توی کدوم صفحه‌ها نشون داده بشه») */
.chip-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px;}
.chip-checkbox{display:flex;align-items:center;gap:7px;background:var(--cream-2);border-radius:12px;padding:9px 12px;font-size:12px;font-weight:700;color:var(--teal-800);line-height:1.4;}
.chip-checkbox input[type="checkbox"]{flex:0 0 auto;}
.form-submit{width:100%;margin-top:6px;}
.form-note{font-size:11.5px;color:var(--ink-soft);margin:-4px 0 14px;line-height:1.8;}
.captcha-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.captcha-img{border-radius:10px;border:1.5px solid var(--cream-2);flex-shrink:0;}
.captcha-refresh{width:36px;height:36px;flex-shrink:0;border-radius:10px;background:var(--cream-2);color:var(--teal-800);font-size:16px;display:flex;align-items:center;justify-content:center;}
.ad-banner{position:relative;margin:14px 18px;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow);}
.ad-banner img,.ad-banner video{width:100%;display:block;}
.ad-banner-label{position:absolute;top:8px;left:8px;background:rgba(0,0,0,.55);color:#fff;font-size:10px;font-weight:700;padding:2px 8px;border-radius:99px;z-index:2;}

.alert{border-radius:14px;padding:12px 15px;font-size:12.5px;margin:14px 18px 0;line-height:1.8;}
.alert-success{background:var(--teal-100);color:var(--teal-800);}
.alert-error{background:#fdece4;color:#c0392b;}

.empty-state{padding:30px 20px;text-align:center;color:var(--ink-soft);font-size:13px;}

/* ---- admin ---- */
.admin-body{background:var(--cream-2);}
.admin-shell{max-width:960px;margin:0 auto;padding:0 0 60px;}
.admin-topbar{background:var(--teal-950);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:30;}
.admin-topbar a{color:#fff;}
.admin-topbar .brand{font-weight:800;}
.admin-nav-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:12px 20px;background:var(--paper);border:none;border-bottom:1px solid var(--cream-2);font-family:inherit;font-size:12.5px;font-weight:700;color:var(--teal-800);cursor:pointer;}
.admin-nav-toggle-icon{font-size:14px;}
.admin-nav-toggle-text{flex:1;text-align:right;}
.admin-nav-toggle-chevron{transition:transform .18s ease;font-size:14px;}
.admin-nav-toggle[aria-expanded="true"] .admin-nav-toggle-chevron{transform:rotate(-90deg);}
.admin-nav{display:flex;flex-direction:column;gap:14px;padding:16px 20px;background:var(--paper);border-bottom:1px solid var(--cream-2);max-height:2000px;overflow:hidden;transition:max-height .2s ease,padding .2s ease,opacity .15s ease;}
.admin-nav.collapsed{max-height:0;padding-top:0;padding-bottom:0;border-bottom:none;opacity:0;}
.admin-nav-group{width:100%;padding-bottom:12px;border-bottom:1px dashed var(--cream-2);}
.admin-nav-group:last-of-type{border-bottom:none;padding-bottom:0;}
.admin-nav-group-label{display:block;font-size:10.5px;font-weight:800;color:var(--ink-soft);letter-spacing:.02em;margin-bottom:8px;}
.admin-nav-group-links{display:flex;flex-wrap:wrap;gap:7px;}
.admin-nav a{flex:0 0 auto;display:inline-flex;align-items:center;font-size:12px;font-weight:700;line-height:1;padding:8px 13px;border-radius:99px;background:var(--cream-2);color:var(--teal-800);white-space:nowrap;transition:background .15s ease,color .15s ease;}
.admin-nav a:active{transform:scale(.97);}
.admin-nav a.active{background:var(--teal-600);color:#fff;}
.admin-nav-external{display:inline-flex;align-items:center;font-size:12px;font-weight:700;color:var(--teal-800);text-decoration:underline;margin-top:2px;}
.admin-content{padding:20px;}
.contact-notif{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:var(--teal-100);border:1px solid var(--teal-300);color:var(--teal-950);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:16px;font-size:13px;}
.admin-block{background:var(--paper);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:18px;margin-bottom:16px;}
.admin-block h2{font-size:15px;font-weight:800;color:var(--teal-950);margin:0 0 14px;}
/* بخش‌های قابل‌جمع‌شدن پنل مدیریت — حین ویرایش یه بخش، بقیه رو جمع می‌کنی تا صفحه شلوغ نباشه */
.admin-block-header{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none;}
.admin-block-header h2{margin:0;flex:1;}
.admin-block-toggle{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--cream-2);color:var(--teal-700);border:none;border-radius:8px;font-size:13px;line-height:1;transition:transform .18s ease,background .15s ease;}
.admin-block-toggle:active{background:var(--teal-100);}
.admin-block.is-collapsed .admin-block-toggle{transform:rotate(-90deg);}
.admin-block.is-collapsed>*:not(.admin-block-header){display:none !important;}
.admin-block.is-collapsed{padding-bottom:14px;}
.admin-block.is-collapsed .admin-block-header h2{margin-bottom:0;}
.admin-toolbar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:10px;}
.admin-toolbar button{font-size:11.5px;font-weight:700;padding:6px 12px;border-radius:8px;background:var(--cream-2);color:var(--teal-800);border:none;}
table.admin-table{width:100%;border-collapse:collapse;font-size:12.5px;}
table.admin-table th,table.admin-table td{padding:9px 8px;text-align:right;border-bottom:1px solid var(--cream-2);}
table.admin-table th{color:var(--ink-soft);font-weight:700;font-size:11px;}
table.admin-table img{width:44px;height:44px;object-fit:cover;border-radius:8px;}
.row-actions{display:flex;gap:6px;flex-wrap:wrap;}
.row-actions a,.row-actions button{font-size:11px;font-weight:700;padding:5px 10px;border-radius:8px;background:var(--teal-100);color:var(--teal-800);}
.row-actions .danger{background:#fdece4;color:#c0392b;}
/* بعضی دکمه‌های حذف/عملیات به‌جای اینکه داخل یه .row-actions باشن، خودشون مستقیماً
   کلاس row-actions می‌گیرن (مثل دکمه‌ی «حذف این شاخه»). بدون این قانون، اون دکمه‌ها
   هیچ استایلی نمی‌گرفتن و به‌صورت دکمه‌ی خام و کم‌رنگ مرورگر دیده می‌شدن. */
button.row-actions,a.row-actions{display:inline-flex;align-items:center;font-size:11px;font-weight:700;padding:5px 10px;border-radius:8px;background:var(--teal-100);color:var(--teal-800);border:none;cursor:pointer;}
button.row-actions.danger,a.row-actions.danger{background:#fdece4;color:#c0392b;}
.login-shell{max-width:380px;margin:60px auto;background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:28px;}
.login-shell h1{font-size:18px;font-weight:800;color:var(--teal-950);margin:0 0 18px;text-align:center;}
.current-media{margin:8px 0;}
.current-media img{max-width:140px;border-radius:10px;}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:18px;}
.stat-box{background:var(--paper);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:16px;text-align:center;}
.stat-box .num{font-size:22px;font-weight:800;color:var(--teal-800);}
.stat-box .label{font-size:11px;color:var(--ink-soft);margin-top:4px;}

@media (min-width:641px){ .wrap{box-shadow:0 0 60px rgba(0,0,0,.06);} }

/* ---- promo banners (using brand mascot/icon assets) ---- */
.promo-banner{margin:14px 18px 6px;background:linear-gradient(135deg,var(--teal-950),var(--teal-800));border-radius:var(--radius-lg);padding:22px 18px;display:flex;align-items:center;gap:14px;overflow:hidden;position:relative;box-shadow:var(--shadow);}
.promo-banner .promo-text{flex:1;color:#fff;}
.promo-banner .promo-text h2{font-size:17px;font-weight:800;margin:0 0 8px;color:#fff;}
.promo-banner .promo-text p{font-size:12px;line-height:1.8;color:rgba(255,255,255,.85);margin:0 0 14px;}
.promo-banner .promo-text .btn-primary{background:#fff;color:var(--teal-800);box-shadow:none;padding:10px 18px;font-size:12.5px;}
.promo-banner .promo-mascot{width:110px;flex:0 0 auto;filter:drop-shadow(0 10px 14px rgba(0,0,0,.25));}
.promo-banner video.promo-mascot{height:110px;object-fit:cover;border-radius:12px;background:rgba(0,0,0,.15);}
.promo-banner-alt{background:linear-gradient(135deg,var(--teal-600),var(--teal-500));}

.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.why-item{background:var(--paper);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:16px 10px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;}
.why-item img{width:52px;height:52px;object-fit:contain;}
.why-item span{font-size:12px;font-weight:700;color:var(--teal-950);line-height:1.6;}

.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.gallery-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;cursor:pointer;}

.content-body img.inline-content-img{width:100%;border-radius:var(--radius-md);margin:16px 0;box-shadow:var(--shadow);}

/* ---- نسخه‌ی چاپی (حرکات و برنامه‌ها) ---- */
@media print {
  .no-print, header.top, nav.bottom-nav, .telegram-fab, .overlay, footer,
  .fav-btn, .stretch, .card-link, .menu-btn { display: none !important; }
  body, .wrap { background: #fff !important; padding-bottom: 0 !important; }
  .content-body { color: #000; font-size: 13pt; line-height: 1.9; }
  .section-hero h1 { color: #000; }
  .detail-media, .detail-media img { box-shadow: none !important; }
  a { text-decoration: none; color: #000 !important; }
}

.telegram-fab{position:fixed;left:16px;bottom:92px;z-index:45;width:52px;height:52px;border-radius:50%;box-shadow:0 10px 22px -8px rgba(41,169,235,.65);display:flex;align-items:center;justify-content:center;background:#fff;}
@media (min-width:641px){ .telegram-fab{left:calc(50% - 320px + 16px);} }

.qr-admin-toggle{position:fixed;right:14px;bottom:80px;z-index:70;}
@media (min-width:641px){ .qr-admin-toggle{right:calc(50% - 320px + 14px);} }
