@import url(../fonts/iransans/iransans.css);
:root{
--blue:#120c80;
--red:#ff1300;
--orange:#ff7f00;
--gray-100:#f7f8fa;
--gray-200:#eceef2;
--gray-600:#70757d;
--dark:#111318;
}
html{scroll-behavior:smooth;}
body{
font-family:"IRANSans",sans-serif;
background:#fff;
color:#1b1f27;
}

a{color:var(--blue);text-decoration:none;transition:.2s;}
a:hover{color:var(--red);}

/* اسکرول بار حرفه‌ای */
*{scrollbar-width:thin;scrollbar-color:#120c80 #eef1f7;}
::-webkit-scrollbar{width:11px;height:11px;}
::-webkit-scrollbar-track{background:#eef1f7;border-radius:999px;}
::-webkit-scrollbar-thumb{
background:linear-gradient(180deg,#120c80,#2d25b1);
border-radius:999px;border:2px solid #eef1f7;
}
::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#ff1300,#ff7f00);}

.top-strip{background:linear-gradient(90deg,var(--blue),#2b23af);color:#fff;font-size:.9rem;}
.brand-logo{height:58px;object-fit:contain;margin-left: 20px;}

.btn-brand{background:linear-gradient(45deg,var(--red),var(--orange));border:none;color:#fff;font-weight:700;font-size: 0.85rem;box-shadow:0 10px 20px rgba(255,19,0,.2);}
.btn-login{border:1px solid #d7d9e6;font-weight:700;font-size: 0.85rem;}

/* ===== Navbar ===== */
.custom-navbar{
backdrop-filter:blur(8px);
background:rgba(255,255,255,.92);
border-bottom:1px solid var(--gray-200);
box-shadow:0 8px 20px rgba(18,12,128,.05);
z-index:1030;
}

.desk-link{
border:none;background:transparent;
color:#1f2430;text-decoration:none;
padding:.55rem .8rem;border-radius:10px;
font-weight:800;display:inline-flex;align-items:center;gap:.35rem;
transition:.2s;
}
.desk-link:hover,.desk-link.active{color:var(--blue);background:#f5f6ff;}

/* زیرمنوی دسکتاپ - بدون پرش */
.desktop-menu .nav{align-items:center;font-size: .81rem;}
.desk-dd{position:relative;padding-bottom:14px;margin-bottom:-14px;}
.desk-dd-menu{
position:absolute;top:100%;right:0;
min-width:250px;background:#fff;border:1px solid #ececf8;border-radius:12px;
box-shadow:0 14px 28px rgba(18,12,128,.12);padding:.45rem;z-index:60;
opacity:0;visibility:hidden;transform:translateY(8px);
transition:opacity .18s ease,transform .18s ease,visibility .18s;
}
.desk-dd:hover .desk-dd-menu,.desk-dd:focus-within .desk-dd-menu{
opacity:1;visibility:visible;transform:translateY(0);
}
.desk-dd-menu a{
display:block;padding:.62rem .75rem;border-radius:8px;color:#1f2430;font-size: 0.75rem;font-weight:600;
}
.desk-dd-menu a:hover{background:#f5f6ff;color:var(--blue);}

/* ===== Mobile Drawer ===== */
.menu-toggle{
border:1px solid #d9dcef;background:#fff;border-radius:12px;width:44px;height:44px;
display:grid;place-items:center;color:#1f2450;
}

.mobile-overlay{
position:fixed;inset:0;background:rgba(15,18,32,.45);
opacity:0;visibility:hidden;transition:.25s;z-index:1040;
}
.mobile-overlay.show{opacity:1;visibility:visible;}

.mobile-drawer{
position:fixed;top:0;right:0;height:100dvh;width:330px;max-width:92%;
background:#fff;transform:translateX(100%);transition:.3s ease;
z-index:1050;display:flex;flex-direction:column;
}
.mobile-drawer.open{transform:translateX(0);}

.mobile-drawer-head{
background:linear-gradient(90deg,var(--blue),#2d25b1);
color:#fff;padding:1rem;display:flex;align-items:center;justify-content:space-between;
}
.drawer-close{
border:none;background:rgba(255,255,255,.15);color:#fff;
width:34px;height:34px;border-radius:10px;display:grid;place-items:center;
}

.mobile-drawer-body{padding:1rem;overflow:auto;}

.search-wrap{
display:flex;align-items:center;gap:.55rem;
border:1px solid #dfe3f5;border-radius:12px;padding:.65rem .8rem;background:#fff;
}
.search-wrap input{border:none;outline:none;width:100%;font:inherit;background:transparent;}

.mobile-menu-list{list-style:none;margin:0;padding:0;}
.mobile-menu-list>li{margin-bottom:.55rem;}
.mobile-menu-list a,.sub-toggle{
width:100%;border:1px solid #edf0f7;border-radius:12px;background:#fff;
padding:.72rem .85rem;color:#1f2430;font-weight:700;
display:flex;align-items:center;justify-content:space-between;transition:.2s;
}
.mobile-menu-list a:hover,.sub-toggle:hover{background:#f8f9ff;color:var(--blue);}
.sub-menu{list-style:none;margin:.35rem 0 0 0;padding:0 .25rem 0 0;display:none;}
.sub-menu li a{margin-top:.35rem;font-weight:600;padding:.62rem .75rem;background:#fcfcff;}
.has-sub.open .sub-menu{display:block;}
.has-sub.open .sub-toggle .bi-chevron-down{transform:rotate(180deg);}
.sub-toggle .bi-chevron-down{transition:.2s;}

.mobile-contact{border:1px dashed #d9deef;border-radius:12px;padding:.8rem;background:#fbfcff;font-size:.92rem;}
.mobile-social .social-btn{
width:38px;height:38px;border-radius:10px;display:inline-grid;place-items:center;
background:#1b2140;color:#fff;margin-left:.35rem;transition:.2s;
}
.mobile-social .social-btn:hover{background:linear-gradient(45deg,var(--red),var(--orange));color:#fff;transform:translateY(-2px);}

.main-legacy{padding:2rem 0;}
.gs-col{display:flex;flex-direction:column;gap:1rem;}
.widget-card{background:#fff;border:1px solid var(--gray-200);border-radius:16px;box-shadow:0 8px 18px rgba(17,19,24,.04);overflow:hidden;}
.widget-head{background:linear-gradient(90deg,var(--blue),#2d25b1);color:#fff;font-weight:800;padding:.8rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.85rem;}
.widget-body{padding:1rem;}
.hero-slider .carousel-item img{width:100%;height:300px;object-fit:cover;}
.overlay-card{position:absolute;inset:auto 16px 16px 16px;background:rgba(18,12,128,.86);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:.75rem .9rem;}
.tab-btns .nav-link{border:1px solid #e4e7f5;border-radius:10px;color:#2b2f3a!important;font-weight:700;margin-left:.4rem;margin-bottom:.4rem;font-size: 0.75rem;}
.tab-btns .nav-link.active{background:linear-gradient(45deg,var(--red),var(--orange));border-color:transparent;color:#fff!important;}
.thumb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;}
.thumb-grid a{display:block;border-radius:10px;overflow:hidden;border:1px solid #e8eaf4;background:#fff;box-shadow:0 4px 10px rgba(17,19,24,.04);transition:.25s;}
.thumb-grid a:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(18,12,128,.10);border-color:#d7daf0;}
.thumb-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;}
.news-list,.simple-list{list-style:none;margin:0;padding:0;}
.news-list li,.simple-list li{border-bottom:1px dashed #e9ecf6;padding:.45rem 0;font-size:.93rem;}
.news-list li:last-child,.simple-list li:last-child{border-bottom:none;}
.news-list li a,.simple-list li a{display:block;color:#1f2430;font-weight:500;line-height:1.9;}
.news-list li a:hover,.simple-list li a:hover{color:var(--blue);padding-right:.25rem;}
.post-content p{margin-bottom:.85rem;line-height:2;}
.course-table{border:1px solid #e4e8f6;border-radius:12px;overflow:hidden;}
.course-table thead th{background:#f3f5ff!important;color:#1e2450;font-size:.88rem;white-space:nowrap;}
.course-table td{font-size:.88rem;vertical-align:middle;}
.badge-full{background:#ffe7e7;color:#ba1a1a;}
.badge-open{background:#e7f7ec;color:#0f7a3d;}
    .section-title{display:flex;align-items:center;gap:.6rem;font-weight:800;color:var(--blue);margin-bottom:1.2rem;}
    .section-title i{color:var(--red);}
    .top-strip{background:linear-gradient(90deg,var(--blue),#2b23af);color:#fff;font-size:.9rem;}
    .text-muted-custom{color:var(--gray-600)!important;}
    .content-box{background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:1.2rem;height:100%;}
    .stat-box{background:#fff;border:1px solid var(--gray-200);border-radius:14px;padding:1rem;text-align:center;}
    .top-strip{background:linear-gradient(90deg,var(--blue),#2b23af);color:#fff;font-size:.9rem}
    .section-title{display:flex;align-items:center;gap:.6rem;font-weight:800;color:var(--blue);margin-bottom:1.2rem}
    .section-title i{color:var(--red)}
    .text-muted-custom{color:var(--gray-600)!important}

    .article-box,.sidebar-box,.comments-box,.related-box{
      background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:1rem;
      box-shadow:0 8px 18px rgba(17,19,24,.04)
    }
    .post-cover{border-radius:14px;max-height:450px;object-fit:cover;width:100%}
    .post-content p{line-height:2.05;text-align:justify}
    .post-content h5{color:#1a1f5a}
    .badge-cat{background:linear-gradient(45deg,var(--red),var(--orange));color:#fff;font-weight:600}

    .toc a{display:block;padding:.45rem .2rem;color:#333;text-decoration:none;border-bottom:1px dashed #eceef7}
    .toc a:hover{color:var(--blue);padding-right:.35rem}
    .mini-post{display:flex;gap:.75rem;align-items:center;text-decoration:none;color:#1b1f27}
    .mini-post img{width:72px;height:56px;object-fit:cover;border-radius:8px}
    .mini-post:hover h6{color:var(--blue)}

    .sticky-col{position:sticky; top:92px}
    .reading-progress-wrap{height:6px;background:#eceffd;border-radius:99px;overflow:hidden}
    .reading-progress{height:100%;width:0;background:linear-gradient(45deg,var(--red),var(--orange))}
    .author-chip{
      background:#f6f6ff;border:1px solid #e5e6ff;border-radius:14px;padding:.85rem;
      display:flex;align-items:center;gap:.8rem
    }
    .author-avatar{
      width:48px;height:48px;border-radius:50%;
      display:grid;place-items:center;color:#fff;font-weight:800;
      background:linear-gradient(45deg,var(--orange),var(--red))
    }

    .callout{
      background:linear-gradient(135deg,#fff7f4,#fff);
      border:1px solid #ffe0d7;
      border-right:4px solid var(--red);
      border-radius:12px;padding:.9rem 1rem
    }

    /* related cards */
    .related-card{
      border:none;border-radius:14px;overflow:hidden;height:100%;
      box-shadow:0 10px 20px rgba(0,0,0,.07);transition:.25s
    }
    .related-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(18,12,128,.14)}
    .related-card img{height:170px;object-fit:cover}

    /* comments */
    .comment-item{
      border:1px solid #e9ebf6;border-radius:14px;padding:.9rem;background:#fff
    }
    .comment-avatar{
      width:42px;height:42px;border-radius:50%;
      display:grid;place-items:center;font-weight:800;color:#fff;
      background:linear-gradient(45deg,#3f37c9,#120c80)
    }
    .comment-meta{font-size:.82rem;color:var(--gray-600)}
    .comment-reply{
      margin-top:.8rem;margin-right:2rem;padding-right:1rem;
      border-right:2px dashed #e5e7f3
    }
    .rating i{color:#ffc107}
    .form-control:focus,.form-select:focus{
      border-color:#a7a4f0;box-shadow:0 0 0 .25rem rgba(18,12,128,.08)
    }
    .top-strip{background:linear-gradient(90deg,var(--blue),#2b23af);color:#fff;font-size:.9rem}
    .section-title{display:flex;align-items:center;gap:.6rem;font-weight:800;color:var(--blue);margin-bottom:1.2rem}.section-title i{color:var(--red)}
    .text-muted-custom{color:var(--gray-600)!important}
    .profile-box,.cardx{background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:1rem}
    .avatar{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(45deg,var(--orange),var(--red));color:#fff;font-weight:900;font-size:1.35rem}
    .badge-skill{background:#f4f3ff;color:#120c80;border:1px solid #e2e0ff}
    .timeline{border-right:2px dashed #dcdff5;padding-right:1rem}
    .timeline-item{position:relative;padding-right:1rem;margin-bottom:1rem}
    .timeline-item:before{content:"";position:absolute;right:-1.45rem;top:.35rem;width:10px;height:10px;border-radius:50%;background:var(--red)}
.contact-box{background:linear-gradient(135deg,#fff6f4,#fff);border:1px solid #ffd8cf;border-radius:12px;padding:.75rem;font-size:.92rem;}
    .modal-content{border:none;border-radius:16px;overflow:hidden;box-shadow:0 20px 40px rgba(18,12,128,.2);}
    .modal-header{background:linear-gradient(90deg,var(--blue),#2d25b1);color:#fff;}
	    .hero-contact{
      background:
        radial-gradient(circle at 20% 20%, rgba(255,127,0,.12), transparent 30%),
        radial-gradient(circle at 80% 80%, rgba(18,12,128,.12), transparent 35%),
        #fff;
      border:1px solid var(--gray-200);
      border-radius:18px;
      padding:1rem 1.1rem;
      margin-bottom:1rem;
    }
    .breadcrumb-custom{font-size:.9rem}
    .breadcrumb-custom a{text-decoration:none;color:#666da3}
    .breadcrumb-custom a:hover{color:var(--blue)}

    .box{
      background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:1.1rem;
      box-shadow:0 10px 20px rgba(17,19,24,.04);
    }
    .contact-item{
      border:1px solid #eceef8;border-radius:14px;padding:.8rem;display:flex;gap:.7rem;align-items:flex-start;
      transition:.2s;background:#fff;
    }
    .contact-item:hover{transform:translateY(-2px);box-shadow:0 10px 18px rgba(18,12,128,.08)}
    .contact-icon{
      width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:#fff;
      background:linear-gradient(45deg,var(--red),var(--orange));flex-shrink:0;
    }

    .form-control,.form-select{border-radius:12px;border:1px solid #dfe3ee}
    .form-control:focus,.form-select:focus{border-color:#aaa6ef;box-shadow:0 0 0 .25rem rgba(18,12,128,.08)}
    .form-label{font-weight:600}
    .counter{font-size:.8rem;color:var(--gray-600)}
    .badge-soft{background:#f3f4ff;color:#2a2f8c;border:1px solid #e1e4ff}

    .faq .accordion-button{font-weight:700}
    .faq .accordion-button:not(.collapsed){color:#fff;background:linear-gradient(90deg,var(--blue),#2d25b1)}
    .faq .accordion-button:focus{box-shadow:none}
/* Hero archive */
    .archive-hero{
      background:
        radial-gradient(circle at 20% 20%, rgba(255,127,0,.14), transparent 30%),
        radial-gradient(circle at 80% 80%, rgba(18,12,128,.12), transparent 35%),
        #fff;
      border:1px solid var(--gray-200);
      border-radius:18px;
      padding:1.1rem 1rem;
      margin-bottom:1rem;
    }
    .breadcrumb-custom{font-size:.9rem}
    .breadcrumb-custom a{text-decoration:none;color:#5f66a0}
    .breadcrumb-custom a:hover{color:var(--blue)}

    /* Cards */
    .card-pro{
      border:none;border-radius:18px;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.08);transition:.3s;height:100%;
      background:#fff;
    }
    .card-pro:hover{transform:translateY(-6px);box-shadow:0 18px 34px rgba(18,12,128,.16)}
    .card-pro img{height:220px;object-fit:cover}
    .badge-cat{background:linear-gradient(45deg,var(--red),var(--orange));color:#fff;font-weight:600}
    .meta-row{font-size:.82rem;color:var(--gray-600)}
    .card-title-link{text-decoration:none;color:#1b1f27}
    .card-title-link:hover{color:var(--blue)}
    .section-title{display:flex;align-items:center;gap:.6rem;font-weight:800;color:var(--blue);margin-bottom:1.2rem}
    .section-title i{color:var(--red)}
    .text-muted-custom{color:var(--gray-600)!important}

    .search-box{
      background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:1rem;
      box-shadow:0 8px 18px rgba(17,19,24,.04);
    }
    .search-input{
      border-radius:12px;
      border:1px solid #dfe3ee;
      padding:.8rem 1rem;
    }
    .search-input:focus{
      border-color:#9a96e6; box-shadow:0 0 0 .25rem rgba(18,12,128,.08);
    }

    .list-box{
      background:#fff;border:1px solid var(--gray-200);border-radius:16px;
      overflow:hidden;box-shadow:0 8px 18px rgba(17,19,24,.04);
    }
    .table thead th{
      background:#f7f7ff;
      color:#1f2370;
      font-weight:800;
      border-bottom:1px solid #e5e8f5 !important;
      white-space:nowrap;
    }
    .table tbody tr{transition:.2s}
    .table tbody tr:hover{background:#fbfbff}
    .member-name{
      color:#1b1f27;text-decoration:none;font-weight:700;
    }
    .member-name:hover{color:var(--blue)}
    .badge-medal{
      background:linear-gradient(45deg,var(--red),var(--orange));
      color:#fff;font-weight:700;
      border-radius:999px;
      padding:.35rem .65rem;
      font-size:.72rem;
    }
    .badge-code{
      background:#f2f4ff;color:#2b2f8f;border:1px solid #dfe3ff;
      font-weight:700;border-radius:10px;
    }

    .table-footer{
      border-top:1px solid #eceff7;
      background:#fcfcff;
      padding:.8rem 1rem;
    }

/* Pagination جذاب - WordPress page-numbers */
.pagination-wrap{
  display:flex;
  justify-content:center; /* وسط‌چین افقی */
  width:100%;
}

.pagination-wrap .page-numbers{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:center; /* خود آیتم‌ها هم وسط */
  gap:.3rem;
  margin:0;
  padding:0;
}
.pagination-wrap .page-numbers li{ margin:0; }

.pagination-wrap .page-numbers a,
.pagination-wrap .page-numbers span{
  border:none;
  min-width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:12px !important;
  padding:0 .7rem;
  color:#2b3170;
  background:#f3f4fb;
  font-weight:700;
  transition:.2s;
  text-decoration:none;
}
.pagination-wrap .page-numbers a:hover{
  background:#e7e9ff;
  color:#120c80;
  transform:translateY(-1px);
}

/* active */
.pagination-wrap .page-numbers .current{
  background:linear-gradient(45deg,var(--red),var(--orange));
  color:#fff;
  box-shadow:0 8px 18px rgba(255,19,0,.28);
}

/* disabled-ish for prev/next when absent handled by WP */
/* اگر خواستی حالت کم‌رنگ برای ... */
.pagination-wrap .page-numbers .dots{
  opacity:.6;
  pointer-events:none;
}
/* ==================================
   404 Page (Uses main theme variables)
   Requires these in :root:
   --blue, --red, --orange, --gray-100, --gray-200, --gray-600, --dark
   ================================== */

.gs-404-page{
  --white:#fff;
}

.gs-404-hero{
  border-radius:18px;
  padding:18px 20px;
  background:linear-gradient(135deg, rgba(18,12,128,.08), rgba(255,127,0,.10));
  border:1px solid rgba(18,12,128,.16);
}

.gs-404-box{
  position:relative;
  overflow:hidden;
  border-radius:22px;
  padding:48px 22px;
  background:
    radial-gradient(1200px 220px at 50% -20%, rgba(18,12,128,.10), transparent 60%),
    linear-gradient(180deg, #ffffff, #fcfcfd);
  border:1px solid var(--gray-200);
  box-shadow:
    0 10px 30px rgba(17,19,24,.06),
    inset 0 1px 0 rgba(255,255,255,.9);
}

/* Glow orbs */
.gs-404-glow{
  position:absolute;
  border-radius:999px;
  filter:blur(24px);
  opacity:.55;
  pointer-events:none;
}
.gs-404-glow-1{
  width:220px;height:220px;
  background:rgba(18,12,128,.30);
  top:-60px; right:-60px;
}
.gs-404-glow-2{
  width:180px;height:180px;
  background:rgba(255,127,0,.30);
  bottom:-50px; left:-50px;
}

/* 404 Number */
.gs-404-code-wrap{
  position:relative;
  display:inline-block;
  margin-bottom:12px;
}
.gs-404-code-shadow{
  position:absolute;
  inset:0;
  font-size:clamp(72px, 16vw, 160px);
  font-weight:900;
  letter-spacing:4px;
  transform:translate(0,8px);
  color:rgba(17,19,24,.08);
  user-select:none;
}
.gs-404-code{
  position:relative;
  font-size:clamp(72px, 16vw, 160px);
  font-weight:900;
  letter-spacing:4px;
  line-height:1;
  background:linear-gradient(135deg, var(--blue), var(--orange));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:0 8px 30px rgba(18,12,128,.25);
  user-select:none;
  animation:gsFloat404 3.5s ease-in-out infinite;
}
@keyframes gsFloat404{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}

.gs-404-title{
  font-size:clamp(22px, 2.8vw, 34px);
  font-weight:800;
  color:var(--dark);
}
.gs-404-desc{
  max-width:680px;
  margin-inline:auto;
  font-size:1.03rem;
  line-height:1.95;
  color:var(--gray-600);
}

/* Search */
.gs-404-search{
  max-width:620px;
}
.gs-404-search form{
  position:relative;
}
.gs-404-search input[type="search"],
.gs-404-search input[type="text"]{
  width:100%;
  min-height:54px;
  border-radius:14px;
  border:1px solid var(--gray-200);
  background:var(--white);
  padding:0 16px;
  transition:.25s ease;
  box-shadow:0 4px 14px rgba(17,19,24,.04);
}
.gs-404-search input[type="search"]:focus,
.gs-404-search input[type="text"]:focus{
  outline:none;
  border-color:rgba(18,12,128,.45);
  box-shadow:0 0 0 4px rgba(18,12,128,.12);
}
.gs-404-search button,
.gs-404-search input[type="submit"]{
  border:none;
  border-radius:12px;
  padding:10px 16px;
  background:linear-gradient(135deg, var(--blue), #2a1cc7);
  color:#fff;
  font-weight:700;
  transition:.25s ease;
}
.gs-404-search button:hover,
.gs-404-search input[type="submit"]:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(18,12,128,.28);
}

/* Buttons */
.gs-404-actions .btn{
  min-height:46px;
  border-radius:12px;
  font-weight:700;
  padding:10px 18px;
  transition:.25s ease;
}
.gs-btn-primary{
  color:#fff;
  border:0;
  background:linear-gradient(135deg, var(--blue), #2a1cc7);
  box-shadow:0 10px 20px rgba(18,12,128,.24);
}
.gs-btn-primary:hover{
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 14px 24px rgba(18,12,128,.32);
}
.gs-btn-outline{
  color:var(--dark);
  border:1px solid var(--gray-200);
  background:#fff;
}
.gs-btn-outline:hover{
  color:var(--blue);
  border-color:rgba(18,12,128,.35);
  transform:translateY(-2px);
  box-shadow:0 10px 20px rgba(17,19,24,.08);
}

/* Quick links */
.gs-404-quick-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  justify-content:center;
  align-items:center;
}
.gs-404-quick-label{
  color:var(--gray-600);
  font-size:.92rem;
}
.gs-404-quick-links a{
  text-decoration:none;
  font-size:.92rem;
  color:var(--dark);
  border:1px solid var(--gray-200);
  background:#fff;
  border-radius:999px;
  padding:6px 12px;
  transition:.2s ease;
}
.gs-404-quick-links a:hover{
  color:var(--blue);
  border-color:rgba(18,12,128,.35);
  background:rgba(18,12,128,.05);
}

@media (max-width: 767.98px){
  .gs-404-box{padding:36px 16px}
}
.footer{
background:
radial-gradient(circle at 85% 15%, rgba(255,127,0,.15), transparent 30%),
radial-gradient(circle at 20% 80%, rgba(255,19,0,.12), transparent 35%),
#0f1220;
color:#d9dbe6;margin-top:2rem;border-top:3px solid #1e2450;
}
.footer a{color:#fff;text-decoration:none;}
.footer a:hover{color:var(--orange);}
.footer-title{color:#fff;font-weight:800;margin-bottom:.9rem;font-size:1rem;}
.footer-list{list-style:none;padding:0;margin:0;}
.footer-list li{margin-bottom:.5rem;}
.social-btn{width:36px;height:36px;border-radius:10px;display:inline-grid;place-items:center;background:#1b2140;color:#fff;margin-left:.35rem;transition:.2s;}
.social-btn:hover{background:linear-gradient(45deg,var(--red),var(--orange));color:#fff;transform:translateY(-2px);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:1rem;padding-top:1rem;font-size:.9rem;color:#b8bdd0;}

.modal-content{border:none;border-radius:16px;overflow:hidden;box-shadow:0 20px 40px rgba(18,12,128,.2);}
.modal-header{background:linear-gradient(90deg,var(--blue),#2d25b1);color:#fff;}
.otp-input{direction:ltr;text-align:center;font-weight:700;letter-spacing:2px;}

/* دکمه بازگشت بالا */
.to-top{
position:fixed;left:18px;bottom:18px;width:46px;height:46px;border:none;border-radius:14px;
background:linear-gradient(45deg,var(--red),var(--orange));color:#fff;display:grid;place-items:center;
box-shadow:0 10px 24px rgba(255,19,0,.30);cursor:pointer;
opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s;z-index:1200;
}
.to-top.show{opacity:1;visibility:visible;transform:translateY(0);}
.to-top:hover{transform:translateY(-2px);}
.modal-content{border:none;border-radius:16px;overflow:hidden;box-shadow:0 20px 40px rgba(18,12,128,.2)}
    .modal-header{background:linear-gradient(90deg,var(--blue),#2d25b1);color:#fff}

    @media (max-width: 768px){
      .table thead{display:none}
      .table tbody tr{display:block;border-bottom:1px solid #edf0f7}
      .table tbody td{
        display:flex;justify-content:space-between;gap:1rem;border:none;padding:.65rem 1rem !important;
      }
      .table tbody td::before{
        content:attr(data-label);
        color:#6d7399;font-weight:700;
      }
    }
@media (max-width:1199.98px){.hero-slider .carousel-item img{height:250px;}}
@media (max-width:991.98px){
.brand-logo{height:50px;}
.hero-slider .carousel-item img{height:200px;}
}
    .modal-content{border:none;border-radius:16px;overflow:hidden;box-shadow:0 20px 40px rgba(18,12,128,.2)}
    .modal-header{background:linear-gradient(90deg,var(--blue),#2d25b1);color:#fff}

    @media (max-width: 992px){ .sticky-col{position:static} }