:root {

    --main-color: #122b59;

    --sec-color: #30c1b2;

    --main-font: 'IRANSansXV';

    --bs-body-font-family: "IRANSansXV", Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";

    --bs-font-sans-serif: "IRANSansXV", Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";

}



body {

    background: #f5f5f5;

    font-family: 'IRANSansXV', sans-serif;

}



h1, h2, h3, h4, h5, h6 {

    font-family: 'YekanBakh', sans-serif;

    margin: 0;

}



.topbar, .main-header, .topbar p, .topbar a, .nav-link, .header-actions a, .top-links a {

  font-family: 'YekanBakh';

  font-size: 14px;

}



/* =======================

   TOP BAR

======================= */

.regtangle-logo {

    display: none;

}

.topbar {

    height: 50px;

    background: linear-gradient(135deg,#33c7b7,#2db8ab);

    position: relative;

    overflow: hidden;

}



.topbar::before {

    content: "";

    position: absolute;

    inset: 0;

    background-image:url('images/top-nav-bg.png');

    background-position: center center;

    background-size: cover;

}



.topbar .container,

.topbar .row {

    height: 100%;

}



.top-links {

    margin: 0;

    padding: 0;

    display: flex;

    justify-content: end;

    gap: 35px;

    list-style: none;

}



.top-links a {

    color: #fff;

    text-decoration: none;

    font-weight: normal;

}



.top-social {

    display: flex;

    gap: 22px;

}



.top-social a {

    color: rgba(255,255,255,.7);

    font-size: 15px;

}



/* =======================

   HEADER

======================= */



.main-header {

    background: linear-gradient(to right,#1eb3b7 30%,#122b59 30%);

    height: 90px;

    display: flex;

    align-items: center;

    box-shadow: 0 1px 0 rgba(0,0,0,.04);

}



.navbar {

    padding: 0;

}



.navbar-brand img {

    height: 112px;

    position: absolute;

    top: -28px;

    background: #ffff;

    border-radius: 10px;

    padding: 10px;

    box-shadow: 0 0 35px rgba(0, 0, 0, 0.2);

    z-index: 2;

}

.navbar-expand-xl .navbar-collapse {

    justify-content: space-between;

}

.navbar-nav {

    gap: 25px;

    padding-right: 150px;

}



.nav-link {

    color: #fff;

    font-weight: 700;

    display: flex;

    align-items: center;

    font-size: 16px;

}



.navbar-nav .nav-link:hover, .navbar-nav .nav-link:focus {

    color: var(--sec-color);

}



.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {

    color: var(--sec-color);

}



.nav-link i {

    margin-left: 6px;

}



#mainMenu .nav-item > ul {

  position: absolute;

  background: #fff;

  z-index: 2;

  padding: 20px;

  border-radius: 7px;

  margin-right: 12px;

  width: 200px;

  min-height: 113px;

  line-height: 2;

  box-shadow: 0 0 10px rgba(0, 0, 0, 0.071);

  list-style: none;

  visibility: hidden;

}

#mainMenu .nav-item:hover ul {

    visibility: visible;

}



#mainMenu .nav-item > ul::before {

  content: "";

  position: absolute;

  top: -8px; /* فاصله از منو */

  right: 20px; /* موقعیت افقی رو تنظیم کن */

  width: 0;

  height: 0;



  border-left: 8px solid transparent;

  border-right: 8px solid transparent;

  border-bottom: 8px solid #fff; /* رنگ arrow */

}



#mainMenu .nav-item ul li a {

    color:var(--main-color);

    font-weight: 600;

    line-height: 2.2;

}



#mainMenu .nav-item ul li a:hover {

    color:var(--sec-color);

}



#otp-trigger {

  min-width: 150px;

}

/* =======================

   ACTIONS

======================= */



.header-actions {

    display: flex;

    align-items: center;

    gap: 18px;

}



.cart-btn,

.search-btn,

.navbar-toggler {

    border: 0;

    background: transparent;

    font-size: 24px !important;

    color: #fff;

    display: flex;

    align-items: center;

    justify-content: center;

}



.theme-btn {

    width: 52px;

    height: 30px;

    border-radius: 50px;

    border: 1px solid #ddd;

    background: #fff;

    display: flex;

    justify-content: space-around;

    align-items: center;

}



.theme-btn i {

    font-size: 12px;

}



.login-btn i {

    margin-left: 8px;

}

.login-btn {

    background: var(--main-color);

    color: #fff;

    text-decoration: none;

    border-radius: 16px;

    padding: 14px 20px;

    font-weight: 700;

    transition: .3s;

    display: flex;

    align-items: center;

}



.login-btn:hover {

    box-shadow: 0 0 20px rgba(0, 0, 0, 0.233);

    background: var(--main-color);

    color: #fff;

}



.social-links a svg {

  width: 25px;

  height: 25px;

}



.social-links {

  display: flex;

  width: 100%;

}

.footer-socials {

  display: flex;

  justify-content: center;

  gap: 20px;

}

