/* «هیرو قالب‌ریزی سنگ AminH» */
.asc{--asc-ink:#5E4639;--asc-acc:#C8A28A;--asc-soft:#F6EEE8;--asc-txt:#6B5A50;--asc-h:620px;--asc-r:12px;--asc-ease:cubic-bezier(.2,.75,.2,1);
	position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:40px;
	min-height:var(--asc-h);padding:48px 64px;border-radius:var(--asc-r);background:var(--asc-soft);overflow:hidden;isolation:isolate;direction:rtl}
.asc *{box-sizing:border-box}
.asc-veins{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.asc-veins path{fill:none;stroke:var(--asc-acc);stroke-width:1.2;opacity:.35;stroke-dasharray:1600;stroke-dashoffset:1600;transition:stroke-dashoffset 3.2s var(--asc-ease) .3s}
.asc--in .asc-veins path{stroke-dashoffset:0}

/* text */
.asc-txt{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;text-align:right}
.asc-k{display:flex;align-items:center;gap:12px;margin:0 0 14px;color:var(--asc-acc);font-size:15px;font-weight:700;line-height:1.6;
	opacity:0;transform:translateY(12px);transition:opacity .7s,transform .7s var(--asc-ease)}
.asc-k-line{display:inline-block;width:0;height:2px;background:var(--asc-acc);border-radius:2px;transition:width .9s var(--asc-ease) .2s}
.asc .asc-h{margin:0 0 18px;color:var(--asc-ink);font-size:44px;font-weight:800;line-height:1.5}
.asc-l{display:block;overflow:hidden;padding-bottom:.08em}
.asc-l>span{position:relative;display:inline-block;transform:translateY(105%);transition:transform 1s var(--asc-ease) .15s}
.asc-l2>span{color:var(--asc-acc);transition-delay:.3s}
.asc-u{position:absolute;right:0;bottom:-.05em;width:100%;height:.36em;overflow:visible}
.asc-u path{fill:none;stroke:var(--asc-acc);stroke-width:4;stroke-linecap:round;opacity:.55;stroke-dasharray:340;stroke-dashoffset:340;transition:stroke-dashoffset 1.2s var(--asc-ease) 1.1s}
.asc-x{max-width:520px;margin:0 0 28px;color:var(--asc-txt);font-size:15px;line-height:2.05;text-align:justify;
	opacity:0;transform:translateY(14px);transition:opacity .8s .55s,transform .8s var(--asc-ease) .55s}
.asc--in .asc-k,.asc--in .asc-x{opacity:1;transform:none}
.asc--in .asc-k-line{width:36px}
.asc--in .asc-l>span{transform:none}
.asc--in .asc-u path{stroke-dashoffset:0}

/* cards */
.asc-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;max-width:600px}
.asc-card{position:relative;display:flex;align-items:center;gap:12px;min-width:0;padding:16px 16px 16px 44px;border-radius:var(--asc-r);
	background:#fff;border:1px solid rgba(200,162,138,.35);color:var(--asc-ink);text-decoration:none;
	box-shadow:0 10px 30px -18px rgba(94,70,57,.35);opacity:0;transform:translateY(18px);
	transition:opacity .8s,transform .8s var(--asc-ease),box-shadow .35s,border-color .35s}
