/* Bita Gene v4 — independent editorial greenhouse theme */
:root{--forest:#123d30;--deep:#0b2a22;--leaf:#276647;--gold:#d5b45d;--cream:#f6f4ec;--paper:#fff;--ink:#24372e;--muted:#66736a;--line:#dce3d8;--serif:"Peyda","Peyda Web","Vazirmatn","Vazir","IRANSans","IRANSansX","Segoe UI",Tahoma,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.8 "Peyda","Peyda Web","Vazirmatn","Vazir","IRANSans","IRANSansX","Segoe UI",Tahoma,Arial,sans-serif}a{color:var(--leaf)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.wrap{width:min(1160px,92%);margin-inline:auto}
header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid #e5e8e0;box-shadow:0 4px 18px #102c2010}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center}.brand img{width:164px;max-height:66px;object-fit:contain}nav{display:flex;gap:clamp(12px,2vw,26px);align-items:center;flex-wrap:wrap}nav a{text-decoration:none;color:var(--forest);font-weight:650;font-size:.96rem;position:relative}nav a:hover{color:#a17c23}nav a:last-child{border-inline-start:1px solid var(--line);padding-inline-start:18px}
.hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(105deg,rgba(7,35,27,.98) 4%,rgba(13,57,42,.91) 53%,rgba(14,54,40,.52) 100%),url("cucumbers.webp") center/cover no-repeat;padding:clamp(60px,9vw,118px) 0}.hero:after{content:"";position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,var(--gold),#eddda4,var(--gold))}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,6vw,82px);align-items:center}.hero h1{font:600 clamp(2.45rem,5vw,4.6rem)/1.15 var(--serif);letter-spacing:-.025em;color:#fff;margin:.1em 0 .35em;max-width:730px}.hero p:not(.eyebrow){max-width:650px;color:#e6eee8;font-size:1.08rem}.eyebrow{color:#e5cb7f;font-weight:750;letter-spacing:.1em;margin:0 0 8px}.hero .btn{margin-top:12px}.hero-figure{margin:0;position:relative}.hero-figure img{width:100%;height:clamp(250px,32vw,390px);object-fit:cover;border-radius:2px 78px 2px 2px;border:1px solid #ffffff49;box-shadow:18px 18px 0 #d5b45d30}.hero-figure figcaption{color:#e1e8e1;font-size:.9rem;padding-top:13px}.btn{display:inline-block;background:var(--gold);color:#182d22;padding:10px 22px;border-radius:2px;text-decoration:none;border:1px solid var(--gold);font:inherit;font-weight:750;cursor:pointer;transition:.2s}.btn:hover{background:#ebd797;transform:translateY(-1px)}.btn-light{background:#fff;color:var(--forest);border-color:#fff}
h1,h2,h3{color:var(--forest);line-height:1.3}h2{font:600 clamp(1.8rem,3vw,2.6rem)/1.25 var(--serif);margin:0 0 16px}h2:after{content:"";display:block;width:58px;height:3px;margin-top:14px;background:var(--gold)}h3{line-height:1.4}.section{padding:clamp(48px,7vw,84px) 0}.section>h2,.section>h1,.section>p{max-width:900px}.section.wrap>h2,.section.wrap>h1{margin-bottom:18px}.section>h1{font:600 clamp(2.2rem,4vw,3.5rem)/1.2 var(--serif)}
#services{padding-top:clamp(48px,7vw,82px);padding-bottom:clamp(55px,7vw,88px);position:relative}#services:before{content:"FIELD NOTES  /  OUR WORK";display:block;color:#9a7e36;font-size:.72rem;font-weight:800;letter-spacing:.17em;margin-bottom:8px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:2px;overflow:hidden;box-shadow:0 8px 22px #162f2010}.card-body{padding:20px}.card h3{margin:0 0 9px}.card p{margin:0 0 12px}.card p:last-child{margin-bottom:0}#services .cards{counter-reset:service;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}#services .card{counter-increment:service;min-height:200px;border:0;border-top:3px solid var(--gold);box-shadow:none;background:#fff;padding:20px 19px 22px;position:relative}#services .card:before{content:"0" counter(service);font:600 2.2rem/1 var(--serif);color:#c7a54a;display:block;margin-bottom:22px}#services .card-body{padding:0}#services h2{margin-bottom:28px}
#products{background:#eeefe7;padding-inline:max(4%,calc((100% - 1160px)/2));}#products>h2,#products>p{max-width:850px}#products .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:30px}#products .card{display:grid;grid-template-columns:42% 58%;min-height:310px;border:0;box-shadow:0 7px 25px #19362212}#products .card:nth-child(even){grid-template-columns:58% 42%}#products .card:nth-child(even)>img{order:2}#products .card>img{width:100%;height:100%;min-height:310px;object-fit:cover;display:block}#products .card-body{padding:clamp(17px,2.4vw,28px);align-self:center}#products .card h3{font:600 1.45rem/1.3 var(--serif);padding-bottom:10px;border-bottom:1px solid var(--line)}#products .card p{font-size:.94rem}
.band{background:var(--forest);color:#edf1e8;padding:clamp(42px,6vw,68px) 0}.band h2{color:#fff}.band p{max-width:820px}.band a:not(.btn),footer a{color:#f0d78b}.sister-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:26px}.sister-gallery figure{margin:0}.sister-gallery img{width:100%;height:260px;object-fit:cover;border:1px solid #ffffff40}.sister-gallery figcaption,figcaption{font-size:.9rem;color:#d6e1d7;padding-top:8px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.feature-img{width:100%;max-height:430px;object-fit:cover}.process-preview{max-width:920px}.process-preview a:not(.btn){font-weight:700}.process-block{margin-top:28px}.team-photo-fig{max-width:850px;margin:0 auto 26px;text-align:center}.team-photo-fig .team-photo{width:100%;max-height:440px;object-fit:cover}.team{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.person{padding:16px 18px;background:#fff;border-inline-start:3px solid var(--gold)}.person h3{margin:0}.person p{margin:.25rem 0 0;color:var(--muted)}.contact-section{background:#e9eee5}.contact-invite{max-width:800px}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:24px;align-items:start;margin-top:25px}.contact-details,form{background:#fff;border:1px solid var(--line);padding:24px}.contact-details h3{margin-top:0}.email-link{font-size:1.1rem;font-weight:750}form{display:grid;gap:13px}form label{display:grid;gap:5px;font-weight:650}input,textarea{width:100%;font:inherit;padding:10px 12px;border:1px solid #cbd4ca;border-radius:2px;background:#fff}textarea{min-height:120px;resize:vertical}.form-status{margin:0;font-size:.95rem}.form-status[data-state="error"]{color:#a42424}.form-status[data-state="success"]{color:#176b48}.honeypot{position:fixed;top:0;inset-inline-start:-9999px;opacity:0;pointer-events:none;width:0;height:0;overflow:hidden}button:disabled{opacity:.65;cursor:wait}footer{padding:25px 0;background:var(--deep);color:#e8eee8;font-size:.95rem}footer .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}footer a{text-decoration:none}
[dir="rtl"] body{text-align:right}[dir="ltr"] body{text-align:left}
@media(max-width:850px){#services .cards{grid-template-columns:repeat(2,minmax(0,1fr))}#products .card,#products .card:nth-child(even){grid-template-columns:1fr}#products .card:nth-child(even)>img{order:0}#products .card>img{height:230px;min-height:230px}}
@media(max-width:680px){.nav{min-height:unset;padding:9px 0;align-items:flex-start;flex-direction:column;gap:4px}.brand img{width:138px;max-height:52px}nav{gap:8px 16px}nav a{font-size:.9rem}nav a:last-child{padding-inline-start:12px}.hero{padding:52px 0 60px}.hero-grid,.grid2,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:26px}.hero h1{font-size:clamp(2.3rem,10vw,3.4rem)}.hero-figure{max-width:520px}.hero-figure img{height:260px}.section{padding:44px 0}#services .cards{grid-template-columns:1fr 1fr}#services .card{min-height:unset;padding:17px}#services .card:before{font-size:1.8rem;margin-bottom:13px}#products{padding-inline:4%}#products .cards{grid-template-columns:1fr;gap:16px}#products .card-body{padding:18px}.sister-gallery{grid-template-columns:1fr}.sister-gallery img{height:230px}.contact-grid{gap:15px}}
@media(max-width:390px){#services .cards{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}


/* --- Fix: 2-Column Responsive Infographics Grid --- */
.process-grid, .infographics-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 24px auto !important;
  align-items: start !important;
}
.process-grid figure, .infographics-grid figure, .process-card {
  margin: 0 !important; padding: 12px !important; background: #fdfdfd;
  border: 1px solid #e2e8f0; border-radius: 12px; display: flex;
  flex-direction: column; align-items: center;
}
.process-grid img, .infographics-grid img, .process-card img {
  width: 100% !important; max-width: 520px !important; height: auto !important;
  object-fit: contain !important; border-radius: 8px; display: block !important;
  margin: 0 auto !important; box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
.process-grid figcaption, .infographics-grid figcaption, .process-card figcaption, .process-card h4 {
  margin-top: 12px !important; font-weight: 600; color: #1e293b;
  text-align: center; font-size: 0.95rem;
}
@media (max-width: 768px) {
  .process-grid, .infographics-grid { grid-template-columns: 1fr !important; gap: 20px !important; }
  .process-grid img, .infographics-grid img, .process-card img { max-width: 100% !important; }
}
/* --- Fix: Product & Service Cards Vertical Alignment --- */
.product-card, .service-card, .card { display: flex !important; flex-direction: column !important; height: 100% !important; }
.product-card-body, .service-card-body, .card-body { display: flex !important; flex-direction: column !important; flex-grow: 1 !important; }
.status-badge, .badge, .project-status, .card-status, .card-footer { margin-top: auto !important; }


/* Service Cards with Images */
#services .card:before {
    display: none !important;
}
#services .card {
    display: flex;
    flex-direction: column;
    padding: 14px;
    background: #ffffff;
    border-radius: 6px;
    border: 1px solid var(--line);
    border-top: 4px solid var(--gold) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.04);
}
.service-img-wrap {
    width: 100%;
    height: 160px;
    background: #fdfdfd;
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 12px;
    border: 1px solid #edf1eb;
    display: flex;
    align-items: center;
    justify-content: center;
}
.service-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 6px;
    display: block;
}
#services .card-body {
    display: flex;
    flex-direction: column;
    flex: 1;
}
#services .card-body h3 {
    margin-top: 0;
    margin-bottom: 8px;
    font-size: 1.15rem;
    color: var(--forest);
}
#services .card-body p {
    font-size: 0.92rem;
    line-height: 1.6;
    margin: 0;
    color: #444a47;
}

