/* ---------- fonts (self-hosted) ---------- */
@font-face{font-family:'Vazirmatn';src:url(/assets/fonts/Vazirmatn-Regular.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Vazirmatn';src:url(/assets/fonts/Vazirmatn-Medium.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Vazirmatn';src:url(/assets/fonts/Vazirmatn-Bold.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Vazirmatn';src:url(/assets/fonts/Vazirmatn-ExtraBold.woff2) format('woff2');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Vazirmatn';src:url(/assets/fonts/Vazirmatn-Black.woff2) format('woff2');font-weight:900;font-style:normal;font-display:swap}

@font-face{font-family:'Lalezar Fallback';src:url(/assets/fonts/Vazirmatn-Black.woff2) format('woff2');font-weight:400;font-display:swap}

/* ---------- base ---------- */
:root{--gx:clamp(20px,8.333vw,120px)}
.site-esh{--bg:#FFF6EA;--ink:#201A14;--muted:#5E5347;--accent:#C2410C;--accent-ink:#FFFFFF;--link:#B4410A;--ftr-bg:#201A14;--ftr-ink:#D9CFC4;--ftr-strong:#FFF6EA;--line:#3A3129;--domain:#F2B68A}
.site-lead{--bg:#EEF0F6;--ink:#1B1F3B;--muted:#5B6178;--accent:#E8A33D;--accent-ink:#1B1F3B;--link:#1B1F3B;--ftr-bg:#1B1F3B;--ftr-ink:#B9BED3;--ftr-strong:#FFFFFF;--line:#33385A;--domain:#E8A33D}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Vazirmatn',Tahoma,sans-serif;line-height:1.6;text-rendering:optimizeLegibility;overflow-x:clip}
.site-esh [style*="'Lalezar'"],.brand-name,.ftr-brand{font-family:'Lalezar','Lalezar Fallback','Vazirmatn',Tahoma,sans-serif!important}
img{max-width:100%;height:auto}
a{color:var(--link)}
a:hover{opacity:.9}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}
[id]{scroll-margin-top:84px}
[hidden]{display:none!important}
input,select,textarea,button{font:inherit;max-width:100%}
input:focus,select:focus,textarea:focus{outline:3px solid var(--accent);outline-offset:1px}
.page{display:flex;flex-direction:column;min-width:0}
.skip{position:absolute;inset-inline-start:12px;top:-60px;z-index:100;padding:10px 16px;border-radius:10px;background:var(--ink);color:#fff;text-decoration:none;font-weight:700}
.skip:focus{top:12px}
.hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.form-status{margin:0;font-size:15px;font-weight:700;min-height:0}
.form-status.ok{color:#0F766E}
.form-status.err{color:#B42318}
.site-lead #pilot-form .form-status.ok,.site-lead [style*="background: #1B1F3B"] .form-status.ok{color:#8BE3C9}
.cta-form .form-status{flex-basis:100%;color:#fff}
output{font:inherit}
.tbl-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:20px}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px var(--gx);background:var(--bg);transition:padding .25s ease,box-shadow .25s ease,background-color .25s ease}
.hdr.is-scrolled{padding-top:8px;padding-bottom:8px;box-shadow:0 10px 30px rgba(0,0,0,.12);animation:hdrDrop .45s cubic-bezier(.2,.8,.2,1)}
@keyframes hdrDrop{0%{transform:translateY(-14px);opacity:.6}100%{transform:none;opacity:1}}
.site-esh .hdr.is-scrolled{background:rgba(255,246,234,.9);-webkit-backdrop-filter:saturate(1.5) blur(12px);backdrop-filter:saturate(1.5) blur(12px);border-bottom:1px solid rgba(32,26,20,.06)}
.site-lead .hdr.is-scrolled{background:rgba(27,31,59,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.brand-mark,.brand-name,.brand-sub,.logo,.hdr .btn,.nav{transition:all .3s cubic-bezier(.2,.8,.2,1)}
.hdr.is-scrolled .logo{height:38px}
.hdr.is-scrolled .brand-mark{width:34px;height:34px;border-radius:10px;transform:rotate(-8deg)}
.hdr.is-scrolled .brand-name{font-size:22px}
.hdr.is-scrolled .brand-sub{opacity:0;height:0;overflow:hidden}
.hdr.is-scrolled .nav{font-size:15px}
.hdr.is-scrolled .btn{height:38px;padding:0 16px;font-size:14px}
.hdr.is-scrolled .menu summary{width:40px;height:40px}
.site-lead .hdr{background:#1B1F3B;color:#fff}
.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;flex-shrink:0}
.brand-mark{width:44px;height:44px;border-radius:14px;background:var(--accent);display:flex;align-items:center;justify-content:center}
.brand-txt{display:flex;flex-direction:column}
.brand-name{font-family:'Lalezar','Vazirmatn',sans-serif;font-size:28px;line-height:1;font-weight:900}
.brand-sub{font-size:12px;color:var(--muted)}
.logo{display:block;height:56px;width:auto}
.nav{display:flex;gap:clamp(16px,2.2vw,32px);align-items:center;font-size:16px;font-weight:500}
.nav a{color:var(--ink);text-decoration:none;padding-bottom:4px;border-bottom:2.5px solid transparent;white-space:nowrap}
.site-lead .nav a{color:#D4D7E3;font-size:15px}
.nav a[aria-current="page"]{font-weight:800;border-bottom-color:var(--accent)}
.site-lead .nav a[aria-current="page"]{color:#fff}
.hdr-actions{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:48px;padding:0 22px;border-radius:999px;text-decoration:none;font-weight:700;font-size:16px;white-space:nowrap}
.btn-dark{background:var(--ink);color:var(--bg)}
.btn-ghost{border:2px solid var(--ink);color:var(--ink)}
.btn-accent{background:var(--accent);color:var(--accent-ink);font-weight:800}
.site-lead .btn{border-radius:12px;height:46px;font-size:15px}
.show-sm{display:none}
.menu{display:none;position:relative}
.menu summary{list-style:none;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;cursor:pointer;color:inherit}
.menu summary::-webkit-details-marker{display:none}
.site-esh .menu summary{border:2px solid var(--ink)}
.site-lead .menu summary{border:1.5px solid #474C6B;color:#fff}
.menu nav{position:absolute;inset-inline-end:0;top:58px;display:flex;flex-direction:column;min-width:230px;padding:10px;border-radius:18px;background:#fff;box-shadow:0 20px 50px rgba(0,0,0,.18)}
.menu nav a{padding:12px 14px;border-radius:10px;color:#201A14;text-decoration:none;font-weight:600}
.site-lead .menu nav a{color:#1B1F3B}
.menu nav a:hover,.menu nav a[aria-current="page"]{background:rgba(0,0,0,.05)}

/* ---------- footer ---------- */
.ftr{display:flex;flex-direction:column;gap:40px;margin-top:clamp(48px,6.67vw,96px);padding:64px var(--gx) 40px;background:var(--ftr-bg);color:var(--ftr-ink);font-size:15px}
.ftr-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:48px}
.ftr-col{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.ftr-col p{margin:0;line-height:1.9}
.ftr-col a{color:var(--ftr-strong);text-decoration:none}
.ftr-col p a{text-decoration:underline}
.ftr-h{font-weight:800;color:var(--ftr-strong)}
.ftr-brand{font-family:'Lalezar','Vazirmatn',sans-serif;font-size:32px;color:var(--ftr-strong);font-weight:900}
.ftr .ftr-domain{color:var(--domain)}
.ftr-logo{height:64px;width:auto}
.ftr-bottom{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid var(--line);font-size:14px}
.ftr-bottom a{color:var(--ftr-strong);text-decoration:none}
.strong{font-weight:700}
.accent{color:var(--accent)!important}

/* ---------- animations ---------- */
@keyframes ldpop{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- 404 ---------- */
.nf{display:flex;flex-direction:column;align-items:center;gap:18px;padding:96px var(--gx);text-align:center}
.nf-code{font-size:clamp(72px,12vw,140px);font-weight:900;line-height:1;color:var(--accent)}
.nf h1{margin:0;font-size:clamp(28px,4vw,48px)}
.nf p{margin:0;font-size:18px;color:var(--muted)}
.nf-links{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

/* ---------- about composition ---------- */
.comp{width:513px;max-width:100%;margin-inline:auto}

/* ---------- tablet ---------- */
@media (max-width:1180px){
  .nav{display:none}
  .menu{display:block}
  .page [style*="repeat(5, minmax"],.page [style*="repeat(4, minmax"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .page [style*="repeat(3, minmax"]:not(.keep3){grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ftr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stack-md,.page [style*="grid-template-columns: 360px"]{grid-template-columns:minmax(0,1fr)!important}
  .stack-md{gap:48px!important}
  .flow{flex-wrap:wrap}
  .flow>div{flex:1 1 30%!important}
  .how-line{display:none}
  .page [style*="minmax(0, 1fr) 72px minmax(0, 1fr)"]{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
  .page [style*="minmax(0, 1fr) 72px minmax(0, 1fr)"]>div[aria-hidden]>span{transform:rotate(-90deg)}
  .page [style*="position: sticky"]{position:static!important}
}

/* ---------- mobile ---------- */
@media (max-width:760px){
  .hdr{padding-block:16px}
  .hide-sm{display:none!important}
  .show-sm{display:inline}
  .brand-name{font-size:24px}
  .brand-sub{display:none}
  .logo{height:44px}
  .btn{height:44px;padding:0 16px;font-size:15px}
  .page [style*="grid-template-columns"]:not(.keep2):not(.keep3):not(.keep-grid){grid-template-columns:minmax(0,1fr)!important}
  .keep-grid{grid-template-columns:repeat(10,16px)!important;gap:9px!important}
  .keep-grid>span{width:16px!important;height:16px!important}
  .page [style*="grid-column: span 2"]{grid-column:auto!important}
  .page [style*="display: flex"]:not([style*="flex-direction: column"]){flex-wrap:wrap}
  .page [style*="display: flex; gap: 12px"],.page [style*="display: flex; align-items: center; gap: 12px; padding: 12px 14px"],.page [style*="display: flex; align-items: center; gap: 16px; padding: 18px 20px"],.page [style*="justify-content: center; gap: 10px; margin-top: 18px"],.page [style*="display: flex; align-items: center; gap: 14px"]:has(h3),.page [style*="display: flex; gap: 20px; align-items: flex-start"]{flex-wrap:nowrap!important}
  .page p[style*="font-size: 2"],.page p[style*="font-size: 19px"]{font-size:17px!important;line-height:1.95!important}
  .page [style*="border-radius: 40px"],.page [style*="border-radius: 32px"],.page [style*="border-radius: 28px"]{border-radius:24px!important}
  .flow{flex-direction:column;align-items:stretch!important}
  .flow>div{flex:none!important;min-height:0!important}
  .flow>svg{transform:rotate(-90deg);align-self:center}
  .tbl-wrap table{min-width:720px}
  .ftr-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .hero-visual{height:auto!important;padding:24px 0}
  .hero-visual>div:first-child{inset:40px 0 0 0!important}
  .page h1 br{display:none}
  .page form>div[style*="display: flex; gap: 10px"]>input,.cta-form>input{flex:1 1 100%;min-width:0}
  .page form button{flex-grow:1}
}
@media (max-width:760px){
  .page #download [aria-hidden="true"][style*="height: 380px"]{display:none}
  .keep3[aria-hidden]{padding:0!important;gap:6px!important}
  .keep3[aria-hidden] span{padding:6px 10px!important;font-size:12px!important}
  .page #download [style*="repeat(2, minmax(0, 220px))"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .page #download [style*="repeat(2, minmax(0, 220px))"] a{padding:0 12px!important;gap:8px!important;flex-wrap:nowrap!important}
  .page #download [style*="repeat(2, minmax(0, 220px))"] a span span:last-child{font-size:14px!important;white-space:nowrap}
  .page [style*="box-shadow: 0 8px 20px rgba(194,65,12,0.12)"]{flex-wrap:nowrap!important;font-size:12px!important;gap:8px!important;padding:8px 12px!important}
}
@media (max-width:560px){
  .comp{zoom:.66}
}
