/* Developed by Zinocode Programming Team */
@font-face{font-family:Vazirmatn;src:url('../fonts/Vazirmatn.woff2') format('woff2');font-display:swap;font-weight:100 900}
:root{--brand-primary:#d80d8d;--brand-primary-dark:#b81e7c;--brand-peach:#f2cdbb;--brand-light-peach:#f7e0d6;--brand-black:#010101;--brand-charcoal:#2a1e19;--brand-light-gray:#f6f6f6;--brand-white:#fff;--radius-sm:13px;--radius-lg:28px}
*{box-sizing:border-box}
html{max-width:100%;overflow-x:clip;scroll-behavior:smooth}
body{margin:0;max-width:100%;overflow-x:clip;background:var(--brand-light-gray);color:var(--brand-charcoal);font-family:Vazirmatn,Tahoma,Arial,sans-serif;font-size:16px;line-height:1.75}
body:before{content:"";position:fixed;z-index:-1;inset:0;background:radial-gradient(circle at 10% 8%,color-mix(in srgb,var(--brand-primary) 11%,transparent),transparent 30%),radial-gradient(circle at 90% 92%,color-mix(in srgb,var(--brand-peach) 48%,transparent),transparent 34%);pointer-events:none}
[hidden]{display:none!important}
img,svg{max-width:100%}
button,input,select,textarea{font:inherit}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-primary) 26%,transparent);outline-offset:2px}

