/* contact.css v3 — glass + timeline | v2 — بازطراحی مدرن، روشن و انیمیشنی (سازگار با contact.html و contact.js فعلی) */
:root{--ink:#1d2127;--muted:#6a6e75;--gold:#a67b29;--gold-2:#c9a24d;--gold-3:#e9cf8f;--line:#e8e2d4;--surface:#fff;--bg:#f8f7f3;--soft:#fbf8f0;--ease:cubic-bezier(.22,1,.36,1);--shadow:0 1px 2px #3b2f1408,0 22px 44px -22px #7a5a1c40}
*{box-sizing:border-box}
button,input,textarea{font:inherit}
a{color:inherit}
[hidden]{display:none!important}

body.contact-page{margin:0;min-height:100vh;color:var(--ink);font-family:Vazir,Tahoma,sans-serif;background:linear-gradient(165deg,#fffefb 0%,#f8f1e0 55%,#fffaf0 100%) fixed;line-height:1.8;overflow-x:hidden}
body.contact-page:before,body.contact-page:after{content:"";position:fixed;z-index:-1;border-radius:50%;filter:blur(80px);pointer-events:none}
body.contact-page:before{width:48vmax;height:48vmax;top:-20vmax;right:-14vmax;background:radial-gradient(circle,#e9cf8f80,transparent 68%);animation:drift 18s ease-in-out infinite alternate}
body.contact-page:after{width:40vmax;height:40vmax;bottom:-16vmax;left:-12vmax;background:radial-gradient(circle,#dfe9e644,transparent 68%);animation:drift 22s ease-in-out infinite alternate-reverse}

/* ناوبری (همان بازنویسی‌های قبلی، هماهنگ با تم) */
.contact-page .glass-nav{--gn-text:#24262a;--gn-line:#fff;background:linear-gradient(130deg,#ffffffb8,#ffffff66);box-shadow:0 12px 40px #6d553016,inset 0 1px 0 #fff;color:var(--ink)}
.contact-page .gn-brand img{filter:none}
.contact-page .gn-links{background:#ffffff40;border-color:#fff}
.contact-page .gn-links a.is-active{color:#805a14;background:linear-gradient(120deg,#e6cc9633,#fff8);border-color:#d7b57466}
.contact-page .gn-order{background:linear-gradient(120deg,#d8b66d,#b58c41,#f0d594);color:#251b0b;border-color:#fff}
.contact-page .gn-panel{color:var(--ink)}
.contact-page .gn-icon{border-color:#b6a27a44}

.contact-main{max-width:1180px;margin:auto;padding:155px 24px 64px}

/* سربرگ */
.contact-intro{text-align:center;max-width:720px;margin:0 auto 48px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;padding:5px 16px;font-size:13px;font-weight:600;color:var(--gold);background:#ffffffb0;border:1px solid var(--line);border-radius:999px;backdrop-filter:blur(8px)}
.eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold-2);animation:ping 2.2s infinite}
h1{font-size:clamp(30px,5.4vw,58px);line-height:1.45;margin:18px 0 12px;font-weight:800}
h1 span{display:inline-block;background:linear-gradient(100deg,#a67b29,#d9b55c,#8a6420,#d9b55c,#a67b29);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:shimmer 8s linear infinite}
p{color:var(--muted);font-size:14px;line-height:2.1;margin:0}
.contact-intro p{font-size:clamp(14px,2.3vw,17px)}
h2{font-size:clamp(19px,2.6vw,23px);margin:0 0 6px;line-height:1.8;font-weight:800}
h3{font-size:15px;margin:0 0 2px;color:var(--gold)}

/* چیدمان: فرم در یک ستون بلند، ارتباط‌ها و نقشه کنارش */
.contact-board{display:grid;grid-template-columns:5fr 7fr;grid-template-areas:"ch msg" "loc msg";gap:24px;align-items:start}
.channels{grid-area:ch}.message-panel{grid-area:msg}.location{grid-area:loc}
.contact-board>section{min-width:0;padding:clamp(22px,3vw,34px);background:var(--surface);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);opacity:0;animation:rise .9s var(--ease) forwards}
.channels{animation-delay:.35s!important}.message-panel{animation-delay:.5s!important;border-top:3px solid var(--gold-2)!important}.location{animation-delay:.65s!important}
.contact-intro>*{opacity:0;animation:rise .8s var(--ease) forwards}
.contact-intro>:nth-child(1){animation-delay:.05s}.contact-intro>:nth-child(2){animation-delay:.15s}.contact-intro>:nth-child(3){animation-delay:.28s}
.channels>p,.message-panel>p{margin-bottom:22px}

/* راه‌های ارتباطی */
.channel{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;padding:13px 14px;margin-top:12px;background:var(--soft);border:1px solid var(--line);border-radius:16px;text-decoration:none;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s}
.channel:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,#b58c41,#d8b66d);transform:translateX(101%);transition:transform .45s var(--ease)}
.channel>*{position:relative;transition:color .3s,background .3s,transform .35s var(--ease)}
.channel strong{display:block;font-size:15px}
.channel small{display:block;font-size:12px;margin-top:2px;color:var(--muted);overflow-wrap:anywhere}
.channel-icon{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:13px;background:#fff;color:var(--gold);font-size:22px;box-shadow:0 4px 12px #7a5a1c1a}
.channel b{margin-inline-start:auto;font-size:24px;line-height:1;color:var(--gold)}
.channel:hover,.channel:focus-visible{transform:translateY(-3px);border-color:transparent;box-shadow:0 16px 28px -14px #8a6420aa}
.channel:hover:before,.channel:focus-visible:before{transform:none}
.channel:hover strong,.channel:hover small,.channel:hover b,.channel:focus-visible strong,.channel:focus-visible small,.channel:focus-visible b{color:#241a08}
.channel:hover .channel-icon,.channel:focus-visible .channel-icon{transform:rotate(-8deg) scale(1.07)}
.channel:hover b,.channel:focus-visible b{transform:translateX(-6px)}
.email{display:block;margin-top:16px;padding:12px;text-align:center;font-size:13px;font-weight:600;color:var(--gold);text-decoration:none;border:1.5px dashed var(--gold-2);border-radius:14px;overflow-wrap:anywhere;transition:background .3s,color .3s}
.email:hover{background:var(--gold);color:#fff;border-style:solid}

/* فرم */
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:18px;transition:color .25s}
label:focus-within{color:var(--gold)}
input,textarea{display:block;width:100%;margin-top:8px;padding:13px 15px;color:var(--ink);font-weight:400;background:var(--soft);border:1.5px solid var(--line);border-radius:14px;outline:none;transition:border-color .25s,box-shadow .25s,background .25s,transform .25s var(--ease)}
input{height:52px}
textarea{resize:vertical;min-height:150px}
input::placeholder,textarea::placeholder{color:#a09d95;font-size:13px}
input:hover,textarea:hover{background:#fff}
input:focus,textarea:focus{background:#fff;border-color:var(--gold-2);box-shadow:0 0 0 4px #c9a24d29;transform:translateY(-1px)}
.send-button{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;color:#241b0a;font-weight:800;font-size:16px;background:linear-gradient(110deg,#d8b66d,#b78e43,#ead19a);background-size:200% 100%;border:0;border-radius:999px;cursor:pointer;box-shadow:0 16px 28px -14px #a67b29;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background-position .5s}
.send-button:after{content:"";position:absolute;top:0;bottom:0;left:-50%;width:35%;background:linear-gradient(100deg,transparent,#ffffff88,transparent);transform:skewX(-20deg);animation:sweep 4s ease-in-out infinite}
.send-button:hover{transform:translateY(-2px);background-position:100% 0;box-shadow:0 22px 30px -14px #a67b29}
.send-button:active{transform:scale(.98)}
.send-button span{margin-inline-start:10px}
.send-button:disabled{opacity:.6;cursor:wait;transform:none}.send-button:disabled:after{animation:none}
.form-status{margin:14px 0 0;font-size:14px;font-weight:600;color:var(--muted)}
.form-status:empty{display:none}
.form-status:not(:empty){animation:pop .45s var(--ease)}
.form-status.error{color:#a02d20}.form-status.success{color:#276138}

/* نقشه و آدرس */
.map-shell{height:230px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--soft)}
.map-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:15px;text-align:center;background-image:linear-gradient(#efe8d6 1px,transparent 1px),linear-gradient(90deg,#efe8d6 1px,transparent 1px);background-size:30px 30px;background-position:center}
.map-placeholder>span{position:relative;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#c9a24d,#a67b29);color:#fff;font-size:28px;line-height:1}
.map-placeholder>span:before,.map-placeholder>span:after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--gold-2);animation:radar 2.6s var(--ease) infinite}
.map-placeholder>span:after{animation-delay:1.3s}
.map-placeholder strong{font-size:14px}
.map-placeholder small{font-size:12px;color:var(--muted)}
#loadMap{min-height:40px;padding:8px 20px;font-weight:700;color:#805a14;background:#fff;border:1.5px solid var(--gold-2);border-radius:999px;cursor:pointer;transition:background .3s,color .3s,transform .3s var(--ease)}
#loadMap:hover{background:var(--gold);color:#fff;transform:translateY(-2px)}
.map-shell iframe{display:block;border:0;width:100%;height:100%;animation:fadeIn .7s ease}
.directions{display:block;margin-top:14px;padding:12px;text-align:center;font-size:14px;font-weight:700;text-decoration:none;background:var(--ink);color:#fff;border-radius:999px;transition:transform .3s var(--ease),background .3s}
.directions:hover{transform:translateY(-2px);background:var(--gold)}
.location-fact{margin-top:14px;padding:12px 16px;background:var(--soft);border:1px solid var(--line);border-inline-start:4px solid var(--gold-2);border-radius:14px;transition:transform .35s var(--ease)}
.location-fact:hover{transform:translateX(-4px)}
.location-fact p{font-size:13px;color:var(--ink)}

/* فوتر */
.contact-footer{max-width:1180px;margin:0 auto;padding:26px 24px 32px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.contact-footer>a{text-decoration:none;font-weight:800;color:var(--gold)}
.contact-footer nav{display:flex;gap:22px;font-size:13px}
.contact-footer nav a{position:relative;text-decoration:none;color:var(--muted);transition:color .25s}
.contact-footer nav a:after{content:"";position:absolute;inset-inline:0;bottom:-3px;height:2px;background:var(--gold-2);transform:scaleX(0);transition:transform .35s var(--ease)}
.contact-footer nav a:hover,.contact-footer nav a[aria-current]{color:var(--gold)}
.contact-footer nav a:hover:after,.contact-footer nav a[aria-current]:after{transform:scaleX(1)}
.contact-footer small{width:100%;color:var(--muted);font-size:11px;text-align:center}
:focus-visible{outline:3px solid var(--gold-2);outline-offset:3px}

@keyframes rise{from{opacity:0;transform:translateY(26px) scale(.985)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes pop{from{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:none}}
@keyframes shimmer{to{background-position:-260% 0}}
@keyframes drift{to{transform:translate3d(5vmax,4vmax,0) scale(1.12)}}
@keyframes ping{70%{box-shadow:0 0 0 10px #c9a24d00}0%{box-shadow:0 0 0 0 #c9a24d88}}
@keyframes sweep{0%,55%{left:-50%}100%{left:140%}}
@keyframes radar{from{transform:scale(1);opacity:.8}to{transform:scale(2.3);opacity:0}}

@media(max-width:1050px){.contact-page .gn-panel{background:linear-gradient(130deg,#fffffff5,#f4efe4f5)}.contact-main{padding-top:115px}}
@media(max-width:900px){.contact-board{grid-template-columns:1fr;grid-template-areas:"msg" "ch" "loc"}}
@media(max-width:650px){.contact-main{padding:112px 16px 32px}.contact-intro{margin-bottom:30px}.form-row{grid-template-columns:1fr;gap:0}.contact-board{gap:16px}.contact-footer{margin:0 16px;justify-content:center;text-align:center}.contact-footer nav{gap:16px;flex-wrap:wrap;justify-content:center}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.contact-board>section,.contact-intro>*{opacity:1}}

/* ===== v3: لایه‌ی شیشه‌ای سفید و طلایی ===== */
:root{--glass:linear-gradient(135deg,#ffffffc9,#ffffff59);--glass-line:#ffffffd9;--gold-grad:linear-gradient(110deg,#c9a24d,#f0d99b 50%,#b58c41)}
.contact-board>section,.step .card{background:radial-gradient(280px circle at var(--mx,50%) var(--my,-30%),#e9cf8f55,transparent 70%),var(--glass);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(20px) saturate(1.5);backdrop-filter:blur(20px) saturate(1.5);box-shadow:0 26px 50px -28px #7a5a1c66,inset 0 1px 0 #fff,inset 0 0 0 1px #e9cf8f2e}
.contact-board>section.message-panel{position:relative;border-top:1px solid var(--glass-line)!important}
.message-panel:before{content:"";position:absolute;top:-1px;inset-inline:34px;height:3px;border-radius:0 0 6px 6px;background:var(--gold-grad)}
.channel,.location-fact{background:#ffffff80;border-color:#ffffffd0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
input,textarea{background:#ffffff8c;border-color:#eadfc4}
input:hover,textarea:hover,input:focus,textarea:focus{background:#fff}
.map-shell{border-color:#ffffffd0;box-shadow:inset 0 0 0 1px #e9cf8f55}
body.contact-page:before{background:radial-gradient(circle,#e9cf8fa6,transparent 68%)}

/* ===== تایم‌لاین ===== */
.journey{margin-top:84px}
.journey-head{text-align:center;max-width:620px;margin:0 auto 46px}
.journey-head h2{font-size:clamp(22px,3.8vw,34px);margin:14px 0 4px}
.timeline-wrap{position:relative;max-width:900px;margin:0 auto}
.tl-line{position:absolute;top:20px;bottom:20px;left:50%;width:3px;transform:translateX(-50%);border-radius:3px;background:#e6dcc2;overflow:hidden}
.tl-fill{display:block;width:100%;height:calc(var(--p,0)*100%);background:linear-gradient(#f0d99b,#b58c41);box-shadow:0 0 16px #c9a24d}
.timeline{list-style:none;margin:0;padding:0;display:grid;gap:30px}
.step{position:relative;display:grid;grid-template-columns:1fr 60px 1fr;align-items:center}
.step .dot{grid-column:2;grid-row:1;justify-self:center;z-index:1;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;font-weight:800;color:#a67b29;background:#fff;border:2px solid #e6dcc2;transition:color .5s,border-color .5s,box-shadow .6s,transform .6s var(--ease)}
.step .card{grid-row:1;padding:20px 24px;border-radius:22px;opacity:0;transition:opacity .8s var(--ease),transform .8s var(--ease)}
.step .card p{font-size:13.5px}
.step:nth-child(odd) .card{grid-column:1;transform:translateX(44px)}
.step:nth-child(even) .card{grid-column:3;transform:translateX(-44px)}
.step.in .card{opacity:1;transform:none}
.step.in .dot{color:#241a08;background:var(--gold-grad);border-color:#fff;transform:scale(1.12);box-shadow:0 0 0 6px #c9a24d2e,0 10px 22px -8px #a67b29}
@media(max-width:650px){
  .journey{margin-top:56px}
  .tl-line{left:auto;right:19.5px;transform:none}
  .step{grid-template-columns:42px 1fr;gap:16px}
  .step .dot{grid-column:1}
  .step:nth-child(n) .card{grid-column:2;transform:translateY(26px)}
  .step.in:nth-child(n) .card{transform:none}
  .step .card{padding:16px 18px}
}
@media(prefers-reduced-motion:reduce){.step .card{opacity:1;transform:none!important}}
