.funnel{--funnel-gap: 1.1rem;--funnel-card-pad-x: clamp(1.2rem, 4vw, 2.4rem);--funnel-card-pad-y: clamp(1.6rem, 4vw, 2.4rem);--funnel-border: rgba(0, 0, 0, .1);--funnel-border-strong: rgba(0, 0, 0, .22);--funnel-subtle-bg: rgba(39, 186, 144, .08);--funnel-focus: 0 0 0 3px rgba(39, 186, 144, .28);max-width:640px;margin:0 auto;padding:clamp(1rem,3vw,2rem) 1rem clamp(2rem,5vw,4rem);font-family:var(--font-body);color:var(--c-text);-webkit-font-smoothing:antialiased}.funnel__honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.funnel__progress{margin-bottom:clamp(1.2rem,3vw,1.8rem)}.funnel__progress-track{height:4px;border-radius:4px;background:#00000014;overflow:hidden}.funnel__progress-fill{height:100%;background:var(--c-main);border-radius:4px;transition:width .35s cubic-bezier(.4,0,.2,1)}.funnel__screen{display:flex;flex-direction:column;gap:var(--funnel-gap);background:var(--c-white);border-radius:16px;box-shadow:var(--shadow);padding:var(--funnel-card-pad-y) var(--funnel-card-pad-x);border:1px solid var(--funnel-border)}.funnel__screen--welcome,.funnel__screen--thankyou{text-align:center;align-items:center;padding:clamp(2rem,6vw,3.2rem) var(--funnel-card-pad-x)}.funnel__calendar-link{margin-top:.25rem;display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .85rem;border-radius:8px;font-size:.92rem;font-weight:500;color:var(--c-text);opacity:.7;text-decoration:none;border:1px dashed rgba(0,0,0,.2);transition:opacity .15s ease,color .15s ease,border-color .15s ease,background .15s ease}.funnel__calendar-link:hover{opacity:1;color:var(--c-main);border-color:var(--c-main);background:var(--funnel-subtle-bg)}.funnel__calendar-link:focus-visible{outline:none;opacity:1;border-color:var(--c-main);box-shadow:var(--funnel-focus)}.funnel__calendar-arrow{transition:transform .15s ease}.funnel__calendar-link:hover .funnel__calendar-arrow{transform:translate(2px)}.funnel__title{font-family:var(--font-body);font-size:clamp(1.7rem,4.2vw,2.35rem);font-weight:900;line-height:1.1;letter-spacing:-.4px;margin:0}.funnel__question{font-family:var(--font-body);font-size:clamp(1.35rem,3.4vw,1.75rem);font-weight:700;line-height:1.2;letter-spacing:-.2px;margin:0}.funnel__subtitle{font-size:clamp(1rem,1.5vw,1.08rem);font-weight:400;line-height:1.55;margin:0;color:var(--c-text);opacity:.72;max-width:48ch}.funnel__screen--welcome .funnel__subtitle,.funnel__screen--thankyou .funnel__subtitle{margin-inline:auto}.funnel__subtext{font-size:.97rem;line-height:1.5;margin:0;color:var(--c-text);opacity:.7}.funnel__options{display:flex;flex-direction:column;gap:.55rem;margin-top:.25rem}.funnel__option{display:flex;align-items:center;gap:.85rem;padding:.95rem 1.05rem;border:1.5px solid var(--funnel-border-strong);border-radius:12px;background:var(--c-white);font:inherit;font-size:.98rem;color:var(--c-text);text-align:left;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.funnel__option:hover{border-color:var(--c-main)}.funnel__option:active{transform:translateY(1px)}.funnel__option:focus-visible{outline:none;border-color:var(--c-main);box-shadow:var(--funnel-focus)}.funnel__option--active{border-color:var(--c-main);background:var(--funnel-subtle-bg);font-weight:500}.funnel__option-check{width:22px;height:22px;flex-shrink:0;border:1.5px solid var(--funnel-border-strong);border-radius:6px;display:grid;place-items:center;background:var(--c-white);color:transparent;transition:background .12s ease,border-color .12s ease,color .12s ease}.funnel__option--active .funnel__option-check{background:var(--c-main);border-color:var(--c-main);color:var(--c-white)}.funnel__option-label{flex:1;line-height:1.35}.funnel__nav{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.85rem}.funnel__nav--single{justify-content:center}.funnel__nav--single-left{justify-content:flex-start}.funnel__btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.85rem 1.4rem;border-radius:10px;border:2px solid transparent;font-family:inherit;font-weight:700;font-size:1rem;line-height:1;cursor:pointer;text-decoration:none;transition:filter .15s ease,transform .15s ease,border-color .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent}.funnel__btn--lg{padding:1rem 1.7rem;font-size:1.05rem}.funnel__btn:disabled{opacity:.4;cursor:not-allowed}.funnel__btn:focus-visible{outline:none;box-shadow:var(--funnel-focus)}.funnel__btn--primary{background:var(--c-accent);color:var(--c-white);font-weight:800;box-shadow:0 10px 24px #af000038}.funnel__btn--primary:hover:not(:disabled){filter:brightness(.95);transform:translateY(-1px) scale(1.02);box-shadow:0 12px 26px #af000047}.funnel__btn--primary:active:not(:disabled){transform:translateY(0) scale(1);box-shadow:0 6px 16px #af000038}.funnel__btn--ghost{background:transparent;color:var(--c-text);border-color:var(--funnel-border-strong)}.funnel__btn--ghost:hover:not(:disabled){border-color:var(--c-text)}.funnel__btn-loading{display:inline-flex;align-items:center;gap:.6rem}.funnel__spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:var(--c-white);border-radius:50%;animation:funnel-spin .7s linear infinite}@keyframes funnel-spin{to{transform:rotate(360deg)}}.funnel__skip{text-align:center;margin-top:.1rem}.funnel__link{background:none;border:0;color:var(--c-text);opacity:.55;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;font-size:.9rem;padding:.5rem .75rem}.funnel__link:hover{opacity:.9;color:var(--c-main)}.funnel__link:focus-visible{outline:none;opacity:1;border-radius:6px;box-shadow:var(--funnel-focus)}.funnel__form{display:flex;flex-direction:column;gap:.85rem;margin-top:.5rem}.funnel__field{display:flex;flex-direction:column;gap:.35rem}.funnel__field-label{font-size:.87rem;font-weight:600;color:var(--c-text);opacity:.85}.funnel__field-required{color:var(--c-accent);font-weight:700}.funnel__input{padding:.8rem .95rem;border-radius:10px;border:1.5px solid var(--funnel-border-strong);font:inherit;font-size:1rem;background:var(--c-white);color:var(--c-text);width:100%;transition:border-color .12s ease,box-shadow .12s ease}.funnel__input::placeholder{color:#0006}.funnel__input:focus{outline:none;border-color:var(--c-main);box-shadow:var(--funnel-focus)}.funnel__input--error{border-color:var(--c-accent)}.funnel__input--error:focus{box-shadow:0 0 0 3px #af000038}.funnel__field-error{color:var(--c-accent);font-size:.85rem;font-weight:500}.funnel__field-error--block{margin:-.3rem 0 0 1.8rem}.funnel__consent{display:flex;gap:.6rem;align-items:flex-start;font-size:.92rem;line-height:1.45;cursor:pointer;padding:.35rem 0}.funnel__consent input[type=checkbox]{margin-top:.2rem;width:18px;height:18px;accent-color:var(--c-main);flex-shrink:0;cursor:pointer}.funnel__consent a{color:var(--c-text);font-weight:600;text-decoration:underline;text-underline-offset:2px}.funnel__consent a:hover{color:var(--c-main)}.funnel__submit-error{padding:1rem 1.1rem;border:1.5px solid var(--c-accent);border-radius:12px;background:#af00000a;display:flex;flex-direction:column;gap:.7rem}.funnel__submit-error p{margin:0;color:var(--c-accent);font-weight:600;font-size:.95rem;line-height:1.45}.funnel__submit-error .funnel__btn{align-self:flex-start}@media(min-width:640px){.funnel{padding-top:clamp(2rem,4vw,3rem)}.funnel__screen{gap:1.25rem}.funnel__nav{margin-top:1.1rem}}@media(prefers-reduced-motion:reduce){.funnel__progress-fill,.funnel__option,.funnel__btn,.funnel__input{transition:none}.funnel__btn--primary:hover:not(:disabled){transform:none}.funnel__spinner{animation-duration:1.6s}}