/* Vertical bottom alignment for product progress / status */
#products .card-body {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.progress-box, .status-box, .project-status {
    margin-top: auto !important;
    padding-top: 12px;
}


/* === v9 fixes: prevent horizontal overflow everywhere === */
html, body { max-width: 100%; overflow-x: hidden; }
*, *::before, *::after { box-sizing: border-box; min-width: 0; }
img, video, svg, picture, figure, iframe, embed, object { max-width: 100%; }
img, video, svg, iframe, embed, object { height: auto; }
table { width: 100%; max-width: 100%; table-layout: fixed; border-collapse: collapse; }
pre, code { white-space: pre-wrap; word-break: break-word; }
.wrap, .section, main, header, footer { max-width: 100%; }
.grid2 > *, .hero-grid > *, .contact-grid > *, .cards > *, .team > * { min-width: 0; }
/* Service card images: slightly smaller, aligned, all fit page width */
.service-img-wrap { height: 120px !important; }
.service-img-wrap img { width: auto !important; max-width: 88% !important; height: 100% !important; object-fit: contain !important; padding: 4px !important; }
#services .cards { align-items: stretch; }
#services .card { width: 100%; min-width: 0; }
@media (max-width: 680px) {
  .service-img-wrap { height: 100px !important; }
  .service-img-wrap img { max-width: 78% !important; }
}


