
@font-face{font-family:"Vazirmatn";src:url(/assets/fonts/Vazirmatn-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Vazirmatn";src:url(/assets/fonts/Vazirmatn-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
:root{
--brand:#1F4E79;--brand-dark:#153A5B;--brand-soft:#EAF2FA;--accent:#3C8DD6;
--bg:#FFFFFF;--surface:#F8FAFC;--ink:#243342;--ink-strong:#0F1F30;--ink-soft:#5B6B7C;--line:#DDE5EE;
--head-bg:#F8FAFC;--foot-bg:#0F1F30;--foot-ink:#DCE6F0;--foot-link:#9CC4EA;
--danger:#B3261E;--danger-soft:#FCEAE8;--warn:#B98900;--warn-soft:#FFF8E1;--warn-ink:#5C4400;--radius:8px;
--art-bg:#EAF2FA;--art-blob1:#D6E6F5;--art-blob2:#C5DDF2;--art-shadow:#D6E0EA;--art-coat:#FFFFFF;--art-accent:#1F4E79;--art-skin:#F1C9A8;--art-hair:#2B2B2B;--art-blanket:#BFD8F0;}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Vazirmatn",system-ui,sans-serif;font-size:17px;line-height:1.9;color:var(--ink);background:var(--bg);overflow-x:hidden}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{line-height:1.45;margin:0 0 .5em;font-weight:700;color:var(--ink-strong)}
h1{font-size:clamp(1.7rem,4.5vw,2.6rem)}
h2{font-size:clamp(1.3rem,3vw,1.8rem)}
h3{font-size:1.1rem}
p{margin:0 0 1em}
ul{padding-right:1.4em;margin:0 0 1em}
.wrap{width:min(1120px,100% - 32px);margin-inline:auto}
.hero-grid>*,.about-grid>*,.contact-grid>*,.home-contact>*,.kh-card>*,.kh>*,.band>*,.doc-row>*,.trust>*{min-width:0}
.hero-art,.portrait-art{width:100%}
.hero-pic{display:block}.hero-img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block}
.map iframe{max-width:100%}
.narrow{width:min(760px,100% - 32px)}
.ico{display:inline-flex;width:1.25em;height:1.25em;vertical-align:-.3em;flex:none}
.ico svg{width:100%;height:100%}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin:1em 0}
.btn{display:inline-flex;align-items:center;gap:.5em;padding:.75em 1.3em;border-radius:var(--radius);font-weight:700;border:2px solid transparent;transition:.2s;cursor:pointer;font:inherit;font-weight:700}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn-primary{background:var(--brand);color:#fff}
.btn-primary:hover{background:var(--brand-dark)}
.btn-wa{background:#25D366;color:#fff}
.btn-wa:hover{background:#1da851}
.btn-ghost{background:transparent;color:var(--brand);border-color:var(--brand)}
.btn-ghost:hover{background:var(--brand-soft)}
/* header/nav generic */
.skip{position:absolute;right:-999px}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex-wrap:wrap}
.nav a{display:block;padding:.5em .8em;border-radius:8px;color:var(--ink);font-weight:700}
.nav a:hover,.nav a[aria-current]{background:var(--brand-soft);color:var(--brand-dark);text-decoration:none}
.nav a.nav-hi{color:var(--brand)}
.menu-btn{display:none;background:none;border:0;color:var(--ink);cursor:pointer;padding:6px}
.menu-btn .ico{width:1.8em;height:1.8em}
@media (min-width:901px){.head-row{flex-wrap:nowrap}.nav ul{flex-wrap:nowrap}.nav a{white-space:nowrap}.head-cta{white-space:nowrap;flex:none}.logo{flex:none}}
@media (min-width:901px) and (max-width:1180px){.nav a{padding:.5em .55em;font-size:.92rem}.logo small{display:none}}
@media (max-width:900px){
  .menu-btn{display:inline-flex}
  .nav{display:none;width:100%}
  .nav ul{flex-direction:column;padding:8px 0}
  .site-head.open .nav{display:block}
}
/* page head */
.page-head{padding:clamp(28px,6vw,64px) 0 clamp(20px,4vw,40px);background:var(--head-bg);border-bottom:1px solid var(--line)}
.page-head .sub{font-size:1.05rem;color:var(--ink-soft);max-width:70ch;margin:0}
.crumbs{font-size:.85rem;color:var(--ink-soft);margin-bottom:8px;display:flex;gap:8px}
.inner{padding:clamp(24px,4vw,56px) 0 calc(clamp(24px,4vw,56px) + 60px)}
.sec-title{margin-top:1.5em}
/* prose + boxes */
.prose{max-width:76ch}
.prose section{margin:2.2em 0;scroll-margin-top:90px}
.prose .lead{font-size:1.1rem}
.box{background:var(--brand-soft);border-radius:var(--radius);padding:18px 22px;margin:1.2em 0;border-right:5px solid var(--brand)}
.box h3{margin-top:0}
.box-red{background:var(--danger-soft);border-right-color:var(--danger)}
.box-red h3{color:var(--danger);display:flex;align-items:center;gap:.4em}
.note{background:var(--warn-soft);padding:12px 16px;border-radius:var(--radius);font-size:.95rem}
.checks{list-style:none;padding:0}
.checks li{display:flex;gap:.6em;align-items:flex-start;margin:.45em 0}
.checks .ico{color:var(--brand);margin-top:.35em}
.checks.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 20px}
.draft{display:flex;gap:.7em;align-items:flex-start;background:var(--warn-soft);border:1px dashed var(--warn);color:var(--warn-ink);padding:12px 16px;border-radius:var(--radius);font-size:.92rem;margin:0 0 1.5em}
.draft p{margin:0}
.draft .ico{margin-top:.35em;color:var(--warn)}
.toc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 18px;margin:0 0 1.5em}
.toc ul{list-style:none;padding:0;margin:.4em 0 0;display:flex;flex-wrap:wrap;gap:8px}
.toc a{display:inline-block;padding:.3em .8em;border-radius:99px;background:var(--brand-soft);color:var(--brand-dark);font-size:.92rem}
.methods{display:grid;gap:14px;margin:1em 0}
.method{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 60px 12px 18px}
.method .num{position:absolute;right:18px;top:18px;width:30px;height:30px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:700}
.method h3{margin-top:0}
.care-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:1em 0}
.care{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}
.care h3{margin-top:0;color:var(--brand-dark)}
.care p{margin:0;font-size:.97rem}
.faq-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:10px 0;padding:0 18px}
.faq-item summary{cursor:pointer;padding:14px 0;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-size:1.5em;color:var(--brand);flex:none;line-height:1}
.faq-item[open] summary::after{content:"–"}
.faq-item summary h3{margin:0;font-size:1.02rem}
.faq-a{padding:0 0 14px;color:var(--ink-soft)}
.doc-row{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:start}
.doc-row .portrait-art{border-radius:var(--radius)}
@media (max-width:640px){.doc-row{grid-template-columns:1fr}.doc-row .portrait-art{max-width:220px}}
.cta-box{background:var(--brand-soft);border-radius:calc(var(--radius) * 1.5);padding:clamp(20px,4vw,36px);margin-top:2.5em}
.cta-box h2{margin-top:0}
.nap p{margin:.25em 0;display:flex;gap:.5em;align-items:flex-start}
.nap .ico{color:var(--brand);margin-top:.35em}
.nap-big{font-size:1.08rem}
.nap a{font-weight:700}
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.svc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px}
.svc-ico{display:inline-flex;width:44px;height:44px;padding:9px;border-radius:12px;background:var(--brand-soft);color:var(--brand);margin-bottom:10px}
.svc-ico svg{width:100%;height:100%}
.svc h3{margin:0 0 .3em}
.svc p{margin:0;font-size:.96rem;color:var(--ink-soft)}
.post-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.post-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:6px}
.post-card .tag{align-self:flex-start;font-size:.8rem;background:var(--brand-soft);color:var(--brand-dark);padding:.15em .7em;border-radius:99px}
.post-card h3{margin:0;font-size:1.05rem}
.post-card p{margin:0;font-size:.95rem;color:var(--ink-soft);flex:1}
.post-card time{font-size:.85rem;color:var(--ink-soft)}
.post h2{margin-top:1.6em}
.post-foot{border-top:1px solid var(--line);margin-top:2em;padding-top:1em}
.more{margin-top:3em}
.about-grid{display:grid;grid-template-columns:280px 1fr;gap:36px;align-items:start}
.about-side .portrait-art{border-radius:var(--radius);margin-bottom:16px}
@media (max-width:820px){.about-grid{grid-template-columns:1fr}.about-side .portrait-art{max-width:260px}}
.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:36px;align-items:start}
@media (max-width:820px){.contact-grid{grid-template-columns:1fr}}
.map{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);margin-top:1em}
.form{display:grid;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.form label{display:grid;gap:6px;font-weight:700;font-size:.95rem}
.form input,.form textarea{font:inherit;padding:.65em .9em;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink)}
.form input:focus,.form textarea:focus{outline:2px solid var(--brand);border-color:transparent}
.form-note{font-size:.82rem;color:var(--ink-soft);margin:0}
.form-ok{color:var(--brand-dark);font-weight:700;margin:0}
.dir{color:var(--ink-soft)}
/* ratings strip */
.ratings{padding:clamp(24px,4vw,48px) 0}
.ratings h2{text-align:center;font-size:clamp(1.2rem,2.6vw,1.6rem);margin-bottom:18px}
.ratings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.rating{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 18px;color:var(--ink);text-decoration:none}
.rating:hover{text-decoration:none;border-color:var(--brand)}
.rating .score{grid-row:1/3;display:inline-flex;align-items:baseline;gap:.2em;font-size:1.7rem;font-weight:700;color:var(--brand-dark)}
.rating .score .ico{color:#F5B301;width:1em;height:1em;align-self:center}
.rating .score small{font-size:.8rem;color:var(--ink-soft);font-weight:400}
.rating .site{font-weight:700}
.rating .count{font-size:.88rem;color:var(--ink-soft)}
.ratings-note{text-align:center;font-size:.82rem;color:var(--ink-soft);margin:12px 0 0}
.nap-ig a{direction:ltr;unicode-bidi:embed}
/* footer */
.site-foot{background:var(--foot-bg);color:var(--foot-ink);padding:40px 0 90px;margin-top:40px}
.site-foot a{color:var(--foot-link)}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:28px}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr}}
.site-foot .nap .ico{color:var(--foot-link)}
.site-foot h3{color:var(--foot-ink);font-size:1rem}
.site-foot .foot-ig{color:var(--foot-link);border-color:var(--foot-link)}
.site-foot .foot-ig:hover{background:rgba(255,255,255,.08)}
.site-foot ul{list-style:none;padding:0;margin:0}
.site-foot li{margin:.3em 0}
.copy{border-top:1px solid rgba(255,255,255,.15);margin-top:24px;padding-top:16px;font-size:.85rem;opacity:.85;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
/* mobile CTA bar */
.mbar{position:fixed;bottom:0;right:0;left:0;display:none;grid-template-columns:1fr 1fr 1fr;background:var(--surface);border-top:1px solid var(--line);z-index:50;box-shadow:0 -4px 20px rgba(0,0,0,.08)}
.mbar a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 10px;font-size:.8rem;font-weight:700;color:var(--brand-dark)}
.mbar a:nth-child(2){color:#1da851}
.mbar .ico{width:1.5em;height:1.5em}
@media (max-width:900px){.mbar{display:grid}}
@media (min-width:901px){.site-foot{padding-bottom:40px}}

.topbar{background:var(--brand-dark);color:#fff;font-size:.85rem}
.topbar .wrap{display:flex;justify-content:space-between;gap:12px;padding:6px 0;flex-wrap:wrap}
.topbar a{color:#fff}
.topbar span{display:inline-flex;gap:.4em;align-items:center}
.site-head{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}
.head-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;flex-wrap:wrap}
.logo{color:var(--ink-strong);font-weight:700;font-size:1.15rem;line-height:1.2;display:flex;align-items:center;gap:12px}
.logo .mark{width:40px;height:40px;border:2px solid var(--brand);border-radius:6px;display:grid;place-items:center;color:var(--brand)}
.logo small{display:block;font-weight:400;font-size:.75rem;color:var(--ink-soft);letter-spacing:.02em}
.nav a{border-radius:4px;font-weight:400}
.nav a[aria-current]{background:none;color:var(--brand);box-shadow:inset 0 -2px 0 var(--brand)}
.nav a.nav-hi{font-weight:700}
.btn{border-radius:6px}
.hero{padding:clamp(36px,7vw,90px) 0 clamp(28px,5vw,60px);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
@media (max-width:820px){.hero-grid{grid-template-columns:1fr}}
.eyebrow{color:var(--brand);font-weight:700;letter-spacing:.02em;font-size:.9rem;display:block;margin-bottom:12px;border-right:3px solid var(--brand);padding-right:10px}
.hero h1{font-size:clamp(1.9rem,4.6vw,2.9rem);line-height:1.4;max-width:20ch}
.hero .lead{font-size:1.08rem;color:var(--ink-soft);max-width:58ch}
.hero-fig{margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}
.hero-fig .hero-img{aspect-ratio:16/11;border-radius:0}
.hero-fig ul{list-style:none;padding:8px 16px;margin:0;font-size:.9rem}
.hero-fig li{display:flex;gap:.5em;padding:.35em 0;border-top:1px solid var(--line)}
.hero-fig li:first-child{border-top:0}
.hero-fig li .ico{color:var(--brand);margin-top:.35em}
.doc-card{border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--surface)}
.doc-card .portrait-art{border-radius:8px;max-width:260px;margin:0 auto 14px}
.doc-card h3{margin:0}
.doc-card p{margin:0;color:var(--ink-soft);font-size:.92rem}
.doc-card ul{list-style:none;padding:0;margin:12px 0 0;font-size:.92rem}
.doc-card li{display:flex;gap:.5em;padding:.35em 0;border-top:1px solid var(--line)}
.doc-card li .ico{color:var(--brand)}
.sec{padding:clamp(32px,6vw,72px) 0;border-bottom:1px solid var(--line)}
.sec-head{display:grid;grid-template-columns:1fr 2fr;gap:24px;margin-bottom:28px}
@media (max-width:760px){.sec-head{grid-template-columns:1fr}}
.sec-head h2{margin:0;font-size:clamp(1.4rem,3vw,1.9rem)}
.sec-head p{margin:0;color:var(--ink-soft)}
.svc-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;counter-reset:s}
@media (max-width:760px){.svc-list{grid-template-columns:1fr}}
.svc-list .svc{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:18px 44px 18px 0;position:relative;counter-increment:s}
.svc-list .svc::before{content:counter(s,decimal-leading-zero);position:absolute;right:0;top:20px;color:var(--brand);font-weight:700;font-size:.9rem}
.svc-list .svc-ico{display:none}
.kh{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
@media (max-width:820px){.kh{grid-template-columns:1fr}}
.kh h2{font-size:clamp(1.5rem,3.5vw,2.2rem)}
.kh ol{margin:0 0 1em;padding-right:1.2em;columns:2;gap:24px;color:var(--ink-soft)}
@media (max-width:520px){.kh ol{columns:1}}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
@media (max-width:760px){.stats{grid-template-columns:1fr 1fr}}
.stats div{background:#fff;padding:22px 18px}
.stats strong{display:block;font-size:1.05rem;color:var(--brand)}
.stats span{font-size:.9rem;color:var(--ink-soft)}
.post-grid{grid-template-columns:1fr;gap:0}
.post-card{border:0;border-top:1px solid var(--line);border-radius:0;background:none;padding:18px 0;display:grid;grid-template-columns:110px 1fr;gap:16px}
.post-card .tag{background:none;color:var(--brand);padding:0;font-weight:700}
.post-card time{grid-column:2}
@media (max-width:520px){.post-card{grid-template-columns:1fr}.post-card time{grid-column:1}}
.home-contact{display:grid;grid-template-columns:1fr 1.2fr;gap:40px}
@media (max-width:820px){.home-contact{grid-template-columns:1fr}}
/* circumcision page: sticky sidebar TOC on desktop */
.khatneh{display:grid;grid-template-columns:240px 1fr;gap:48px;align-items:start}
.khatneh .toc{position:sticky;top:90px;background:none;border:0;padding:0;order:2}
.khatneh .toc ul{flex-direction:column;gap:0}
.khatneh .toc a{background:none;border-right:2px solid var(--line);border-radius:0;padding:.3em .8em;color:var(--ink-soft);display:block}
.khatneh .toc a:hover{border-right-color:var(--brand);color:var(--brand);text-decoration:none}
.khatneh .draft{grid-column:1/-1}
.khatneh .prose{order:1}
@media (max-width:900px){.khatneh{grid-template-columns:1fr}.khatneh .toc{position:static;order:0}.khatneh .toc ul{flex-direction:row;flex-wrap:wrap;gap:8px}.khatneh .toc a{border:1px solid var(--line);border-radius:4px}}
.method,.care,.faq-item,.svc,.form{box-shadow:none}
.site-foot{background:var(--foot-bg)}