.social-links a {

  display: flex;

  align-items: center;

  justify-content: center;

  width: 32px;

  height: 32px;

  margin-left: 13px;

      transition: all 400ms;

  opacity: 0.6;

}

.social-links a:hover {

    opacity: 1;

    transition: all 400ms;

}

.social-link.social-link-bale svg {

  width: 24px;

}

.social-link.social-link-aparat svg {

  width: 28px;

  height: 29px;

}

.social-link.social-link-linkedin svg {

  width: 26px;

  height: 24px;

  top: -2px;

  position: relative;

}

.social-link.social-link-youtube svg {

  width: 29px;

  height: 29px;

  top: 1px;

  position: relative;

}

.partners-box img {

    background: #fff;

    padding: 10px;

    border-radius: 14px;

}

.trust-badges img {

  width: 100px;

  border-radius: 10px;

  max-height: 110px;

  object-fit: cover;

}

.footer-box::before {

  content: '';

  background: var(--sec-color);

  position: absolute;

  right: 0px;

  width: 10px;

  height: 117px;

  border-radius: 10px 0 0 10px;

}

.footer-title {

  color: #17a99a;

}

/* =======================

   HERO

======================= */



.hero-section {

    padding: 50px 0;

    background: linear-gradient(to bottom,#dfdfdf 50%, #fff 50%);

}



.hero-box {

    border-radius: 15px;

    overflow: hidden;

    background: #fff;

    box-shadow: 0 15px 40px rgba(0,0,0,.08);

}



.heroSwiper {

    height: 380px;

}



.heroSwiper img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}



.swiper-pagination-bullet {

    width: 10px;

    height: 10px;

}



.swiper-pagination-bullet-active {

    transform: scale(1.3);

}



.services-section {

  padding: 60px 0;

}



.departments-section{

    background:#f8f8f8;

}



.departments-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));

    border-top:1px solid #ececec;

    border-bottom:1px solid #ececec;

    background:#fff;

}



.department-item{

    position:relative;

    text-decoration:none;

    text-align:center;

    padding:28px 15px;

    min-height:170px;



    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;



    transition:.35s;

    overflow:hidden;



    border-left:1px solid #ececec;

}



.department-item:last-child{

    border-left:none;

}



.department-item::before{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(

        180deg,

        rgba(19,178,162,.04),

        rgba(19,178,162,.10)

    );



    opacity:0;

    transition:.35s;

}



.department-icon{

    width:72px;

    height:72px;

    margin-bottom:18px;

    position:relative;

    z-index:2;

}



.department-icon img{

    width:100%;

    height:100%;

    object-fit:contain;

    transition:.35s;

}



.department-item h3{

    margin:0;

    font-size:15px;

    line-height:1.9;

    color:#5b5b5b;

    font-weight:700;

    position:relative;

    z-index:2;

}



/* Hover */



.department-item:hover{

    transform:translateY(-6px);

    box-shadow:0 15px 35px rgba(0,0,0,.08);

    z-index:3;

}



.department-item:hover::before{

    opacity:1;

}



.department-item:hover .department-icon img{

    transform:scale(1.1);

}



.department-item:hover h3{

    color:#13b2a2;

}



.timeline-section {

 background: #fff;

}

.company-timeline-wrapper .row {

    flex-direction: row-reverse;

}

/* ── Section title ── */

.section-title {

    font-size: 1.8rem;

    font-weight: 700;

}

.section-title span {

    color: var(--main-color);

}

.section-title-bar {

    display: inline-block;

    width: 4px;

    height: 2rem;

    background: var(--sec-color);

    border-radius: 2px;

    vertical-align: middle;

    margin-left: 10px;

}



/* ── Timeline nav ── */

.timeline-nav-container {

    width: 100%;

}

.timeline-nav {

    position: relative;

    padding-bottom: 16px;

    justify-content: space-between;

    max-width: 900px;

    margin: auto;

}

.timeline-progress {

    position: absolute;

    bottom: 0;

    left: 0;

    height: 3px;

    background: #e0e0e7;

    width: 100%;

    border-radius: 999px;

    overflow: hidden;

    top: 29px;

    margin: auto;

}

.timeline-progress-fill {

    height: 100%;

    background: var(--main-color);

    transition: width .5s ease-in-out;

}



.timeline-year {

    border: none;

    background: transparent;

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 6px;

    font-size: 0.95rem;

    font-weight: 600;

    color: #888;

    cursor: pointer;

    padding: 0;

    position: relative;

    transition: color .3s;

    z-index: 9;

}

.timeline-year svg circle,

.timeline-year svg path { transition: fill .3s; }



.timeline-year.active {

    color: #fff;

}

.year-label {

    padding: 2px 10px;

    min-width: 71px;

    display:flex;

    min-height: 40px;

    align-items: center;

    justify-content: center;

}

.timeline-year.active .year-label {

    background: var(--sec-color);

    background-size: cover;

    color: #fff;

    border-radius: 8px;

    min-width: 71px;

    min-height: 40px;

    padding: 2px 10px;

}

