@font-face {
  font-family: "BrandFont";
  src: url("../fonts/IRANSans-reg-web.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: "BrandFontb";
  src: url("../fonts/IRANSans-Bold-web.woff2") format("woff2");
  font-weight: 900;
  font-style: bold;
}
@font-face{
 font-family:"BrandFont";
 src:url("../fonts/BrandFont-Regular.woff2") format("woff2");
 font-weight:600;
}
@font-face{
 font-family:"BrandFont";
 src:url("../fonts/BrandFont-SemiBold.woff2") format("woff2");
 font-weight:600;
}
@font-face{
 font-family:"BrandFont";
 src:url("../fonts/BrandFont-Bold.woff2") format("woff2");
 font-weight:700;
}

:root{--orange:#ff6a00;--line:#e1e3e6;--dark:#222}

*{margin:0;padding:0;box-sizing:border-box}
body{font-family:"BrandFont",Tahoma;direction:rtl;color:var(--dark)}

/* top */
.topbar{background:#e0e0e0;border-bottom:1px solid #222}
.topbar .wrap{max-width:1200px;margin:auto;padding:8px 20px;
.topbar .wrap > div {
  font-size: 22px;
  font-weight: 700;
}
.site-title {
  font-family: "BrandFont", Tahoma, Arial;
  font-size: 26px;      /* سایز نوشته */
  font-weight: 700;     /* بولد */
  color: #000;          /* رنگ نوشته (سفید روی مشکی) */
  margin-right: 12px;   /* فاصله از لوگو */
}
 display:flex;justify-content:space-between;align-items:center}

/* navbar */
.navbar{
 position:fixed;top:0;right:0;width:100%;
 background:var(--orange);z-index:1000
}
.navbar .wrap{
 max-width:1200px;margin:auto;padding:14px 20px;
 display:flex;justify-content:flex-start
}
.navbar ul{
 list-style:none;display:flex;gap:30px
}
.navbar li{order:0}
.navbar a{color:#fff;font-weight:600;text-decoration:none}

.navbar::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 1.5px;      /* ضخامت خط */
  background: #000; /* رنگ مشکی */
}

/* hero */
.hero{margin-top:0px;position:relative;height:70vh;overflow:hidden}
.hero-slide{position:absolute;inset:0;background:center/cover no-repeat;opacity:0;transition:1s}
.hero-slide.active{opacity:1}
.hero .overlay{position:absolute;bottom:0;width:100%;
 padding:48px 20px;background:linear-gradient(to top,rgba(0,0,0,.55),rgba(0,0,0,0))}
.hero h1{color:#fff;font-size:36px;font-weight:700}
.hero-intro{
  background:#fff;
  padding:60px 20px;
  text-align:center;
}

.hero-intro .wrap{
  max-width:900px;
  margin:auto;
}

.hero-intro h2{
  font-size:28px;
  font-weight:700;
  margin-bottom:16px;
  color:#222;
}

.hero-intro p{
  font-size:16px;
  line-height:1.9;
  color:#555;
}

/* موبایل */
@media (max-width:768px){
  .hero-intro{
    padding:40px 16px;
  }
  .hero-intro h2{
    font-size:22px;
  }
}

/* cards */
.section{padding:44px 20px}
.wrap{max-width:1400px;margin:auto}
.product-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.product-card{display:flex;background:#fff;border-radius:16px;
 box-shadow:0 12px 30px rgba(0,0,0,.1); overflow:hidden}
.pc-image{width:45%;background-size:cover}
.pc-content{width:55%;padding:30px}
.pc-content h3{font-weight:700}
.pc-content p{font-weight:400}

/* vertical social */
.social-fixed{
 position:fixed;left:16px;top:50%;transform:translateY(-50%);
 display:flex;flex-direction:column;gap:12px;z-index:999
}
.social-fixed a{
 width:46px;height:46px;border-radius:12px;
 display:flex;align-items:center;justify-content:center;
 color:#fff;font-size:20px;text-decoration:none
}
.social-fixed a.whatsapp{background:#25d366}
.social-fixed a.instagram{background:#e1306c}
.social-fixed a.telegram{background:#0088cc}
.social-fixed a.linkedin{background:#0a66c2}

/* footer */
.footer{background:#f5f6f7;border-top:1px solid var(--line)}
.footer .wrap{padding:18px 20px;font-size:12px;color:#666;
 display:flex;justify-content:space-between}


/* Scroll behavior for navbar */
.navbar{
  position:relative;
}
.navbar.sticky{
  position:fixed;
  top:0;
  right:0;
  width:100%;
  z-index:1000;
}

.topbar, .topbar *{
  color:#fff;
}

.social-fixed a{
  background:none !important;
  width:auto;
  height:auto;
}
.social-fixed img{
  width:48px;
  height:48px;
  border-radius:50%;
}


/* ===== About Page (Graphic) ===== */
:root{
  --orange:#ff6a00;
  --black:#000;
}

.btn-primary,.btn-ghost{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 18px;border-radius:12px;text-decoration:none;
  font-weight:700;gap:10px;
}
.btn-primary{background:var(--orange);color:#fff}
.btn-ghost{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25)}

.about-hero{
  margin-top:0;
  height:62vh;min-height:420px;
  background:center/cover no-repeat;
  position:relative;
}
.about-hero__overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.72), rgba(0,0,0,.2));
  display:flex;align-items:center;
  padding:48px 0;
}
.about-hero__kicker{
  color:rgba(255,255,255,.8);
  letter-spacing:.6px;
  margin-bottom:8px;
  font-weight:600;
}
.about-hero h1{color:#fff;font-size:40px;margin-bottom:10px}
.about-hero p{color:rgba(255,255,255,.88);max-width:720px;line-height:1.9}
.about-hero__cta{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}

.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:26px}
.about-card{
  background:#fff;border-radius:18px;
  box-shadow:0 12px 30px rgba(0,0,0,.08);
  padding:28px;
}
.about-card h2{margin-bottom:10px;font-size:22px}
.about-card p{line-height:1.9;color:#444}
.checklist{list-style:none;margin-top:10px}
.checklist li{
  padding:10px 0;border-bottom:1px solid #f0f0f0;line-height:1.8;
  position:relative;padding-right:28px;
}
.checklist li:last-child{border-bottom:none}
.checklist li::before{
  content:"✓";position:absolute;right:0;top:10px;
  color:var(--orange);font-weight:800;
}

.stats{padding-top:10px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.stat{
  background:#0b0b0b;border-radius:16px;padding:18px 16px;
  color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.14);
}
.stat__num{font-size:24px;font-weight:800}
.stat__label{opacity:.9;margin-top:6px;line-height:1.6;font-size:13px}

.split{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:stretch}
.split__media{border-radius:18px;background:center/cover no-repeat;min-height:360px;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.split__content{
  background:#fff;border-radius:18px;padding:28px;
  box-shadow:0 12px 30px rgba(0,0,0,.08);
}
.split__content h2{margin-bottom:10px;font-size:22px}
.split__content p{line-height:1.9;color:#444}
.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.pill{
  background:#f6f6f6;border:1px solid #ececec;
  padding:8px 12px;border-radius:999px;
  font-size:12px;color:#333;font-weight:700;
}

.section-title h2{font-size:24px;margin-bottom:6px}
.section-title p{color:#555;line-height:1.8}

.timeline-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:18px}
.t-item{
  background:#fff;border-radius:18px;padding:22px;
  box-shadow:0 12px 30px rgba(0,0,0,.08);
  position:relative;overflow:hidden;
}
.t-badge{
  width:34px;height:34px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  background:var(--orange);color:#fff;font-weight:800;
  margin-bottom:10px;
}
.t-item h3{margin-bottom:6px;font-size:16px}
.t-item p{color:#444;line-height:1.8;font-size:13px}

.brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
.brand{
  background:#fff;border-radius:16px;padding:18px;
  box-shadow:0 12px 30px rgba(0,0,0,.06);
  font-weight:800;text-align:center;
}
.about-cta{padding-top:10px}
.cta-box{
  background:linear-gradient(90deg, #111, #000);
  border-radius:18px;padding:26px;
  color:#fff;display:flex;align-items:center;justify-content:space-between;
  gap:18px;box-shadow:0 12px 30px rgba(0,0,0,.18);
}
.cta-box h2{font-size:20px;margin-bottom:6px}
.cta-box p{opacity:.9;line-height:1.8}
.cta-actions{display:flex;gap:10px;flex-wrap:wrap}

/* responsive */
@media (max-width: 980px){
  .about-grid,.split{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .timeline-grid{grid-template-columns:repeat(2,1fr)}
  .brand-grid{grid-template-columns:repeat(2,1fr)}
  .about-hero h1{font-size:34px}
}


/* =========================
   Contact Page (Professional)
   ========================= */

.contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:36px;
  margin-top:40px;
}

/* contact cards */
.contact-grid .card{
  background:#fff;
  border-radius:20px;
  box-shadow:0 18px 45px rgba(0,0,0,.12);
  padding:36px;
}

/* titles inside contact */
.contact-grid h3{
  font-size:20px;
  font-weight:800;
  margin-bottom:18px;
}

/* contact info text */
.contact-grid p{
  line-height:2;
  font-size:14px;
  color:#333;
  margin-bottom:10px;
}

/* form fields */
.contact-grid form input,
.contact-grid form textarea,
.contact-grid form select{
  width:100%;
  padding:14px 16px;
  border-radius:14px;
  border:1px solid #ddd;
  margin-bottom:14px;
  font-size:14px;
  font-family:"BrandFont",Tahoma;
  transition:.25s;
}

.contact-grid form input:focus,
.contact-grid form textarea:focus,
.contact-grid form select:focus{
  border-color:var(--orange);
  outline:none;
  box-shadow:0 0 0 3px rgba(255,106,0,.15);
}

/* submit button */
.contact-grid form button{
  width:100%;
  background:var(--orange);
  color:#fff;
  border:none;
  border-radius:16px;
  padding:16px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  transition:.3s;
}

.contact-grid form button:hover{
  background:#e85f00;
  transform:translateY(-1px);
}

/* map */
.map{
  margin-top:50px;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 18px 45px rgba(0,0,0,.15);
}

/* responsive */
@media (max-width: 900px){
  .contact-grid{
    grid-template-columns:1fr;
    gap:26px;
  }

  .contact-grid .card{
    padding:28px;
  }
}



.contact-strip{
  background:#111;
  color:#fff;
  padding:28px 0;
  margin-top:60px;
}

.contact-strip .wrap{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:20px;
  align-items:center;
}

.contact-strip a{
  color:#ff6a00;
  font-weight:600;
}
.contact-item:first-child {
  padding-right: 16px;
}
.contact-item{
  line-height:1.8;
  font-size:14px;
}

/* موبایل */
@media (max-width: 768px){
  .contact-strip .wrap{
    grid-template-columns:1fr;
    text-align:center;
  }
}
.section-title-white{
  color:#fff !important;
}

/* ===== MOBILE ONLY (NO DESKTOP CHANGE) ===== */
@media (max-width:768px){

/* hamburger button */
.menu-toggle{
  display:block;
  font-size:28px;
  padding:10px 16px;
  cursor:pointer;
  color:#fff;
}

/* slide menu */
.navbar ul{
  position:fixed;
  top:0;
  right:-260px;
  width:260px;
  height:100vh;
  background:#ff6a00;
  flex-direction:column;
  padding-top:60px;
  gap:20px;
  transition:.3s ease;
  z-index:3000;
}

.navbar ul.active{
  right:0;
}

/* overlay */
.mobile-overlay{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.45);
  z-index:2500;
}
.mobile-overlay.active{display:block}

/* hero */
.hero{height:42vh}
.hero h1{font-size:22px;text-align:center}

/* cards */
.product-cards{grid-template-columns:1fr}
.product-card{flex-direction:column}
.pc-image{width:100%;height:180px}
.pc-content{width:100%}

}

/* ===== FORCE SHOW MENU ON MOBILE ===== */
@media (max-width:768px){
  .navbar ul{
    display:flex !important;
    flex-wrap:wrap;
    justify-content:center;
    gap:12px;
  }

  .navbar a{
    font-size:14px;
    padding:10px 12px;
    white-space:nowrap;
  }

  .navbar .wrap{
    overflow-x:auto;
  }
}











/* ================================
   SAFE MOBILE MENU (DESKTOP SAFE)
   ================================ */
@media (max-width:768px){

  /* force show existing desktop menu */
  .navbar ul{
    display:flex !important;
    flex-wrap:wrap;
    justify-content:center;
    gap:12px;
  }

  .navbar a{
    font-size:14px;
    padding:10px 12px;
    white-space:nowrap;
  }

  /* disable any mobile/hamburger leftovers */
  .menu-toggle,
  .mobile-menu,
  .mobile-overlay{
    display:none !important;
  }
}


/* ===== FORCE DESKTOP MENU ON MOBILE ===== */
@media (max-width:768px){

  /* حذف کامل همبرگر */
  .menu-toggle,
  .mobile-overlay{
    display:none !important;
  }

  /* نمایش منوی اصلی */
  .navbar ul{
    position:static !important;
    display:flex !important;
    flex-direction:column;
    background:#ff6a00;
    height:auto !important;
    width:100%;
    padding:10px 0;
    gap:0;
  }

  .navbar li{
    width:100%;
    text-align:center;
  }

  .navbar a{
    display:block;
    padding:14px 0;
    border-bottom:1px solid rgba(255,255,255,.25);
  }
}


/* ===== MOBILE: HIDE MENU AT TOP, SHOW ON SCROLL ===== */
@media (max-width:768px){

  /* منو اول مخفی */
  .navbar{
    position:fixed;
    top:-500px;
    right:0;
    width:100%;
    transition:top .3s ease;
    z-index:1000;
  }

  /* وقتی اسکرول شد */
  body.scrolled .navbar{
    top:0;
  }

  /* هیرو کل صفحه */
  .hero{
    height:100vh;
  }
}
@media (max-width:768px){
  .hero{height:55vh}
  .hero h1{font-size:24px}
}


/* =========================
   GLOBAL TYPOGRAPHY OVERRIDE
   (SAFE – NO STRUCTURE CHANGE)
========================= */
body{
  font-family:"BrandFont",Tahoma;
  font-size:16px;
  line-height:1.9;
  color:#222;
}

h1,h2,h3,h4,h5,h6{
  font-family:"BrandFont",Tahoma;
  font-weight:700;
  color:#222;
  line-height:1.4;
}

h1{font-size:36px}
h2{font-size:28px}
h3{font-size:22px}
h4{font-size:18px}

p{
  font-size:16px;
  color:#555;
}

a{
  color:#ff6a00;
  font-weight:600;
}

.hero h1{
  font-family:"BrandFont",Tahoma;
  color:#fff;
}

.hero p{
  color:rgba(255,255,255,.9);
  font-size:18px;
}

.footer,
.footer p{
  font-size:12px;
  color:#666;
}

@media (max-width:768px){
  h1{font-size:24px}
  h2{font-size:22px}
  h3{font-size:18px}
  p{font-size:15px}
  .hero p{font-size:15px}
}

/* ==========================================
   Calibration Page – Premium Visual Refresh
   ========================================== */
.calibration-page{
  background:#f7f8fb;
}

.calibration-page .btn-primary,
.calibration-page .btn-ghost,
.calibration-page .lab-btn-secondary{
  min-height:48px;
}

.lab-hero{
  min-height:78vh;
  background:center/cover no-repeat;
  position:relative;
}

.lab-hero__overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(17,17,17,.72) 45%, rgba(17,17,17,.35) 100%);
  display:flex;
  align-items:center;
  padding:70px 0 46px;
}

.lab-hero__grid{
  display:grid;
  grid-template-columns:1.25fr .85fr;
  gap:28px;
  align-items:end;
}

.lab-hero__content{
  color:#fff;
}

.lab-hero__eyebrow{
  color:rgba(255,255,255,.78);
  font-size:14px;
  letter-spacing:.5px;
  margin-bottom:14px;
}

.lab-hero__content h1{
  color:#fff;
  font-size:44px;
  margin-bottom:14px;
  max-width:860px;
}

.lab-hero__content p{
  color:rgba(255,255,255,.92);
  max-width:760px;
  line-height:2;
  font-size:17px;
}

.lab-hero__actions{
  margin-top:22px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.lab-accreditation-card{
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.55);
  border-radius:22px;
  padding:28px;
  box-shadow:0 18px 55px rgba(0,0,0,.18);
  backdrop-filter:blur(8px);
}

.lab-card__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,106,0,.12);
  color:var(--orange);
  font-size:12px;
  font-weight:800;
  margin-bottom:14px;
}

.lab-accreditation-card h2{
  font-size:24px;
  margin-bottom:16px;
}

.lab-meta-list{
  list-style:none;
  margin:0;
  padding:0;
}

.lab-meta-list li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:13px 0;
  border-bottom:1px solid #eceff3;
}

.lab-meta-list li:last-child{
  border-bottom:none;
}

.lab-meta-list span{
  color:#666;
  font-size:14px;
}

.lab-meta-list strong{
  color:#111;
  font-size:15px;
}

.lab-accreditation-note{
  margin-top:16px;
  color:#4b4f56;
  font-size:14px;
  line-height:1.9;
}

.lab-metrics-section{
  margin-top:-46px;
  position:relative;
  z-index:4;
}

.lab-metrics-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.lab-metric{
  background:#fff;
  border-radius:18px;
  padding:22px 20px;
  box-shadow:0 16px 42px rgba(0,0,0,.08);
  border:1px solid #edf0f3;
}

.lab-metric__num{
  font-size:28px;
  font-weight:900;
  color:var(--orange);
  margin-bottom:8px;
}

.lab-metric__label{
  font-size:13px;
  line-height:1.9;
  color:#4e545c;
}

.lab-intro-split .split__content,
.lab-trust-section .about-card,
.lab-service-card,
.lab-download-box,
.lab-gallery__item{
  box-shadow:0 16px 42px rgba(0,0,0,.08);
}

.lab-intro-split .split__media{
  min-height:430px;
}

.lab-gallery{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:18px;
  margin-top:22px;
}

.lab-gallery__item{
  min-height:250px;
  border-radius:22px;
  background:center/cover no-repeat;
  overflow:hidden;
}

.lab-gallery__item.tall{
  min-height:520px;
  grid-row:span 2;
}

.lab-services-section{
  padding-top:24px;
}

.lab-service-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-top:22px;
}

.lab-service-card{
  background:#fff;
  border-radius:20px;
  padding:26px;
  border:1px solid #edf0f3;
  position:relative;
  overflow:hidden;
}

.lab-service-card::before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:5px;
  background:linear-gradient(90deg, var(--orange), #ffa252);
}

.lab-service-card__index{
  width:46px;
  height:46px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#111;
  color:#fff;
  font-weight:800;
  font-size:14px;
  margin-bottom:16px;
}

.lab-service-card h3{
  font-size:19px;
  margin-bottom:10px;
}

.lab-service-card p{
  color:#525760;
  line-height:1.95;
  font-size:14px;
}

.lab-download-section{
  padding-top:10px;
}

.lab-download-box{
  background:linear-gradient(135deg, #111 0%, #1e1e1e 55%, #2c2c2c 100%);
  border-radius:24px;
  padding:32px;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

.lab-download-box__eyebrow{
  color:rgba(255,255,255,.7);
  margin-bottom:8px;
  font-size:13px;
}

.lab-download-box h2{
  color:#fff;
  margin-bottom:10px;
}

.lab-download-box p{
  color:rgba(255,255,255,.86);
  max-width:700px;
}

.lab-btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:12px;
  text-decoration:none;
  background:#fff;
  color:#111 !important;
  border:1px solid rgba(255,255,255,.22);
  font-weight:800;
}

.calibration-page .btn-ghost{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.26);
  color:#fff;
}

.calibration-page .section-title p{
  max-width:760px;
}

@media (max-width: 1100px){
  .lab-hero__grid,
  .lab-service-grid,
  .lab-metrics-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .lab-hero__grid{
    grid-template-columns:1fr;
    align-items:start;
  }

  .lab-gallery{
    grid-template-columns:1fr 1fr;
  }

  .lab-gallery__item.tall{
    grid-row:auto;
    min-height:340px;
    grid-column:span 2;
  }

  .lab-download-box{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media (max-width: 768px){
  .lab-hero{
    min-height:auto;
  }

  .lab-hero__overlay{
    position:relative;
    padding:100px 0 36px;
  }

  .lab-hero__content h1{
    font-size:30px;
  }

  .lab-hero__content p{
    font-size:15px;
  }

  .lab-metrics-section{
    margin-top:0;
    padding-top:0;
  }

  .lab-metrics-grid,
  .lab-service-grid,
  .lab-gallery,
  .timeline-grid{
    grid-template-columns:1fr;
  }

  .lab-gallery__item,
  .lab-gallery__item.tall{
    min-height:240px;
    grid-column:auto;
  }

  .lab-hero__actions,
  .lab-download-box .cta-actions{
    width:100%;
    flex-direction:column;
  }

  .lab-hero__actions a,
  .lab-download-box .cta-actions a{
    width:100%;
  }

  .lab-accreditation-card,
  .lab-service-card,
  .lab-download-box{
    padding:22px;
  }

  .lab-meta-list li{
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }
}
