.modal{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:20px}.modal--open{display:flex}.modal__overlay{position:absolute;inset:0;background-color:#0f0d2ed9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:modalFade .3s ease}.modal__dialog{position:relative;z-index:1;width:100%;max-height:calc(100svh - 40px);overflow-y:auto;overscroll-behavior:contain;border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow-dark-lg)}@keyframes modalFade{0%{opacity:0}to{opacity:1}}.modal__close{position:absolute;top:14px;right:14px;z-index:10;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#0f0d2e99;color:var(--color-light-accent);font-size:2rem;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background-color var(--transition),rotate .4s var(--ease-out)}.modal__close:hover{background:var(--color-accent);color:var(--color-on-accent);rotate:90deg}.modal__close:focus-visible{outline:3px solid var(--color-light-accent);outline-offset:3px}.modal__content{position:relative;padding:clamp(28px,4vw,44px)}.modal__title{font-family:var(--font-display);font-size:clamp(1.4rem,2.8vw,1.8rem);font-weight:800;letter-spacing:-.5px;line-height:1.2;margin-bottom:8px}.modal__subtitle{font-size:clamp(.95rem,1.6vw,1.02rem);margin-bottom:20px}.modal__form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label,.segmented legend{font-weight:700;font-size:.88rem}.form-group__optional{font-weight:500;opacity:.65}.form-group input,.form-group textarea{width:100%;min-height:50px;padding:13px 16px;border:2px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-main);font-size:1rem;outline:none;transition:border-color var(--transition),box-shadow var(--transition),background-color var(--transition)}.form-group textarea{resize:vertical;min-height:84px}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 4px #f5550b2e}.form-group__error{min-height:0;font-size:.82rem;font-weight:600;color:#e11d48}.form-group__error:empty,[data-field]:not(.form-group--error)>.form-group__error{display:none}.form-group--error input,.form-group--error textarea{border-color:#e11d48}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.checkbox{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:.85rem;line-height:1.4}.checkbox__text a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}.checkbox input{position:absolute;opacity:0;width:1px;height:1px}.checkbox__box{flex-shrink:0;width:22px;height:22px;display:grid;place-items:center;border-radius:7px;border:2px solid currentColor;opacity:.7;transition:background-color var(--transition),border-color var(--transition),opacity var(--transition)}.checkbox__box svg{width:14px;height:14px;opacity:0;transform:scale(.5);transition:opacity .2s ease,transform .3s var(--ease-out)}.checkbox input:checked+.checkbox__box{background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent);opacity:1}.checkbox input:checked+.checkbox__box svg{opacity:1;transform:none}.checkbox input:focus-visible+.checkbox__box{outline:3px solid var(--color-accent);outline-offset:2px}.form-group--error .checkbox__box{border-color:#e11d48;opacity:1}.form-alert{padding:12px 16px;border-radius:var(--radius-sm);background-color:#e11d481a;border:1px solid rgba(225,29,72,.35);color:#be123c;font-size:.9rem;font-weight:600}.form-alert a{color:inherit;text-decoration:underline}.form-submit{position:relative;margin-top:4px}.form-submit__spinner{position:absolute;width:22px;height:22px;border-radius:50%;border:3px solid rgba(15,13,46,.25);border-top-color:var(--color-on-accent);opacity:0;animation:spin .8s linear infinite}.form-submit.is-loading .form-submit__text{opacity:0}.form-submit.is-loading .form-submit__spinner{opacity:1}.form-submit:disabled{cursor:progress}@keyframes spin{to{transform:rotate(360deg)}}.modal-success{display:none;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:360px;text-align:center}.modal--success .modal__body{display:none}.modal--success .modal-success{display:flex;animation:successIn .6s var(--ease-out)}.modal-success__icon{width:84px;height:84px;display:grid;place-items:center;border-radius:50%;background-color:var(--color-accent);color:var(--color-on-accent);box-shadow:0 0 0 12px #f5550b26,0 0 0 26px #f5550b12;margin-bottom:16px}.modal-success__icon svg{width:40px;height:40px}.modal--success .modal-success__icon svg path{stroke-dasharray:30;stroke-dashoffset:30;animation:drawCheck .6s var(--ease-out) .25s forwards}.modal-success__title{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,1.8rem);font-weight:800}.modal-success__text{max-width:340px;margin-bottom:10px;opacity:.8}@keyframes successIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}@keyframes drawCheck{to{stroke-dashoffset:0}}.modal--contact .modal__dialog{--cat-navy: #19164B;max-width:920px;display:grid;grid-template-columns:.95fr 1.05fr;background-color:var(--cat-navy);color:var(--color-text);border:1px solid rgba(254,243,199,.12);animation:contactIn .55s var(--ease-out)}@keyframes contactIn{0%{opacity:0;transform:translateY(40px) rotate(-1.5deg) scale(.97)}to{opacity:1;transform:none}}.modal--contact .modal__visual{position:relative;min-height:100%;overflow:hidden;background-color:var(--cat-navy)}.modal--contact .modal__image{position:absolute;left:0;right:0;bottom:0;width:100%;height:100%;object-fit:cover;object-position:68% 100%}.modal__visual-logo{position:absolute;top:clamp(22px,3vw,30px);left:clamp(22px,3vw,30px);z-index:1;font-family:var(--font-display);font-size:1.5rem;font-weight:800;letter-spacing:1px;color:var(--color-light-accent)}.modal__bubble{position:absolute;top:clamp(76px,12%,110px);left:clamp(22px,3vw,30px);right:clamp(22px,4vw,48px);z-index:1;padding:16px 20px;border-radius:20px 20px 20px 6px;background-color:#fff;color:var(--cat-navy, #19164B);font-family:var(--font-display);font-size:clamp(.95rem,1.6vw,1.1rem);font-weight:700;line-height:1.35;box-shadow:6px 6px 0 var(--color-accent);transform-origin:bottom left;animation:bubbleIn .6s var(--ease-out) .35s both}.modal__bubble:after{content:"";position:absolute;left:58%;bottom:-14px;width:26px;height:16px;background-color:#fff;clip-path:polygon(0 0,100% 0,70% 100%)}@keyframes bubbleIn{0%{opacity:0;transform:scale(.6) translateY(10px)}to{opacity:1;transform:none}}.modal--contact .modal__content{margin:12px 12px 12px 0;border-radius:var(--radius);background-color:#fffdf7}.modal--contact .modal__close{top:22px;right:22px;background:#19164b14;color:var(--cat-navy, #19164B)}.modal--contact .modal__close:hover{background:var(--color-accent);color:var(--color-on-accent)}.modal--contact .modal__title{color:#19164b}.modal--contact .modal__subtitle,.modal--contact .modal__phone{color:var(--color-text-muted)}.modal--contact .modal__phone{margin-bottom:22px}.modal__phone-link{font-weight:700;color:var(--color-accent-on-light)}.modal__topic{display:inline-block;padding:5px 14px;margin-bottom:14px;border-radius:60px;background-color:var(--color-accent);color:var(--color-on-accent);font-size:.8rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.modal--contact .form-group input,.modal--contact .form-group textarea{background-color:#fff;border-color:#19164b29;color:#19164b}.modal--contact .form-group input::placeholder,.modal--contact .form-group textarea::placeholder{color:var(--color-text-muted)}.modal--order .modal__dialog{max-width:920px;display:grid;grid-template-columns:.85fr 1.15fr;background-color:#0f1538;color:var(--color-light-accent);border:1px solid rgba(254,243,199,.12);transform-origin:top center;animation:orderIn .6s var(--ease-out)}@keyframes orderIn{0%{opacity:0;transform:perspective(1200px) rotateX(-12deg) translateY(-30px)}to{opacity:1;transform:none}}.ticket{position:relative;display:flex;flex-direction:column;padding:clamp(28px,4vw,40px);background:linear-gradient(160deg,#f5550b,#ff8a3d);color:var(--color-on-accent)}.ticket:after{content:"";position:absolute;top:0;bottom:0;right:-9px;width:18px;background:radial-gradient(circle at center,#0F1538 6px,transparent 6.5px) center top / 18px 22px repeat-y}.ticket__kind{font-size:.78rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;opacity:.75;margin-bottom:6px}.ticket__name{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:800;line-height:1.15;margin-bottom:14px}.ticket__price{font-family:var(--font-display);font-size:clamp(1.6rem,3.2vw,2.2rem);font-weight:800;padding-bottom:14px;margin-bottom:14px;border-bottom:2px dashed rgba(15,13,46,.3)}.ticket__price:empty{display:none}.ticket__term{font-weight:700;margin-bottom:14px}.ticket__list{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.ticket__list li{display:flex;align-items:flex-start;gap:8px;font-size:.9rem;font-weight:600}.ticket__list svg{flex-shrink:0;width:16px;height:16px;margin-top:3px}.ticket__note{margin-top:auto;padding:10px 14px;border-radius:12px;background-color:#0f0d2e24;font-size:.85rem;font-weight:700}.modal--order .modal__content{padding-left:clamp(32px,4.5vw,52px)}.modal--order .modal__subtitle{color:#fef3c7a6}.modal--order .form-group input,.modal--order .form-group textarea{background-color:#fef3c70f;border-color:#fef3c724;color:var(--color-light-accent)}.modal--order .form-group input::placeholder,.modal--order .form-group textarea::placeholder{color:#fef3c766}.modal--order .form-group__error{color:#fb7185}.modal--order .form-alert{color:#fda4af}.segmented{border:none;display:flex;flex-wrap:wrap;gap:8px}.segmented legend{width:100%;margin-bottom:6px}.segmented label{flex:1 1 0;position:relative;cursor:pointer}.segmented input{position:absolute;opacity:0}.segmented span{display:block;padding:10px 8px;border-radius:12px;border:2px solid rgba(254,243,199,.14);text-align:center;font-size:.9rem;font-weight:700;transition:background-color var(--transition),border-color var(--transition),color var(--transition)}.segmented input:checked+span{background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.segmented input:focus-visible+span{outline:3px solid var(--color-light-accent);outline-offset:2px}.modal--audit .modal__dialog{max-width:580px;background-color:#fff8e7;color:var(--color-text);animation:auditIn .5s var(--ease-out)}@keyframes auditIn{0%{opacity:0;transform:scale(.9)}60%{opacity:1;transform:scale(1.02)}to{transform:none}}.modal--audit .modal__close{background:#1e1b4b14;color:var(--color-text)}.modal--audit .modal__close:hover{background:var(--color-accent);color:var(--color-on-accent)}.browser{border-radius:14px;overflow:hidden;border:2px solid var(--color-text);box-shadow:6px 6px 0 var(--color-accent);margin:4px 50px 24px 0;background-color:#fff}.browser__bar{display:flex;align-items:center;gap:12px;padding:9px 12px;background-color:var(--color-text)}.browser__dots{display:flex;gap:5px}.browser__dots i{width:9px;height:9px;border-radius:50%;background-color:#fef3c759}.browser__dots i:first-child{background-color:var(--color-accent)}.browser__url{flex:1;min-width:0;display:flex;align-items:center;gap:6px;padding:4px 12px;border-radius:30px;background-color:#fef3c71f;color:var(--color-light-accent);font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.browser__lock{font-size:.7rem}.browser__screen{position:relative;display:flex;flex-direction:column;gap:8px;padding:16px;overflow:hidden}.browser__line{height:10px;border-radius:6px;background-color:var(--color-surface-light)}.browser__line--short{width:60%}.browser__scan{position:absolute;left:0;right:0;top:0;height:30px;background:linear-gradient(180deg,transparent,rgba(245,85,11,.35),transparent);opacity:0}.modal--scanning .browser__scan{opacity:1;animation:scan 1.6s ease-in-out infinite}@keyframes scan{0%{transform:translateY(-30px)}to{transform:translateY(80px)}}.audit-checks{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin:6px 0 22px}.audit-checks li{display:flex;align-items:center;gap:8px;font-size:.92rem;font-weight:600}.audit-checks svg{flex-shrink:0;width:20px;height:20px;padding:3px;border-radius:50%;background-color:var(--color-accent);color:var(--color-on-accent)}.modal--audit .form-group input{background-color:#fff;border-color:#1e1b4b26;color:var(--color-text)}.modal--audit .form-group input::placeholder{color:var(--color-text-muted)}.modal--audit [data-field=website] input{font-size:1.1rem;font-weight:700;min-height:56px}.offer__btn{margin-top:18px;padding:0;border:none;background:none;font-family:var(--font-main);font-size:.95rem;font-weight:800;color:var(--color-accent);cursor:pointer;position:relative;z-index:2}.offer__btn:after{content:" →";display:inline-block;transition:transform var(--transition)}.offer__btn:hover:after{transform:translate(4px)}@media(max-width:860px){.modal--contact .modal__dialog{grid-template-columns:1fr;max-width:520px}.modal--contact .modal__visual{min-height:250px}.modal--contact .modal__image{object-position:60% 28%}.modal__bubble{inset:auto 34% 14px 14px;padding:10px 14px;font-size:.85rem;border-radius:16px 16px 16px 4px;box-shadow:4px 4px 0 var(--color-accent)}.modal__bubble:after{display:none}.modal--contact .modal__content{margin:0 10px 10px}.modal--order .modal__dialog{grid-template-columns:1fr;max-width:520px}.ticket{padding:24px 24px 28px}.ticket:after{inset:auto 0 -9px;width:auto;height:18px;background:radial-gradient(circle at center,#0F1538 6px,transparent 6.5px) left center / 22px 18px repeat-x}.ticket__list,.ticket__note{display:none}.ticket__price{border-bottom:none;padding-bottom:0;margin-bottom:4px}.ticket__term{margin-bottom:0}.modal--order .modal__content{padding-left:clamp(24px,5vw,32px)}}@media(max-width:520px){.modal{padding:10px}.form-row,.audit-checks{grid-template-columns:1fr}.browser{margin-right:46px}}@media(prefers-reduced-motion:reduce){.modal__dialog,.modal--success .modal-success{animation:none}.modal--success .modal-success__icon svg path{stroke-dashoffset:0;animation:none}}