.flow-shell{position:relative;min-height:100svh}
.intro-screen{min-height:100svh;display:grid;place-items:center;padding:clamp(24px,5vw,64px) 16px;transition:opacity .24s ease,transform .24s ease}
.intro-screen:before,.intro-screen:after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(1px);pointer-events:none}
.intro-screen:before{width:min(36vw,420px);aspect-ratio:1;top:-12%;right:-8%;background:color-mix(in srgb,var(--brand-light-peach) 74%,transparent)}
.intro-screen:after{width:min(28vw,320px);aspect-ratio:1;bottom:-10%;left:-5%;background:color-mix(in srgb,var(--brand-primary) 8%,transparent)}
.intro-card{width:min(100%,760px);padding:clamp(30px,6vw,62px);text-align:center;background:color-mix(in srgb,var(--brand-white) 94%,transparent);border:1px solid color-mix(in srgb,var(--brand-peach) 72%,var(--brand-white));border-radius:clamp(24px,4vw,36px);box-shadow:0 32px 90px rgba(42,30,25,.1);backdrop-filter:blur(12px)}
.brand{display:flex;min-width:0;align-items:center;gap:14px}
.brand-centered{justify-content:center}
.brand img{width:68px;height:68px;object-fit:contain;flex:none;background:var(--brand-white);border-radius:20px;box-shadow:0 10px 30px rgba(42,30,25,.1)}
.brand-centered img{width:clamp(88px,15vw,118px);height:auto;max-height:118px;background:transparent;border-radius:0;box-shadow:none}
.brand div{display:flex;min-width:0;flex-direction:column;text-align:right}
.brand strong{font-size:1.25rem;overflow-wrap:anywhere}
.eyebrow,.step-label{font-size:.78rem;letter-spacing:.02em;color:var(--brand-primary-dark)}
.intro-copy{margin-top:clamp(30px,5vw,48px)}
.time-pill{display:inline-flex;align-items:center;gap:9px;max-width:100%;padding:7px 14px;color:#0f7653;background:rgba(15,138,95,.1);border:1px solid rgba(15,138,95,.2);border-radius:999px;font-size:.82rem;font-weight:700}
.time-pill>span{width:8px;height:8px;border-radius:50%;background:#0f8a5f;box-shadow:0 0 0 4px rgba(15,138,95,.12);animation:status-pulse 1.8s ease-in-out infinite}
.intro-copy h1{max-width:none;margin:24px auto 14px;color:var(--brand-black);font-size:clamp(2rem,4vw,2.8rem);line-height:1.4;letter-spacing:-.04em;white-space:nowrap}
.intro-copy p{max-width:610px;margin:0 auto;color:#6f5b53;font-size:1rem;line-height:2;overflow-wrap:anywhere}
.start-button,.nav-button{border:0;cursor:pointer;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,opacity .18s ease}
.start-button{width:min(100%,330px);min-height:58px;display:inline-flex;align-items:center;justify-content:center;gap:12px;margin-top:34px;padding:13px 24px;color:var(--brand-white);background:linear-gradient(135deg,var(--brand-primary),var(--brand-primary-dark));border-radius:16px;box-shadow:0 14px 30px color-mix(in srgb,var(--brand-primary) 24%,transparent);font-size:1rem;font-weight:800;animation:button-float 3.6s ease-in-out infinite}
.start-button img,.next-button>img,.submit>img{width:19px;height:19px;flex:none}
.previous-icon{width:19px;height:19px;flex:none;background:currentColor;-webkit-mask:url('/assets/icons/arrow-left.svg') center/contain no-repeat;mask:url('/assets/icons/arrow-left.svg') center/contain no-repeat;transform:rotate(180deg)}
.start-button:hover,.start-button:focus-visible,.next-button:hover,.next-button:focus-visible,.submit:hover,.submit:focus-visible{background:var(--brand-primary-dark);transform:translateY(-2px);box-shadow:0 18px 36px color-mix(in srgb,var(--brand-primary) 28%,transparent)}
.start-button:hover,.start-button:focus-visible{animation-play-state:paused}
.screen-leaving{opacity:0;transform:translateY(-10px)}
.screen-entering{opacity:0;transform:translateY(12px)}

.questionnaire-screen{min-height:100svh;width:100%;display:flex;align-items:center;justify-content:center;padding:clamp(18px,4vw,48px) 16px;transition:opacity .24s ease,transform .24s ease}
.form-card{width:min(100%,800px);min-width:0;background:var(--brand-white);border:1px solid color-mix(in srgb,var(--brand-peach) 75%,var(--brand-white));border-radius:var(--radius-lg);box-shadow:0 26px 75px rgba(42,30,25,.1);overflow:hidden}
.form-head{padding:clamp(22px,4vw,34px) clamp(20px,5vw,42px) 25px;border-bottom:1px solid color-mix(in srgb,var(--brand-peach) 55%,var(--brand-white))}
.form-brand{display:flex;align-items:center;gap:13px;min-width:0}
.form-brand>img{width:48px;height:48px;object-fit:contain;flex:none;border-radius:14px;background:var(--brand-white);box-shadow:0 7px 22px rgba(42,30,25,.08)}
.form-brand>div{min-width:0}
.form-head h2{margin:2px 0 0;color:var(--brand-black);font-size:clamp(1.2rem,3vw,1.55rem);line-height:1.5;overflow-wrap:anywhere}
.progress-copy{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:23px;color:#6c5952;font-size:.9rem}
.progress-copy strong{color:var(--brand-primary-dark);font-size:1rem}
.progress-track{height:8px;margin-top:9px;overflow:hidden;background:var(--brand-light-peach);border-radius:999px}
.progress-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--brand-primary-dark),var(--brand-primary));border-radius:inherit;transition:width .3s ease}

form{padding:clamp(24px,5vw,42px);transition:opacity .22s ease,transform .22s ease}
.honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;padding:0!important;margin:-1px!important}
.steps{min-height:410px}
.question-step{transition:opacity .18s ease,transform .18s ease}
.step-out-forward,.step-in-back{opacity:0;transform:translateX(-18px)}
.step-out-back,.step-in-forward{opacity:0;transform:translateX(18px)}
.contact-block{min-width:0;margin:0 0 28px;padding:0 0 28px;border:0;border-bottom:1px solid #f0e8e4}
.contact-step .contact-block{margin-bottom:0;padding-bottom:0;border-bottom:0}.contact-navigation{margin-top:30px}
.contact-block legend{margin-bottom:15px;color:var(--brand-black);font-size:.9rem;font-weight:800}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.field{min-width:0}
.field>span:first-child{display:block;margin:0 3px 7px;font-size:.88rem;font-weight:650}
.field b,.question-title b{color:#b4473a}
.control{width:100%;min-width:0;height:53px;display:flex;align-items:center;background:var(--brand-light-gray);border:1px solid color-mix(in srgb,var(--brand-peach) 80%,#ddd);border-radius:var(--radius-sm);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.control:focus-within,textarea:focus,select:focus,.question>input:focus{background:var(--brand-white);border-color:var(--brand-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-primary) 10%,transparent)}
.control img{width:18px;height:18px;flex:none;margin:0 14px;opacity:.7}
.control input,.control select{width:100%;min-width:0;height:100%;padding-left:12px;color:var(--brand-charcoal);background:transparent;border:0;outline:0}
.ltr{direction:ltr}.ltr input{text-align:left}
.field small,.question>small{display:block;min-height:21px;margin:4px 3px 0;color:#a33c32;font-size:.78rem}
.invalid .control,.invalid textarea,.invalid select{border-color:#c85e52}
.question{min-width:0}
.question-title{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:start;gap:11px;margin-bottom:20px}
.question-title i{min-width:34px;height:34px;display:grid;place-items:center;color:var(--brand-primary-dark);background:var(--brand-light-peach);border-radius:10px;font-style:normal;font-size:.78rem;font-weight:800}
.question-title img{width:21px;height:21px;margin-top:6px}
.question-title h3{min-width:0;margin:2px 0 0;color:var(--brand-black);font-size:clamp(1.05rem,2.6vw,1.25rem);line-height:1.75;overflow-wrap:anywhere}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.choice{position:relative;min-width:0;cursor:pointer}
.choice input{position:absolute;opacity:0}
.choice span{min-height:51px;display:flex;align-items:center;padding:11px 14px;color:#584943;background:#fcfbfb;border:1px solid color-mix(in srgb,var(--brand-peach) 82%,#ddd);border-radius:13px;font-size:.9rem;line-height:1.6;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}
.choice span:before{content:"";width:14px;height:14px;flex:none;margin-left:9px;border:1px solid #ae9d96;border-radius:50%}
.choice:hover span{border-color:color-mix(in srgb,var(--brand-primary) 45%,var(--brand-peach));transform:translateY(-1px)}
.choice input:checked+span{color:var(--brand-primary-dark);background:color-mix(in srgb,var(--brand-primary) 7%,var(--brand-white));border-color:var(--brand-primary);font-weight:700}
.choice input:checked+span:before{border:4px solid var(--brand-primary)}
.choice input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--brand-primary) 20%,transparent);outline-offset:2px}
.select-control{width:100%}.select-control select{padding:0 13px;outline:0}
.question>input,.question textarea{width:100%;max-width:100%;min-height:53px;padding:14px;color:var(--brand-charcoal);background:var(--brand-light-gray);border:1px solid color-mix(in srgb,var(--brand-peach) 80%,#ddd);border-radius:13px;outline:0;resize:vertical;font-size:.9rem}
.question textarea{min-height:150px;line-height:1.9}
.step-navigation{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:30px;padding-top:22px;border-top:1px solid #f0e8e4}
.nav-button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 24px;border-radius:13px;font-size:.92rem;font-weight:800}
.next-button,.submit{margin-right:auto;color:var(--brand-white);background:var(--brand-primary);box-shadow:0 10px 24px color-mix(in srgb,var(--brand-primary) 20%,transparent)}
.previous-button{color:var(--brand-primary-dark);background:var(--brand-light-peach);border:1px solid color-mix(in srgb,var(--brand-peach) 84%,var(--brand-white))}
.previous-button:hover,.previous-button:focus-visible{background:var(--brand-peach);transform:translateY(-1px)}
.nav-button:disabled{cursor:wait;opacity:.68;transform:none;box-shadow:none}
.spinner{display:none;width:19px;height:19px;flex:none;border:2px solid rgba(255,255,255,.4);border-top-color:var(--brand-white);border-radius:50%}
.loading .spinner{display:block;animation:spin .75s linear infinite}
.loading>img{display:none}
.form-error{min-height:24px;margin-top:12px;color:#a33c32;text-align:center;font-size:.84rem;overflow-wrap:anywhere}
.is-leaving{opacity:0;transform:translateY(-8px)}

.success{text-align:center;padding:clamp(44px,8vw,82px) clamp(20px,6vw,50px);opacity:0;transform:translateY(10px) scale(.985);transition:opacity .35s ease,transform .35s ease}
.success.is-visible{opacity:1;transform:none}
.success-icon{width:200px;height:200px;max-width:100%;display:grid;place-items:center;margin:0 auto 24px;background:#e9f6f0;border-radius:50%;animation:pop .5s ease}
.success-icon img{width:164px;height:164px;object-fit:contain}
.success>span{color:#4c7a6c;font-size:.82rem}
.success h2{margin:8px;color:var(--brand-black);font-size:clamp(1.45rem,4vw,1.85rem);overflow-wrap:anywhere}
.success p{max-width:520px;margin:0 auto;color:#6f5b53;font-size:.92rem;overflow-wrap:anywhere}
.reference{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px;padding:9px 18px;background:var(--brand-light-gray);border-radius:999px;font-size:.84rem}
.reference b{color:var(--brand-primary-dark)}
.submission-complete .form-head{display:none}
.submission-complete .questionnaire-screen{min-height:100svh;padding:16px}
.submission-complete .form-card{width:min(100%,760px)}
.submission-complete .success{min-height:min(620px,calc(100svh - 32px));display:flex;flex-direction:column;align-items:center;justify-content:center}

footer{position:relative;padding:18px 20px 30px;color:#78665f;text-align:center;font-size:.78rem;overflow-wrap:anywhere}
footer a{color:var(--brand-primary-dark);font-weight:800;text-decoration:none}
footer a:hover{text-decoration:underline}

@keyframes pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes status-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.86)}}
@keyframes button-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

@media(max-width:780px){
 .intro-copy h1{white-space:normal;overflow-wrap:anywhere}
}
@media(max-width:620px){
 .intro-screen{padding:14px 12px}.intro-card{padding:30px 18px;border-radius:24px}.brand img{width:58px;height:58px}.brand-centered img{width:92px;height:auto}.brand strong{font-size:1.12rem}.intro-copy{margin-top:28px}.intro-copy h1{font-size:clamp(1.8rem,9vw,2.35rem);white-space:normal;overflow-wrap:anywhere}.intro-copy p{font-size:.94rem}
 .questionnaire-screen{align-items:flex-start;padding:12px}.form-card{border-radius:21px}.form-head,form{padding:22px 17px}.form-head{padding-bottom:21px}.form-brand>img{width:42px;height:42px}.form-head h2{font-size:1.15rem}.steps{min-height:0}.field-grid,.choice-grid{grid-template-columns:minmax(0,1fr)}.contact-block{margin-bottom:23px;padding-bottom:23px}.question-title{grid-template-columns:auto minmax(0,1fr)}.question-title img{display:none}.question-title h3{font-size:1rem}.choice span{font-size:.88rem}.step-navigation{gap:9px;margin-top:24px}.nav-button{min-height:50px;padding:10px 17px}
 .submission-complete .questionnaire-screen{padding:12px}.submission-complete .success{min-height:calc(100svh - 24px);padding:30px 17px}.submission-complete .success-icon{width:min(164px,52vw);height:min(164px,52vw)}.submission-complete .success-icon img{width:min(136px,44vw);height:min(136px,44vw)}
}
@media(max-width:360px){.intro-card{padding-inline:14px}.form-head,form{padding-inline:14px}.nav-button{padding-inline:13px;font-size:.84rem}.previous-button{flex:1}.next-button,.submit{flex:1}.progress-copy{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.time-pill>span{animation:none!important}}
