@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;600;700;800&display=swap');
:root{--green:#123b2d;--green-deep:#0b2a20;--green-mid:#1e5942;--green-light:#eaf0eb;--gold:#c7ad70;--ink:#1d2b25;--muted:#66746d;--paper:#fbfaf6;--line:#dfe5df}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Vazirmatn",Tahoma,sans-serif;line-height:1.9}a{color:inherit;text-decoration:none}.container{width:min(1120px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(11,42,32,.97);color:#fff;border-bottom:1px solid rgba(199,173,112,.25);backdrop-filter:blur(12px)}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px}.brand-logo{width:58px;height:58px;object-fit:contain;border-radius:50%;flex:0 0 auto;background:#fff}.brand strong,.brand small{display:block}.brand strong{font-size:14px}.brand small{font-size:10px;color:#cbd7d0;margin-top:2px}.nav{display:flex;gap:25px;align-items:center}.nav a{font-size:12px;color:#e0e8e2;transition:color .2s}.nav a:hover{color:var(--gold)}.menu-toggle{display:none;background:none;color:#fff;border:1px solid #658073;border-radius:6px;padding:7px 11px;font-size:20px}.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 30%,#1b4a38 0%,var(--green) 42%,var(--green-deep) 100%);color:white;padding:90px 0 76px}.hero:before,.hero:after{content:"";position:absolute;border:1px solid rgba(199,173,112,.18);border-radius:50%;pointer-events:none}.hero:before{width:600px;height:600px;right:-260px;top:-300px}.hero:after{width:420px;height:420px;left:-240px;bottom:-260px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:70px}.eyebrow,.section-kicker{font-size:12px;letter-spacing:.04em;color:var(--gold);font-weight:600}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow span{display:inline-block;width:28px;height:1px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(40px,5vw,65px);line-height:1.45;margin:20px 0 14px;font-weight:700;letter-spacing:-1.5px}h1 em,h2 em{font-style:normal;color:var(--gold)}.hero-lead{font-size:21px;font-weight:600;margin-bottom:4px}.hero-text{font-size:14px;line-height:2.2;color:#d1ddd5}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px;flex-wrap:wrap}.button{display:inline-flex;padding:12px 22px;border-radius:3px;font-size:13px;font-weight:600}.button-gold{background:var(--gold);color:var(--green-deep)}.text-link{font-size:12px;color:#e3e9e4}.text-link span{color:var(--gold);margin-right:8px}.portrait-wrap{max-width:420px;margin:auto;width:100%}.portrait-frame{padding:12px;border:1px solid rgba(199,173,112,.7);position:relative}.portrait-frame:before{content:"";position:absolute;inset:7px;border:1px solid rgba(199,173,112,.28);pointer-events:none}.portrait-placeholder{min-height:390px;background:linear-gradient(145deg,#dce4dc,#aabbb0);color:var(--green);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;text-align:center;position:relative}.portrait-initial{font-size:100px;font-weight:300;line-height:1;color:rgba(18,59,45,.42)}.portrait-placeholder strong{font-size:15px}.portrait-placeholder small{font-size:11px}.portrait-caption{display:flex;align-items:center;gap:10px;font-size:11px;color:#cbd7d0;margin-top:14px}.caption-line{width:28px;height:1px;background:var(--gold)}.hero-bottom-line{position:absolute;bottom:0;right:0;width:28%;height:3px;background:var(--gold)}.section{padding:90px 0}.two-col{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}.section h2{font-size:clamp(30px,3vw,42px);line-height:1.6;color:var(--green);margin:8px 0 0}.intro-content{padding-top:23px;color:#53625a;font-size:14px;line-height:2.4}.intro-content strong{color:var(--green)}.section-muted{background:#f0f3ef}.section-heading{text-align:center;max-width:650px;margin:0 auto 42px}.section-heading>p:last-child{font-size:13px;color:var(--muted);margin:8px 0 0}.section-heading h2{margin:0}.credential-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.credential-card{position:relative;background:#fff;padding:32px 27px;border:1px solid var(--line);min-height:250px;box-shadow:0 12px 35px rgba(14,49,35,.035)}.card-number{position:absolute;left:22px;top:18px;font-size:12px;color:#a2b0a6}.card-icon{font-size:27px;color:var(--gold);margin-bottom:12px}.credential-card h3,.goal-item h3,.program-row h3{font-size:16px;color:var(--green);margin-bottom:8px}.credential-card p{font-size:12px;color:var(--muted);line-height:2.1;margin-bottom:0}.credential-card .card-highlight{color:var(--green-mid);font-weight:700;font-size:14px;margin-bottom:8px}.goals{background:var(--green-deep);color:#fff;position:relative;overflow:hidden}.goals:before{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(199,173,112,.12);border-radius:50%;left:-240px;top:-250px}.light-heading h2{color:white}.light-heading>p:last-child{color:#bdcec3}.goals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;position:relative}.goal-item{border-top:1px solid rgba(199,173,112,.5);padding-top:23px}.goal-symbol{display:grid;place-items:center;border:1px solid var(--gold);color:var(--gold);width:38px;height:38px;border-radius:50%;font-size:13px;margin-bottom:20px}.goal-item h3{color:#f5f4ed;font-size:17px}.goal-item p{font-size:13px;line-height:2.25;color:#c2d0c7;margin:0}.programs-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px}.programs-title h2{margin:4px 0 20px}.programs-title>p:last-child{font-size:13px;color:var(--muted);line-height:2.3}.program-list{border-top:1px solid #cfd9d1}.program-row{display:grid;grid-template-columns:45px 1fr;gap:15px;padding:22px 0;border-bottom:1px solid #cfd9d1}.program-row>span{font-size:12px;color:#9a8755;padding-top:2px}.program-row h3{margin:0 0 6px}.program-row p{font-size:12px;color:var(--muted);margin:0;line-height:2.2}.closing{text-align:center;background:#fff}.closing-inner{max-width:760px}.closing-ornament{font-size:42px;color:var(--gold);line-height:1;margin-bottom:20px}.closing h2{font-size:clamp(27px,3.5vw,39px);margin:0 0 18px}.closing p:last-child{color:var(--muted);font-size:13px}.footer{background:#092219;color:#d9e2dc;padding:40px 0 20px}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:25px}.footer-content strong{font-size:14px}.footer-content p,.footer-note{font-size:11px;color:#aabbb0;margin:5px 0 0}.back-top{font-size:11px;color:var(--gold);white-space:nowrap}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:17px;display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#82978a}
@media(max-width:800px){.nav-wrap{min-height:72px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:72px;right:0;left:0;background:var(--green-deep);padding:18px 24px 24px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid rgba(199,173,112,.25)}.nav.open{display:flex}.nav a{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08)}.hero{padding:60px 0}.hero-grid{grid-template-columns:1fr;gap:40px}.hero-copy{text-align:center}.eyebrow,.hero-actions{justify-content:center}.hero-text br{display:none}.portrait-wrap{max-width:290px}.portrait-placeholder{min-height:320px}.two-col,.programs-layout{grid-template-columns:1fr;gap:25px}.section{padding:65px 0}.intro-content{padding-top:0}.credential-grid{grid-template-columns:1fr}.credential-card{min-height:0}.goals-grid{grid-template-columns:1fr;gap:28px}.goal-item{padding-top:18px}.footer-content{align-items:flex-start;flex-direction:column}.footer-bottom{flex-direction:column;gap:5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.candidate-photo{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;position:relative}
@media(max-width:800px){.portrait-wrap{max-width:360px}.candidate-photo{height:auto}}

/* Expanded biography and goals lists */
.experience-list{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-list .credential-card{min-height:0;padding:27px 25px}.experience-entry{font-size:17px;font-weight:600;line-height:2.15;color:var(--muted);margin:0;padding-right:12px}.goals-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.goals-list .goal-item{padding:22px 20px;border:1px solid rgba(199,173,112,.28);border-radius:4px}.goals-list .goal-item h3{font-size:19px;font-weight:700}.goals-list .goal-item p{font-size:16px;font-weight:500;line-height:2.3}.goals-closing{text-align:center;color:var(--gold);margin-top:34px;font-weight:700}
@media(max-width:700px){.experience-list,.goals-list{grid-template-columns:1fr}}

/* Photo gallery */
.photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.photo-card{margin:0;background:#fff;border:1px solid var(--line);padding:10px;box-shadow:0 12px 35px rgba(14,49,35,.07)}.photo-card a{display:block;overflow:hidden;background:#e8ece8}.photo-card img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;transition:transform .25s ease}.photo-card a:hover img{transform:scale(1.02)}.photo-card figcaption{font-size:14px;font-weight:600;color:var(--green);padding:12px 8px 6px;line-height:1.9}@media(max-width:700px){.photo-gallery{grid-template-columns:1fr}.photo-card{max-width:520px;margin-inline:auto;width:100%}}


/* گالری عکس‌ها */
.photo-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.photo-card {
  margin: 0;
  overflow: hidden;
  border-radius: 16px;
  background: var(--surface, #fff);
  border: 1px solid rgba(18, 59, 45, .12);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}
.photo-card a { display: block; overflow: hidden; background: #eee; }
.photo-card img {
  display: block;
  width: 100%;
  height: 340px;
  object-fit: cover;
  transition: transform .25s ease;
}
.photo-card a:hover img { transform: scale(1.025); }
.photo-card figcaption {
  padding: 12px 14px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.8;
}
@media (max-width: 900px) {
  .photo-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .photo-card img { height: 300px; }
}
@media (max-width: 560px) {
  .photo-gallery { grid-template-columns: 1fr; }
  .photo-card img { height: auto; max-height: 520px; object-fit: contain; }
}


/* گالری: نمایش کامل عکس‌ها در کارت‌های بزرگ‌تر */
.photo-gallery {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  align-items: start;
}
.photo-card { padding: 12px; }
.photo-card a { display: block; overflow: hidden; background: #f0f2ef; cursor: zoom-in; }
.photo-card img {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  transition: transform .25s ease;
}
.photo-card a:hover img { transform: scale(1.01); }
.image-viewer {
  position: fixed; inset: 0; z-index: 1000;
  display: flex; align-items: center; justify-content: center;
  padding: 64px 24px 24px; background: rgba(4, 14, 10, .94);
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .2s ease, visibility .2s ease;
}
.image-viewer.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
.image-viewer-image { display: block; max-width: 100%; max-height: calc(100vh - 96px); width: auto; height: auto; object-fit: contain; box-shadow: 0 12px 45px rgba(0,0,0,.3); }
.image-viewer-close {
  position: absolute; top: 14px; right: 20px; width: 46px; height: 46px;
  border: 1px solid rgba(255,255,255,.6); border-radius: 50%;
  background: rgba(255,255,255,.12); color: #fff; font-size: 32px; line-height: 1; cursor: pointer;
}
body.viewer-open { overflow: hidden; }
@media (max-width: 700px) {
  .photo-gallery { grid-template-columns: 1fr; gap: 20px; }
  .photo-card { max-width: 620px; margin-inline: auto; width: 100%; }
  .image-viewer { padding: 64px 10px 14px; }
  .image-viewer-image { max-height: calc(100vh - 88px); }
}

.contact-link{color:var(--gold);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.contact-link:hover{color:#fff}.contact-social p{font-size:12px;margin:4px 0 10px;color:#d9e2dc}.contact-social p span{color:#aabbb0;margin-left:6px}