.timeline-year.completed .inner-dot { fill: var(--main-color) !important; }

.timeline-year.active .inner-dot   { fill: var(--main-color) !important; }



/* ── Content card ── */

.timeline-item {

    border-radius: 16px;

    padding: 0;

    transition: all .5s;

}

.timeline-item.d-none { display: none !important; }



.timeline-title {

    font-size: 1.6rem;

    font-weight: 800;

    color: #222;

    margin-bottom: 4px;

}

.timeline-year-watermark {

    position: absolute;

    right: 0;

    top: 1rem;

    font-size: 6rem;

    font-weight: 900;

    color: rgba(0,0,0,.04);

    pointer-events: none;

    line-height: 1;

    user-select: none;

}

.timeline-description {

    color: #444;

    line-height: 1.9;

    font-size: .95rem;

}

.text-dark-support {

    color: #888;

    font-size: .88rem;

}



/* ── Navigation arrows ── */

.timeline-navigation { display: flex; gap: 8px; margin-top: 1.2rem; }

.timeline-navigation .nav-btn {

    width: 48px; height: 48px;

    border: 1.5px solid #ddd;

    border-radius: 50%;

    display: flex; align-items: center; justify-content: center;

    cursor: pointer;

    background: #fff;

    transition: border-color .2s, background .2s;

}

.timeline-navigation .nav-btn:hover:not(.disabled) {

    border-color: var(--main-color);

    background: #fff8f3;

}

.timeline-navigation .nav-btn.disabled {

    opacity: .35;

    cursor: default;

    pointer-events: none;

}



/* ── Images mosaic ── */

.timeline-image-mosaic {

    display: grid;

    grid-template-columns: 1fr 1fr;

    grid-template-rows: auto auto;

    gap: 10px;

}

.timeline-image-mosaic .img-top {

    grid-column: 1 / 3;

    border-radius: 14px;

    overflow: hidden;

}

.timeline-image-mosaic .img-bot-left,

.timeline-image-mosaic .img-bot-right {

    border-radius: 14px;

    overflow: hidden;

}

.timeline-image-mosaic img {

    width: 100%; height: 100%;

    object-fit: cover;

    display: block;

}

.timeline-image-mosaic .img-top { height: 200px; }

.timeline-image-mosaic .img-bot-left,

.timeline-image-mosaic .img-bot-right { height: 160px; }







.section-title .title-line {

    position: relative;

    display: inline-block;

    font-weight: 800;

    font-size: 1.7rem;

    color: #122b59;

    letter-spacing: -0.5px;

    padding: 0 20px;

}



.section-title .title-line::before,

.section-title .title-line::after {

    content: "";

    position: absolute;

    top: 50%;

    width: 60px;

    height: 2px;

    background: linear-gradient(to right, transparent, var(--sec-color));

    transform: translateY(-50%);

    border-radius: 10px;

}



.section-title .title-line::before {

    right: 100%;

    margin-right: 15px;

    background: linear-gradient(to right, transparent, var(--sec-color));

}



.section-title .title-line::after {

    left: 100%;

    margin-left: 15px;

    background: linear-gradient(to left, transparent, var(--sec-color));

}





.post-content , .post-content p {

    line-height: 2;

    font-size: 14px;

}

.post-content h2,

.post-content h3,

.post-content h4,

.post-content h5 {

    margin-bottom: 10px;

    font-family: var(--main-font);

}

.post-content img{

    max-width:100%;

    height:auto;

    border-radius:12px;

    margin:25px auto;

    display:block;

}



.post-content h2,

.post-content h3,

.post-content h4{

    margin-top:2rem;

    margin-bottom:1rem;

    font-weight:700;

}



.post-content h2 {

    font-size: 22px;

}

.post-content h3 {

    font-size: 20px;

}

.post-content h4 {

    font-size: 18px;

}



.post-content p{

    margin-bottom:1.5rem;

}



.post-content ul,

.post-content ol{

    margin-bottom:1.5rem;

    padding-inline-start:1.5rem;

}

.post-title {

    font-size: 24px;

}

.post-article {

    padding-top: 100px;

    margin-top: -100px;

}



.breadcrumb-navi {

    z-index: 1;

}

.post-content, .post-content p {

  line-height: 2;

  font-size: 14px;

}

.post-content blockquote{

    border-inline-start:4px solid var(--bs-primary);

    background:#f8f9fa;

    padding:20px;

    margin:25px 0;

    border-radius:8px;

}



.post-content table{

    width:100%;

    margin-bottom:1.5rem;

}



.post-content table th,

.post-content table td{

    border:1px solid #dee2e6;

    padding:10px;

}



.post-content iframe{

    width:100%;

    min-height:450px;

}





.share-bar{

    position: relative;

}



.share-btn{

    width: 38px;

    height: 38px;

    display: inline-flex;

    align-items: center;

    justify-content: center;



    border-radius: 10px;

    color: #6c757d;

    background: #f8f9fa;

    border: 1px solid #e9ecef;



    transition: all .2s ease;

    text-decoration: none;

}