.asc--in .asc-card{opacity:1;transform:none}
.asc--in .asc-card[data-n="0"]{transition-delay:.75s,.75s,0s,0s}
.asc--in .asc-card[data-n="1"]{transition-delay:.9s,.9s,0s,0s}
.asc .asc-card:hover,.asc .asc-card.is-on{border-color:var(--asc-acc);box-shadow:0 18px 36px -18px rgba(94,70,57,.45);color:var(--asc-ink)}
.asc--in .asc-card:hover{transform:translateY(-4px);transition-delay:0s}
.asc-cut{flex:0 0 56px;width:56px;height:56px;border-radius:50%;background:var(--asc-soft);display:flex;align-items:center;justify-content:center;overflow:hidden}
.asc-cut img{width:84%;height:84%;object-fit:contain;transition:transform .5s var(--asc-ease)}
.asc-card:hover .asc-cut img{transform:scale(1.12) rotate(-6deg)}
.asc-cbody{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}
.asc-ck{color:var(--asc-acc);font-size:12px;font-weight:700;line-height:1.6}
.asc-ct{color:var(--asc-ink);font-size:15px;font-weight:800;line-height:1.6}
.asc-cx{color:var(--asc-txt);font-size:13px;line-height:1.8}
.asc-ct{white-space:nowrap}
.asc-go{position:absolute;left:12px;top:50%;margin-top:-14px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--asc-soft);transition:background .3s,transform .4s var(--asc-ease)}
.asc-go svg{width:16px;height:16px;fill:none;stroke:var(--asc-ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.asc-card:hover .asc-go{background:var(--asc-acc);transform:translateX(-3px)}
.asc-card:hover .asc-go svg{stroke:#fff}

/* visual */
.asc-vis{position:relative;z-index:1;height:calc(var(--asc-h) - 96px);min-height:420px;display:flex;align-items:flex-end;justify-content:center}
.asc-blob{position:absolute;width:118%;max-width:620px;left:50%;top:50%;transform:translate(-50%,-50%) scale(.6);opacity:0;
	transition:opacity 1.2s,transform 1.6s var(--asc-ease)}
.asc-blob path{fill:var(--asc-acc);opacity:.28}
.asc--in .asc-blob{opacity:1;transform:translate(-50%,-50%) scale(1);animation:ascSpin 38s linear 1.6s infinite}
@keyframes ascSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.asc-arch,.asc-arch-line{position:relative;width:min(400px,78%);height:100%;border-radius:999px 999px var(--asc-r) var(--asc-r)}
.asc-arch{overflow:hidden;background:var(--asc-acc);clip-path:inset(100% 0 0 0 round 999px 999px var(--asc-r) var(--asc-r));
	transition:clip-path 1.5s var(--asc-ease) .2s;box-shadow:0 30px 60px -30px rgba(94,70,57,.55)}
.asc--in .asc-arch{clip-path:inset(0 0 0 0 round 999px 999px var(--asc-r) var(--asc-r))}
.asc-arch-line{position:absolute;bottom:-18px;left:50%;transform:translateX(calc(-50% - 18px));border:1.5px solid var(--asc-acc);background:none;
	opacity:0;transition:opacity 1s 1.2s}
.asc--in .asc-arch-line{opacity:.8}
.asc .asc-ph{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:0;opacity:0;transform:scale(1.14);
	transition:opacity 1s,transform 6s var(--asc-ease)}
.asc .asc-ph.is-on{opacity:1;transform:scale(1)}
.asc-pour{position:absolute;inset:0;background:linear-gradient(to top,rgba(94,70,57,.25),transparent 45%);pointer-events:none}

.asc-f{position:absolute;z-index:3;transition:transform .9s cubic-bezier(.2,.7,.3,1)}
.asc-fi{display:block;opacity:0;transform:translateY(-40px) scale(.8);transition:opacity .8s,transform 1.1s cubic-bezier(.3,1.5,.5,1)}
.asc--in .asc-fi{opacity:1;transform:none;animation:ascFloat 6s ease-in-out 2.2s infinite}
.asc .asc-f-img{display:block;width:100%;height:auto;filter:drop-shadow(0 18px 18px rgba(94,70,57,.28))}
.asc-f1{width:170px;top:2%;left:2%}
.asc-f2{width:150px;bottom:-2%;right:4%}
.asc-f3{width:120px;top:44%;left:-3%}
.asc--in .asc-f1 .asc-fi{transition-delay:1.3s}
.asc--in .asc-f2 .asc-fi{transition-delay:1.5s;animation-delay:2.6s}
.asc--in .asc-f3 .asc-fi{transition-delay:1.7s;animation-delay:3s}
@keyframes ascFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-12px) rotate(-3deg)}}

.asc-chip{position:absolute;z-index:4;bottom:12%;left:6%;display:flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;
	background:#fff;color:var(--asc-ink);font-size:13px;font-weight:700;line-height:1.6;box-shadow:0 14px 30px -14px rgba(94,70,57,.45);
	opacity:0;transform:translateY(16px);transition:opacity .8s 1.9s,transform .8s var(--asc-ease) 1.9s}
.asc-chip i{width:8px;height:8px;border-radius:50%;background:var(--asc-acc);box-shadow:0 0 0 0 var(--asc-acc);animation:ascPing 2s infinite}
.asc--in .asc-chip{opacity:1;transform:none}
@keyframes ascPing{0%{box-shadow:0 0 0 0 rgba(200,162,138,.7)}100%{box-shadow:0 0 0 10px rgba(200,162,138,0)}}

@media (max-width:1024px){
	.asc{gap:24px;padding:40px 32px}
	.asc .asc-h{font-size:34px}
	.asc-f1{width:120px}.asc-f2{width:110px}.asc-f3{width:90px}
	.asc-card{flex-direction:column;text-align:center;padding:14px 10px}
	.asc-ct{white-space:normal}
	.asc-cbody{align-items:center}
	.asc-cx,.asc-go{display:none}
}
@media (max-width:767px){
	.asc{grid-template-columns:minmax(0,1fr);gap:22px;min-height:0;padding:26px 16px 22px}
	.asc-vis{order:-1;height:340px;min-height:0}
	.asc-arch,.asc-arch-line{width:min(260px,72%)}
	.asc-arch-line{bottom:-12px;transform:translateX(calc(-50% - 12px))}
	.asc-f1{width:92px;top:0;left:0}
	.asc-f2{width:86px;right:0;bottom:-4%}
	.asc-f3{display:none}
	.asc-chip{left:0;bottom:6%;font-size:12px;padding:7px 12px}
	.asc .asc-h{font-size:27px;line-height:1.55;margin-bottom:12px}
	.asc-x{margin-bottom:20px;font-size:14px}
	.asc-cards{gap:12px}
	.asc-cut{flex-basis:56px;width:56px;height:56px}
	.asc-ct{font-size:14px}
}
@media (prefers-reduced-motion:reduce){
	.asc *,.asc *::before{animation:none!important;transition:none!important}
}
