@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Vazirmatn:wght@400;500;600;700;800&display=swap');
:root{--ink:#18221d;--muted:#66736a;--paper:#f7f8f4;--green:#4caf50;--deep:#143820;--line:#dbe3d9;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,'DM Sans',Arial,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}.wrap{width:min(1320px,calc(100% - 80px));margin-inline:auto}.site-header{height:90px;display:flex;align-items:center;gap:30px}.wordmark{font-size:27px;font-weight:800;letter-spacing:-3px}.mark-dot,.green-dot{color:var(--green)}.site-header nav{display:flex;gap:38px;margin:auto;font-size:14px;font-weight:700}.site-header nav a,.site-footer a{transition:color .2s}.site-header nav a:hover,.site-footer a:hover{color:var(--green)}.header-cta{font-size:14px;font-weight:800;border:1px solid var(--ink);padding:12px 20px;border-radius:40px}.header-cta span{margin-left:12px}.hero{min-height:690px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;position:relative;padding-bottom:75px}.eyebrow{display:inline-flex;gap:9px;align-items:center;text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:800;color:var(--green)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px #e0f3dd}.hero h1,.about-section h2,.contact-section h2{font-size:clamp(55px,6.1vw,94px);line-height:1.06;letter-spacing:-.075em;margin:26px 0}.hero h1 em,.about-section h2 em{font-style:normal;color:var(--green)}.hero-copy>p{max-width:550px;color:#5b685f;line-height:1.85;font-size:17px}.hero-copy strong{color:var(--ink)}.hero-actions{display:flex;align-items:center;gap:29px;margin-top:32px}.button{border:0;border-radius:40px;padding:16px 25px;font-weight:800;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:22px}.button.primary{background:var(--green);color:#fff}.button.primary:hover{background:#338b38}.button.secondary{background:var(--deep);color:#fff}.button.ghost{background:#edf1eb;color:var(--ink)}.text-link{font-size:14px;font-weight:800;border-bottom:1px solid var(--ink);padding-bottom:4px}.text-link span{margin-left:8px}.hero-art{height:560px;position:relative;display:grid;place-items:center}.hero-ring{position:absolute;width:min(500px,100%);aspect-ratio:1;border:1px solid #bdd6ba;border-radius:50%;box-shadow:0 0 0 55px #eaf3e8,0 0 0 56px #d6e7d2}.hero-disc{width:75%;aspect-ratio:1;border-radius:50%;background:var(--green);display:grid;place-items:center;position:relative;overflow:hidden;transform:rotate(-10deg)}.hero-disc:before{content:'';width:130%;height:38%;background:#70c872;position:absolute;transform:rotate(-22deg);top:14%}.hero-disc span{position:relative;color:white;font-weight:800;font-size:clamp(45px,5vw,75px);letter-spacing:-.09em;line-height:.95}.hero-disc .art-spark{font-size:42px;position:absolute;right:-40px;bottom:4px}.floating-label{position:absolute;right:-5px;bottom:95px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 20px;font-size:13px;font-weight:800;line-height:1.5;box-shadow:0 14px 45px #15382017}.floating-label b{position:absolute;right:16px;top:15px;color:var(--green)}.hero-footer{position:absolute;bottom:28px;left:0;right:0;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;color:var(--muted);font-size:12px;font-weight:700}.work-section{background:#fff;padding:110px 0 130px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:38px;gap:30px}.section-head h2,.admin-title h1{font-size:clamp(48px,5vw,76px);letter-spacing:-.07em;line-height:1;margin:17px 0 0}.section-head>p{max-width:345px;color:var(--muted);font-size:14px;line-height:1.8}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.project-card{min-width:0}.project-image{border:0;width:100%;height:390px;display:block;position:relative;overflow:hidden;border-radius:20px;text-align:left;background:#e8eee7}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.project-image:hover img{transform:scale(1.04)}.project-image .placeholder{width:100%;height:100%;display:grid;place-items:center;overflow:hidden;position:relative;font-size:clamp(48px,5vw,85px);font-weight:800;letter-spacing:-.09em;color:#fff}.placeholder span{position:relative;z-index:1;max-width:80%;text-align:center}.placeholder:before,.placeholder:after{content:'';position:absolute;border-radius:50%;width:65%;aspect-ratio:1;border:1px solid #ffffff75;right:-12%;top:-20%}.placeholder:after{right:auto;left:-25%;top:auto;bottom:-40%;width:85%}.palette-0{background:#326c43}.palette-1{background:#8a9fa4}.palette-2{background:#bd9a78}.palette-3{background:#9698be}.palette-4{background:#8da79a}.project-arrow{position:absolute;bottom:18px;right:18px;width:45px;height:45px;display:grid;place-items:center;background:#fff;border-radius:50%;font-size:21px}.project-meta{display:flex;justify-content:space-between;align-items:start;padding:20px 2px}.project-meta h3{font-size:23px;letter-spacing:-.04em;margin:0 0 5px}.project-meta p{font-size:13px;color:var(--muted);margin:0}.project-meta>span{font-size:12px;color:var(--muted);white-space:nowrap}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:130px}.about-section h2{font-size:clamp(45px,5vw,72px)}.about-content{padding-top:26px}.about-content>p{font-size:18px;line-height:1.9;color:#4c5c50;margin:0}.expertise{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.expertise span{border:1px solid #c9d6c8;border-radius:30px;padding:10px 14px;font-size:12px;font-weight:700}.contact-section{background:#153b24;color:#fff;padding:95px 0}.contact-inner{display:flex;justify-content:space-between;align-items:end;gap:30px}.contact-section h2{font-size:clamp(55px,6vw,88px);margin:15px 0}.contact-section p{color:#b3ccb8}.contact-button{background:var(--green);padding:20px 25px;border-radius:40px;font-weight:800;white-space:nowrap}.contact-button span{margin-left:28px}.site-footer{min-height:100px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;font-weight:700}.site-footer>div{display:flex;gap:26px}.admin-link{opacity:.55}.dialog-backdrop{position:fixed;inset:0;background:#102016b8;z-index:20;display:grid;place-items:center;padding:25px;overflow:auto}.dialog-backdrop[hidden],.admin-view[hidden],[hidden]{display:none!important}.dialog{position:relative;background:#fff;width:min(900px,100%);max-height:calc(100vh - 50px);overflow:auto;border-radius:23px}.close-dialog{position:absolute!important;right:17px;top:17px;z-index:2;background:#fff!important}.icon-button{border:0;width:38px;height:38px;border-radius:50%;background:#edf1eb;font-size:25px;display:grid;place-items:center}.dialog-images img{display:block;width:100%;max-height:550px;object-fit:cover}.dialog-images img+img{margin-top:8px}.dialog-content{padding:32px}.dialog-content h2{font-size:42px;letter-spacing:-.06em;margin:12px 0 25px}.dialog-content dl{display:flex;gap:70px;margin:0}.dialog-content dt{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.dialog-content dd{margin:6px 0 0;font-weight:700}.dialog-content a{color:var(--green);text-decoration:underline}.admin-view{position:fixed;inset:0;overflow:auto;z-index:30;background:#f5f7f3;font-family:Tahoma,Arial,sans-serif;color:#183022}.admin-header{height:74px;border-bottom:1px solid #dce5da;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 38px}.admin-header strong{font-size:17px}.admin-back,.quiet-button{font-size:13px;color:#4d7253}.quiet-button{border:0;background:transparent}.login-panel{width:min(430px,calc(100% - 40px));margin:11vh auto;background:#fff;border:1px solid #e0e8df;border-radius:22px;padding:35px;box-shadow:0 20px 70px #1540230b}.login-panel h1{font-size:35px;margin:15px 0}.login-panel p,.admin-title p,.intro-editor p{color:#6a776b;line-height:1.8;font-size:13px}.login-panel form{display:grid;gap:12px;margin-top:25px}.admin-view label{font-size:13px;font-weight:700}.admin-view input:not([type=file]),.admin-view textarea{width:100%;border:1px solid #d8e2d7;border-radius:10px;padding:13px 14px;background:#fff;outline-color:var(--green);color:#203327}.admin-view input[type=file]{font-size:12px}.admin-layout{width:min(1450px,calc(100% - 70px));margin:45px auto;display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:35px;align-items:start}.admin-layout:has(.editor-panel[hidden]){grid-template-columns:1fr}.admin-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-title h1{font-size:45px}.admin-projects{display:grid;gap:12px;margin-top:30px}.admin-row{background:#fff;border:1px solid #e1e8df;border-radius:14px;display:flex;align-items:center;gap:17px;padding:12px}.admin-thumb{width:85px;height:62px;flex:none;background:#dae6da;border-radius:8px;object-fit:cover;display:grid;place-items:center;color:#488b51;font-weight:800}.admin-row-info{min-width:0;flex:1}.admin-row-info strong{font-size:15px}.admin-row-info span{display:block;color:#7b887d;font-size:12px;margin-top:6px}.admin-row-actions{display:flex;gap:7px}.admin-row-actions button{border:1px solid #dbe4d9;border-radius:7px;padding:8px 11px;background:#fff;color:#355d3d;font-size:12px}.admin-row-actions .danger{color:#b94444}.intro-editor{background:#fff;border:1px solid #e1e8df;border-radius:15px;padding:25px;margin-top:28px}.intro-editor h2{margin:0;font-size:19px}.intro-editor textarea{display:block;margin:18px 0;resize:vertical}.editor-panel{background:#fff;border:1px solid #dfe8dd;border-radius:18px;padding:24px;position:sticky;top:25px;max-height:calc(100vh - 50px);overflow:auto;box-shadow:0 15px 40px #123b1c0a}.editor-head{display:flex;align-items:start;justify-content:space-between}.editor-head h2{font-size:23px;margin:9px 0 20px}.editor-panel form{display:grid;gap:11px}.editor-panel label:not(:first-child){margin-top:7px}.editor-panel label b{color:#c54444}.editor-panel small{color:#7b887d;line-height:1.6}.image-list{display:flex;flex-wrap:wrap;gap:10px}.image-item{position:relative;width:72px;height:72px}.image-item img{width:100%;height:100%;object-fit:cover;border-radius:8px}.image-item button{position:absolute;top:-7px;left:-7px;width:22px;height:22px;border:0;border-radius:50%;background:#a23e3e;color:#fff}.form-error{color:#b33b3b!important;min-height:18px;margin:0}.form-actions{display:flex;gap:8px;margin-top:8px}@media(max-width:900px){.wrap{width:min(100% - 40px,720px)}.hero{grid-template-columns:1fr;padding-top:60px}.hero-art{height:420px;grid-row:2}.hero-ring{width:315px;box-shadow:0 0 0 35px #eaf3e8,0 0 0 36px #d6e7d2}.hero-disc{width:280px}.hero-disc span{font-size:48px}.floating-label{right:7%;bottom:40px}.hero-footer{position:static;grid-row:3;margin-top:25px}.about-section{grid-template-columns:1fr;gap:0}.admin-layout{grid-template-columns:1fr;width:calc(100% - 30px)}.editor-panel{position:static;max-height:none}}@media(max-width:650px){.site-header{height:72px}.site-header nav{gap:15px;font-size:12px}.header-cta{display:none}.hero h1{font-size:54px}.hero-copy>p{font-size:15px}.hero-actions{gap:17px}.button{padding:14px 18px;font-size:12px}.hero-footer{font-size:10px}.work-section{padding:75px 0}.section-head{display:block}.section-head>p{margin-top:20px}.project-grid{grid-template-columns:1fr}.project-image{height:290px}.about-section{padding-block:85px}.about-content>p{font-size:16px}.contact-inner{display:block}.contact-button{display:inline-block;margin-top:25px}.site-footer{display:block;padding-block:25px}.site-footer>div{margin-top:17px;gap:15px}.admin-header{padding:0 15px}.admin-title{align-items:start}.admin-title .button{max-width:130px}.admin-row{flex-wrap:wrap}.admin-row-actions{width:100%;justify-content:flex-end}.dialog-content dl{display:block}.dialog-content dl>div+div{margin-top:20px}}

.project-image img{object-position:top center}
.header-actions{display:flex;align-items:center;gap:14px;margin-inline-start:auto}.site-header nav{margin:auto}.language-switch{display:inline-flex;align-items:center;padding:3px;border:1px solid var(--line);border-radius:30px;background:#fff;flex:none}.language-switch button{min-width:37px;height:32px;padding:0 8px;border:0;border-radius:22px;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.language-switch button[aria-pressed=true]{background:var(--deep);color:#fff}.intro-editor label{display:block;margin-top:17px}.intro-editor textarea{margin-top:9px}
html[lang=fa] body{font-family:Vazirmatn,Tahoma,Arial,sans-serif}html[lang=fa] .eyebrow{letter-spacing:0;font-size:12px}html[lang=fa] .hero h1,html[lang=fa] .about-section h2,html[lang=fa] .contact-section h2{letter-spacing:-.045em;line-height:1.35}html[lang=fa] .hero h1{font-size:clamp(50px,5.5vw,80px)}html[lang=fa] .hero-copy>p{line-height:2.1}html[lang=fa] .section-head h2{letter-spacing:-.04em}html[lang=fa] .hero-disc span{letter-spacing:-.05em;line-height:1.25;text-align:center}html[lang=fa] .hero-disc .art-spark{left:-32px;right:auto}html[lang=fa] .floating-label{left:-5px;right:auto}html[lang=fa] .floating-label b{left:16px;right:auto}html[lang=fa] .project-arrow{right:auto;left:18px}html[lang=fa] .close-dialog{right:auto;left:17px}html[lang=fa] .about-content>p{line-height:2.15}html[lang=fa] .header-cta span[aria-hidden],html[lang=fa] .text-link span[aria-hidden],html[lang=fa] .contact-button span[aria-hidden]{margin-left:0;margin-right:12px}
@media(max-width:650px){.site-header{gap:8px}.site-header nav{gap:10px;margin-inline:auto;font-size:11px}.header-actions{margin-inline-start:0}.language-switch button{min-width:33px;padding:0 5px}.hero{padding-top:35px}html[lang=fa] .hero h1{font-size:clamp(43px,10vw,55px)}html[lang=fa] .floating-label{left:4%;right:auto}}

/* Portfolio introduction and services */
.site-header nav{gap:26px}
.hero{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:6%;min-height:720px;padding-bottom:82px}
.hero-kicker{display:inline-block;color:#3e7350;font-size:13px;font-weight:800;letter-spacing:.01em}
.hero h1{max-width:760px;font-size:clamp(56px,5.9vw,86px);letter-spacing:-.055em;line-height:1.12;margin:23px 0 27px}
.hero h1 em{font-style:normal;color:#3f944b}
.hero-copy>p{max-width:600px;font-size:16px;line-height:1.95;color:#506057}
.hero-actions{margin-top:33px}
.hero-art{height:560px;display:block;isolation:isolate}
.showcase-panel{width:86%;height:520px;margin:10px auto 0;background:#173e2a;color:#fff;border-radius:18px;padding:18px;position:relative;box-shadow:0 28px 55px #193f2629;transform:rotate(-2deg)}
.showcase-top{height:34px;display:flex;justify-content:space-between;align-items:start;color:#c8ddce;font-size:11px;font-weight:700;letter-spacing:.04em}
.showcase-mark{font-size:16px;color:#fff;font-weight:800;letter-spacing:-.04em}
.showcase-image{height:375px;overflow:hidden;border-radius:9px;background:#e6eae5}
.showcase-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.showcase-caption{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 6px 0}
.showcase-caption strong{font-size:19px;letter-spacing:-.02em}
.showcase-caption span{color:#b9d4c0;font-size:12px}
.showcase-note{position:absolute;bottom:0;left:0;display:flex;align-items:center;gap:9px;padding:11px 15px;border-radius:9px;background:#fff;box-shadow:0 10px 24px #173e2a1b;color:#263b2c;font-size:12px;font-weight:700;transform:rotate(2deg)}
.showcase-note-dot{width:9px;height:9px;border-radius:50%;background:#4caf50;flex:none}
.services-section{background:#eaf0e8;padding:105px 0 110px;scroll-margin-top:20px}
.services-layout{display:grid;grid-template-columns:minmax(0,.76fr) minmax(0,1fr);gap:9%;align-items:start}
.services-intro{position:sticky;top:35px}
.services-intro h2{font-size:clamp(44px,4.7vw,67px);line-height:1.2;letter-spacing:-.045em;margin:0 0 25px}
.services-intro h2 em{font-style:normal;color:#3f944b}
.services-intro p{font-size:16px;line-height:1.9;color:#52645a;max-width:480px}
.services-contact{display:inline-flex;gap:27px;align-items:center;border-bottom:1px solid #3d7f49;margin-top:21px;padding-bottom:7px;color:#286736;font-size:14px;font-weight:800}
.services-contact span[aria-hidden]{font-size:19px}
.services-list{border-top:1px solid #aabdab}
.service-item{display:grid;grid-template-columns:14px 1fr;gap:20px;align-items:start;padding:24px 0 27px;border-bottom:1px solid #aabdab}
.service-marker{width:8px;height:8px;border:2px solid #438b4b;border-radius:50%;margin-top:14px}
.service-item h3{font-size:23px;line-height:1.4;letter-spacing:-.025em;margin:0 0 8px}
.service-item p{font-size:14px;line-height:1.8;color:#52645a;margin:0;max-width:560px}
.work-section{padding-top:110px}
.about-section h2{line-height:1.25}
.about-content>p{max-width:68ch}
.contact-section{background:#143923}
.contact-section h2{line-height:1.2}
.contact-section p{font-size:16px}
.dialog-documents{margin-top:29px;border-top:1px solid var(--line);padding-top:21px}
.dialog-documents[hidden]{display:none}
.dialog-documents h3{font-size:16px;margin:0 0 13px}
.dialog-documents a{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:12px 0;font-size:14px;color:#245f33;text-decoration:none}
.dialog-documents a:hover{text-decoration:underline}
.cover-preview{margin-top:10px}
.cover-preview .image-item{width:130px;height:100px}
.document-list{display:grid;gap:7px}
.document-item{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f0f5ef;padding:9px 12px;border-radius:8px;font-size:12px}
.document-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.document-item button{border:0;background:none;color:#a23e3e;font-size:17px}
html[lang=fa] .hero h1{font-size:clamp(51px,5.6vw,78px);letter-spacing:-.03em;line-height:1.35}
html[lang=fa] .hero-copy>p{line-height:2.05}
html[lang=fa] .services-intro h2{letter-spacing:-.025em;line-height:1.35}
html[lang=fa] .service-item h3{letter-spacing:0}
html[lang=fa] .showcase-panel{transform:rotate(2deg)}
html[lang=fa] .showcase-note{left:auto;right:0;transform:rotate(-2deg)}
@media(max-width:950px){.hero{gap:2%;grid-template-columns:1fr .85fr}.showcase-panel{width:93%;height:470px}.showcase-image{height:325px}.hero-art{height:500px}.services-layout{gap:5%}}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:10px;padding-top:55px}.hero-art{grid-row:2;width:min(560px,100%);margin:0 auto}.services-layout{grid-template-columns:1fr;gap:40px}.services-intro{position:static}.services-intro p{max-width:640px}}
@media(max-width:650px){.site-header{height:auto;min-height:96px;flex-wrap:wrap;gap:10px;padding-block:13px}.site-header .wordmark{order:1}.site-header .header-actions{order:2;margin-inline-start:auto}.site-header nav{order:3;width:100%;justify-content:space-between;gap:8px;margin:0;font-size:11px}.hero{padding-top:42px;min-height:0}.hero h1{font-size:clamp(46px,10vw,62px)}html[lang=fa] .hero h1{font-size:clamp(43px,9vw,57px)}.hero-copy>p{font-size:15px}.hero-art{height:405px}.showcase-panel{height:385px;width:89%;padding:13px}.showcase-image{height:258px}.showcase-caption{padding-top:14px}.showcase-caption strong{font-size:15px}.showcase-caption span{font-size:10px}.showcase-note{font-size:10px}.hero-footer{margin-top:17px}.services-section{padding:75px 0}.services-intro h2{font-size:clamp(42px,10vw,58px)}.service-item h3{font-size:21px}.service-item p{font-size:13px}.work-section{padding-top:75px}}

@font-face{font-family:Dana;src:url('/public/fonts/DanaFaNum-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Dana;src:url('/public/fonts/DanaFaNum-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Dana;src:url('/public/fonts/DanaFaNum-DemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Dana;src:url('/public/fonts/DanaFaNum-Bold.ttf') format('truetype');font-weight:700 900;font-display:swap}
html[lang=fa] body,.admin-view{font-family:Dana,Tahoma,Arial,sans-serif}
.showcase-panel.has-photo{padding:0;overflow:hidden;background:#cfddd0;transform:none;height:530px}
.showcase-panel.has-photo .showcase-image{position:absolute;inset:0;height:100%;border-radius:inherit;background:linear-gradient(145deg,#dce8db,#acc9ad)}
.showcase-panel.has-photo .showcase-image::before{content:'';position:absolute;width:75%;height:75%;left:12%;bottom:0;background:#9ac59f;border-radius:48% 48% 0 0}
.showcase-panel.has-photo .showcase-image img{position:relative;z-index:1;object-fit:contain;object-position:center bottom}
.showcase-panel.has-photo .showcase-top{position:absolute;z-index:2;top:18px;left:20px;right:20px;color:#24472d}
.showcase-panel.has-photo .showcase-mark{color:#24472d}
.showcase-panel.has-photo .showcase-caption{position:absolute;z-index:2;bottom:0;left:0;right:0;padding:30px 24px 20px;color:#fff;background:linear-gradient(transparent,#183d2cd9)}
.showcase-panel.has-photo .showcase-caption span{color:#dcebdc}
html[lang=fa] .showcase-panel.has-photo{transform:none}
.section-media{margin:22px 0;max-width:420px;height:215px;overflow:hidden;border-radius:13px;background:#dce8da}
.section-media img,.wide-media img{display:block;width:100%;height:100%;object-fit:cover}
.wide-media{height:230px;overflow:hidden;border-radius:14px;margin:0 0 32px;background:#e5ede4}
.about-media{max-width:500px;height:260px}
.contact-media{max-width:350px;height:170px}
.section-head-aside{max-width:355px}
.section-head-aside p{font-size:14px;color:var(--muted);line-height:1.8}
.section-inline-button{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:5px;margin-top:12px;color:#297439;font-size:14px;font-weight:700}
.section-inline-button:hover,.services-contact:hover{color:#1b5028}
.contact-section .contact-media{margin-bottom:0}
.contact-section .section-media img{object-position:center}
.admin-title-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.homepage-editor{margin-top:28px;background:#fff;border:1px solid #e1e8df;border-radius:15px;padding:25px}
.homepage-editor h2{font-size:20px;margin:0 0 8px}
.homepage-editor>p{font-size:13px;color:#6a776b;line-height:1.8;margin:0 0 23px}
.home-section{border-top:1px solid #dfe8dd;padding:15px 0}
.home-section summary{font-size:16px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.home-section summary::after{content:'+';font-size:20px;color:#4caf50}
.home-section[open] summary::after{content:'−'}
.home-section-form{display:grid;gap:14px;padding:22px 0 8px}
.home-field{display:grid;gap:8px}
.home-field label{display:block}
.home-language-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.home-language-fields input,.home-language-fields textarea{width:100%}
.home-language-fields textarea{min-height:82px;resize:vertical}
.home-image-preview{height:120px;width:180px;max-width:100%;border-radius:10px;overflow:hidden;background:#e4ede2}
.home-image-preview img{width:100%;height:100%;object-fit:cover}
.home-image-actions{display:flex;gap:8px;align-items:center}
.home-image-actions button{border:0;background:transparent;color:#a23e3e;font-size:12px}
.home-section-save{justify-self:start}
@media(max-width:900px){.showcase-panel.has-photo{height:470px}}
@media(max-width:650px){.showcase-panel.has-photo{height:385px}.home-language-fields{grid-template-columns:1fr}.admin-title-actions{justify-content:flex-end}.section-head-aside{max-width:none}}

/* Projects and indexable detail pages */
.project-track{display:flex;gap:25px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;padding:0 2px 20px;scrollbar-color:#83ae88 #e9f0e9;scrollbar-width:thin}
.project-track .project-card{flex:0 0 min(430px,42vw);scroll-snap-align:start}
.project-track .project-image{height:315px}
.project-card{display:block;color:var(--ink)}
.project-card:focus-visible,.view-all:focus-visible,.language-switch a:focus-visible{outline:3px solid #418d4c;outline-offset:4px}
.view-all{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;margin-top:18px;padding:11px 0;border-bottom:1px solid #2d723a;font-size:14px;font-weight:800;color:#286d35}
.view-all:hover{color:#173f23}
.language-switch a{min-width:37px;height:32px;padding:6px 8px;border-radius:22px;color:var(--muted);font-size:12px;font-weight:800;text-align:center}
.language-switch a.active{background:var(--deep);color:#fff}
.archive-hero{padding:105px 0 68px}
.breadcrumb{color:#3b8350;font-size:13px;font-weight:700}
.breadcrumb:hover{text-decoration:underline;text-underline-offset:4px}
.archive-hero h1,.detail-title h1{font-size:clamp(55px,6.3vw,90px);line-height:1.18;letter-spacing:-.05em;margin:24px 0}
.archive-hero p{max-width:570px;color:#5d6c60;font-size:16px;line-height:1.9}
.archive-section{padding-bottom:120px}
.archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}
.archive-grid .project-image{height:360px}
.detail-page{padding-top:70px;padding-bottom:100px}
.detail-title{margin:60px 0 36px}
.detail-title p{font-size:13px;font-weight:800;color:#3b8350;margin:0}
.detail-title h1{margin-top:12px}
.detail-cover{height:min(68vw,580px);min-height:310px;overflow:hidden;border-radius:18px;background:#e8f0e8}
.detail-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.detail-meta{display:flex;flex-wrap:wrap;gap:40px;border-block:1px solid var(--line);padding:23px 0;margin:35px 0 80px}
.detail-meta div{min-width:150px}
.detail-meta dt{font-size:12px;color:#718075;margin-bottom:8px}
.detail-meta dd{font-size:16px;font-weight:700;margin:0}
.detail-meta a{color:#277638;text-decoration:underline;text-underline-offset:4px}
.detail-gallery,.detail-documents{margin-top:70px}
.detail-gallery h2,.detail-documents h2{font-size:30px;letter-spacing:-.03em;margin-bottom:22px}
.detail-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.detail-gallery-grid img{display:block;width:100%;height:auto;border-radius:12px;background:#e9eee8}
.detail-documents>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.detail-documents a{display:flex;justify-content:space-between;gap:15px;padding:17px 19px;background:#eaf0e8;border-radius:10px;font-size:14px;font-weight:700;word-break:break-word}
.detail-documents a:hover{background:#dbe8dc}
.detail-end{margin-top:90px;padding-top:25px;border-top:1px solid var(--line)}
.detail-end a{font-weight:800;color:#2b7739}
html[lang=fa] .archive-hero h1,html[lang=fa] .detail-title h1{letter-spacing:-.025em;line-height:1.35}
html[lang=fa] .archive-hero p{line-height:2}
@media(max-width:650px){.project-track .project-card{flex-basis:82vw}.project-track .project-image{height:245px}.archive-hero{padding:70px 0 35px}.archive-grid{grid-template-columns:1fr;gap:25px}.archive-grid .project-image{height:280px}.archive-section{padding-bottom:75px}.detail-page{padding-top:40px}.detail-title{margin:40px 0 25px}.detail-cover{height:340px}.detail-meta{margin-bottom:50px;gap:22px}.detail-gallery-grid,.detail-documents>div{grid-template-columns:1fr}}

/* Refined portfolio layout */
.header-shell{position:sticky;top:0;z-index:40;background:var(--paper);border-bottom:1px solid #cbd8cb;box-shadow:0 6px 18px #14382009}
.top-strip{background:#173c29;color:#e9f1ea;min-height:30px;font-size:11px;font-weight:700}
.top-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px}
.top-strip a{color:#fff;text-decoration:underline;text-decoration-color:#95bd9b;text-underline-offset:3px;direction:ltr;unicode-bidi:isolate}
.site-header{height:74px}
.site-header nav{gap:23px}
.site-header nav a{white-space:nowrap}
.header-cta{padding:10px 17px}
.header-shell a:focus-visible,.header-shell button:focus-visible,.resume-link:focus-visible,.carousel-controls button:focus-visible,.contact-methods a:focus-visible,.contact-page .button:focus-visible{outline:3px solid #258849;outline-offset:3px}
html{scroll-padding-top:115px}
section[id]{scroll-margin-top:115px}
::selection{background:#9ecda5;color:#102718}
.hero{min-height:610px;padding-top:45px;padding-bottom:95px;gap:5%}
.hero h1,html[lang=fa] .hero h1{font-size:clamp(40px,3.6vw,50px);letter-spacing:-.025em;line-height:1.32;margin:17px 0 20px}
.hero-copy>p{font-size:15px;line-height:1.85;max-width:60ch}
.hero-art{height:465px}
.showcase-panel.has-photo{height:450px;width:92%;margin:0 auto;background:#1e5940;border-radius:12px;box-shadow:0 18px 42px #153c291f}
.showcase-panel.has-photo .showcase-image{inset:37px 0 0;height:auto;background:#296c4d;border-radius:0}
.showcase-panel.has-photo .showcase-image::before{display:none}
.showcase-panel.has-photo .showcase-image img{object-fit:contain;object-position:center bottom}
.showcase-panel.has-photo .showcase-top{top:0;left:0;right:0;height:38px;align-items:center;padding:0 16px;background:#143c2b;color:#d7e8d9;font-size:10px}
.showcase-panel.has-photo .showcase-mark{color:#d7e8d9}
.showcase-panel.has-photo .showcase-caption{left:auto;right:0;bottom:0;max-width:60%;display:flex;flex-direction:column;align-items:end;gap:3px;text-align:end;padding:25px 17px 14px;background:none;text-shadow:0 2px 12px #113923}
.showcase-panel.has-photo .showcase-caption strong{font-size:16px}
.showcase-panel.has-photo .showcase-caption span{font-size:10px}
.showcase-project{display:none}
.showcase-panel.has-photo .showcase-project{display:flex;position:absolute;z-index:3;left:15px;bottom:16px;flex-direction:column;gap:4px;width:122px;padding:5px;background:#f6f8f4;box-shadow:0 8px 22px #1238244d;color:#254733;border-radius:6px;transform:rotate(-3deg);font-size:8px;font-weight:800}
.showcase-project img{display:block;width:100%;height:62px;object-fit:cover;object-position:top;border-radius:3px}
.showcase-project span{padding:0 3px 2px}
.services-intro h2,html[lang=fa] .services-intro h2,.section-head h2,.about-section h2,.contact-section h2,html[lang=fa] .about-section h2,html[lang=fa] .contact-section h2{font-size:clamp(38px,3.3vw,44px);letter-spacing:-.025em;line-height:1.35}
.services-intro p,.contact-section p{font-size:15px}
.resume-link{display:block;width:max-content;max-width:100%;margin-top:19px;color:#416b49;font-size:11px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.section-head-aside{display:flex;flex-direction:column;align-items:flex-start;text-align:start;margin-inline-start:auto}
.section-head-aside p{margin:0 0 7px}
.view-all{margin-top:7px}
.project-track{scrollbar-width:none;scroll-behavior:smooth;padding-bottom:12px}
.project-track::-webkit-scrollbar{display:none}
.project-track .project-card{flex-basis:min(400px,40vw)}
.project-track .project-image{height:280px}
.project-tag{display:inline-flex;align-items:center;min-height:28px;padding:4px 11px;border:1px solid #b8cbb9;border-radius:30px;color:#2d6e40;font-size:11px;font-weight:700;line-height:1.4}
.project-meta{gap:14px}
.project-meta h3{font-size:18px;margin:0 0 12px}
.project-meta>span{font-size:11px}
.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:14px;border-top:1px solid var(--line);color:#536658;font-size:12px;font-weight:700}
.carousel-controls>div{display:flex;gap:8px;direction:ltr}
.carousel-controls button{width:46px;height:46px;border-radius:50%;border:1px solid #487b53;background:#fff;color:#215933;font-size:21px;display:grid;place-items:center;transition:background .2s,color .2s}
.carousel-controls button:not(:disabled):hover{background:#215933;color:#fff}
.carousel-controls button:disabled{opacity:.32;cursor:not-allowed}
.contact-page{padding-top:70px;padding-bottom:130px;min-height:calc(100vh - 205px)}
.contact-page-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:10%;margin-top:70px}
.contact-page h1{font-size:clamp(40px,3.8vw,50px);line-height:1.35;letter-spacing:-.025em;max-width:14ch;margin:0 0 25px}
.contact-page p{font-size:16px;line-height:2;color:#52645a;max-width:48ch;margin:0 0 28px}
.contact-methods{border-top:1px solid #a9c0ad}
.contact-methods h2{font-size:22px;margin:22px 0 8px}
.contact-methods>a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 0;border-bottom:1px solid #c7d6c8;font-size:13px}
.contact-methods>a:hover strong{color:#27833e}
.contact-methods strong{font-size:14px;unicode-bidi:isolate;overflow-wrap:anywhere;text-align:end}
.archive-hero h1,.detail-title h1,html[lang=fa] .archive-hero h1,html[lang=fa] .detail-title h1{font-size:clamp(40px,3.7vw,50px);letter-spacing:-.025em}
.archive-hero{padding-top:75px;padding-bottom:45px}
.archive-grid .project-image{height:320px}
@media(max-width:950px){.site-header nav{gap:14px;font-size:12px}.header-cta{font-size:12px}.hero{grid-template-columns:1fr .82fr;min-height:0}.hero-art{height:410px}.showcase-panel.has-photo{height:390px}.showcase-panel.has-photo .showcase-project{width:100px}.showcase-project img{height:52px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.top-strip{font-size:10px}.site-header{height:auto;min-height:92px;padding-block:11px;gap:8px}.site-header .wordmark{order:1}.site-header .header-actions{order:2;margin-inline-start:auto}.site-header nav{order:3;width:100%;justify-content:space-between;gap:5px;margin:4px 0 0;font-size:11px;overflow-x:auto;scrollbar-width:none}.site-header nav a{min-height:36px;display:flex;align-items:center}.header-cta{display:none}.language-switch button{min-width:40px;min-height:36px}.hero{display:block;padding-top:45px;padding-bottom:45px}.hero-art{display:none}.hero-footer{display:none}.hero h1,html[lang=fa] .hero h1{font-size:clamp(34px,8.6vw,42px);line-height:1.4;margin:13px 0 18px}.hero-copy>p,html[lang=fa] .hero-copy>p{font-size:14px;line-height:2}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:23px}.button{min-height:44px}.services-section{padding:68px 0}.services-intro h2,html[lang=fa] .services-intro h2,.section-head h2,.about-section h2,.contact-section h2,html[lang=fa] .about-section h2,html[lang=fa] .contact-section h2{font-size:clamp(29px,7vw,38px)}.services-intro p{font-size:14px}.service-item{padding:20px 0}.service-item h3{font-size:18px}.service-item p{font-size:13px}.work-section{padding:68px 0}.section-head{display:block;margin-bottom:25px}.section-head-aside{max-width:none;margin-top:18px}.project-track{gap:15px}.project-track .project-card{flex-basis:83vw}.project-track .project-image{height:235px}.carousel-controls{padding-top:10px}.about-section{padding-block:70px;gap:15px}.about-content{padding-top:0}.about-content>p{font-size:14px;line-height:2}.contact-section{padding:70px 0}.contact-inner{display:flex;flex-direction:column;align-items:stretch}.contact-button{align-self:flex-start;margin-top:0}.site-footer{padding-block:25px}.contact-page{padding-top:42px;padding-bottom:70px}.contact-page-grid{grid-template-columns:1fr;gap:50px;margin-top:35px}.contact-page h1{font-size:clamp(34px,8vw,42px)}.contact-page p{font-size:14px}.contact-methods>a{min-height:60px}.archive-grid{grid-template-columns:1fr}.archive-grid .project-image{height:250px}.archive-hero{padding-top:50px}.detail-page{padding-top:45px}}
@media(prefers-reduced-motion:reduce){html,.project-track{scroll-behavior:auto}.project-image img{transition:none}}

/* Editorial hero: project mockups and portrait */
.hero-showcase{display:block;position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:none;min-height:800px;padding:85px 0 0;background:#110d19;color:#fff}
.hero-glow{position:absolute;z-index:-1;inset:30% -13% -35%;transform:rotate(-9deg);border-radius:50%;background:radial-gradient(ellipse at 15% 80%,#d65b34 0%,#bc4559 22%,transparent 52%),radial-gradient(ellipse at 76% 30%,#8432b7 0%,#552685 40%,transparent 72%),linear-gradient(100deg,#241233,#9d29ae 60%,#ea7139);filter:saturate(1.08)}
.hero-showcase .hero-layout{position:relative;z-index:1}
.hero-showcase .hero-copy{text-align:center;max-width:860px;margin:0 auto}
.hero-showcase .hero-kicker{color:#d9c4ec;font-size:12px;letter-spacing:.05em}
.hero-showcase h1,.hero-showcase h1 em,html[lang=fa] .hero-showcase h1{max-width:none;font-size:clamp(42px,4.3vw,58px);line-height:1.28;letter-spacing:-.03em;color:#fff;margin:16px auto 18px}
.hero-showcase h1 em{color:#e0acf4;font-style:normal}
.hero-showcase .hero-copy>p,html[lang=fa] .hero-showcase .hero-copy>p{margin:0 auto;max-width:700px;color:#ded8e6;font-size:15px;line-height:1.9}
.hero-showcase .hero-copy strong{color:#fff}
.hero-showcase .hero-actions{justify-content:center;margin-top:25px;gap:20px}
.hero-showcase .button.primary{background:#eee6f4;color:#251631;min-height:46px}
.hero-showcase .button.primary:hover{background:#fff}
.hero-showcase .text-link{color:#fff;border-color:#d3a5e4;padding-bottom:7px}
.hero-showcase .hero-actions a:focus-visible{outline:3px solid #fff;outline-offset:4px}
.hero-stage{position:relative;height:465px;margin-top:30px}
.mockup{position:absolute;overflow:hidden;border:1px solid #ffffffb8;border-radius:14px;background:#fff;color:#17201a;box-shadow:0 24px 58px #0b071475;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.mockup:hover{transform:translateY(-9px) rotate(0deg)}
.mockup-melech{width:28%;height:305px;left:0;bottom:55px;transform:rotate(-6deg)}
.mockup-strategy{width:22%;height:232px;left:25%;bottom:7px;transform:rotate(5deg);background:#f7f4eb}
.mockup-portrait{width:26%;height:385px;left:43%;bottom:24px;transform:rotate(-2deg);background:#295a48}
.mockup-lab{width:28%;height:305px;right:0;bottom:35px;transform:rotate(6deg)}
.mockup-browser{height:30px;display:flex;align-items:center;gap:5px;padding:0 11px;background:#f5f5f4;border-bottom:1px solid #e5e5e3}
.mockup-browser span{width:6px;height:6px;border-radius:50%;background:#c8c6c9}
.mockup-browser span:first-child{background:#dd8f80}
.mockup-browser b{font:500 9px Manrope,Arial,sans-serif;color:#68736c;margin-inline:auto;white-space:nowrap}
.mockup-screen{height:calc(100% - 65px);overflow:hidden;background:#e6e9e9}
.mockup-screen img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.mockup-footer{height:35px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;background:#fff;color:#34433b;font-size:10px;font-weight:700}
.mockup-footer strong{color:#9a8a9e;font-size:10px}
.strategy-head{height:36px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;background:#2b4058;color:#fff;font:700 9px Manrope,Arial,sans-serif;letter-spacing:.1em}
.strategy-body{height:calc(100% - 71px);padding:22px 17px;color:#2b4058;font-size:16px;font-weight:800;line-height:1.5}
.strategy-flow{display:flex;align-items:center;justify-content:space-between;gap:4px;margin:17px 0 22px}
.strategy-flow i{width:28%;height:24px;border:1px solid #8195aa;border-radius:6px;background:#e5ebf1;position:relative}
.strategy-flow i:nth-child(2){background:#c9d8e3}
.strategy-flow i:last-child{background:#a9c0d0}
.strategy-flow i+ i::before{content:'';position:absolute;width:11px;height:1px;background:#8195aa;right:100%;top:50%}
.strategy-lines{display:grid;gap:7px}
.strategy-lines i{height:5px;border-radius:10px;background:#d1dce5}
.strategy-lines i:nth-child(2){width:80%}
.strategy-lines i:nth-child(3){width:55%}
.portrait-top{height:36px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;background:#173e31;color:#e5f0e8;font-size:10px;font-weight:800}
.portrait-top .showcase-mark{font-size:13px;color:#e5f0e8}
.portrait-photo{height:calc(100% - 91px);background:linear-gradient(155deg,#7bab8e,#3e8467 75%);display:flex;align-items:end;justify-content:center;overflow:hidden}
.portrait-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}
.portrait-caption{height:55px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0 14px;background:#173e31;color:#fff}
.portrait-caption strong{font-size:13px}
.portrait-caption span{font-size:10px;color:#c8dece}
html[lang=fa] .mockup-browser b,html[lang=fa] .strategy-head{font-family:Manrope,Arial,sans-serif}
@media(max-width:1000px){.hero-showcase{min-height:730px;padding-top:65px}.hero-stage{height:400px}.mockup-melech,.mockup-lab{height:255px}.mockup-strategy{height:208px}.mockup-portrait{height:330px}.strategy-body{font-size:13px;padding:14px}.mockup-footer{font-size:9px}}
@media(max-width:700px){.hero-showcase{min-height:0;padding:65px 0 73px}.hero-glow{inset:35% -70% -80%;filter:blur(10px)}.hero-showcase h1,html[lang=fa] .hero-showcase h1{font-size:clamp(34px,8.5vw,43px);line-height:1.4}.hero-showcase .hero-kicker{font-size:11px}.hero-showcase .hero-copy>p,html[lang=fa] .hero-showcase .hero-copy>p{font-size:14px;line-height:2}.hero-showcase .hero-actions{gap:18px;flex-direction:column;align-items:center}.hero-showcase .hero-actions .button{width:100%;max-width:330px}.hero-stage{display:none}}

/* Light green hero based on the supplied composition */
.hero-showcase{height:calc(100svh - 104px);min-height:560px;padding:clamp(22px,4svh,50px) 0 0;background:#f7f8f4;color:#183823}
.hero-glow{inset:28% -18% -50%;transform:rotate(-8deg);border-radius:50%;background:radial-gradient(ellipse at 18% 84%,#aed5a8 0%,#cce6c4 31%,transparent 59%),radial-gradient(ellipse at 78% 43%,#80bc88 0%,#b6d9af 45%,transparent 72%),linear-gradient(100deg,#e4f0d9,#a8d4a7 60%,#d4eac8);filter:none}
.hero-showcase .hero-kicker{color:#397149}
.hero-showcase h1,html[lang=fa] .hero-showcase h1{color:#173d2a;font-size:clamp(37px,3.8vw,50px);margin:11px auto 12px;line-height:1.25}
.hero-showcase h1 em{color:#3d9853}
.hero-showcase .hero-copy>p,html[lang=fa] .hero-showcase .hero-copy>p{color:#435b48;max-width:720px;font-size:14px;line-height:1.8}
.hero-showcase .hero-copy strong{color:#193b27}
.hero-showcase .hero-actions{margin-top:18px;gap:20px}
.hero-showcase .button.primary{background:#2e8642;color:#fff;min-height:44px}
.hero-showcase .button.primary:hover{background:#1d6b30}
.hero-showcase .text-link{color:#245b34;border-color:#4e985c}
.hero-showcase .hero-actions a:focus-visible{outline:3px solid #23773c}
.hero-stage{height:clamp(230px,calc(100svh - 430px),440px);margin-top:clamp(6px,1.8svh,18px)}
.hero-thread{position:absolute;inset:1% -3% 0;width:106%;height:100%;overflow:visible;pointer-events:none}
.hero-thread path{fill:none;stroke:#398e4d;stroke-width:1.6;stroke-dasharray:9 13;opacity:.7}
.hero-thread path+path{stroke:#75a964;opacity:.6}
.mockup{max-width:calc(90svh - 387px);border:7px solid #fff;border-radius:12px;box-shadow:0 16px 35px #19452d30;transition:transform .3s ease-out}
.mockup:hover{transform:translateY(-5px)}
.mockup-strategy{left:0;bottom:7%;width:19%;height:auto;aspect-ratio:1;transform:none}
.mockup-melech{left:14%;bottom:15%;width:28%;height:auto;aspect-ratio:1;transform:none}
.mockup-portrait{left:40%;bottom:2%;width:24%;height:auto;aspect-ratio:1;transform:none}
.mockup-lab{right:1%;bottom:14%;width:28%;height:auto;aspect-ratio:1;transform:none}
.mockup-browser{height:23px}
.mockup-screen{height:calc(100% - 48px)}
.mockup-footer{height:25px;font-size:9px}
.strategy-head{height:25px;font-size:8px}
.strategy-body{height:calc(100% - 50px);padding:10px;font-size:clamp(11px,1.2vw,16px)}
.strategy-flow{margin:10px 0 12px}
.strategy-flow i{height:18px}
.portrait-top{height:26px}
.portrait-photo{height:calc(100% - 52px);background:linear-gradient(155deg,#d1e4c9,#80b98a)}
.portrait-caption{height:26px;padding:0 8px}
.portrait-caption strong{font-size:10px}
.portrait-caption span{display:none}
@media(max-height:700px) and (min-width:701px){.hero-showcase{min-height:490px;padding-top:20px}.hero-showcase h1,html[lang=fa] .hero-showcase h1{font-size:clamp(35px,3.6vw,44px);margin:8px auto 8px}.hero-showcase .hero-copy>p,html[lang=fa] .hero-showcase .hero-copy>p{font-size:13px;line-height:1.65}.hero-showcase .hero-actions{margin-top:13px}.hero-stage{height:clamp(205px,calc(100svh - 430px),260px);margin-top:5px}.mockup{max-width:calc(75svh - 300px)}.mockup-browser{height:18px}.mockup-screen{height:calc(100% - 38px)}.mockup-footer{height:20px}.strategy-body{height:calc(100% - 45px)}.strategy-head{height:25px}.portrait-top{height:21px}.portrait-photo{height:calc(100% - 42px)}.portrait-caption{height:21px}}
@media(max-width:850px) and (min-width:701px){.hero-showcase{min-height:570px}.hero-stage{height:clamp(230px,calc(100svh - 445px),360px)}.mockup-strategy{width:21%}.mockup-melech{left:13%;width:29%}.mockup-portrait{left:39%;width:25%}.mockup-lab{width:29%}}
@media(max-width:700px){.hero-showcase{height:auto;min-height:calc(100svh - 139px);padding:55px 0 65px}.hero-glow{inset:39% -70% -75%;background:radial-gradient(ellipse at 40% 70%,#b1d8ac,#e0efd7 58%,transparent 80%)}.hero-showcase h1,html[lang=fa] .hero-showcase h1{font-size:clamp(32px,8vw,40px);line-height:1.38}.hero-showcase .hero-copy>p,html[lang=fa] .hero-showcase .hero-copy>p{font-size:14px;line-height:1.95}.hero-stage{display:none}}
.hero-showcase .hero-actions{width:min(610px,100%);margin-inline:auto;padding:6px 7px;background:#fff;border:1px solid #b9d5b9;border-radius:12px;box-shadow:0 9px 24px #225d2f14;justify-content:space-between;min-height:58px}
html[lang=fa] .hero-showcase .hero-actions{flex-direction:row-reverse}
.hero-showcase .hero-actions .button{border-radius:8px;min-height:44px}
.hero-showcase .hero-actions .text-link{border:0;padding:8px 12px}
@media(max-width:700px){.hero-showcase .hero-actions,html[lang=fa] .hero-showcase .hero-actions{display:flex;flex-direction:column;padding:0;background:none;border:0;box-shadow:none;gap:12px}.hero-showcase .hero-actions .button{border-radius:25px}.hero-showcase .hero-actions .text-link{border-bottom:1px solid #4e985c}}

/* Six editable circular visuals */
.hero-showcase .hero-glow{inset:28% -18% -42%;filter:blur(48px);opacity:.86}
.hero-circle{position:absolute;z-index:1;aspect-ratio:1;border:7px solid #fff;border-radius:50%;overflow:hidden;background:#e2eee1;box-shadow:0 16px 34px #18482d2e}
.hero-circle img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.hero-circle.circle-one{left:0;bottom:3%;width:14%}
.hero-circle.circle-two{left:12%;bottom:10%;width:23%}
.hero-circle.circle-three{left:33%;bottom:1%;width:17%}
.hero-circle.circle-four{left:46%;bottom:11%;width:22%;background:linear-gradient(145deg,#dcebd8,#8fc29a)}
.hero-circle.circle-five{left:66%;bottom:1%;width:17%}
.hero-circle.circle-six{right:0;bottom:10%;width:23%}
.circle-one img{object-position:center 48%}
.circle-two img{object-position:center 0%}
.circle-three img{object-position:center 23%}
.circle-four img{object-fit:contain;object-position:center bottom}
.circle-five img{object-position:center 42%}
.circle-six img{object-position:center 5%}
@media(max-height:700px) and (min-width:701px){.hero-circle{border-width:5px;max-width:calc(75svh - 300px)}}
@media(max-width:700px){.hero-showcase .hero-glow{filter:blur(42px)}.hero-circle{display:none}}

/* Keep the complete image row inside the first screen */
.hero-showcase .hero-glow{-webkit-mask-image:linear-gradient(to bottom,#000 20%,#000 62%,transparent 100%);mask-image:linear-gradient(to bottom,#000 20%,#000 62%,transparent 100%)}
.hero-showcase .hero-stage{height:clamp(205px,calc(100svh - 465px),405px);margin-top:clamp(5px,1.3svh,15px)}
.hero-showcase .hero-actions,html[lang=fa] .hero-showcase .hero-actions{width:auto;min-height:0;margin-top:19px;padding:0;background:none;border:0;border-radius:0;box-shadow:none;display:flex;flex-direction:row;justify-content:center;gap:13px}
.hero-showcase .hero-actions .button{min-width:150px;border-radius:24px;padding:11px 21px}
.hero-showcase .hero-actions .hero-secondary{background:#fff;color:#266d3b;border:1px solid #76a980}
.hero-showcase .hero-actions .hero-secondary:hover{background:#e7f2e6}
@media(max-height:700px) and (min-width:701px){.hero-showcase .hero-stage{height:clamp(195px,calc(100svh - 470px),235px)}.hero-showcase .hero-actions{margin-top:12px}}
@media(max-width:700px){.hero-showcase .hero-actions,html[lang=fa] .hero-showcase .hero-actions{flex-direction:column;align-items:center;gap:11px}.hero-showcase .hero-actions .button{width:100%;max-width:330px;min-height:44px}.hero-showcase .hero-glow{-webkit-mask-image:linear-gradient(to bottom,#000 15%,transparent 100%);mask-image:linear-gradient(to bottom,#000 15%,transparent 100%)}}
.home-gallery-heading{font-size:15px;margin:16px 0 0}
.home-gallery-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.home-gallery-field{display:grid;gap:9px;align-content:start;padding:13px;border:1px solid #d8e6d8;border-radius:12px;background:#f9fbf8}
.home-gallery-field label{font-size:12px;font-weight:700}
.home-gallery-preview{width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;background:#d9e9d8;max-width:130px;margin-inline:auto}
.home-gallery-preview img{width:100%;height:100%;object-fit:cover;object-position:center top}
.home-gallery-field input[type=file]{width:100%;font-size:11px}
@media(max-width:850px){.home-gallery-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.home-gallery-fields{grid-template-columns:1fr}}
.hero-showcase .hero-glow{inset:0;transform:none;border-radius:0;background:radial-gradient(ellipse 85% 43% at 50% 58%,rgba(111,181,120,.56) 0%,rgba(179,219,179,.34) 48%,transparent 100%);filter:blur(28px);opacity:1;-webkit-mask-image:none;mask-image:none}
.hero-showcase .hero-stage{transform:translateY(35px)}
@media(max-width:700px){.hero-showcase .hero-glow{background:radial-gradient(ellipse 95% 42% at 50% 63%,rgba(134,194,141,.42),transparent 100%);filter:blur(24px)}}
.hero-circle{max-width:calc(43svh - 125px)}
.hero-showcase .hero-stage{transform:translateY(10px)}
.hero-thread path:first-child{stroke:#458b52;stroke-dasharray:7 12;opacity:.62}
.hero-thread path:last-child{stroke:#5b9e60;stroke-dasharray:7 12;opacity:.55}
.hero-circle{max-width:min(245px,calc(47svh - 125px));border:0;box-shadow:0 16px 30px #1b513322}
.hero-circle.circle-one{left:0;z-index:2}
.hero-circle.circle-two{left:13.5%;z-index:3}
.hero-circle.circle-three{left:30.5%;z-index:4}
.hero-circle.circle-four{left:47.5%;z-index:5}
.hero-circle.circle-five{left:65%;z-index:4}
.hero-circle.circle-six{right:3px;z-index:3}
@media(max-height:700px) and (min-width:701px){.hero-circle{max-width:calc(43svh - 125px)}}

/* Let the six portraits fill the available width and overlap like a photo collage. */
@media(min-width:701px){
  .hero-showcase .hero-stage{width:min(1500px,calc(100vw - 16px));left:50%;transform:translate(-50%,10px)}
  .hero-circle{width:18%;max-width:min(245px,calc(47svh - 125px));border:0}
  .hero-circle.circle-one{left:0}
  .hero-circle.circle-two{left:16.7%}
  .hero-circle.circle-three{left:33.4%}
  .hero-circle.circle-four{left:50.1%}
  .hero-circle.circle-five{left:66.8%}
  .hero-circle.circle-six{left:auto;right:0}
}
@media(max-height:700px) and (min-width:701px){.hero-circle{max-width:calc(47svh - 125px)}}

/* Responsive overlapping portrait ribbon, based on the supplied reference. */
.hero-showcase{background:linear-gradient(to bottom,#f7f8f4 0%,#f3f7f0 55%,#eaf0e8 100%)}
.hero-showcase .hero-glow{inset:0;background:radial-gradient(ellipse 80% 50% at 50% 72%,rgba(111,181,120,.55) 0%,rgba(167,213,165,.28) 52%,transparent 94%);filter:blur(32px)}
.hero-showcase .hero-stage{display:flex;align-items:flex-end;justify-content:center;direction:ltr;gap:0;overflow:visible}
.hero-circle,.hero-circle.circle-one,.hero-circle.circle-two,.hero-circle.circle-three,.hero-circle.circle-four,.hero-circle.circle-five,.hero-circle.circle-six{position:relative;left:auto;right:auto;bottom:auto;flex:none;max-width:none;border:0;margin-left:-16px;width:var(--circle-width);height:var(--circle-width)}
.hero-circle:first-of-type{margin-left:0}
.hero-circle.circle-one{--circle-width:calc(var(--hero-base) * .78);z-index:2}
.hero-circle.circle-two{--circle-width:calc(var(--hero-base) * .94);z-index:3}
.hero-circle.circle-three{--circle-width:calc(var(--hero-base) * 1.12);z-index:6}
.hero-circle.circle-four{--circle-width:calc(var(--hero-base) * .78);z-index:5}
.hero-circle.circle-five{--circle-width:calc(var(--hero-base) * .94);z-index:4}
.hero-circle.circle-six{--circle-width:calc(var(--hero-base) * .78);z-index:3}
.hero-showcase .hero-stage{--hero-base:min(295px,clamp(174px,calc((100svh - 465px) * .89),295px),calc((100vw - 16px) / 4.8))}
.hero-thread{z-index:0}
@media(max-width:700px){
  .hero-showcase{padding-bottom:35px}
  .hero-showcase .hero-glow{background:radial-gradient(ellipse 100% 44% at 50% 78%,rgba(122,188,132,.42),transparent 94%)}
  .hero-showcase .hero-stage{display:flex;height:clamp(85px,27vw,125px);margin-top:28px;width:calc(100vw - 12px);left:50%;transform:translate(-50%,0);--hero-base:min(96px,calc((100vw - 12px) / 4.8))}
  .hero-showcase .hero-circle{display:block;margin-left:-8px}
}

/* Public button system and searchable icon picker. */
.button.primary,.hero-showcase .button.primary,.contact-button{background:#2e8642;color:#fff;border:1px solid #2e8642;border-radius:999px;min-height:44px}
.button.primary:hover,.hero-showcase .button.primary:hover,.contact-button:hover{background:#206f34;color:#fff;border-color:#206f34}
.hero-showcase .hero-actions .hero-secondary,.header-cta,.services-contact,.view-all,.section-inline-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:10px 19px;border:1px solid #7daf87;border-radius:999px;background:#fff;color:#286d3a;text-decoration:none;box-shadow:none}
.hero-showcase .hero-actions .hero-secondary:hover,.header-cta:hover,.services-contact:hover,.view-all:hover,.section-inline-button:hover{background:#e9f3e9;color:#1e6231}
.button-icon{display:inline-flex;align-items:center;justify-content:center;line-height:0;margin:0!important}
.button-icon svg{width:18px;height:18px}
.home-icon-field{min-width:0;border:1px solid #d8e6d8;border-radius:12px;padding:12px;margin:10px 0;background:#fbfdf9}
.home-icon-field legend{padding:0 7px;font-size:13px;font-weight:700}
.home-icon-search{width:100%;min-height:42px;padding:9px 11px;border:1px solid #cbdccf;border-radius:9px;background:#fff}
.home-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:7px;max-height:206px;overflow:auto;margin-top:10px}
.home-icon-option{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:65px;padding:7px 4px;border:1px solid #d8e4d8;border-radius:9px;background:#fff;color:#2e5737;font-size:11px;text-align:center}
.home-icon-option:hover,.home-icon-option[aria-pressed=true]{background:#e7f3e7;border-color:#3d9150}
.home-icon-option:focus-visible,.home-icon-search:focus-visible{outline:3px solid #3d9150;outline-offset:2px}
.hero-showcase .hero-layout{width:100%;max-width:none}
.hero-showcase .hero-stage{left:auto;right:auto;margin-inline:auto;transform:translateY(10px);--hero-base:min(295px,clamp(174px,calc((100svh - 465px) * .89),295px),calc((100vw + 64px) / 5.34))}
@media(max-width:700px){.hero-showcase .hero-stage{display:none}}

/* Compact mobile header: menu, logo, language, contact. */
.mobile-menu-toggle,.mobile-contact-icon{display:none}
@media(max-width:700px){
  .site-header{position:relative;display:flex;flex-wrap:nowrap;height:68px;min-height:68px;padding-block:8px;gap:9px}
  .mobile-menu-toggle{display:flex;order:0;flex:none;width:42px;height:42px;padding:10px 9px;flex-direction:column;justify-content:center;gap:5px;border:1px solid #c8dacb;border-radius:12px;background:#fff;color:#1d5830}
  .mobile-menu-toggle span{display:block;width:100%;height:2px;border-radius:2px;background:currentColor;transition:transform .2s,opacity .2s}
  .mobile-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}
  .mobile-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
  .mobile-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px) rotate(-45deg)}
  .site-header .wordmark{order:1;font-size:25px;line-height:1}
  .site-header .header-actions{order:2;margin-inline-start:auto;gap:8px}
  .site-header .language-switch{height:42px}
  .site-header .language-switch button,.site-header .language-switch a{min-width:33px;min-height:34px}
  .site-header .header-cta{display:inline-flex;flex:none;width:42px;height:42px;min-height:42px;padding:0;border-radius:50%;background:#fff;color:#286d3a}
  .header-cta-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .site-header .header-cta .button-icon{display:none}
  .site-header .mobile-contact-icon{display:inline-flex;align-items:center;justify-content:center;line-height:0}
  .site-header nav{display:none;position:absolute;z-index:5;top:calc(100% + 1px);inset-inline:0;width:100%;margin:0;padding:9px;flex-direction:column;align-items:stretch;gap:2px;overflow:visible;border:1px solid #d3e1d4;border-radius:0 0 16px 16px;background:#fff;box-shadow:0 20px 35px #173b2520;font-size:14px}
  .site-header.menu-open nav{display:flex}
  .site-header nav a{display:flex;align-items:center;min-height:46px;padding:9px 13px;border-radius:9px}
  .site-header nav a:hover,.site-header nav a:focus-visible{background:#ecf5eb}
}

/* Sliding mobile navigation and a two-stroke menu control. */
.mobile-menu-close,.mobile-menu-backdrop{display:none}
@media(max-width:700px){
  body.mobile-menu-open{overflow:hidden}
  .site-header{z-index:2}
  .mobile-menu-toggle{width:44px;height:44px;padding:11px;gap:7px;align-items:stretch;border-color:#d4e7d5;border-radius:14px;background:linear-gradient(145deg,#f2f8ef,#e1f0e1);box-shadow:0 4px 12px #17452712;color:#235d34;transition:background .2s,box-shadow .2s,transform .2s}
  .mobile-menu-toggle:hover{background:#dcefdc;box-shadow:0 7px 16px #1745271c;transform:translateY(-1px)}
  .mobile-menu-toggle span{height:2.5px;border-radius:10px;transform-origin:center}
  .mobile-menu-toggle span:first-child{width:21px}
  .mobile-menu-toggle span:last-child{width:14px;align-self:flex-end}
  .mobile-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.75px) rotate(45deg)}
  .mobile-menu-toggle[aria-expanded=true] span:last-child{width:21px;transform:translateY(-4.75px) rotate(-45deg)}
  .header-shell .mobile-menu-backdrop{display:block;position:fixed;inset:0;z-index:1;background:#10281970;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,visibility .25s}
  .header-shell.menu-open .mobile-menu-backdrop{opacity:1;visibility:visible;pointer-events:auto}
  .site-header nav{display:flex;position:fixed;z-index:3;top:0;bottom:0;inset-inline:auto;width:min(340px,86vw);max-height:100dvh;margin:0;padding:22px 18px;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px;overflow-y:auto;border:0;border-radius:0;background:#f8faf6;box-shadow:0 0 45px #10281925;visibility:hidden;pointer-events:none;transition:transform .27s ease,visibility .27s ease}
  html[dir=rtl] .site-header nav{right:0;left:auto;transform:translateX(105%)}
  html[dir=ltr] .site-header nav{left:0;right:auto;transform:translateX(-105%)}
  .site-header.menu-open nav{visibility:visible;pointer-events:auto}
  html[dir=rtl] .site-header.menu-open nav,html[dir=ltr] .site-header.menu-open nav{transform:translateX(0)}
  .site-header .mobile-menu-close{display:grid;place-items:center;align-self:flex-end;flex:none;width:42px;height:42px;margin-bottom:24px;border:1px solid #d3e4d3;border-radius:12px;background:#fff;color:#205c32;font-size:29px;line-height:1}
  .site-header nav a{font-size:15px;font-weight:700;min-height:50px;padding:12px 15px;border-radius:12px}
  .site-header nav a:hover,.site-header nav a:focus-visible{background:#e5f2e4;color:#19562c}
  .site-header .header-cta{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #d4e7d5;border-radius:14px;background:linear-gradient(145deg,#f2f8ef,#e1f0e1);color:#235d34;box-shadow:0 4px 12px #17452712}
  .site-header .header-cta:hover{background:#dcefdc;color:#174e29;border-color:#b9d9bf;box-shadow:0 7px 16px #1745271c}
  .site-header .mobile-contact-icon{display:grid;place-items:center;width:20px;height:20px;margin:0}
  .site-header .mobile-contact-icon svg{display:block;width:20px;height:20px}
}
@media(prefers-reduced-motion:reduce){.mobile-menu-toggle,.mobile-menu-toggle span,.site-header nav,.mobile-menu-backdrop{transition:none!important}}

/* Mobile hero: five admin gallery images form the reference collage. */
@media(max-width:700px){
  .hero-showcase{padding-top:24px;padding-bottom:34px}
  .hero-showcase .hero-layout{display:flex;flex-direction:column;align-items:stretch}
  .hero-showcase .hero-stage{display:block;order:0;position:relative;left:auto;right:auto;transform:none;width:100%;height:clamp(225px,59vw,320px);margin:0 auto 12px;overflow:visible}
  .hero-showcase .hero-copy{order:1}
  .hero-showcase .hero-stage .hero-circle{display:block;position:absolute;right:auto;bottom:auto;transform:none;width:var(--mobile-circle-size);height:auto;aspect-ratio:1;max-width:none;margin:0;border:0;box-shadow:0 14px 26px #1b51331a}
  .hero-showcase .hero-stage .circle-one{--mobile-circle-size:54%;top:0;left:50%;transform:translateX(-50%);z-index:3}
  .hero-showcase .hero-stage .circle-two{--mobile-circle-size:33%;top:24%;left:0;z-index:1}
  .hero-showcase .hero-stage .circle-three{--mobile-circle-size:29%;top:28%;left:auto;right:0;z-index:1}
  .hero-showcase .hero-stage .circle-four{--mobile-circle-size:19%;top:6%;left:69%;z-index:4}
  .hero-showcase .hero-stage .circle-five{--mobile-circle-size:19%;top:58%;left:18%;z-index:4}
  .hero-showcase .hero-stage .circle-six{display:none}
  .hero-showcase .hero-stage .hero-thread{position:absolute;inset:auto -10% 2px;width:120%;height:94px;z-index:0;overflow:visible}
  .hero-showcase .hero-glow{background:radial-gradient(ellipse 78% 30% at 50% 26%,rgba(110,183,124,.49),transparent 95%),radial-gradient(ellipse 105% 42% at 50% 68%,rgba(148,204,150,.27),transparent 98%);filter:blur(34px)}
}
.hero-showcase .hero-stage .hero-circle{border:1px solid #fff;box-shadow:0 7px 16px #143b2a2b,0 20px 38px #143b2a24}
