.funnel-body{color:#22232b;background:#f5f6f9;min-height:100vh}.funnel-header{padding:32px 40px 0}.funnel-header-inner{justify-content:space-between;align-items:center;max-width:1080px;margin:0 auto 28px;display:flex}.funnel-back{color:#3d1dbf;font-family:Raleway,sans-serif;font-size:1rem;font-weight:700}.funnel-back:hover{color:#2a1494}.funnel-brand{color:#3d1dbf;font-family:Milanesa,Georgia,serif;font-size:1.4rem;font-weight:700}.funnel-progress-track{background:#e4e4ec;border-radius:999px;max-width:1080px;height:6px;margin:0 auto;overflow:hidden}.funnel-progress-fill{background:linear-gradient(#f6d19c 0%,#eebd7c 100%);border-radius:999px;width:0%;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.funnel-main{padding:56px 40px 100px}.funnel-container{max-width:1080px;margin:0 auto;position:relative}.step{animation:.45s cubic-bezier(.4,0,.2,1) step-in;display:none}.step.is-active{display:block}@keyframes step-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.step-eyebrow{letter-spacing:.06em;color:#3d1dbf;margin:0 0 14px;font-family:Raleway,sans-serif;font-size:.85rem;font-weight:800}.step-title{color:#22232b;max-width:820px;margin:0 0 40px;font-family:Milanesa,Georgia,serif;font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:700;line-height:1.25}.option-grid{grid-template-columns:1fr 1fr;gap:20px;max-width:820px;display:grid}.option-list{flex-direction:column;gap:20px;max-width:820px;margin-bottom:32px;display:flex}.option-card{text-align:left;color:#22232b;cursor:pointer;background:#fff;border:1px solid #e2e2ea;border-radius:16px;width:100%;padding:26px 28px;font-family:Raleway,sans-serif;font-size:1.1rem;font-weight:700;transition:border-color .2s,box-shadow .2s,transform .2s;display:block}.option-card:hover{border-color:#b7a3ef;transform:translateY(-2px);box-shadow:0 10px 24px #3d1dbf14}.option-card.is-selected{background:#f4f1fd;border-color:#3d1dbf;box-shadow:0 10px 24px #3d1dbf1f}.step-back{color:#8b8b98;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-family:Raleway,sans-serif;font-size:1rem;font-weight:600;display:inline-flex}.step-back:hover{color:#22232b}.field{color:#22232b;background:#fff;border:1px solid #e2e2ea;border-radius:14px;width:100%;padding:18px 22px;font-family:Raleway,sans-serif;font-size:1rem;transition:border-color .2s}.field::placeholder{color:#9d9da8}.field:focus{border-color:#3d1dbf;outline:none}.field-textarea{resize:vertical;max-width:820px;min-height:150px;margin-bottom:24px;font-family:Raleway,sans-serif;display:block}.field-row{grid-template-columns:1fr 1fr;gap:20px;max-width:820px;margin-bottom:20px;display:grid}.field-row .field{margin:0}input.field{max-width:820px;margin-bottom:20px;display:block}.field-error{color:#d13a2f;margin:-4px 0 20px;font-size:.95rem}.step-footer{align-items:center;gap:32px;margin-top:8px;display:flex}.calendar-card{background:#fff;border-radius:22px;max-width:860px;margin-bottom:32px;padding:28px 32px 32px;box-shadow:0 20px 45px #14102b0f}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.calendar-month{color:#22232b;margin:0;font-family:Raleway,sans-serif;font-size:1.15rem;font-weight:800}.calendar-nav{color:#3d1dbf;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 10px;font-size:1.4rem;line-height:1}.calendar-nav:hover:not(:disabled){background:#f4f1fd}.calendar-nav:disabled{color:#d3d3dc;cursor:not-allowed}.calendar-weekdays{grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:10px;display:grid}.calendar-weekdays span{text-align:center;letter-spacing:.04em;color:#9d9da8;font-size:.78rem;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:10px;display:grid}.calendar-day{aspect-ratio:1;color:#c7c7d1;cursor:default;background:#f5f5f8;border:none;border-radius:12px;justify-content:center;align-items:center;font-family:Raleway,sans-serif;font-size:.95rem;font-weight:600;display:flex}.calendar-day.is-empty{cursor:default;background:0 0}.calendar-day.is-enabled{color:#22232b;cursor:pointer;font-weight:700}.calendar-day.is-enabled:hover{background:#ece6fb}.calendar-day.is-selected{color:#fff;background:#22232b}.slot-list{flex-wrap:wrap;gap:16px;max-width:860px;margin-bottom:32px;display:flex}.slot-btn{color:#22232b;cursor:pointer;background:#fff;border:1px solid #e2e2ea;border-radius:12px;padding:14px 26px;font-family:Raleway,sans-serif;font-size:1rem;font-weight:700;transition:border-color .2s,transform .2s}.slot-btn:hover{border-color:#b7a3ef;transform:translateY(-2px)}.slot-btn.is-selected{color:#fff;background:#22232b;border-color:#22232b}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none!important}.step-success{text-align:center;max-width:560px;margin:40px auto 0}.success-icon{background:#3fb56d;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 28px;display:flex}.success-text{color:#4b4b58;margin:0 0 32px;font-size:1.08rem;line-height:1.6}@media (max-width:700px){.funnel-header{padding:24px 20px 0}.funnel-main{padding:40px 20px 72px}.option-grid,.field-row{grid-template-columns:1fr}.step-title{margin-bottom:28px}.calendar-card{padding:20px 16px 24px}.calendar-day{font-size:.82rem}.slot-btn{padding:12px 18px;font-size:.92rem}.step-footer{flex-wrap:wrap;gap:20px}}
