/* فونت اصلی سایت: IRANSans
           فایل فونت را در مسیر fonts/IRANSans.woff2 قرار دهید. */
        @font-face {
            font-family: "IRANSans";
            src: url("../fonts/IRANSans.woff2") format("woff2");
            font-style: normal;
            font-weight: 100 900;
            font-display: swap;
        }

        :root{
            --green:#0b5d45;
            --green-dark:#063e30;
            --green-soft:#eef7f3;
            --gold:#c9a24d;
            --gold-dark:#a88433;
            --cream:#fbfaf5;
            --bg:#f7f8f6;
            --text:#1e2823;
            --muted:#6a766f;
            --white:#ffffff;
            --border:#e7ece8;
            --shadow:0 14px 40px rgba(7, 48, 36, .08);
            --radius:22px;
        }

        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;
            color:var(--text);
            background:var(--bg);
            font-family:"IRANSansLocal", Tahoma, Arial, sans-serif;
            line-height:1.9;
        }
        a{text-decoration:none;color:inherit}

        body, button, input, textarea, select {
            font-family: "IRANSans", Tahoma, Arial, sans-serif;
        }

        h1, h2, h3, h4, h5, h6 {
            font-family: "IRANSans", Tahoma, Arial, sans-serif;
            font-weight: 800;
        }
        button,input{font:inherit}
        img{max-width:100%;display:block}

        .container{
            width:min(1180px, calc(100% - 32px));
            margin:auto;
        }

        /* Top strip */
        .top-strip{
            background:var(--green-dark);
            color:#eef8f3;
            font-size:13px;
        }
        .top-strip .container{
            min-height:40px;
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:15px;
        }
        .top-strip a{opacity:.92}
        .top-strip a:hover{opacity:1;color:#fff}

        /* Header */
        header{
            position:sticky;
            top:0;
            z-index:50;
            background:rgba(255,255,255,.94);
            backdrop-filter:blur(10px);
            border-bottom:1px solid rgba(10,70,52,.07);
        }
        .nav{
            min-height:82px;
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:24px;
        }
        .brand{
            display:flex;
            align-items:center;
            gap:12px;
            min-width:max-content;
        }
        .brand-mark{
            width:46px;
            height:46px;
            border-radius:14px;
            display:grid;
            place-items:center;
            background:linear-gradient(145deg,var(--green),var(--green-dark));
            color:#fff;
            box-shadow:0 8px 22px rgba(11,93,69,.20);
        }
        .brand-mark svg{width:25px;height:25px}
        .brand-title{
            font-weight:900;
            color:var(--green-dark);
            font-size:20px;
            line-height:1.2;
        }
        .brand-sub{
            color:var(--muted);
            font-size:11px;
            margin-top:2px;
        }

        .nav-links{
            display:flex;
            align-items:center;
            gap:5px;
            flex-wrap:wrap;
        }
        .nav-links a{
            color:#344239;
            padding:9px 13px;
            border-radius:10px;
            font-size:14px;
            transition:.2s ease;
        }
        .nav-links a:hover{
            background:var(--green-soft);
            color:var(--green);
        }
        .nav-cta{
            color:#fff !important;
            background:var(--green) !important;
            padding:10px 16px !important;
            font-weight:800;
        }
        .nav-cta:hover{background:var(--green-dark)!important}

        .menu-btn{
            display:none;
            border:1px solid var(--border);
            background:#fff;
            color:var(--green-dark);
            width:44px;height:44px;
            border-radius:12px;
            cursor:pointer;
        }

        /* Hero */
        .hero{
            position:relative;
            overflow:hidden;
            padding:78px 0 58px;
            min-height:520px;
            background:
                linear-gradient(90deg, rgba(255,255,255,.985) 0%, rgba(255,255,255,.94) 34%, rgba(255,255,255,.78) 54%, rgba(255,255,255,.42) 76%, rgba(255,255,255,.16) 100%),
                url("../assets/hero_banner.jpg") center center / cover no-repeat;
        }
        .hero:after{
            content:"";
            position:absolute;
            inset:0;
            pointer-events:none;
            background:linear-gradient(90deg, rgba(255,255,255,.20) 0%, rgba(255,255,255,.14) 42%, rgba(255,255,255,.06) 72%, rgba(255,255,255,.10) 100%);
        }
        .hero .container{position:relative;z-index:1;}
        .hero-grid{
            display:grid;
            grid-template-columns:1.05fr .95fr;
            gap:56px;
            align-items:center;
        }
        .eyebrow{
            display:inline-flex;
            align-items:center;
            gap:8px;
            background:var(--green-soft);
            color:var(--green);
            padding:7px 12px;
            border-radius:999px;
            font-size:13px;
            font-weight:800;
            border:1px solid #dcece5;
        }
        .eyebrow i{
            width:8px;height:8px;
            border-radius:50%;
            background:var(--gold);
            box-shadow:0 0 0 5px rgba(201,162,77,.12);
        }
        .hero h1{
            margin:18px 0 13px;
            font-size:clamp(34px,5vw,55px);
            line-height:1.3;
            color:var(--green-dark);
            letter-spacing:-.8px;
        }
        .hero h1 span{color:var(--gold-dark)}
        .hero p{
            margin:0;
            max-width:700px;
            color:var(--muted);
            font-size:17px;
        }
        .hero-actions{
            display:flex;
            gap:12px;
            margin-top:26px;
            flex-wrap:wrap;
        }
        .btn{
            border:0;
            border-radius:13px;
            padding:12px 19px;
            cursor:pointer;
            display:inline-flex;
            align-items:center;
            justify-content:center;
            gap:8px;
            font-weight:800;
            transition:.2s ease;
        }
        .btn-primary{
            background:var(--green);
            color:#fff;
            box-shadow:0 10px 25px rgba(11,93,69,.20);
        }
        .btn-primary:hover{transform:translateY(-2px);background:var(--green-dark)}
        .btn-secondary{
            background:#fff;
            color:var(--green);
            border:1px solid #dfe9e4;
        }
        .btn-secondary:hover{background:var(--green-soft)}

        .hero-card{
            background:linear-gradient(160deg,#0f684e,#073c2d);
            border-radius:30px;
            padding:28px;
            color:#fff;
            position:relative;
            overflow:hidden;
            box-shadow:0 24px 55px rgba(6,62,48,.22);
        }
        .hero-card:before,
        .hero-card:after{
            content:"";
            position:absolute;
            border-radius:50%;
            border:1px solid rgba(255,255,255,.08);
        }
        .hero-card:before{width:280px;height:280px;left:-90px;bottom:-120px}
        .hero-card:after{width:190px;height:190px;right:-55px;top:-80px}
        .hero-card-inner{position:relative;z-index:2}
        .hero-card-title{
            display:flex;
            align-items:center;
            gap:12px;
            font-weight:900;
            font-size:19px;
            margin-bottom:17px;
        }
        .hero-card-icon{
            width:43px;height:43px;border-radius:12px;
            display:grid;place-items:center;
            background:rgba(201,162,77,.14);
            color:#f2d58b;
            border:1px solid rgba(201,162,77,.24);
        }
        .search-box{
            display:flex;
            background:#fff;
            border-radius:15px;
            padding:7px;
            gap:7px;
            box-shadow:0 12px 28px rgba(0,0,0,.12);
        }
        .search-box input{
            min-width:0;
            flex:1;
            border:0;
            outline:0;
            color:#233029;
            padding:10px 12px;
            background:transparent;
        }
        .search-box button{
            border:0;
            background:var(--gold);
            color:#132018;
            border-radius:11px;
            padding:0 17px;
            font-weight:900;
            cursor:pointer;
        }
        .search-note{
            margin:12px 0 0;
            font-size:12px;
            color:rgba(255,255,255,.78);
        }
        .hero-points{
            display:grid;
            grid-template-columns:repeat(2,1fr);
            gap:11px;
            margin-top:20px;
        }
        .hero-point{
            display:flex;
            gap:9px;
            align-items:flex-start;
            font-size:12px;
            color:rgba(255,255,255,.91);
            background:rgba(255,255,255,.05);
            padding:10px;
            border-radius:12px;
            border:1px solid rgba(255,255,255,.07);
        }
        .hero-point svg{color:#e8c96b;flex:none}

        /* Trust row */
        .trust{
            padding:22px 0 6px;
        }
        .trust-grid{
            display:grid;
            grid-template-columns:repeat(4,1fr);
            gap:13px;
        }
        .trust-item{
            background:#fff;
            border:1px solid var(--border);
            border-radius:16px;
            padding:14px 16px;
            display:flex;
            gap:11px;
            align-items:center;
        }
        .trust-icon{
            width:38px;height:38px;flex:none;
            border-radius:11px;
            display:grid;place-items:center;
            color:var(--green);
            background:var(--green-soft);
        }
        .trust-item b{display:block;font-size:13px}
        .trust-item span{display:block;color:var(--muted);font-size:11px}

        /* Section */
        section{padding:75px 0}
        .section-head{
            display:flex;
            align-items:flex-end;
            justify-content:space-between;
            gap:20px;
            margin-bottom:28px;
        }
        .section-kicker{
            font-size:12px;
            color:var(--gold-dark);
            font-weight:900;
            margin-bottom:5px;
        }
        .section-title{
            margin:0;
            color:var(--green-dark);
            font-size:32px;
            line-height:1.4;
        }
        .section-desc{
            margin:6px 0 0;
            max-width:680px;
            color:var(--muted);
            font-size:14px;
        }

        /* Services */
        .services{
            background:#fff;
            border-top:1px solid var(--border);
            border-bottom:1px solid var(--border);
        }
        .services-grid{
            display:grid;
            grid-template-columns:repeat(3,1fr);
            gap:17px;
        }
        .service{
            background:#fff;
            border:1px solid var(--border);
            border-radius:20px;
            padding:23px;
            min-height:225px;
            position:relative;
            overflow:hidden;
            transition:.2s ease;
        }
        .service:after{
            content:"";
            position:absolute;
            width:80px;height:80px;
            border-radius:50%;
            background:rgba(201,162,77,.06);
            left:-25px;bottom:-30px;
        }
        .service:hover{
            transform:translateY(-4px);
            box-shadow:var(--shadow);
            border-color:#dce7e1;
        }
        .service-icon{
            width:53px;height:53px;border-radius:15px;
            display:grid;place-items:center;
            background:var(--green-soft);
            color:var(--green);
            margin-bottom:15px;
        }
        .service h3{margin:0 0 7px;font-size:18px;color:var(--green-dark)}
        .service p{margin:0;color:var(--muted);font-size:13px}
        .service a{
            display:inline-flex;
            align-items:center;
            gap:6px;
            color:var(--gold-dark);
            font-size:12px;
            font-weight:900;
            margin-top:15px;
        }

        /* Process */
        .process-wrap{
            display:grid;
            grid-template-columns:1fr 1fr;
            gap:38px;
            align-items:center;
        }
        .steps{
            display:grid;
            gap:16px;
        }
        .step{
            display:grid;
            grid-template-columns:50px 1fr;
            gap:14px;
            align-items:start;
        }
        .step-num{
            width:50px;height:50px;border-radius:16px;
            display:grid;place-items:center;
            background:var(--green);
            color:#fff;
            font-size:18px;
            font-weight:900;
            box-shadow:0 9px 22px rgba(11,93,69,.15);
        }
        .step h3{margin:1px 0 3px;color:var(--green-dark);font-size:17px}
        .step p{margin:0;color:var(--muted);font-size:13px}
        .process-card{
            background:var(--cream);
            border:1px solid #efe9d8;
            border-radius:27px;
            padding:28px;
            position:relative;
            overflow:hidden;
        }
        .process-card:before{
            content:"";
            position:absolute;
            width:190px;height:190px;
            border-radius:50%;
            border:18px solid rgba(201,162,77,.08);
            left:-75px;bottom:-90px;
        }
        .process-card h3{margin:0;color:var(--green-dark);font-size:22px}
        .process-card p{color:var(--muted);font-size:14px}
        .mini-box{
            display:grid;
            grid-template-columns:1fr 1fr;
            gap:11px;
            margin-top:18px;
        }
        .mini-box div{
            background:#fff;
            border:1px solid #eee9dc;
            border-radius:14px;
            padding:13px;
        }
        .mini-box b{display:block;color:var(--green-dark);font-size:14px}
        .mini-box span{display:block;color:var(--muted);font-size:11px}

        /* Company finder */
        .finder{
            background:linear-gradient(135deg,var(--green-dark),var(--green));
            color:#fff;
            position:relative;
            overflow:hidden;
        }
        .finder:before{
            content:"";
            position:absolute;
            inset:auto auto -130px -80px;
            width:300px;height:300px;
            border-radius:50%;
            border:34px solid rgba(201,162,77,.09);
        }
        .finder .section-title{color:#fff}
        .finder .section-kicker{color:#e7cd83}
        .finder .section-desc{color:rgba(255,255,255,.76)}
        .finder-grid{
            display:grid;
            grid-template-columns:1fr 1fr;
            gap:30px;
            align-items:center;
            position:relative;
            z-index:2;
        }
        .finder-form{
            background:#fff;
            border-radius:20px;
            padding:8px;
            display:flex;
            gap:7px;
            box-shadow:0 18px 45px rgba(0,0,0,.12);
        }
        .finder-form input{
            min-width:0;flex:1;
            padding:12px 14px;
            border:0;outline:0;
            color:#26332c;
            background:transparent;
        }
        .finder-form button{
            background:var(--gold);
            color:#1b2b22;
            border:0;
            border-radius:14px;
            padding:0 20px;
            font-weight:900;
            cursor:pointer;
        }
        .finder-list{
            display:grid;
            grid-template-columns:repeat(2,1fr);
            gap:10px;
            margin-top:16px;
        }
        .finder-list div{
            font-size:12px;
            color:rgba(255,255,255,.86);
            background:rgba(255,255,255,.06);
            border:1px solid rgba(255,255,255,.09);
            padding:9px 11px;
            border-radius:12px;
        }

        /* Articles */
        .articles{
            display:grid;
            grid-template-columns:repeat(3,1fr);
            gap:17px;
        }
        .article{
            background:#fff;
            border:1px solid var(--border);
            border-radius:19px;
            overflow:hidden;
            transition:.2s ease;
        }
        .article:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
        .article-top{
            height:135px;
            display:grid;place-items:center;
            background:
                linear-gradient(135deg, rgba(11,93,69,.96), rgba(6,62,48,.96));
            color:#fff;
        }
        .article-top svg{opacity:.9}
        .article-body{padding:17px}
        .article-meta{font-size:10px;color:var(--gold-dark);font-weight:900}
        .article h3{margin:4px 0 7px;font-size:16px;color:var(--green-dark)}
        .article p{margin:0;color:var(--muted);font-size:12px}
        .article a{
            display:inline-block;
            margin-top:12px;
            color:var(--green);
            font-size:12px;
            font-weight:900;
        }

        /* CTA */
        .cta{
            padding-top:0;
        }
        .cta-card{
            background:linear-gradient(135deg,#f2ead4,#fffaf0);
            border:1px solid #eee1be;
            border-radius:28px;
            padding:30px;
            display:flex;
            justify-content:space-between;
            align-items:center;
            gap:25px;
        }
        .cta-card h2{margin:0;color:var(--green-dark);font-size:27px}
        .cta-card p{margin:6px 0 0;color:var(--muted);font-size:13px}

        /* Footer */
        footer{
            background:#062f25;
            color:#dbe9e3;
            padding:52px 0 20px;
        }
        .footer-grid{
            display:grid;
            grid-template-columns:1.4fr 1fr 1fr 1fr;
            gap:28px;
        }
        .footer-brand .brand-title{color:#fff}
        .footer-brand .brand-sub{color:#9eb7ad}
        .footer-text{color:#abc2b8;font-size:12px;max-width:360px;margin-top:13px}
        .footer-title{color:#fff;font-size:14px;font-weight:900;margin-bottom:12px}
        .footer-links{display:grid;gap:6px}
        .footer-links a{font-size:12px;color:#abc2b8}
        .footer-links a:hover{color:#fff}
        .footer-bottom{
            margin-top:35px;
            border-top:1px solid rgba(255,255,255,.08);
            padding-top:14px;
            display:flex;
            justify-content:space-between;
            gap:16px;
            flex-wrap:wrap;
            color:#91aaa0;
            font-size:11px;
        }

        /* Responsive */
        @media (max-width: 980px){
            .nav-links{display:none}
            .menu-btn{display:block}
            .hero-grid,
            .process-wrap,
            .finder-grid{grid-template-columns:1fr}
            .services-grid{grid-template-columns:repeat(2,1fr)}
            .articles{grid-template-columns:repeat(2,1fr)}
            .trust-grid{grid-template-columns:repeat(2,1fr)}
            .footer-grid{grid-template-columns:1fr 1fr}
        }

        @media (max-width: 640px){
            .top-strip{display:none}
            .nav{min-height:72px}
            .hero{padding:46px 0 35px}
            .hero h1{font-size:34px}
            section{padding:54px 0}
            .section-title{font-size:27px}
            .trust-grid,
            .services-grid,
            .articles,
            .footer-grid,
            .finder-list{grid-template-columns:1fr}
            .search-box,
            .finder-form{flex-direction:column}
            .search-box button,
            .finder-form button{height:46px}
            .hero-points,
            .mini-box{grid-template-columns:1fr}
            .cta-card{padding:22px;align-items:flex-start;flex-direction:column}
            .hero-card{padding:22px}
            .brand-title{font-size:17px}
            .brand-sub{display:none}
        }

/* شماره تماس در تمام صفحات: ۲ پیکسل بزرگ‌تر */
        a[href^="tel:"] {
            font-size: calc(1em + 2px);
            font-weight: 800;
        }


        @media (max-width: 760px){
            .hero{
                min-height:auto;
                padding:52px 0 36px;
                background-position:78% center;
            }
            .hero:after{background:linear-gradient(90deg,rgba(255,255,255,.30),rgba(255,255,255,.58));}
        }

        /* خوانایی متن روی بنر */
        .hero-grid > div:first-child{
            position:relative;
            z-index:2;
            padding:24px 28px;
            border-radius:24px;
            background:rgba(255,255,255,.22);
            box-shadow:0 14px 40px rgba(20,70,110,.035);
            backdrop-filter:blur(1.5px);
        }
        @media (max-width:980px){
            .hero-grid > div:first-child{padding:18px 20px;background:rgba(255,255,255,.34);}
        }
        @media (max-width:640px){
            .hero-grid > div:first-child{padding:16px 14px;background:rgba(255,255,255,.48);}
        }