.share-btn:hover{

    transform: translateY(-2px);

    background: #fff;

    color: #0d6efd;

    border-color: #0d6efd33;

    box-shadow: 0 6px 18px rgba(0,0,0,.08);

}



.share-btn i{

    font-size: 16px;

}



.w-post-title {

    font-family: var(--main-font);

    font-size: 14px;

}

.w-post-desc {

    font-size: 13px;

}



.post-desc {

  font-size: 13px;

  line-height: 2;

}





.w-post-widget {

    background: #fff;

}



/* Header */

.w-post-header {

    background: var(--main-color);

    color: #fff;

    position: relative;

}



.w-post-dot {

    width: 10px;

    height: 10px;

    background: #22c55e;

    border-radius: 50%;

    box-shadow: 0 0 12px #22c55e;

}



/* Body */

.w-post-body {

    padding: 8px;

}



/* Item */

.w-post-item {

    text-decoration: none;

    padding: 12px;

    border-radius: 14px;

    transition: all .25s ease;

    display: flex;

    align-items: center;

    position: relative;

    overflow: hidden;

}



/* hover glow */

.w-post-item::before {

    content: "";

    position: absolute;

    inset: 0;

    background: radial-gradient(circle at left, rgba(59,130,246,0.12), transparent 60%);

    opacity: 0;

    transition: opacity .3s ease;

}



.w-post-item:hover::before {

    opacity: 1;

}



.w-post-item:hover {

    transform: translateY(-2px);

    background: #f8fafc;

}



/* thumbnail */

.w-post-thumb {

    width: 68px;

    height: 68px;

    flex-shrink: 0;

    border-radius: 14px;

    overflow: hidden;

    position: relative;

}



.w-post-thumb img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform .4s ease;

}



.w-post-item:hover .w-post-thumb img {

    transform: scale(1.12);

}



/* title */

