/* ParsCryo — cryo prototype layer (matches pasted single-file page).
   Tokens come from tokens.css. Local-only Vazirmatn. RTL logical props.
   Note: prototype `.ph` placeholder renamed to `.ph-text` to avoid
   collision with existing `.ph` media placeholder. */

body{font-family:var(--font-main);font-size:16.5px;line-height:1.9}
p{max-width:68ch}
.ph-text{border-bottom:2px dashed rgba(31,122,143,.5);padding-inline:.25em;color:var(--ink-2)}
.tagoz{font-size:.78rem;color:var(--ink-3,#5A7482);border:1px solid var(--line-2,#C3D4DC);border-radius:99px;padding:1px 10px;white-space:nowrap}
.tag-urgent{color:var(--urgent);border-color:#E4B6B2;background:var(--urgent-bg,var(--urgent-soft))}

/* hero trust row (prototype) */
.hero-trust{display:flex;flex-wrap:wrap;gap:0;margin-top:26px;border-top:1px solid var(--line,#D9E5EB);padding-top:18px;list-style:none;padding-inline-start:0}
.hero-trust li{display:flex;align-items:center;gap:9px;font-size:.93rem;color:var(--ink-2);font-weight:500;padding-inline-end:22px;margin-inline-end:22px;border-inline-end:1px solid var(--line,#D9E5EB)}
.hero-trust li:last-child{border:0;margin:0;padding:0}

/* numbered steps — circular teal badges like prototype */
.process .step .num{width:44px;height:44px;border-radius:50%;background:var(--brand,#1F7A8F);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.05rem;border:5px solid var(--bg)}
.process{position:relative}
@media(min-width:821px){.process::before{content:"";position:absolute;top:21px;inset-inline:12px;border-top:2px dashed var(--line-2,#C3D4DC)}}

/* services hero + cards */
.svc-hero{margin-top:34px;display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(24px,4vw,56px);background:var(--card,#fff);border:1px solid var(--line,#D9E5EB);border-radius:var(--r,16px);padding:clamp(24px,4vw,44px);align-items:center}
.svc-side{border-inline-start:1px dashed var(--line-2,#C3D4DC);padding-inline-start:clamp(18px,3vw,36px);font-size:.95rem;color:var(--ink-2)}
.svc-points{list-style:none;padding:0;margin:18px 0 0}
.svc-points li{display:flex;gap:10px;align-items:flex-start;padding-block:7px;font-size:.97rem}
.phase2{margin-top:22px;border:1px dashed var(--line-2,#C3D4DC);border-radius:var(--r-s,9px);padding:clamp(16px,2.5vw,24px);display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px}

/* commitments */
.pledges{list-style:none;padding:0;margin-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(28px,5vw,72px)}
.pledges li{display:flex;gap:13px;padding-block:15px;border-bottom:1px solid var(--line,#D9E5EB);align-items:flex-start}

/* audiences — IVF featured */
.aud{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;margin-top:34px}
.aud-main{grid-row:span 3;background:var(--card,#fff);border:1px solid var(--line-2,#C3D4DC);border-radius:var(--r,16px);padding:clamp(24px,3.5vw,40px)}
.aud-sm{background:var(--card,#fff);border:1px solid var(--line,#D9E5EB);border-radius:var(--r,16px);padding:20px 24px;display:flex;gap:14px;align-items:flex-start}
.aud-sm:hover{border-color:var(--brand)}

/* dark estimate panel */
.est{background:var(--ink,#0E2A3B);color:#EAF3F7;border-radius:18px;padding:clamp(28px,5vw,56px)}
.est .h2,.est h2{color:#fff}
.est .lede{color:#B9D2DD}

/* FAQ accordion like prototype */
.w-faq-item summary{padding-block:19px;font-size:1.02rem}

/* final CTA + page head + article + aside */
.cta-final{background:var(--card,#fff);border:1px solid var(--line,#D9E5EB);border-radius:18px;padding:clamp(28px,5vw,52px);display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
.phead{background:var(--card,#fff);border-bottom:1px solid var(--line,#D9E5EB);padding-block:clamp(30px,5vw,56px)}
.phead h1{font-size:clamp(1.5rem,3vw,2.2rem);font-weight:800;line-height:1.6}
.phead .lead{margin-top:12px;color:var(--ink-2);font-size:1.05rem;max-width:64ch}
.crumb{font-size:.85rem;color:var(--ink-3,#5A7482);margin-bottom:14px;display:block}
.art{padding-block:clamp(36px,6vw,64px);display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(28px,5vw,64px);align-items:start}
.art .plist{list-style:none;padding:0}
.art .plist li{display:flex;gap:11px;padding-block:9px;border-bottom:1px dashed var(--line,#D9E5EB);font-size:.97rem;align-items:flex-start}
.note-privacy{background:var(--ice-soft,#E8F3F7);border:1px solid var(--line,#D9E5EB);border-inline-start:4px solid var(--brand);border-radius:var(--r-s,9px);padding:14px 18px;font-size:.92rem;margin-block:18px}
.note-safety{background:var(--urgent-bg,#FBEFEE);border:1px solid #E7C6C3;border-inline-start:4px solid var(--urgent);border-radius:var(--r-s,9px);padding:14px 18px;font-size:.92rem;margin-block:18px}
.aside-card{background:var(--card,#fff);border:1px solid var(--line,#D9E5EB);border-radius:var(--r,16px);padding:24px;position:sticky;top:92px}
.aside-card .btn{width:100%;margin-top:12px}

/* tank illustration motion — hero only, once */
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.waveA{animation:wv 6s linear infinite}
.waveB{animation:wv 9.5s linear infinite reverse}
@keyframes wv{to{transform:translateX(34px)}}
.steam{opacity:.12;animation:st 5.5s ease-in-out infinite alternate}
@keyframes st{from{transform:translateY(0)}to{transform:translateY(-9px)}}

@media(max-width:1020px){
  .svc-hero,.aud{grid-template-columns:1fr}
  .aud-main{grid-row:auto}
  .svc-side{border-inline-start:0;border-top:1px dashed var(--line-2,#C3D4DC);padding:18px 0 0}
  .pledges{grid-template-columns:1fr}
  .art{grid-template-columns:1fr}
  .aside-card{position:static}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* ---------- minimal footer, foldable columns on mobile ---------- */
.site-footer{padding-block:44px 26px}
.foot-min{display:grid;grid-template-columns:1.1fr 1.9fr;gap:36px;align-items:start}
.foot-tag{margin:10px 0 0;font-size:14px;max-width:34ch}
.foot-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.foot-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 28px}
details.foot-col{border:0;padding:0;margin:0}
details.foot-col summary{list-style:none;font-size:.8rem;font-weight:700;color:var(--faint);letter-spacing:.05em;padding:0 0 8px;cursor:default}
details.foot-col summary::-webkit-details-marker{display:none}
details.foot-col summary::marker{content:""}
details.foot-col summary::after{content:"";display:none}
.foot-col a{display:block;color:var(--muted);padding:6px 0;font-size:.92rem}
.foot-col a:hover{color:var(--indigo-ink)}
.foot-bottom{display:flex;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;margin-top:30px;padding-top:16px;border-top:1px solid var(--border);font-size:.82rem;color:var(--faint)}
@media(max-width:840px){
  .foot-min{grid-template-columns:1fr;gap:6px}
  .foot-nav{grid-template-columns:1fr;gap:0}
  details.foot-col{border-bottom:1px solid var(--border)}
  details.foot-col summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding-block:14px;font-size:.95rem;color:var(--text)}
  details.foot-col summary::after{content:"+";display:block;color:var(--faint);font-size:1.25rem;line-height:1}
  details.foot-col[open] summary::after{content:"\2212"}
}

/* ---------- floating circular call button (all pages) ---------- */
.call-fab{position:fixed;bottom:22px;inset-inline-start:22px;z-index:70;width:60px;height:60px;border-radius:50%;background:var(--urgent);color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 10px 28px -8px rgba(199,55,47,.55)}
.call-fab:hover{color:#fff;transform:scale(1.06)}
.call-fab svg{width:26px;height:26px}
.call-fab::before{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--urgent);opacity:.5;animation:fabring 2.2s ease-out infinite;pointer-events:none}
@keyframes fabring{0%{transform:scale(.85);opacity:.6}100%{transform:scale(1.18);opacity:0}}
@media(max-width:640px){.call-fab{bottom:16px;width:56px;height:56px}}

/* ---------- typography: justify prose, center important titles ---------- */
.prose p,.post-content p,.art p,.rich-text p,.bc-excerpt,.w-faq-answer p,.assure-item p,.contact-info p{text-align:justify}
.section-head{align-items:center;text-align:center}
.section-head .h2,.section-head .lede{margin-inline:auto}
.phead{text-align:center}
.phead .lead{margin-inline:auto}

/* ---------- header: full-bleed container, content boxed elsewhere ---------- */
.site-header .wrap.nav{max-width:none;padding-inline:clamp(16px,3vw,40px)}