/* === V10 FINAL RESPONSIVE & OVERFLOW FIXES === */
html, body {
    overflow-x: clip !important;
    max-width: 100% !important;
    position: relative !important;
}

*, *::before, *::after {
    box-sizing: border-box !important;
}

/* Service section desktop & laptop layout */
#services .cards {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 auto !important;
}

#services .card {
    display: flex !important;
    flex-direction: column !important;
    padding: 14px !important;
    background: #ffffff !important;
    border-radius: 8px !important;
    border: 1px solid var(--line, #e2e8f0) !important;
    border-top: 4px solid var(--gold, #d4af37) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
    min-width: 0 !important;
    height: 100% !important;
}

#services .service-img-wrap {
    width: 100% !important;
    height: 130px !important;
    max-height: 130px !important;
    background: #f8fafc !important;
    border-radius: 6px !important;
    border: 1px solid #edf2f7 !important;
    margin-bottom: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    padding: 8px !important;
}

#services .service-img-wrap img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
}

#services .card-body {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    padding: 0 !important;
}

#services .card-body h3 {
    font-size: 1.05rem !important;
    margin: 0 0 8px 0 !important;
    color: var(--text, #1a202c) !important;
}

#services .card-body p {
    font-size: 0.88rem !important;
    line-height: 1.55 !important;
    margin: 0 !important;
    color: var(--muted, #4a5568) !important;
}

/* Tablet & Mobile Breakpoints for services */
@media (max-width: 900px) {
    #services .cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }
    #services .service-img-wrap {
        height: 120px !important;
    }
}

@media (max-width: 520px) {
    #services .cards {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
}

.hero .eyebrow{font-size: clamp(1.4rem, 2.8vw, 2.1rem); font-weight: 800; margin-bottom: 12px; letter-spacing: 0;}
