@font-face {
  font-family:"Vazirmatn";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("../fonts/vazirmatn-arabic-400.woff2") format("woff2");
  unicode-range: U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;
}
@font-face {
  font-family:"Vazirmatn";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("../fonts/vazirmatn-latin-400.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family:"Vazirmatn";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("../fonts/vazirmatn-arabic-500.woff2") format("woff2");
  unicode-range: U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;
}
@font-face {
  font-family:"Vazirmatn";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("../fonts/vazirmatn-latin-500.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family:"Vazirmatn";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("../fonts/vazirmatn-arabic-600.woff2") format("woff2");
  unicode-range: U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;
}
@font-face {
  font-family:"Vazirmatn";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("../fonts/vazirmatn-latin-600.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family:"Vazirmatn";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("../fonts/vazirmatn-arabic-700.woff2") format("woff2");
  unicode-range: U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;
}
@font-face {
  font-family:"Vazirmatn";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("../fonts/vazirmatn-latin-700.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

html,body,button,input,textarea,select,option{font-family:"Vazirmatn",Tahoma,Arial,sans-serif;}
:root{
  --brand:#8c1118;
  --brand-deep:#5c0a0f;
  --brand-mid:#a4262d;
  --brand-soft:#c76d72;
  --paper:#f7f2ee;
  --paper-2:#efe5df;
  --white:#ffffff;
  --ink:#421015;
  --muted:#765b5d;
  --line:rgba(92,10,15,.18);
  --container:min(91vw,1420px);
  --header-h:82px;
  --shadow:0 18px 50px rgba(92,10,15,.10);
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
html.pajand-home{scroll-snap-type:y mandatory}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:"Vazirmatn","Segoe UI",Tahoma,Arial,sans-serif;
  font-size:16px;
  line-height:1.75;
  text-align:right;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
body.menu-open{overflow:hidden}
img,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
::selection{background:var(--brand);color:#fff}

.container{width:var(--container);margin-inline:auto}
.site-main{min-height:70vh}
.page-shell{padding:150px 0 100px}
.prose{max-width:980px}
.prose h1{font-size:clamp(2.25rem,5vw,4.4rem);line-height:1.05;margin:0 0 30px}
.prose p{max-width:760px;color:var(--muted)}

.screen-reader-text{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
.skip-link{
  position:fixed;inset-block-start:12px;inset-inline-start:12px;z-index:9999;
  background:#fff;color:var(--brand);padding:10px 16px;transform:translateY(-200%);
}
.skip-link:focus{transform:none}

.eyebrow{
  display:inline-block;
  font-size:.72rem;
  line-height:1.4;
  font-weight:700;
  letter-spacing:.05em;
  color:var(--brand);
}
.eyebrow--light{color:rgba(255,255,255,.78)}

.button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:46px;padding:0 22px;border-radius:999px;
  border:1px solid transparent;font-size:.84rem;font-weight:700;
  transition:transform .2s var(--ease),background .2s var(--ease),color .2s var(--ease);
}
.button:hover{transform:translateY(-2px)}
.button--brand{background:var(--brand);color:#fff}
.button--brand:hover{background:var(--brand-deep)}
.button--light{background:#fff;color:var(--brand)}
.button--light:hover{background:var(--paper-2)}

.text-link{
  display:inline-flex;align-items:center;gap:10px;
  padding-block:8px;border-bottom:1px solid currentColor;
  font-size:.82rem;font-weight:700;
  transition:gap .2s var(--ease),opacity .2s var(--ease);
}
.text-link:hover{gap:16px;opacity:.78}
.text-link--light{color:#fff}

/* Header */
.site-header{
  position:fixed;inset:0 0 auto 0;z-index:100;
  height:var(--header-h);
  color:#fff;
  transition:background .25s var(--ease),box-shadow .25s var(--ease),color .25s var(--ease);
}
.site-header.is-scrolled,
.pajand-inner .site-header{
  background:rgba(247,242,238,.94);
  color:var(--brand-deep);
  box-shadow:0 8px 28px rgba(92,10,15,.08);
  backdrop-filter:blur(16px);
}
.site-header__inner{
  width:var(--container);height:100%;margin-inline:auto;
  display:grid;grid-template-columns:minmax(230px,1fr) auto 48px;
  align-items:center;gap:30px;
  direction:rtl;
}
.brand{
  justify-self:start;display:inline-flex;align-items:center;gap:12px;
  min-width:220px;
}
.brand__logo{
  width:38px;height:46px;flex:0 0 auto;
  fill:var(--brand);
}
.brand__text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15}
.brand__text strong{font-size:.94rem;font-weight:700}
.brand__text small{font-size:.58rem;letter-spacing:.13em;margin-top:4px;direction:ltr;opacity:.82}
.pajand-home .site-header:not(.is-scrolled) .brand__text{color:#fff}

.primary-nav{justify-self:center}
.primary-nav__list{
  list-style:none;margin:0;padding:0;
  display:flex;align-items:center;gap:28px;direction:rtl;
}
.primary-nav__list>li>a{
  position:relative;display:block;padding:10px 0;
  font-size:.78rem;font-weight:600;white-space:nowrap;
}
.primary-nav__list>li>a:after{
  content:"";position:absolute;right:0;bottom:4px;width:0;height:1px;
  background:currentColor;transition:width .2s var(--ease);
}
.primary-nav__list>li>a:hover:after,
.primary-nav__list>.current-menu-item>a:after{width:100%}

.nav-toggle{
  display:none;justify-self:end;border:0;background:none;padding:8px;color:inherit;
}
.nav-toggle>span{display:block;width:27px;height:1.5px;background:currentColor;margin:6px 0}

/* Scroll snap */
.pajand-home .snap-section{
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
@media (min-width:901px) and (min-height:680px){
  .pajand-home .snap-section{
    min-height:100svh;
    height:100svh;
    overflow:hidden;
  }
}

/* Hero */
.hero{
  position:relative;min-height:100svh;color:#fff;background:var(--brand-deep);
}
.hero__video{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
}
.hero__overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(92,10,15,.18),rgba(92,10,15,.38)),
    linear-gradient(0deg,rgba(67,6,10,.68),rgba(67,6,10,.08) 58%);
}
.hero__content{
  position:relative;z-index:2;min-height:100svh;
  display:flex;align-items:center;justify-content:flex-start;
  padding-top:var(--header-h);direction:rtl;
}
.hero__copy{
  width:min(650px,78vw);
  margin-right:0;margin-left:auto;
  text-align:right;
}
.hero h1{
  margin:14px 0 8px;
  font-size:clamp(2.55rem,4.2vw,3.9rem);
  line-height:1.07;letter-spacing:-.035em;font-weight:700;
}
.hero__lead{
  font-size:clamp(1.12rem,1.9vw,1.55rem);
  font-weight:600;margin:14px 0 7px;
}
.hero__sub{
  max-width:560px;margin:0 0 24px;
  font-size:.92rem;color:rgba(255,255,255,.78);
}
.hero__scroll{
  position:absolute;z-index:3;left:4vw;bottom:26px;
  font-size:.54rem;letter-spacing:.23em;direction:ltr;
  display:flex;gap:11px;align-items:center;color:rgba(255,255,255,.74);
}

/* Major sections */
.section{
  position:relative;padding:90px 0;
  display:flex;align-items:center;
}
.section-index{display:flex;align-items:center;gap:14px;color:var(--brand)}
.section-index>span{font-size:.88rem;font-weight:700}
.section-index>b{width:52px;height:1px;background:currentColor;opacity:.5}
.section-index>small{font-size:.54rem;letter-spacing:.16em;direction:ltr}

.section-heading{
  display:flex;align-items:flex-end;justify-content:space-between;gap:34px;
  margin-bottom:36px;
}
.section-heading h2{
  margin:10px 0 0;max-width:760px;
  font-size:clamp(1.85rem,3vw,2.8rem);
  line-height:1.08;font-weight:700;letter-spacing:-.025em;
}

/* About */
.section--about{background:var(--paper)}
.about-layout{
  display:grid;
  grid-template-columns:120px minmax(0,1.35fr) minmax(280px,.75fr);
  gap:5vw;align-items:center;
}
.about-copy h2{
  margin:12px 0 22px;
  font-size:clamp(2rem,3.2vw,3rem);
  line-height:1.08;font-weight:700;letter-spacing:-.025em;
}
.about-copy p{max-width:660px;margin:0 0 20px;color:var(--muted)}
.stats{border-right:1px solid var(--line)}
.stat{
  padding:18px 28px;border-bottom:1px solid var(--line);
  display:flex;justify-content:space-between;align-items:baseline;gap:18px;
}
.stat:last-child{border-bottom:0}
.stat strong{font-size:clamp(1.75rem,3vw,2.8rem);color:var(--brand);font-weight:700}
.stat span{font-size:.73rem;color:var(--muted);max-width:130px}

/* Services */
.section--services{
  background:linear-gradient(135deg,var(--brand-deep),var(--brand));
  color:#fff;flex-direction:column;justify-content:center;
}
.section--services .section-heading{width:var(--container)}
.service-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,255,255,.20);
  border-bottom:1px solid rgba(255,255,255,.20);
}
.service-panel{
  min-height:330px;padding:28px;
  display:flex;flex-direction:column;justify-content:flex-end;gap:7px;
  border-left:1px solid rgba(255,255,255,.20);
  transition:background .25s var(--ease),transform .25s var(--ease);
}
.service-panel:last-child{border-left:0}
.service-panel:hover{background:rgba(255,255,255,.08);transform:translateY(-3px)}
.service-panel__number{margin-bottom:auto;font-size:.78rem;opacity:.66}
.service-panel h3{
  margin:0;font-size:clamp(1.3rem,2vw,1.9rem);
  line-height:1.25;font-weight:700;
}
.service-panel p{margin:0;color:rgba(255,255,255,.72);font-size:.78rem}

/* Selected projects */
.section--projects{
  background:var(--paper-2);
  flex-direction:column;justify-content:center;
}
.section-heading--projects{width:var(--container)}
.selected-projects{
  display:grid;grid-template-columns:repeat(2,1fr);gap:22px 24px;
}
.selected-project{
  display:grid;grid-template-columns:1.22fr .9fr;
  background:#fff;box-shadow:var(--shadow);min-height:230px;
}
.selected-project__media{position:relative;overflow:hidden;min-height:230px}
.selected-project__media img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s var(--ease);
}
.selected-project:hover img{transform:scale(1.025)}
.selected-project__number{
  position:absolute;top:16px;right:16px;
  min-width:34px;height:34px;display:grid;place-items:center;
  background:var(--brand);color:#fff;border-radius:50%;
  font-size:.68rem;direction:ltr;
}
.selected-project__body{
  padding:22px;display:flex;flex-direction:column;justify-content:center;
}
.selected-project__body>span{font-size:.64rem;color:var(--brand);font-weight:700}
.selected-project__body h3{
  margin:7px 0 8px;
  font-size:clamp(1.05rem,1.55vw,1.45rem);
  line-height:1.35;font-weight:700;
}
.selected-project__body p{margin:0;color:var(--muted);font-size:.72rem}

/* Clients */
.section--clients{
  background:linear-gradient(145deg,var(--brand),var(--brand-deep));
  color:#fff;flex-direction:column;justify-content:center;
}
.clients-layout{
  display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.5fr);
  gap:6vw;align-items:center;
}
.clients-intro h2{
  margin:12px 0 18px;
  font-size:clamp(1.85rem,2.9vw,2.75rem);
  line-height:1.12;font-weight:700;
}
.clients-intro p{color:rgba(255,255,255,.68);font-size:.8rem}
.clients-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,255,255,.18);
  border-right:1px solid rgba(255,255,255,.18);
}
.client-card{
  min-height:155px;padding:18px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  border-left:1px solid rgba(255,255,255,.18);
  border-bottom:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
  transition:background .22s var(--ease),transform .22s var(--ease);
}
.client-card:hover{background:rgba(255,255,255,.12);transform:translateY(-2px)}
.client-card img{
  width:100%;height:76px;object-fit:contain;
  filter:grayscale(1) brightness(0) invert(1);opacity:.90;
}
.client-card:hover img{filter:none;opacity:1}
.client-card span{text-align:center;font-size:.66rem;color:rgba(255,255,255,.74)}

/* Statement */
.brand-statement{
  min-height:100svh;display:flex;align-items:center;
  background:var(--paper);color:var(--brand-deep);
}
.brand-statement__inner{max-width:1060px;margin-right:auto;margin-left:auto;text-align:center}
.brand-statement h2{
  margin:16px auto 24px;
  max-width:960px;
  font-size:clamp(2.1rem,3.6vw,3.3rem);
  line-height:1.13;font-weight:700;letter-spacing:-.028em;
}
.brand-statement p{max-width:680px;margin:0 auto;color:var(--muted)}
.brand-statement__actions{
  margin-top:28px;display:flex;align-items:center;justify-content:center;gap:20px;
}

/* Footer */
.site-footer{
  background:linear-gradient(145deg,var(--brand-deep),var(--brand));
  color:#fff;padding:80px 0 25px;
  display:flex;flex-direction:column;justify-content:center;
}
.footer-cta{
  display:flex;align-items:flex-end;justify-content:space-between;gap:40px;
  padding-bottom:42px;border-bottom:1px solid rgba(255,255,255,.18);
}
.footer-cta h2{
  margin:12px 0 0;max-width:650px;
  font-size:clamp(1.9rem,3vw,2.9rem);
  line-height:1.15;font-weight:700;
}
.footer-cta__actions{display:flex;align-items:center;gap:18px}
.site-footer__grid{
  display:grid;grid-template-columns:1fr 1.35fr .8fr;gap:6vw;
  padding:38px 0;
}
.footer-brand,.footer-contact,.footer-nav{display:flex;flex-direction:column;align-items:flex-start}
.footer-brand strong{font-size:1.05rem}
.footer-brand span{font-size:.72rem;color:rgba(255,255,255,.68);margin-top:5px}
.footer-brand small{font-size:.64rem;color:rgba(255,255,255,.48);margin-top:14px}
.footer-contact p,.footer-contact a,.footer-nav a{font-size:.72rem;margin:0 0 5px}
.footer-contact p{color:rgba(255,255,255,.70)}
.footer-nav{gap:5px}
.site-footer__bottom{
  border-top:1px solid rgba(255,255,255,.15);
  padding-top:18px;display:flex;justify-content:space-between;gap:20px;
  color:rgba(255,255,255,.45);font-size:.58rem;direction:rtl;
}

/* Inner page hero */
.page-hero{
  padding:150px 0 75px;
  color:#fff;
}
.page-hero--brand{background:linear-gradient(135deg,var(--brand-deep),var(--brand))}
.page-hero h1{
  margin:12px 0 10px;
  font-size:clamp(2.35rem,4vw,3.7rem);
  line-height:1.04;font-weight:700;letter-spacing:-.03em;
}
.page-hero p{max-width:660px;margin:0;color:rgba(255,255,255,.72)}

/* Projects archive */
.archive-grid{
  padding:70px 0 110px;
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:34px 26px;
}
.project-card{min-width:0}
.project-card__media{
  display:block;position:relative;overflow:hidden;
  aspect-ratio:16/10;background:var(--paper-2);
}
.project-card__media img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .45s var(--ease);
}
.project-card:hover img{transform:scale(1.025)}
.project-card__body{padding:18px 2px}
.project-card__body>span{font-size:.63rem;color:var(--brand);font-weight:700}
.project-card__body h2{
  margin:6px 0 7px;font-size:1.12rem;line-height:1.4;font-weight:700;
}
.project-card__body p{margin:0 0 8px;color:var(--muted);font-size:.72rem}

/* Single project */
.project-hero{
  position:relative;min-height:72svh;color:#fff;
  display:flex;align-items:flex-end;background:var(--brand-deep);
}
.project-hero__media{
  position:absolute;inset:0;background-size:cover;background-position:center;
}
.project-hero__overlay{
  position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(92,10,15,.85),rgba(92,10,15,.18) 65%);
}
.project-hero__inner{
  position:relative;z-index:2;
  padding:160px 0 60px;
  display:grid;grid-template-columns:1.35fr .65fr;gap:7vw;align-items:end;
}
.project-hero h1{
  margin:10px 0 0;
  font-size:clamp(2.2rem,3.8vw,3.4rem);
  line-height:1.12;font-weight:700;
}
.project-facts{margin:0;border-top:1px solid rgba(255,255,255,.25)}
.project-facts div{
  padding:10px 0;display:flex;justify-content:space-between;gap:18px;
  border-bottom:1px solid rgba(255,255,255,.18);font-size:.7rem;
}
.project-facts dt{color:rgba(255,255,255,.55)}
.project-facts dd{margin:0;text-align:left}
.project-content{
  padding:75px 0 110px;
  display:grid;grid-template-columns:140px minmax(0,780px);gap:6vw;
}
.content-body{color:var(--muted)}
.content-body .lead{font-size:1.08rem;color:var(--ink);font-weight:600}

/* About */
.about-page{padding:80px 0 110px}
.about-lead{display:grid;grid-template-columns:.9fr 1.15fr;gap:7vw;align-items:start}
.about-lead h2,
.services-intro h2,
.contact-details h2,
.careers-intro h2{
  margin:0;
  font-size:clamp(1.95rem,3vw,2.9rem);
  line-height:1.14;font-weight:700;
}
.about-lead p{margin-top:0;color:var(--muted)}
.values-grid{
  margin-top:80px;
  display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--line);border-right:1px solid var(--line);
}
.value-item{padding:26px 24px;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}
.value-item>span{color:var(--brand);font-size:.72rem;font-weight:700}
.value-item h3{font-size:1.12rem;margin:10px 0 7px}
.value-item p{margin:0;color:var(--muted);font-size:.76rem}