.w-post-title {

    font-size: 14px;

    font-weight: 700;

    color: #111827;

    line-height: 1.4;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



/* description */

.w-post-desc {

    font-size: 12px;

    color: #6b7280;

    margin-top: 4px;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



/* meta */

.w-post-meta {

    font-size: 11px;

    color: #9ca3af;

    margin-top: 6px;

}



/* smooth feel */

.w-post-item * {

    transition: all .2s ease;

}

.time-line-mobile-btn,

.time-line-mobile-btn i {

  display: none;

}



.media-video-hero{

    overflow:hidden;

    background:#000;

}



.media-video-hero video{

    display:block;

    width:100%;

}



.carousel-control-next,

.carousel-control-prev{

    width:60px;

}



.carousel-control-next-icon,

.carousel-control-prev-icon{

    width:40px;

    height:40px;

    border-radius:50%;

    background-color:rgba(0,0,0,.4);

}



.block-text-img {

  max-width: 100%;

  border-radius: 10px;

}



.block-text-section h2,

.block-icon-links-section h2 {

  font-size: 21px;

  font-family: 'IRANSansXV';

  font-weight: 800 !important;

}

.block-section.block-icon-links-section h2 {

  margin-bottom: 16px;

}

.line-clamp-1 {

    display: -webkit-box;

    -webkit-line-clamp: 1;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



.line-clamp-2 {

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}







.slide-post-card {

    border-radius: 14px;

    transition: 0.3s ease;

}



.slide-post-card:hover {

    transform: translateY(-4px);

}



/* IMAGE */

.slide-post-card-img {

    position: relative;

    height: 180px;

    overflow: hidden;

}



.slide-post-card-img img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: 0.4s ease;

}



.slide-post-card:hover .slide-post-card-img img {

    transform: scale(1.05);

}



.slide-post-card-img .overlay {

    position: absolute;

    inset: 0;

    background: linear-gradient(to top, rgba(0,0,0,0.5), transparent);

}



.icon-link-container {

    padding: 48px 10px;

    border-radius: 10px;

}

/* BODY */

.slide-post-card-body {

    padding: 12px;

}



.slide-post-title {

    font-size: 14px;

    font-weight: 700;

    color: #222;

    margin-bottom: 6px;



    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



.slide-post-desc {

    font-size: 12px;

    color: #777;



    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

}



.slide-post-meta {

    font-size: 11px;

    color: #999;

    margin-top: 8px;

    display: flex;

    gap: 6px;

}



.custom-footer {

    background: linear-gradient(to bottom,transparent 50%, var(--main-color) 50%);

    padding: 120px 0 0;

    position: relative;

}



.footer-box {

    background: #ffffff;

    border-radius: 30px;

    padding: 70px 60px;

    position: relative;

    transform: translateY(-40px);

}



.footer-project-card {

    background: #fff;

    border: 1px solid #ddd;

    border-radius: 22px;

    overflow: hidden;

    max-width: 320px;

}



.project-image img {

    width: 100%;

    height: 270px;

    object-fit: cover;

    display: block;

}



.project-content {

    padding: 20px;

    display: flex;

    align-items: center;

    justify-content: space-between;

}



.project-content h4 {

    margin: 0;

    font-size: 24px;

    font-weight: 700;

}



.project-arrow {

    width: 42px;

    height: 42px;

    border: none;

    background: transparent;

    font-size: 24px;

}



.footer-menu {

    list-style: none;

    margin: 0;

    padding: 0;

}



.footer-menu li {

    margin-bottom: 24px;

}



.footer-menu a {

    text-decoration: none;

    color: #000;

    font-size: 14px;

    font-weight: 600;

    transition: .3s;

}



.footer-menu a:hover {

    color: #0d6efd;

}



.footer-about {

}



.footer-logo {

    max-width: 180px;

    margin-bottom: 25px;

}



.footer-about h3 {

    font-size: 18px;

    font-weight: 700;

    margin-bottom: 12px;

}



.footer-about p {

    color: #666;

    margin-bottom: 25px;

}



.footer-btn {

    border-radius: 14px;

    padding: 12px 28px;

    font-weight: 600;

    margin-bottom: 35px;

    background: var(--sec-color);

  border-color: var(--sec-color);

}



.social-title {

    font-size: 18px;

    font-weight: 700;

    margin-bottom: 20px;

}



.footer-socials {

    display: flex;

    justify-content: center;

    gap: 20px;

}



.footer-socials a {

    color: #000;

    font-size: 30px;

    transition: .3s;

}



.footer-socials a:hover {

    transform: translateY(-4px);

}



.page-card{

    background:#fff;

    border-radius:20px;

    overflow:hidden;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    transition:.35s;

    border:1px solid #eef1f5;

    position:relative;

}



.page-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 50px rgba(0,0,0,.15);

}



.page-card-image{

    display:block;

    position:relative;

    overflow:hidden;

}



.page-card-image img{

    width:100%;

    height:260px;

    object-fit:cover;

    transition:.6s;

}



.page-card:hover .page-card-image img{

    transform:scale(1.08);

}



.page-card-badge{

    position:absolute;

    top:15px;

    right:15px;

    background:#0d6efd;

    color:#fff;

    padding:8px 14px;

    border-radius:50px;

    font-size:.8rem;

    font-weight:600;

}



.page-card-body{

    padding:24px;

}



.page-card-title{

    font-size:1.1rem;

    font-weight:700;

    margin-bottom:12px;

    line-height:1.6;

}

.block-section.section-posts .col-md-5 a:hover .fw-bold {

  color: #25a093 !important;

  

    transition: all 400ms;

}

.block-section.section-posts .col-md-5 a:hover img {

    filter: brightness(1.1);

    transition: all 400ms;

}

.page-card-desc{

    color:#6c757d;

    line-height:2;

    margin-bottom:20px;

    min-height:90px;

}



.page-card-btn{

    width:100%;

    border-radius:12px;

    padding:12px;

    font-weight:600;

}



.page-card-btn i{

    transition:.3s;

}



.page-card-btn:hover i{

    transform:translateX(-5px);

}



.media-card {

    border-radius: 16px;

    overflow: hidden;

    transition: all 0.25s ease;

}



.media-card:hover {

    transform: translateY(-5px);

}



.media-preview {

    height: 200px;

    overflow: hidden;

    background: #000;

}



.media-thumb {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 0.3s ease;

}



.media-card:hover .media-thumb {

    transform: scale(1.05);

}



/* overlay */

.media-overlay {

    position: absolute;

    inset: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 40px;

    color: white;

    background: rgba(0,0,0,0.25);

    opacity: 0;

    transition: 0.2s ease;

}



.media-card:hover .media-overlay {

    opacity: 1;

}



.slider-block .swiper-button-next {

  margin-right: -50px;

}

.slider-block .swiper-button-prev {

  margin-left: -50px;

}

.n-content {

  position: absolute;

  bottom: 45px;

  color: #fff;

  padding: 10px;

  right: 0;

  left: 0;

}

.a-news-link::before {

  content: '';

  background: linear-gradient(to bottom,transparent,transparent,#000);

  position: absolute;

  left: 0;

  right: 0;

  bottom: 0;

  top: 0;

}

.a-news-link {

  position: relative;

  display: block;

  width: 100%;

  height: 100%;

}

/* badge */

.media-badge {

    position: absolute;

    top: 10px;

    left: 10px;

    background: rgba(0,0,0,0.7);

    color: #fff;

    font-size: 11px;

    padding: 4px 8px;

    border-radius: 999px;

    letter-spacing: 1px;

}

.swiper-pagination-bullet {

  transform: scale(1.1);

  background: var(--sec-color);

  width: 20px;

  border-radius: 20px;

}

.n-content p.text-muted {

  color: #c7c7c7 !important;

  margin-top: 10px;

}

.block-section .section-title {

    font-size: 25px;

    font-weight: 800 !important;

}





.event-card {

    background: #fff;

    border-radius: 14px;

    overflow: hidden;

    box-shadow: 0 6px 20px rgba(0,0,0,0.06);

    transition: all .25s ease;

    display: flex;

    flex-direction: column;

}



.event-card:hover {

    transform: translateY(-5px);

    box-shadow: 0 12px 30px rgba(0,0,0,0.12);

}



/* تصویر عمودی */

.event-image {

    position: relative;

    display: block;

    aspect-ratio: 3 / 4;

    overflow: hidden;

}



.event-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform .3s ease;

}



.event-card:hover .event-image img {

    transform: scale(1.05);

}



/* وضعیت */

.event-badge {

    position: absolute;

    top: 10px;

    right: 10px;

    padding: 4px 10px;

    font-size: 12px;

    border-radius: 20px;

    color: #fff;

    background: #333;

}



.status-registration { background: #0d6efd; }

.status-started { background: #198754; }

.status-finished { background: #6c757d; }



/* قیمت */

.event-price {

    position: absolute;

    bottom: 10px;

    left: 10px;

    background: rgba(0,0,0,.75);

    color: #fff;

    padding: 4px 10px;

    border-radius: 10px;

    font-size: 13px;

}



.event-price.free {

    background: #198754;

}



/* بدنه */

.event-body {

    padding: 12px 14px;

    flex: 1;

}



.event-title {

    font-size: 15px;

    margin-bottom: 8px;

    line-height: 1.6;

}



.event-title a {

    text-decoration: none;

    color: #111;

}



.event-meta,

.event-date {

    font-size: 12px;

    color: #6c757d;

}





.navbar.navbar-expand-xl::before {

  content: '';

  background: linear-gradient(to left,#122b59 80%,#1eb3b7 75%);

  position: absolute;

  top: -21px;

  left: 0;

  right: 0;

  height: 90px;

}

.navbar.navbar-expand-xl a, .navbar.navbar-expand-xl #mainMenu, .navbar.navbar-expand-xl button {

  z-index: 3;

}



.search-box input{

    height:60px;

    font-size:15px;

    border-radius:16px;

}

#searchModal .modal-title {

  visibility: hidden;

}

.search-result-item{

    padding:15px;

    border-radius:12px;

    border:1px solid #eee;

    margin-bottom:5px;

    margin-top: 5px;

    display: block;

    transition:.2s;

}



.search-result-item:hover{

    background:#f8f9fa;

    transform:translateX(-5px);

}



#searchModal .modal-content{

    border:none;

}



.search-box, 

#search-results {

    max-width:900px;

    margin:auto;

}



.search-box input{

    height:60px;

    border-radius:20px;

    padding-right:60px;

    font-size:15px;

    border:2px solid #eee;

    box-shadow:none;

}



.search-box input:focus{

    border-color:#0d6efd;

    box-shadow:0 0 20px rgba(13,110,253,.15);

}



.search-icon{

    position:absolute;

    right:22px;

    top:50%;

    transform:translateY(-50%);

    font-size:20px;

    color:#999;

}



#search-results.loading{

    opacity:.4;

    transition:.2s;

}



.search-empty{

    text-align:center;

    padding:60px 20px;

    color:#888;

}



.logout-link {

  justify-content: left;

}

.logout-link button {

  color: red;

}

@media (max-width: 1399px) {



    .nav-link {

        font-size: 14px;

    }

    .navbar-nav {

        gap: 12px;

    }

    .navbar.navbar-expand-xl::before {

        background: linear-gradient(to left,#122b59 77%,#1eb3b7 75%);

    }

    .block-section.section-slider.slider-block .swiper-button-next {

        margin-right: -35px;

    }

    .block-section.section-slider.slider-block .swiper-button-prev {

        margin-left: -35px;

    }

}



@media (max-width: 1199px) {

    .main-header{

        height:auto;

        padding: 15px 0 39px 0;

    }



    .header-actions{

        margin-top:20px;

        flex-wrap:wrap;

    }



    .navbar-nav{

        margin:20px 0;

        gap:10px;

    }



    .top-links{

        justify-content:center;

        gap:15px;

        flex-wrap:wrap;

    }



    .regtangle-logo {

        display: block;

    }

   

    .square-logo {

        display: none;

    }

    .navbar-brand img {

        height: 87px;

        top: -23px;

    }

    #mainMenu {

        display: block;

    }

    #mainMenu ul.navbar-nav {

        display: none;

    }

    .header-actions {

        position: absolute;

        top: -4px;

        left: 0px;

        margin-top: 0 !important;

    }

    .main-header {

        background: linear-gradient(to right,#1eb3b7 34%,#122b59 30%);

    }

    .navbar.navbar-expand-xl::before {

        content: '';

        background: linear-gradient(to left,#122b59 72%,#1eb3b7 60%);

        height: 70px;

    }

    .navbar {

        justify-content: space-between;

        display: flex;

    }

    .search-btn {

       margin-left: 50px;

    }

    .login-btn {

        padding: 10px 20px;

    }

    .navbar-toggler {

       border: 0;

    }

    .navbar-toggler i {

        color:#fff;

    }

    .block-section.section-slider.slider-block .swiper-button-next, .block-section.section-slider.slider-block .swiper-button-prev {

        display: none !important;

    }



    #mainNavi {

        position: fixed;

        right: 0;

        max-width: 230px;

        height: 100vh !important;

        z-index: 99;

        display: block;

        background: var(--main-color);

        top: 0;

        transform: translateX(100%);

        transition: all 400ms;

    }

    #mainNavi.show {

        transform: translateX(0);

        transition: all 400ms;

        height: 100vh !important;

    }

    .navbar-nav {

        z-index: 999;

        color: #fff;

        width: 100%;

        transform: unset !important;

        padding: 23px;

        min-width: 230px;

        width: 100%;

        max-width: 100%;

    }

    #mainNavi.show .navbar-nav {

        visibility: visible;

        display: flex;

        opacity: 1;

    }

    .navbar-toggler[aria-expanded="true"]::before {

        content: '';

        background: rgba(3, 12, 15, 0.89);

        position: fixed;

        top: 0;

        left: 0;

        right: 0;

        bottom: 0;

        z-index: 95;

    }

    .navbar-toggler:focus {

        box-shadow: none !important;

    }

    .ribbon-box {

        z-index: 2;

    }



}



