/* ===== پایین صفحه ===== */
footer {
  background: var(--ink);
  color: var(--bg);
  text-align: center;
  padding: 26px 18px;
}

footer a {
  margin: 0 8px;
}

footer {
  border-top: 8px solid;
  border-image: linear-gradient(90deg,#ff4d6d,#ff9a1f,#ffe03a,#4cc95a,#3aa0ff,#9b5de5) 1;
}

footer {
  background: linear-gradient(145deg,rgba(20,32,79,.78),rgba(40,60,160,.6))!important;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  color: #fff!important;
}


/* ===== بهبودهای طراحی و دسترسی‌پذیری ===== */
:root { --blue:#2257a6; --navy:#173a70; --red:#e95d70; --sun:#ffd166; --ink:#20334f; --line:#d9e3f2; }
html body { background:linear-gradient(180deg,#f3f8ff 0%,#fffaf3 50%,#f5f8ff 100%) fixed!important; color:#20334f; }
body::before { opacity:.25; filter:blur(55px); }
.nav { background:rgba(255,255,255,.92)!important; color:#20334f; border-bottom:1px solid #dce6f3!important; box-shadow:0 8px 30px rgba(26,55,95,.09)!important; padding:10px clamp(14px,4vw,42px); }
.nav .disp { color:#214d8b; }
.nav a:not(.btn) { padding:8px 10px; border-radius:12px; }
.nav a:not(.btn):hover { background:#edf4ff; }
.hero { min-height:0; color:#20334f; background:radial-gradient(circle at 85% 10%,#d9edff 0,transparent 35%),linear-gradient(135deg,#f5faff,#e9f3ff 55%,#fff5f0)!important; border:0; }
.hero::before { opacity:.16; }
.hero::after { height:5px; background:linear-gradient(90deg,#2257a6 33%,#fff 33% 66%,#e95d70 66%); }
.hin { max-width:1160px; padding:clamp(36px,6vw,76px) 22px; gap:clamp(24px,5vw,64px); }
.hero h1 { color:#173a70; text-shadow:none; letter-spacing:-.5px; }
.hero p { color:#40536d; max-width:620px; line-height:2; }
.chips li { background:#fff; color:#25476e; border:1px solid #d7e5f5; box-shadow:0 4px 14px rgba(30,70,120,.06); padding:6px 14px; }
.art img,.art .frame { border-radius:28px; }
.art img { display:block; box-shadow:0 22px 55px rgba(38,74,120,.17); }
section { max-width:1160px; padding:clamp(38px,5vw,66px) 22px; }
h2.t { color:#173a70; text-shadow:none; margin-bottom:10px; }
.sub { color:#53647a; max-width:800px; }
.box:not(.plan) { background:rgba(255,255,255,.88)!important; border:1px solid #e0e8f2!important; border-radius:24px; box-shadow:0 12px 34px rgba(31,67,111,.08)!important; -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); transition:transform .2s,box-shadow .2s; }
.box:not(.plan):hover { transform:translateY(-3px); box-shadow:0 18px 38px rgba(31,67,111,.13)!important; }
.box h3 { color:#2257a6; }
.plan { border:1px solid rgba(255,255,255,.45); border-radius:26px; box-shadow:0 16px 36px rgba(31,67,111,.15)!important; }
.plan.g { background:linear-gradient(145deg,#2f69b7,#173a70)!important; }
.plan.p { background:linear-gradient(145deg,#f17a88,#d94e68)!important; }
.band { background:rgba(226,238,252,.65); border:0; }
.reg { background:linear-gradient(145deg,#fff,#fff8e8)!important; border:1px solid #f0dfb9!important; border-radius:28px; box-shadow:0 18px 48px rgba(57,69,93,.11)!important; padding:clamp(22px,4vw,42px); }
.reg h2 { color:#173a70; }
.fm { gap:18px; }
.fm label { color:#293e5b; margin-bottom:5px; }
.fm input,.fm select { min-height:48px; border:1px solid #d5dfec!important; border-radius:13px; box-shadow:0 2px 8px rgba(32,51,79,.04)!important; background:#fff!important; }
.fm input:focus,.fm select:focus { outline:3px solid #b8d8ff; border-color:#2257a6!important; }
.opts { gap:10px; }
.opts label { min-height:44px; padding:8px 14px; border:1px solid #d5dfec!important; background:#fff!important; border-radius:13px; }
.opts input { width:18px; height:18px; min-height:18px; accent-color:#2257a6; }
.btn { min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:10px 22px; border-radius:14px; border:1px solid #e7d7a4!important; box-shadow:0 5px 0 #e7d7a4!important; transition:transform .15s,box-shadow .15s; }
.btn.red { background:linear-gradient(135deg,#ee7181,#d94863)!important; border-color:#d94863!important; box-shadow:0 5px 0 #b93851!important; }
.btn:hover { transform:translateY(-2px); }
.btn:active { transform:translateY(2px); box-shadow:0 2px 0 #d6c38a!important; }
details { border:1px solid #e0e8f2!important; border-radius:16px; background:rgba(255,255,255,.9)!important; box-shadow:0 6px 20px rgba(31,67,111,.06)!important; padding:8px 18px; }
summary { min-height:44px; display:flex; align-items:center; }
.bar { background:rgba(255,255,255,.96)!important; border-top:1px solid #dce6f3!important; }
a { text-underline-offset:3px; }
:focus-visible { outline:3px solid #f0b94c; outline-offset:3px; }
@media(max-width:640px) {
 .nav { gap:8px; padding:8px 12px; }
 .nav .disp { font-size:20px; }
 .nav .btn { padding:8px 14px!important; font-size:15px!important; }
 .hin { padding:34px 16px 42px; }
 .hero h1 { font-size:clamp(30px,8vw,43px); }
 .row,.send { gap:10px; }
 .row .btn,.send .btn { width:100%; }
 .fm { grid-template-columns:1fr; }
 .opts label { flex:1 1 44%; }
 section { padding:38px 16px; }
}