/* Services */
.services-page{padding:80px 0 110px}
.services-list{margin-top:60px;border-top:1px solid var(--line)}
.service-row{
  padding:45px 0;display:grid;
  grid-template-columns:70px .8fr 1.25fr;gap:4vw;
  border-bottom:1px solid var(--line);align-items:start;
}
.service-row>span{color:var(--brand);font-weight:700}
.service-row h2{margin:0;font-size:clamp(1.55rem,2.5vw,2.4rem);line-height:1.2}
.service-row p{margin:0;color:var(--muted)}

/* Contact & Careers forms */
.contact-page,.careers-page{padding:80px 0 110px}
.contact-layout{
  display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:start;
}
.contact-details{display:flex;flex-direction:column;gap:28px}
.contact-group{padding-top:16px;border-top:1px solid var(--line)}
.contact-group small{display:block;color:var(--brand);font-weight:700;margin-bottom:7px}
.contact-group p,.contact-group a{display:block;margin:0 0 5px;font-size:.92rem}
.form-card{
  background:#fff;padding:34px;box-shadow:var(--shadow);
  border-top:4px solid var(--brand);
}
.form-card h2{margin:8px 0 8px;font-size:1.75rem}
.form-destination{margin:0 0 24px;color:var(--muted);font-size:.78rem}
.form-destination strong{color:var(--brand)}
.site-form{display:grid;gap:18px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.site-form label{display:grid;gap:6px}
.site-form label>span{font-size:.7rem;color:var(--muted);font-weight:600}
.site-form input,.site-form textarea{
  width:100%;border:1px solid var(--line);background:var(--paper);
  color:var(--ink);padding:11px 12px;outline:none;border-radius:0;
  transition:border-color .2s var(--ease),background .2s var(--ease);
}
.site-form input:focus,.site-form textarea:focus{border-color:var(--brand);background:#fff}
.site-form input[type=file]{padding:8px;background:#fff}
.form-row{display:grid}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.form-notice{padding:12px 14px;margin:0 0 18px;font-size:.78rem;border-right:3px solid}
.form-notice--success{background:#f2f8f1;border-color:#4e8a4a}
.form-notice--warning{background:#fff7e7;border-color:#b8882e}
.form-notice--error{background:#fff0f0;border-color:var(--brand)}

.careers-page{display:grid;grid-template-columns:.82fr 1.18fr;gap:7vw;align-items:start}
.careers-intro p{color:var(--muted);max-width:620px}

/* Responsive */
@media (max-width:1180px){
  :root{--container:min(92vw,1040px)}
  .site-header__inner{grid-template-columns:1fr 48px}
  .primary-nav{
    position:fixed;inset:0;z-index:-1;
    display:grid;place-items:center;background:var(--brand-deep);color:#fff;
    opacity:0;visibility:hidden;transition:opacity .25s var(--ease),visibility .25s var(--ease);
  }
  .menu-open .primary-nav{opacity:1;visibility:visible}
  .primary-nav__list{flex-direction:column;gap:4px}
  .primary-nav__list>li>a{font-size:clamp(1.4rem,4vw,2.2rem);padding:6px}
  .nav-toggle{display:block;z-index:3}
  .menu-open .site-header{background:transparent;color:#fff;box-shadow:none}
  .about-layout{grid-template-columns:100px 1fr}
  .stats{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);border-right:0;border-top:1px solid var(--line)}
  .stat{display:block;padding:18px;border-left:1px solid var(--line);border-bottom:0}
  .stat span{display:block;margin-top:6px}
  .clients-layout{grid-template-columns:1fr}
  .clients-intro{max-width:700px}
}

@media (max-width:900px){
  html.pajand-home{scroll-snap-type:none}
  .pajand-home .snap-section{height:auto!important;min-height:auto!important;overflow:visible!important}
  :root{--container:calc(100vw - 36px);--header-h:72px}
  .brand{min-width:0}
  .brand__logo{width:31px;height:38px}
  .brand__text strong{font-size:.78rem}
  .brand__text small{font-size:.5rem}
  .hero{min-height:82svh}
  .hero__content{min-height:82svh;align-items:flex-end;padding-bottom:72px}
  .hero__copy{width:100%}
  .hero h1{font-size:clamp(2.4rem,12vw,3.8rem)}
  .hero__lead{font-size:1.05rem}
  .hero__scroll{display:none}
  .section{padding:72px 0}
  .about-layout{grid-template-columns:1fr;gap:30px}
  .stats{grid-column:1}
  .service-grid{grid-template-columns:1fr 1fr}
  .service-panel{min-height:240px}
  .selected-projects{grid-template-columns:1fr}
  .selected-project{grid-template-columns:1fr 1fr}
  .clients-grid{grid-template-columns:repeat(2,1fr)}
  .brand-statement{min-height:auto;padding:90px 0}
  .site-footer{padding:70px 0 24px}
  .footer-cta{align-items:flex-start;flex-direction:column}
  .site-footer__grid{grid-template-columns:1fr 1fr}
  .footer-nav{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:12px}
  .archive-grid{grid-template-columns:1fr 1fr}
  .project-hero__inner{grid-template-columns:1fr}
  .project-content{grid-template-columns:1fr}
  .about-lead,.contact-layout,.careers-page{grid-template-columns:1fr}
  .values-grid{grid-template-columns:1fr 1fr}
  .service-row{grid-template-columns:50px 1fr}
  .service-row p{grid-column:2}
}

@media (max-width:560px){
  .section-heading{flex-direction:column;align-items:flex-start;margin-bottom:28px}
  .section-heading h2{font-size:2rem}
  .service-grid{grid-template-columns:1fr}
  .service-panel{min-height:205px}
  .selected-project{grid-template-columns:1fr}
  .selected-project__media{min-height:200px}
  .clients-grid{grid-template-columns:1fr 1fr}
  .client-card{min-height:125px;padding:12px}
  .client-card img{height:58px}
  .brand-statement h2{font-size:2.2rem}
  .brand-statement__actions{flex-direction:column}
  .footer-cta__actions{align-items:flex-start;flex-direction:column}
  .site-footer__grid{grid-template-columns:1fr}
  .footer-nav{grid-column:auto}
  .site-footer__bottom{flex-direction:column;gap:7px}
  .archive-grid{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .values-grid{grid-template-columns:1fr}
  .page-hero{padding:125px 0 58px}
  .page-hero h1{font-size:2.7rem}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
}


/* === Pajand v2.2 refinements === */
:root{
  --brand:#891111;
  --brand-deep:#5f0b0b;
  --brand-mid:#a02323;
  --ink:#3a1111;
}

.brand__logo{
  width:42px;
  height:40px;
  object-fit:contain;
  flex:0 0 auto;
}

/* Subtle Pajand watermark on brand-color sections */
.section--services,
.section--clients,
.site-footer,
.page-hero--brand{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.section--services::before,
.section--clients::before,
.site-footer::before,
.page-hero--brand::before{
  content:"";
  position:absolute;
  z-index:0;
  width:min(58vw,720px);
  aspect-ratio:815/774;
  inset-inline-end:-9vw;
  bottom:-24%;
  background:rgba(205,205,205,.16);
  -webkit-mask:url("../images/pajand-exact.png") center/contain no-repeat;
  mask:url("../images/pajand-exact.png") center/contain no-repeat;
  pointer-events:none;
}
.section--services > *,
.section--clients > *,
.site-footer > *,
.page-hero--brand > *{
  position:relative;
  z-index:1;
}
.page-hero--brand::before{
  width:min(42vw,520px);
  inset-inline-end:4vw;
  bottom:-60%;
  opacity:.75;
}
.client-card--static{cursor:default}
.client-card--static:hover{transform:none}

/* Compact slide-in navigation for tablets and mobile */
@media (max-width:1180px){
  .primary-nav{
    position:fixed;
    z-index:140;
    inset-block:0;
    inset-inline-start:auto;
    inset-inline-end:0;
    width:min(82vw,340px);
    height:100svh;
    display:block;
    padding:calc(var(--header-h) + 34px) 28px 34px;
    background:linear-gradient(180deg,var(--brand-deep),var(--brand));
    color:#fff;
    opacity:1;
    visibility:visible;
    transform:translateX(105%);
    transition:transform .28s var(--ease);
    box-shadow:-18px 0 55px rgba(40,0,0,.22);
  }
  .menu-open .primary-nav{transform:translateX(0)}
  .primary-nav__list{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    width:100%;
  }
  .primary-nav__list>li{
    border-bottom:1px solid rgba(255,255,255,.14);
  }
  .primary-nav__list>li>a{
    display:block;
    padding:13px 2px;
    font-size:1rem;
    line-height:1.45;
    font-weight:600;
    text-align:right;
  }
  .primary-nav__list>li>a:after{display:none}
  .nav-toggle{position:relative;z-index:160}
  .menu-open .site-header{
    background:transparent;
    color:#fff;
    box-shadow:none;
  }
  body.menu-open::before{
    content:"";
    position:fixed;
    inset:0;
    z-index:120;
    background:rgba(25,4,5,.48);
    backdrop-filter:blur(2px);
  }
}

/* True section-to-section vertical scrolling */
html.pajand-home{
  scroll-snap-type:y mandatory;
  scroll-padding-top:0;
}
.pajand-home .snap-section{
  scroll-snap-align:start;
  scroll-snap-stop:always;
}

@media (max-width:900px){
  html.pajand-home{scroll-snap-type:y mandatory}
  .pajand-home .snap-section{
    min-height:100svh!important;
    height:auto!important;
    overflow:visible!important;
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  .hero,
  .hero__content{
    min-height:100svh;
  }
  .hero__content{
    align-items:flex-end;
    padding-bottom:68px;
  }
  .section{
    min-height:100svh;
    padding:76px 0 54px;
  }
  .brand-statement{
    min-height:100svh;
    padding:76px 0;
  }
  .site-footer{
    min-height:100svh;
    padding:76px 0 24px;
  }
  .brand__logo{width:34px;height:33px}

  /* Keep projects inside one vertical snap panel; browse cards horizontally. */
  .selected-projects{
    display:flex;
    gap:16px;
    overflow-x:auto;
    overflow-y:hidden;
    padding-bottom:12px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .selected-projects::-webkit-scrollbar{display:none}
  .selected-project{
    flex:0 0 min(80vw,430px);
    min-width:min(80vw,430px);
    display:grid;
    grid-template-columns:1fr;
    scroll-snap-align:start;
  }
  .selected-project__media{
    min-height:210px;
    aspect-ratio:16/10;
  }
  .selected-project__body{padding:18px}

  .section--projects .section-heading{
    margin-bottom:22px;
  }
  .section--projects .section-heading h2{
    font-size:1.8rem;
  }
  .section--clients .clients-layout{gap:24px}
  .clients-intro h2{font-size:1.9rem}
}

@media (max-width:560px){
  .primary-nav{width:min(86vw,320px);padding-inline:24px}
  .primary-nav__list>li>a{font-size:.96rem;padding:12px 2px}

  .hero h1{font-size:2.45rem}
  .hero__lead{font-size:1rem}
  .section-heading h2{font-size:1.75rem}
  .about-copy h2{font-size:2rem}
  .brand-statement h2{font-size:2rem}

  /* 2x2 services fit inside a single viewport more naturally. */
  .service-grid{grid-template-columns:1fr 1fr}
  .service-panel{
    min-height:155px;
    padding:18px;
  }
  .service-panel h3{font-size:1.08rem}
  .service-panel p{font-size:.68rem}

  .client-card{min-height:104px;padding:10px}
  .client-card img{height:46px}
  .clients-grid{grid-template-columns:1fr 1fr}
  .clients-intro p{margin-bottom:0}

  .section--services::before,
  .section--clients::before,
  .site-footer::before,
  .page-hero--brand::before{
    width:88vw;
    inset-inline-end:-28vw;
    bottom:-8%;
  }
}


/* v2.2.1 mobile overflow and drawer containment */
html,body{overflow-x:clip}

@media (max-width:1180px){
  .primary-nav{
    right:0;
    left:auto;
    inset-inline-start:auto;
    inset-inline-end:0;
    transform:translate3d(105%,0,0);
    overflow-y:auto;
    overflow-x:hidden;
  }
  .menu-open .primary-nav{transform:translate3d(0,0,0)}
}

@media (max-width:900px){
  .pajand-home .snap-section{
    overflow-x:hidden!important;
    overflow-y:visible!important;
  }
  .selected-project__media{
    width:100%;
    min-height:0;
    height:auto;
    aspect-ratio:16/10;
  }
  .selected-project__media img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
}


@media (max-width:1180px){
  .primary-nav{
    inset:auto!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
  }
}


/* Center the large faded Pajand mark on red surfaces */
.section--services::before,
.section--clients::before,
.site-footer::before{
  width:min(62vw,760px);
  top:50%;
  bottom:auto;
  inset-inline-end:-7vw;
  transform:translateY(-50%);
  background:rgba(215,215,215,.18);
}
.page-hero--brand::before{
  top:50%;
  bottom:auto;
  inset-inline-end:2vw;
  transform:translateY(-50%);
  background:rgba(215,215,215,.15);
}
@media (max-width:560px){
  .section--services::before,
  .section--clients::before,
  .site-footer::before,
  .page-hero--brand::before{
    width:92vw;
    top:52%;
    bottom:auto;
    inset-inline-end:-30vw;
    transform:translateY(-50%);
    background:rgba(215,215,215,.14);
  }
}


/* === FINAL LOGO / WATERMARK / MOBILE NAV FIXES === */
.brand__logo{
  display:block;
  width:42px;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
}

/* Use the real transparent Pajand PNG for the faded mark; no mask = no grey rectangle. */
.section--services::before,
.section--clients::before,
.site-footer::before,
.page-hero--brand::before{
  -webkit-mask:none!important;
  mask:none!important;
  background-color:transparent!important;
  background-image:url("../images/pajand-exact.png")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  filter:grayscale(1) brightness(2.8) contrast(.55);
  opacity:.13!important;
}

/* Client marks remain transparent and use their real artwork. */
.client-card img{
  filter:none!important;
  opacity:1!important;
  background:transparent!important;
}
.client-card--static{
  pointer-events:none;
}

/* Mobile drawer: reliable layer order, compact typography, close state. */
@media (max-width:1180px){
  .site-header{z-index:300}
  body.menu-open::before{z-index:240}
  .primary-nav{
    z-index:320!important;
    right:0!important;
    left:auto!important;
    width:min(80vw,320px)!important;
    transform:translate3d(105%,0,0)!important;
  }
  .menu-open .primary-nav{
    transform:translate3d(0,0,0)!important;
  }
  .nav-toggle{
    z-index:350!important;
    transition:transform .2s var(--ease);
  }
  .menu-open .nav-toggle{
    position:fixed;
    top:18px;
    left:18px;
    right:auto;
    color:#fff;
  }
  .nav-toggle>span{
    transform-origin:center;
    transition:transform .2s var(--ease),opacity .2s var(--ease);
  }
  .menu-open .nav-toggle>span:first-child{
    transform:translateY(3.75px) rotate(45deg);
  }
  .menu-open .nav-toggle>span:nth-child(2){
    transform:translateY(-3.75px) rotate(-45deg);
  }
  .primary-nav__list>li>a{
    font-size:.95rem!important;
    padding:12px 0!important;
  }
}

@media (max-width:900px){
  html.pajand-home,
  html.pajand-home body{
    scroll-snap-type:y mandatory!important;
    scroll-padding-top:0!important;
  }
  .pajand-home .snap-section{
    min-height:100svh!important;
    height:100svh!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
    overflow:hidden!important;
  }
  .pajand-home .selected-projects{
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }
  .pajand-home .site-footer{
    overflow-y:auto!important;
  }
}

@media (max-width:560px){
  .brand__logo{width:34px;height:auto}
  .primary-nav{width:min(82vw,310px)!important}
}


/* About page — national project footprint */
.project-map-section{
  margin-top:96px;
  padding:64px 0 72px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-columns:minmax(260px,.58fr) minmax(0,1.42fr);
  gap:6vw;
  align-items:center;
}
.project-map-copy h2{
  margin:10px 0 16px;
  font-size:clamp(1.9rem,3vw,2.8rem);
  line-height:1.14;
  font-weight:700;
}
.project-map-copy p{
  margin:0;
  color:var(--muted);
  max-width:520px;
}
.project-map-visual{
  min-width:0;
}
.project-map-visual img{
  display:block;
  width:100%;
  height:auto;
  max-height:680px;
  object-fit:contain;
}

@media (max-width:900px){
  .project-map-section{
    margin-top:72px;
    padding:48px 0 56px;
    grid-template-columns:1fr;
    gap:28px;
  }
  .project-map-copy h2{
    font-size:2rem;
  }
  .project-map-visual img{
    max-height:none;
  }
}


/* Project imagery: preserve the complete source frame; never crop project photos. */
.project-card__media,
.selected-project__media{
  background:#eee7e2;
}
.project-card__media img,
.selected-project__media img{
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center;
  background:#eee7e2;
}
.project-card:hover img,
.selected-project:hover img{
  transform:none!important;
}

/* Single project hero imagery and Varzeqan gallery */
.project-hero__media{
  position:absolute;
  inset:0;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:#2b080b;
  background-image:none!important;
}
.project-slide{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  opacity:0;
  visibility:hidden;
  transition:opacity .55s var(--ease),visibility .55s var(--ease);
}
.project-slide.is-active{
  opacity:1;
  visibility:visible;
}
.project-slide img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}
.project-slider__control{
  position:absolute;
  top:50%;
  z-index:4;
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:50%;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  background:rgba(32,8,10,.46);
  color:#fff;
  font-family:"Vazirmatn",Tahoma,Arial,sans-serif;
  font-size:2rem;
  line-height:1;
  backdrop-filter:blur(5px);
}
.project-slider__control:hover{
  background:rgba(140,17,24,.88);
}
.project-slider__control--prev{right:24px}
.project-slider__control--next{left:24px}
.project-slider__dots{
  position:absolute;
  left:50%;
  bottom:22px;
  z-index:4;
  display:flex;
  gap:8px;
  transform:translateX(-50%);
}
.project-slider__dots button{
  width:9px;
  height:9px;
  min-width:9px;
  padding:0;
  border:1px solid rgba(255,255,255,.9);
  border-radius:50%;
  background:transparent;
}
.project-slider__dots button.is-active{
  background:#fff;
}

/* NIDC refurbishment intentionally uses the Pajand logo instead of a project photo. */
.project-hero--logo .project-hero__media{
  background:var(--paper);
}
.project-hero--logo .project-slide img{
  width:min(58vw,620px);
  height:min(52vh,500px);
  object-fit:contain;
}
.project-hero--logo .project-hero__overlay{
  background:linear-gradient(0deg,rgba(92,10,15,.96) 0%,rgba(92,10,15,.72) 28%,rgba(92,10,15,.12) 62%,rgba(92,10,15,0) 100%);
}

@media (max-width:700px){
  .project-slider__control{
    width:40px;
    height:40px;
    font-size:1.7rem;
  }
  .project-slider__control--prev{right:12px}
  .project-slider__control--next{left:12px}
  .project-slider__dots{bottom:14px}
  .project-hero--logo .project-slide img{
    width:min(78vw,520px);
    height:min(46vh,420px);
  }
}

/* Readability correction: this statement is on a light surface in Persian and English. */
.brand-statement .eyebrow--light,
.brand-statement .text-link--light{
  color:var(--brand);
}
.brand-statement .text-link--light:hover{
  color:var(--brand-deep);
}


/* Mobile scroll/video reliability — release 3.1.3.
   On touchscreens, allow native vertical scrolling instead of fighting mandatory
   section snapping with touchmove interception. */
.hero{
  background-color:var(--brand-deep);
  background-image:url("../images/hero-poster.jpg");
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
}
.hero__play{
  position:absolute;
  z-index:5;
  inset-inline-end:22px;
  bottom:22px;
  display:inline-grid;
  place-items:center;
  width:46px;
  height:46px;
  padding:0;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.75);
  background:rgba(92,10,15,.72);
  color:#fff;
  box-shadow:0 6px 22px rgba(0,0,0,.22);
  backdrop-filter:blur(8px);
}
.hero__play[hidden]{display:none!important}
.hero__play span{display:block;font-family:Arial,Helvetica,sans-serif;font-size:1rem}
.hero__play:hover,.hero__play:focus-visible{background:var(--brand)}
@media (max-width:900px){
  html.pajand-home,
  html.pajand-home body{
    scroll-snap-type:none!important;
    scroll-behavior:auto!important;
  }
  .pajand-home .snap-section{
    height:auto!important;
    min-height:100svh!important;
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
    overflow-x:hidden!important;
    overflow-y:visible!important;
  }
  .pajand-home .hero,
  .pajand-home .hero__content{
    min-height:100svh!important;
  }
  .pajand-home .site-footer{
    height:auto!important;
    overflow-y:visible!important;
  }
  .pajand-home .selected-projects{
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }
  .hero__play{inset-inline-end:18px;bottom:20px;width:44px;height:44px}
}