@media (max-width: 991px) {

    .event-row {

        flex-direction: column-reverse;

    }

    .square-logo {

       display: block;

    }

    .regtangle-logo {

        display: none;

    }

    .navbar.navbar-expand-xl::before {

        background: linear-gradient(to left,#122b59 62%,#1eb3b7 60%);

    }

    .footer-box {

        padding: 40px 25px;

    }



    .footer-project-card {

        margin: 0 auto;

    }



    .footer-menu {

        text-align: center;

    }



    .footer-about h3 {

        font-size: 26px;

    }

}





@media (max-width: 767px) {

    .navbar.navbar-expand-xl::before {

        background: linear-gradient(to left,#122b59 49%,#1eb3b7 40%);

    }

    .hero-static.col-md-6.d-flex.align-items-center.bg-body-extra-light {

        align-items: baseline !important;

        padding-top: 35px;

    }

}





@media (max-width: 575px) {

    .navbar.navbar-expand-xl::before {

        background: linear-gradient(to left,#122b59 50%,#1eb3b7 50%);

    }

    .login-btn span {

        display: none;

    }

    .login-btn {

        padding: 0;

        min-width: 35px;

        min-height: 35px;

        width: 35px;

        height: 35px;

        display: flex;

        justify-content: center;

        align-items: center;

        border-radius: 100%;

        margin-top: 1px;

    }

    .login-btn i {

        margin: 0;

    }

    .search-btn {

        margin-left: 3px;



    }



    .header-actions {

        left: 0px;

        gap: 0;

        top: -2px;

        justify-content: space-between;

        width: 150px;

        display: -webkit-flex !important;

        flex-wrap: nowrap !important;

        position: relative;

    }

    .main-header {

        height: auto;

        padding: 15px 0 13px 0;

    }

    .navbar-toggler {

        border: 0;

        font-size: 25px;

        line-height: 1;

        padding: 2px;

        margin-right:0px;

    }

    .block-section.section-slider.slider-block {

        padding-top: 30px !important;

        padding-bottom: 30px !important;

    }

    .block-section.section-slider.slider-block img {

        height: auto !important;

        aspect-ratio: 16/9 !important;

    }

    .block-section.section-timeline {

       padding-top: 0 !important;

    }

    .timeline-year {

        font-size: 0.75rem;

    }

    #mainMenu {

        max-width: 75%;

        display: flex;

        justify-content: left;

    }



    .icon-link-container .row {

        width: 100%;

        display: flex;

        flex-wrap: nowrap;

        margin:0 !important;

        overflow: auto;

        justify-content: right !important;

    }

    .icon-link-container {

        padding: 0;

    }

    .block-icon-links-section .container {

        padding: 0;

    }

    .icon-link-container > .mb-5 {

        padding: 0 10px;

    }

    .icon-link-container h2 {

        font-size: 19px;

    }

    .icon-link-container .col-6 {

        width: 25%;

        min-width: 146px;

    }

    .icon-link-container .card, .icon-link-container a {

        padding: 0 !important;

    }

    .icon-link-container .card .mb-3 {

        margin-bottom: 2px !important;

    }

    .icon-link-container .card img {

        padding:10px;

    }

    .icon-link-container .card .fw-semibold.small {

        font-size: 13px;

        padding: 0 10px;

    }



    .block-section.section-posts .featured-slider img {

        aspect-ratio: 16/9 !important;

        height: auto !important;

    }



    .block-section.section-posts .featured-slider {

        margin-bottom: 25px;

    }

    .a-news-link::before {

        content: '';

        background: linear-gradient(to bottom,transparent,#0000009e,#000);

    }

    .n-content {

        position: absolute;

        bottom: 18px;

    }

    .block-section.section-posts {

       padding-bottom: 0 !important;

    }

    .section-title {

       font-size: 20px !important;

       margin-bottom: 10px;

    }

    :root {

        --bs-body-font-size: .9rem;

    }

    .py-6.block-section.section-events {

        padding-top: 0 !important;

    }

    #company-timeline {

        flex-direction: column-reverse !important;

    }

    .py-5.block-section.section-slider.slider-block {

        padding-bottom: 0 !important;

    }

    .block-section.section-timeline:not(.chabok-active) {

        padding-bottom: 0 !important;

    }

    .time-line-content {

        display: -webkit-box;

        overflow: hidden;

        text-overflow: ellipsis;

        -webkit-line-clamp: 3;

        -webkit-box-orient: vertical;

    }

    .time-line-mobile-btn {

       display: block;

       margin-top: 10px;

       margin-bottom: 10px;

    }

    .timeline-progress,

    .timeline-year svg,

    .timeline-navigation  {

        display: none;

    }

    .timeline-nav-container {

        width: 100%;

        margin-top: 30px;

    }

    .year-label {

        border: 1px solid var(--main-color);

        border-radius: 10px;

    }



    .block-section.section-timeline.chabok-active {

        position: fixed !important;

        top: 0;

        bottom: 0;

        left: 0;

        right: 0;

        z-index: 99;

        background: #fff;

        overflow: auto;

    }



    .block-section.section-timeline.chabok-active .time-line-content {

        display: block;

        overflow: unset;

    }

    .block-section.section-timeline.chabok-active .timeline-nav {

        position: fixed !important;

        bottom: 0;

        left: 0;

        right: 0;

        padding: 10px;

        background: #fff;

        box-shadow: 0 0 14px rgba(0, 0, 0, 0.259);

        margin: 0 !important;

        z-index: 999;

    }



    .block-section.section-timeline.chabok-active .time-line-mobile-btn span {

        display: none;

    }

    .block-section.section-timeline.chabok-active .time-line-mobile-btn i {

        display: block;

    }

    .block-section.section-timeline.chabok-active .time-line-mobile-btn {

        position: fixed;

        top: 0;

        left: 0;

        border-radius: 0;

        margin: 0;

        width: 50px;

        height: 50px;

        display: flex;

        justify-content: center;

        align-items: center;

        font-size: 23px;

        background-color: rgba(18, 43, 89, 0.412);

        border: 0;

    }

    .footer-about h3 {

        font-size: 20px;

    }

    .footer-box .col-lg-4 {

        margin-bottom: 30px;

    }

    .footer-menu, .partners-box, .trust-badges {

        display: none !important;

    }

    .footer-title::before {

        content: '\f149';

        font-family: "Font Awesome 7 Pro";

        float: left;

    }

    .footer-box .mb-4 {

        margin-bottom: 0 !important;

    }

    .ft-widget.chabok-active .footer-menu-toggle.chabok-active {

       display: block !important;

    }

    .ft-widget.chabok-active .footer-title::before {

        content: '\f148';

    }

    .footer-box {

        padding: 40px 25px;

        border-top: 3px solid var(--main-color);

    }

    .custom-footer .container {

        padding: 0;

    }

    .breadcrumb-navi .py-5 {

        padding: 30px 0 12px !important;

    }

    .breadcrumb li {

        min-width: max-content;

    }

    .breadcrumb {

        display: flex;

        width: 100%;

        overflow: auto;

        flex-wrap: nowrap;

    }

    .post-article {

        margin-top: -30px;

        padding-top: 10px;

    }

    .mb-padding-0 {

        padding-right: 0;

        padding-left: 0;

    }

    .mb-padding-0 .row {

        margin-right: 0px !important;

        margin-left: 0 !important;

    }

    .mb-padding-0 .row:not(.g-sm):not(.g-0) > .col, 

    .mb-padding-0 .row:not(.g-sm):not(.g-0) > [class*="col-"] {

        padding-left: 0;

        padding-right: 0;

    }

    .custom-footer {

        padding-top: 30px;

    }

    .footer-box {

        border-radius: 6px;

    }

    .media-page {

        padding-top: 0 !important;

    }

    .w-post-widget {

        border-radius: 0;

        margin-top: -25px;

    }

}





/* حالت ریسپانسیو */

@media (max-width: 576px) {

    .section-title .title-line {

        font-size: 1.6rem;

    }



    .section-title .title-line::before,

    .section-title .title-line::after {
        display: none;
       width: 30px;
        right: 0;
        left: 0;
        margin: auto;
        top: auto;
        bottom: -30px;

    }

}



/* Mobile */



@media(max-width:992px){



    .departments-grid{

        grid-template-columns:

        repeat(auto-fit,minmax(160px,1fr));

    }



    .department-item{

        min-height:150px;

        padding:20px 10px;

    }



    .department-icon{

        width:60px;

        height:60px;

    }



    .department-item h3{

        font-size:14px;

    }

}



@media(max-width:576px){



    .departments-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

