:root{
  --c-primary:var(--primary);--c-primary-dark:var(--primary-2);--c-primary-light:var(--surface-2);--c-accent:var(--accent);--c-accent-light:var(--accent-soft);--c-ink:var(--ink);--c-ink-soft:var(--muted);--c-line:var(--line);--c-bg:var(--bg);--c-card:var(--surface);
  --bg:#f7f8f6;--surface:#fff;--surface-2:#eef4f1;--ink:#14221f;--muted:#5c6c67;--line:#dfe7e3;
  --primary:#0e6f61;--primary-2:#084a41;--accent:#c98b47;--accent-soft:#f6ecdf;--dark:#0c1412;
  --shadow:0 18px 60px rgba(16,35,30,.10);--shadow-sm:0 8px 26px rgba(16,35,30,.07);--radius:26px;--radius-md:18px;--container:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip;width:100%;max-width:100%;overscroll-behavior-x:none;}
body{margin:0;font-family:'Vazirmatn',Tahoma,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg);line-height:1.85;font-size:15.5px;overflow-x:clip;width:100%;max-width:100%;overscroll-behavior-x:none;touch-action:pan-y;}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.035;background-image:radial-gradient(rgba(10,30,25,.9) .6px,transparent .6px);background-size:18px 18px;z-index:-1}
img{max-width:100%;display:block} a{color:inherit;text-decoration:none} p{color:var(--muted);margin:0 0 1em} h1,h2,h3,h4{margin:0 0 .55em;line-height:1.35} button,input,select,textarea{font:inherit}.container{width:min(100% - 40px,var(--container));margin-inline:auto}
.skip-link{position:fixed;top:10px;right:10px;transform:translateY(-150%);background:var(--dark);color:#fff;padding:10px 14px;border-radius:10px;z-index:1000}.skip-link:focus{transform:none}
.scroll-progress{position:fixed;top:0;right:0;height:3px;width:0;background:linear-gradient(90deg,var(--accent),var(--primary));z-index:200}
/* header — luxury, compact, stable */
.site-header{position:sticky;top:0;z-index:100;background:rgba(247,248,246,.72);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%);border-bottom:1px solid rgba(223,231,227,.55);transition:background .28s ease,box-shadow .28s ease,border-color .28s ease}
.site-header::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent 8%,rgba(201,139,71,.68) 50%,transparent 92%);opacity:.65}
.site-header.scrolled{background:rgba(248,250,248,.92);border-color:rgba(201,213,208,.72);box-shadow:0 12px 34px rgba(16,35,30,.07)}
.header-aura{position:absolute;inset:0;pointer-events:none;overflow:hidden;opacity:.75}
.header-aura::before,.header-aura::after{content:"";position:absolute;width:240px;height:70px;border-radius:999px;filter:blur(34px)}
.header-aura::before{right:11%;top:-34px;background:rgba(201,139,71,.10)}
.header-aura::after{left:8%;top:-40px;background:rgba(14,111,97,.08)}
.header-inner{position:relative;min-height:84px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;transition:min-height .28s ease}.site-header.scrolled .header-inner{min-height:66px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:grid;place-items:center;position:relative}.brand-mark::after{content:"";position:absolute;inset:-4px;border-radius:16px;border:1px solid rgba(201,139,71,.24);opacity:.75}.brand-mark svg{width:42px;height:42px;filter:drop-shadow(0 8px 18px rgba(14,111,97,.16))}.brand-text{display:flex;flex-direction:column;line-height:1.15;min-width:0}.brand-text strong{font-size:21px;letter-spacing:-.02em;color:var(--primary-2)}.brand-text small{font-size:9px;color:#788781;letter-spacing:.05em;white-space:nowrap}.brand-kicker{display:block;font-size:8px;letter-spacing:.15em;color:var(--accent);margin-bottom:4px;font-weight:900}
.header-nav-shell{justify-self:center;position:relative;padding:4px;border:1px solid rgba(223,231,227,.82);background:rgba(255,255,255,.48);border-radius:16px;box-shadow:0 8px 24px rgba(16,35,30,.035)}
.main-nav{display:flex;align-items:center;justify-content:center;gap:2px}.main-nav a{font-size:13px;font-weight:800;color:#64736e;padding:10px 12px;position:relative;border-radius:11px;transition:color .22s ease,background .22s ease,transform .22s ease}.main-nav a::after{content:"";position:absolute;right:12px;left:12px;bottom:5px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--accent),var(--primary));transform:scaleX(0);transform-origin:center;transition:transform .24s ease}.main-nav a:hover{color:var(--primary-2);background:rgba(14,111,97,.045);transform:translateY(-1px)}.main-nav a.active{color:var(--primary-2);background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(243,247,245,.72));box-shadow:inset 0 0 0 1px rgba(205,220,214,.72),0 5px 14px rgba(16,35,30,.05)}.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}
.nav-shine{position:absolute;top:3px;bottom:3px;width:70px;right:-90px;border-radius:99px;background:linear-gradient(90deg,transparent,rgba(201,139,71,.18),transparent);filter:blur(6px);transform:skewX(-18deg);animation:navShine 5.5s ease-in-out infinite;pointer-events:none}
.header-cta{display:flex;gap:7px}.header-cta .btn{min-height:42px;padding-inline:15px;font-size:13px}.header-cta .btn-ghost{background:rgba(255,255,255,.36);backdrop-filter:blur(10px)}.nav-toggle{display:none;background:rgba(255,255,255,.58);border:1px solid var(--line);padding:9px;border-radius:12px;box-shadow:0 6px 20px rgba(16,35,30,.05)}.nav-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:4px 0;border-radius:99px;transition:transform .2s ease,opacity .2s ease}
@keyframes navShine{0%,58%{transform:translateX(0) skewX(-18deg);opacity:0}68%{opacity:1}88%,100%{transform:translateX(180px) skewX(-18deg);opacity:0}}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;border:1px solid transparent;font-weight:800;font-size:14px;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 12px 26px rgba(14,111,97,.20)}.btn-primary:hover{box-shadow:0 16px 32px rgba(14,111,97,.28)}.btn-accent{color:#fff;background:linear-gradient(135deg,#d29a5b,#b97536);box-shadow:0 12px 26px rgba(185,117,54,.18)}.btn-ghost{background:transparent;border-color:var(--line);color:var(--primary-2)}.btn-ghost:hover{border-color:#b8c9c3;background:var(--surface)}.btn-lg{min-height:54px;padding:0 26px;font-size:15px}.btn-block{width:100%}
/* generic surfaces */
.section{padding:86px 0}.section-alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-head{max-width:760px;margin:0 auto 48px;text-align:center}.section-head h2{font-size:clamp(23px,2.6vw,32px);color:var(--primary-2)}.section-head p{font-size:15.5px}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:var(--accent-soft);color:#a5652f;font-size:12px;font-weight:900;letter-spacing:.03em}.dot{width:7px;height:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 5px rgba(201,139,71,.12)}
/* hero */
.hero{position:relative;overflow:hidden;padding:92px 0 84px;background:radial-gradient(circle at 12% 18%,rgba(201,139,71,.13),transparent 30%),radial-gradient(circle at 88% 82%,rgba(14,111,97,.15),transparent 32%),linear-gradient(180deg,#eef5f1 0%,#f7f8f6 100%)}
.hero::after{content:"";position:absolute;inset:auto -8% -34% 35%;height:420px;background:radial-gradient(circle,rgba(14,111,97,.08),transparent 68%);filter:blur(24px);pointer-events:none}.hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;position:relative;z-index:1}.hero h1{font-size:clamp(30px,4.3vw,52px);letter-spacing:-.02em;color:var(--dark);max-width:13ch}.hero h1 strong{color:var(--primary)}.hero .lead{font-size:16.5px;max-width:58ch}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 0}.hero-live-badge{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-size:13px;color:var(--muted)}.live-dot{width:7px;height:7px;border-radius:50%;background:#2ea16f;box-shadow:0 0 0 6px rgba(46,161,111,.10)}.hero-trust{display:flex;gap:30px;margin-top:34px;flex-wrap:wrap}.hero-trust div{color:#7a8a84;font-size:13px}.hero-trust strong{display:block;color:var(--primary-2);font-size:22px}.hero-art{position:relative;min-height:420px;display:grid;place-items:center}.hero-orbit{position:absolute;width:430px;height:430px;border:1px solid rgba(14,111,97,.12);border-radius:50%}.hero-orbit::before{content:"";position:absolute;width:180px;height:180px;inset:18% auto auto 10%;border-radius:50%;background:radial-gradient(circle,rgba(201,139,71,.22),transparent 65%);filter:blur(14px)}.hero-card{width:min(100%,470px);padding:28px;border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.78);backdrop-filter:blur(18px);border-radius:30px;box-shadow:0 35px 90px rgba(10,40,33,.15);position:relative;z-index:2}.hero-card::before{content:"";position:absolute;inset:1px;border-radius:29px;padding:1px;background:linear-gradient(135deg,rgba(201,139,71,.45),rgba(14,111,97,.18),transparent 55%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.hero-card .row{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid #e8efec}.hero-card .row:last-child{border-bottom:0}.hero-card .icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--surface-2)}.hero-card small{color:#7b8a85}.hero-floating-chip{position:absolute;z-index:3;padding:11px 15px;border-radius:999px;background:rgba(255,255,255,.9);box-shadow:var(--shadow-sm);border:1px solid rgba(255,255,255,.9);font-size:13px;font-weight:800}.chip-one{top:32px;right:2%}.chip-two{bottom:34px;left:1%}
/* cards */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card,.testimonial,.step,.feature-item,.form-card,.info-card,.pricing-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.service-card{padding:28px;transition:transform .25s,box-shadow .25s,border-color .25s}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#cbd9d4}.icon-wrap{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--surface-2);margin-bottom:18px}.service-card h3{font-size:18.5px}.service-card p{min-height:92px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.tags span{padding:6px 9px;border-radius:999px;background:#f3f6f4;border:1px solid #e7ece9;color:#65746f;font-size:11px}.more{font-weight:900;color:var(--primary);font-size:14px}.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.feature-item{display:flex;gap:16px;align-items:flex-start;padding:22px}.feature-item .icon-wrap{margin:0;flex:0 0 48px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{padding:26px;position:relative;overflow:hidden}.step::before{content:"";position:absolute;top:0;right:0;width:100%;height:4px;background:linear-gradient(90deg,var(--accent),var(--primary));transform:scaleX(.15);transform-origin:right;transition:transform .25s}.step:hover::before{transform:scaleX(1)}.step h4{color:var(--primary-2);font-size:18px}.testimonial{padding:26px}.testimonial p{font-size:14.5px;min-height:104px}.who{display:flex;gap:10px;align-items:center}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);color:var(--primary-2);font-weight:900}.who strong,.who span{display:block}.who span{font-size:11px;color:#82908b}.cta-band{padding:34px 38px;border-radius:26px;background:linear-gradient(135deg,#0c1512 0%,#163c34 100%);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:0 30px 80px rgba(10,30,25,.18)}.cta-band p{color:#b7c6c1}.cta-band h3{font-size:22px}
/* page hero */
.page-hero{padding:70px 0 50px;background:linear-gradient(180deg,#edf4f1,#f7f8f6)}.breadcrumb{font-size:13px;color:#7a8b85;margin-bottom:20px}.breadcrumb a{color:var(--primary)}.page-hero h1{font-size:clamp(26px,3.4vw,40px);color:var(--dark);max-width:16ch}.page-hero p{max-width:62ch;font-size:15.5px}
/* contact */
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px}.form-card{padding:30px}.form-group{margin-bottom:18px}.form-group label{display:block;font-weight:800;margin-bottom:7px;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;border:1px solid var(--line);background:#fbfcfb;color:var(--ink);border-radius:14px;padding:13px 14px;outline:0;transition:border-color .2s,box-shadow .2s}.form-group textarea{min-height:150px;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#90b8ad;box-shadow:0 0 0 4px rgba(14,111,97,.08)}.form-note{font-size:11px;text-align:center;margin-top:12px}.info-card{padding:20px;display:flex;gap:14px;align-items:center;margin-bottom:14px}.info-card .icon-wrap{margin:0;flex:0 0 48px}.info-card h4{margin:0 0 2px;font-size:15px}.alert{padding:14px 16px;border-radius:14px;margin-bottom:18px;font-size:14px}.alert-success{background:#eaf7ef;color:#1d6a40}.alert-error{background:#fdf0ef;color:#a24138}.hp-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
/* web design page */
.design-hero{background:radial-gradient(circle at 82% 14%,rgba(201,139,71,.17),transparent 28%),radial-gradient(circle at 8% 70%,rgba(14,111,97,.12),transparent 30%),linear-gradient(180deg,#edf5f2,#f7f8f6)}.design-showcase{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:stretch}.showcase-main,.showcase-side{background:var(--surface);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow-sm);overflow:hidden}.showcase-main{padding:28px}.browser{border:1px solid #dce5e1;border-radius:20px;overflow:hidden;background:#f7faf8}.browser-bar{display:flex;gap:7px;padding:11px 14px;border-bottom:1px solid #dfe7e3;background:#eef4f1}.browser-bar i{width:8px;height:8px;border-radius:50%;background:#b9c8c2}.browser-screen{padding:28px;background:linear-gradient(135deg,#0e6f61,#0c2d27);color:#fff;min-height:280px}.browser-screen h3{font-size:24px;max-width:9ch}.browser-screen p{color:#c8d8d3}.showcase-side{padding:26px;display:flex;flex-direction:column;gap:14px}.metric{padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fbfcfb}.metric strong{display:block;color:var(--primary-2);font-size:24px}.metric span{font-size:12px;color:#81908b}.check-list{display:grid;gap:12px}.check-list div{display:flex;gap:10px;align-items:flex-start}.check-list b{color:var(--primary)}
/* ---------- شبکه طرح‌های قیمت‌گذاری: ۴ اشتراک کنار هم ---------- */
.pricing{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:stretch}
.pricing-card{padding:34px 22px 24px;position:relative;display:flex;flex-direction:column}
.pricing-card.featured,.pricing-card.highlight{border-color:#cfa46d;box-shadow:0 22px 60px rgba(150,103,53,.16)}
.pricing-card .badge{
  position:absolute; top:-13px; left:50%; transform:translateX(-50%);
  padding:6px 16px; border-radius:999px; white-space:nowrap; z-index:2;
  background:linear-gradient(135deg,var(--accent),#b97536); color:#fff;
  font-size:10.5px; font-weight:900; box-shadow:0 10px 22px rgba(185,117,54,.35);
}
.pricing-card h3{font-size:17.5px;margin-bottom:10px}
.pricing-card .price{font-size:22px;font-weight:900;color:var(--primary-2)}.pricing-card .price small{display:block;font-size:11.5px;color:#82908b;font-weight:400;margin-top:2px}
.pricing-card ul{display:grid;gap:9px;margin:18px 0;flex:1}.pricing-card li{font-size:12.5px;color:#65746f;line-height:1.7}
.pricing-card .btn{margin-top:auto}
.process{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.process .step{padding:20px}.process .num{font-size:30px;font-weight:900;color:var(--accent)}
/* reveal: only transform, no JS-heavy effects */
.reveal{opacity:0;transform:translate3d(0,36px,0) scale(.985);transition:opacity .72s ease,transform .72s cubic-bezier(.18,.78,.2,1);will-change:transform,opacity}.reveal.in-view{opacity:1;transform:none}.reveal-scale{opacity:0;transform:translate3d(0,20px,0) scale(.94);transition:opacity .78s ease,transform .78s cubic-bezier(.18,.78,.2,1);will-change:transform,opacity}.reveal-scale.in-view{opacity:1;transform:none}.stagger .reveal:nth-child(2){transition-delay:.06s}.stagger .reveal:nth-child(3){transition-delay:.12s}.stagger .reveal:nth-child(4){transition-delay:.18s}.stagger .reveal:nth-child(5){transition-delay:.24s}
/* scroll-reactive section accents */
.scroll-section{position:relative;isolation:isolate}
.scroll-section::before{content:"";position:absolute;top:0;right:12%;width:120px;height:2px;border-radius:99px;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:scaleX(0);transform-origin:center;transition:transform .9s cubic-bezier(.2,.8,.2,1);opacity:.7}
.scroll-section.in-view::before{transform:scaleX(1)}
.scroll-section::after{content:"";position:absolute;inset:12% 0 auto;height:180px;background:radial-gradient(circle at 50% 0,rgba(201,139,71,.06),transparent 65%);opacity:0;transform:translateY(10px);transition:opacity .9s ease,transform .9s ease;pointer-events:none;z-index:-1}
.scroll-section.in-view::after{opacity:1;transform:none}
/* footer */
.site-footer{background:var(--dark);color:#e7efec;margin-top:20px}.footer-inner{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:40px;padding:60px 0}.footer-brand strong{font-size:22px}.footer-col{display:flex;flex-direction:column;gap:9px}.footer-col h4{font-size:14px;color:#fff}.footer-col a,.footer-col span,.footer-col p{font-size:13px;color:#aebdb8}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding:18px 0;color:#849690;font-size:12px}
.social-links{display:flex;gap:10px;margin-top:6px}
.social-links a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);color:#dfe9e6;display:flex;align-items:center;justify-content:center;transition:transform .25s cubic-bezier(.2,.8,.2,1),background .25s ease,color .25s ease}
.social-links a:hover{background:var(--accent);color:#fff;transform:translateY(-4px)}
@media (max-width:1100px){.header-inner{display:flex;align-items:center;justify-content:space-between}.header-nav-shell{position:static;padding:0;border:0;background:none;box-shadow:none}.nav-shine{display:none}.main-nav{position:absolute;top:100%;right:0;left:0;padding:16px 20px;background:rgba(247,248,246,.98);border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:none;flex-direction:column;gap:4px;box-shadow:0 14px 30px rgba(16,35,30,.08)}.main-nav.open{display:flex}.header-cta{display:none}.nav-toggle{display:block;justify-self:end}.hero-inner,.design-showcase,.contact-grid{grid-template-columns:1fr}.hero{padding-top:64px}.hero-art{min-height:360px}.grid-3,.pricing{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:720px){.header-inner{min-height:70px}.site-header.scrolled .header-inner{min-height:62px}.brand-text small{display:none}.brand-text strong{font-size:18px}.header-nav-shell{justify-self:stretch}.container{width:min(100% - 28px,var(--container))}.section{padding:64px 0}.hero h1{font-size:clamp(28px,9vw,38px)}.hero .lead{font-size:15px}.hero-trust{gap:18px}.hero-orbit{width:320px;height:320px}.hero-card{padding:20px}.grid-3,.feature-list,.pricing,.steps,.process{grid-template-columns:1fr}.feature-item{padding:18px}.cta-band{padding:26px;flex-direction:column;align-items:flex-start}.cta-band h3{font-size:23px}.footer-inner{grid-template-columns:1fr;padding:44px 0}.page-hero{padding:52px 0 36px}.page-hero h1{font-size:29px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal-scale{opacity:1;transform:none;transition:none}.service-card,.btn{transition:none}}

/* =========================================================
   افزوده‌های نسخه لاکچری: کرسر سفارشی، دکمه‌های شناور، افکت‌های اسکرول و تیلت
   ========================================================= */

/* ---------- کرسر سفارشی لوکس و سبک ---------- */
html.has-custom-cursor,html.has-custom-cursor body{cursor:none !important}
html.has-custom-cursor a,html.has-custom-cursor button,html.has-custom-cursor input,html.has-custom-cursor select,html.has-custom-cursor textarea{cursor:none !important}
.cursor-dot,.cursor-ring{position:fixed;left:0;top:0;pointer-events:none;border-radius:50%;z-index:99999;opacity:0;will-change:transform;transform:translate3d(-100px,-100px,0);contain:layout paint}
.cursor-dot{width:7px;height:7px;background:var(--accent);transition:width .18s ease,height .18s ease,background .18s ease,opacity .2s ease;box-shadow:0 0 14px rgba(201,139,71,.30)}
.cursor-ring{width:38px;height:38px;border:1px solid rgba(14,111,97,.52);background:rgba(255,255,255,.04);transition:width .22s cubic-bezier(.2,.8,.2,1),height .22s cubic-bezier(.2,.8,.2,1),border-color .22s ease,background .22s ease,opacity .2s ease}
html.has-custom-cursor .cursor-dot,html.has-custom-cursor .cursor-ring{opacity:1}
.cursor-ring.hover{width:62px;height:62px;border-color:var(--accent);background:radial-gradient(circle,rgba(201,139,71,.12),rgba(255,255,255,.02) 65%,transparent 66%)}
.cursor-dot.hover{width:9px;height:9px;background:var(--primary)}
.cursor-ring.click{width:30px;height:30px;border-color:var(--accent)}

/* ---------- کرسر لمسی/موبایل ---------- */
@media (pointer:coarse){.cursor-dot,.cursor-ring{display:none !important}}

/* ---------- دکمه‌های شناور ---------- */
.fab{
  position:absolute; z-index:2; bottom:26px; display:flex; align-items:center; justify-content:center;
  border:none; cursor:pointer; box-shadow:0 10px 30px rgba(10,30,25,.28);
  transition:transform .3s cubic-bezier(.2,.8,.2,1), box-shadow .3s ease, opacity .3s ease, visibility .3s;
}
.fab-whatsapp{
  left:24px; height:54px; padding:0 20px 0 4px; border-radius:999px; gap:10px;
  background:linear-gradient(135deg,#22c55e,#16a34a); color:#fff;
}
.fab-whatsapp .fab-label{ font-size:13.5px; font-weight:800; white-space:nowrap; }
.fab-whatsapp::before{
  content:''; position:absolute; inset:-4px; border-radius:999px; z-index:-1;
  background:rgba(34,197,94,.35); animation:fabPulse 2.4s ease-out infinite;
}
.fab-whatsapp svg{ width:26px; height:26px; flex:none; background:rgba(255,255,255,.15); border-radius:50%; padding:6px; box-sizing:content-box; }
.fab-whatsapp:hover{ transform:translateY(-4px) scale(1.03); box-shadow:0 16px 40px rgba(22,163,74,.35); }

.fab-top{
  left:24px; bottom:92px; width:48px; height:48px; border-radius:50%;
  background:linear-gradient(135deg,var(--primary),var(--primary-2));
  opacity:0; visibility:hidden; transform:translateY(14px) scale(.85);
}
.fab-top.show{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }
.fab-top:hover{ transform:translateY(-4px) scale(1.06); }

@keyframes fabPulse{ 0%{ transform:scale(1); opacity:.55; } 100%{ transform:scale(1.35); opacity:0; } }

@media (max-width:640px){
  .fab-whatsapp .fab-label{ display:none; }
  .fab-whatsapp{ width:54px; padding:0; }
  .fab-whatsapp svg{ margin:0; }
  .fab-top{ bottom:88px; }
}

/* ---------- هیرو: حباب‌های شناور پس‌زمینه ---------- */
.hero-blob{
  position:absolute; width:420px; height:420px; border-radius:50%; z-index:0; pointer-events:none;
  background:radial-gradient(circle at 30% 30%, rgba(201,139,71,.20), transparent 70%);
  top:-100px; left:-90px; animation:blobDrift 13s ease-in-out infinite; filter:blur(2px);
}
.hero-blob-2{
  position:absolute; width:340px; height:340px; border-radius:50%; z-index:0; pointer-events:none;
  background:radial-gradient(circle at 60% 40%, rgba(14,111,97,.18), transparent 70%);
  bottom:-120px; right:-70px; animation:blobDrift 16s ease-in-out infinite reverse; filter:blur(2px);
}
@keyframes blobDrift{ 0%,100%{ transform:translate(0,0) scale(1); } 50%{ transform:translate(24px,-18px) scale(1.08); } }

/* ---------- نوار اعتماد زیر هیرو ---------- */
.trust-ribbon{ padding:18px 0; border-bottom:1px solid var(--line); background:var(--surface); }
.trust-ribbon-inner{
  display:flex; align-items:center; justify-content:center; gap:22px; flex-wrap:wrap;
  font-size:12.5px; font-weight:800; color:#7a8b85; letter-spacing:.02em;
}
.trust-ribbon-inner i{ width:4px; height:4px; border-radius:50%; background:var(--accent); display:inline-block; }

/* ---------- کارت‌های اسپاتلایت (نور دنبال‌کننده ماوس) ---------- */
.spotlight-card{ position:relative; overflow:hidden; }
.spotlight-card::after{
  content:''; position:absolute; inset:0; z-index:0; opacity:0; border-radius:inherit;
  background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%), rgba(201,139,71,.16), transparent 65%);
  transition:opacity .35s ease; pointer-events:none;
}
.spotlight-card:hover::after{ opacity:1; }
.spotlight-card > *{ position:relative; z-index:1; }

/* ---------- کارت‌های تیلت سه‌بعدی ---------- */
.tilt-card{ transform-style:preserve-3d; transition:transform .25s cubic-bezier(.2,.8,.2,1); will-change:transform; }

/* ---------- افکت شاین لوکس روی دکمه accent ---------- */
.btn-accent{ position:relative; overflow:hidden; }
.btn-accent::before{
  content:''; position:absolute; inset:0; z-index:0;
  background:linear-gradient(120deg, transparent 30%, rgba(255,255,255,.45) 48%, transparent 66%);
  transform:translateX(-120%); transition:transform .7s ease;
}
.btn-accent:hover::before{ transform:translateX(120%); }
.btn-accent > *{ position:relative; z-index:1; }

/* ---------- افکت مغناطیسی برای دکمه‌های بزرگ (JS transform را اعمال می‌کند) ---------- */
.btn-lg{ transition:transform .18s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease, background .25s ease; }

/* ---------- بلور نرم هنگام ورود عناصر (تقویت reveal) ---------- */

/* ---------- خط طلایی ظریف زیر eyebrow برای حس لاکچری ---------- */
.eyebrow{ position:relative; }


/* ---------- ریسپانسیو تکمیلی برای صفحات بسیار کوچک ---------- */
@media (max-width:480px){
  .hero{ padding:56px 0 60px; }
  .hero-live-badge{ font-size:12px; }
  .hero-trust{ gap:14px; }
  .hero-floating-chip{ display:none; }
  .section{ padding:52px 0; }
  .service-card{ padding:22px; }
  .service-card p{ min-height:auto; }
  .testimonial p{ min-height:auto; }
  .cta-band{ padding:22px; }
  .fab-top{ width:44px; height:44px; }
  .pricing,.process{ grid-template-columns:1fr; }
  .browser-screen{ padding:20px; min-height:auto; }
  .browser-screen h3{ font-size:20px; }
  .trust-ribbon-inner{ gap:14px; font-size:11.5px; }
}

@media (prefers-reduced-motion:reduce){
  .cursor-dot,.cursor-ring,.hero-blob,.hero-blob-2,.fab-whatsapp::before{ display:none !important; animation:none !important; }
  .tilt-card{ transform:none !important; }
}

/* ---------- جلوگیری از overflow افقی بدون ساختن ناحیه اسکرول برای هر سکشن ---------- */
.site-header,.hero,.page-hero,.section,.trust-ribbon,.cta-band,.site-footer,.hero-art,.header-nav-shell{overflow-x:clip;}
.hero-blob,.hero-blob-2,.nav-shine{max-width:none;}
.cursor-dot,.cursor-ring{max-width:100vw;max-height:100vh;}

/* المان‌های شناور همیشه متعلق به viewport بمانند */
.floating-actions{position:fixed;left:0;bottom:0;width:100%;height:0;z-index:1000;pointer-events:none;overflow:visible;isolation:isolate;}
.floating-actions .fab{pointer-events:auto;}

@media (max-width:1100px){.header-nav-shell{overflow:visible;}}
@media (pointer:coarse){body{touch-action:pan-y;}}
