.purchase-page{padding:calc(var(--space-12) + var(--header-height))0 var(--space-20);background:radial-gradient(circle at 0 0,#0071e314 0%,#0000 24%),linear-gradient(#f7f9ff 0%,#f3f5fb 100%);min-height:80vh}.purchase-container{width:100%;min-width:0;max-width:1120px;padding:0 var(--space-4);margin:0 auto}@media (min-width:640px){.purchase-container{padding:0 var(--space-6)}}.purchase-header{text-align:center;margin-bottom:var(--space-12);max-width:780px;margin-left:auto;margin-right:auto}.purchase-title{font-size:var(--font-size-4xl);color:var(--text);margin-bottom:var(--space-4);letter-spacing:-.02em;font-weight:700}.purchase-subtitle{font-size:var(--font-size-xl);color:var(--text-muted);max-width:760px;margin:0 auto;font-weight:500;line-height:1.6}.purchase-demo-link{margin-top:var(--space-4);min-height:40px;color:var(--primary);font-size:var(--font-size-sm);align-items:center;padding:0 16px;font-weight:700;text-decoration:none;display:inline-flex}@media (min-width:640px){.purchase-title{font-size:var(--font-size-5xl)}.purchase-subtitle{font-size:var(--font-size-xl)}}.purchase-steps{margin-bottom:var(--space-8)}.step-indicator{justify-content:space-between;align-items:flex-start;gap:0;max-width:600px;margin:0 auto;padding:18px 24px;display:flex}.step-col{align-items:center;gap:var(--space-2);flex-direction:column;flex-shrink:0;display:flex}.step-dot{border:1px solid var(--border);width:32px;height:32px;font-size:var(--font-size-sm);color:var(--text-light);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;transition:border-color .4s cubic-bezier(.4,0,.2,1),background-color .4s cubic-bezier(.4,0,.2,1),color .4s cubic-bezier(.4,0,.2,1);display:flex}.step-dot.active{border-color:var(--primary);background:var(--primary);color:#fff}.step-dot.completed{border-color:var(--success);background:var(--success);color:#fff}.step-line{background:var(--border);flex:1;height:1px;margin-top:16px;transition:background .5s cubic-bezier(.4,0,.2,1)}.step-line.completed{background:var(--success)}.step-label{font-size:var(--font-size-xs);color:var(--text-light);text-align:center;white-space:nowrap;font-weight:500;transition:color .3s}.step-label.active{color:#005cc8}.step-label.completed{color:#047857}@media (max-width:480px){.step-label{font-size:10px}.step-dot{width:30px;height:30px;font-size:var(--font-size-xs)}.step-line{margin-top:15px}}.purchase-content{position:relative}.purchase-flow-error{gap:var(--space-4);max-width:680px;margin:var(--space-8)auto var(--space-6);padding:var(--space-6);background:radial-gradient(circle at 100% 0,#dc26261a 0%,#0000 34%),linear-gradient(#fffbfbfa 0%,#fef2f2f5 100%);border:1px solid #dc262624;border-radius:28px;grid-template-columns:auto minmax(0,1fr);display:grid;box-shadow:0 22px 44px -34px #7f1d1d3d,inset 0 1px #ffffffb8}.purchase-flow-error-icon{color:#b91c1c;background:linear-gradient(#fee2e2f5 0%,#fecacadb 100%);border-radius:18px;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:inset 0 1px #ffffffb8}.purchase-flow-error-icon svg{width:22px;height:22px}.purchase-flow-error-body{min-width:0}.purchase-flow-error-message{color:#991b1b;margin:0;font-size:.97rem;font-weight:500;line-height:1.7}.purchase-error-login-btn{min-height:42px;margin-top:var(--space-4);color:#b91c1c;font-size:var(--font-size-sm);background:#ffffffeb;border:1px solid #b91c1c24;border-radius:999px;justify-content:center;align-items:center;padding:0 18px;font-weight:700;text-decoration:none;transition:background-color .2s,border-color .2s,transform .2s;display:inline-flex}.purchase-error-login-btn:hover{background:#fff;border-color:#b91c1c3d;transform:translateY(-1px)}.purchase-step{display:none}.purchase-step.active{animation:.4s cubic-bezier(.4,0,.2,1) fadeInStep;display:block}.purchase-step:not(#step-1).active{width:100%;max-width:680px;margin:0 auto}@keyframes fadeInStep{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.purchase-header,.purchase-steps{margin-bottom:var(--space-8)}.step-indicator{align-items:flex-start;gap:var(--space-2)}.step-col{min-width:0}.step-line{flex:1 1 0;min-width:12px;max-width:none}.form-card{padding:var(--space-8)}.form-card .purchase-actions{margin:var(--space-8)calc(-1*var(--space-8))calc(-1*var(--space-8));padding:var(--space-4)var(--space-8)}.purchase-flow-error{gap:var(--space-3);margin-top:var(--space-6);padding:var(--space-5);grid-template-columns:1fr}.purchase-flow-error-icon{border-radius:16px;width:44px;height:44px}}.pricing-transactional-note{margin-top:var(--space-6);font-size:var(--font-size-sm);color:var(--text-light);text-align:center;border-top:none;padding-top:0;line-height:1.6}.pricing-configuration-card{background:#fff;border:1px solid #0000000f;border-radius:36px;max-width:768px;margin:0 auto;overflow:hidden;box-shadow:0 34px 72px -50px #0f172a47}.pricing-base-section{padding:var(--space-8)var(--space-10);background:linear-gradient(#fff 0%,#f8fbff 100%);border-bottom:1px solid #0000000f}.pricing-base-info{justify-content:space-between;align-items:flex-start;gap:var(--space-6);display:flex}.pricing-base-title{font-size:var(--font-size-3xl);letter-spacing:-.02em;color:var(--text);margin-bottom:var(--space-2);font-weight:600}.pricing-base-desc{font-size:var(--font-size-base);color:var(--text-muted);max-width:420px;margin-bottom:0;line-height:1.6}.pricing-base-price-block{text-align:right;flex-shrink:0}.pricing-base-amount-row{align-items:baseline;gap:var(--space-1);display:flex}.pricing-base-amount{font-size:var(--font-size-4xl);letter-spacing:-.02em;color:var(--text);font-weight:600;line-height:1}.pricing-base-period{font-size:var(--font-size-xl);color:var(--text-muted);font-weight:500}.addon-section{padding:var(--space-8)var(--space-10);background:#fafafc;border-bottom:1px solid #0000000f}.addon-card-skeleton{border:2px solid var(--border);padding:var(--space-5)var(--space-6);align-items:center;gap:var(--space-4);background:#fff;border-radius:20px;display:flex}.skeleton-line{border-radius:var(--radius-md);background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.addon-section-title{font-size:var(--font-size-2xl);letter-spacing:-.02em;color:var(--text);margin-bottom:var(--space-2);font-weight:600}.addon-section-desc{font-size:var(--font-size-base);color:var(--text-muted);margin-bottom:var(--space-6)}.addon-cards-grid{gap:var(--space-4);flex-direction:column;display:flex}.product-selection-error{font-size:var(--font-size-xs);color:var(--error);min-height:1.2em;margin-top:var(--space-2);display:block}.addon-card{border:2px solid var(--border);padding:var(--space-5)var(--space-6);cursor:pointer;align-items:center;gap:var(--space-4);isolation:isolate;background:#fff;border-radius:20px;transition:border-color .2s,background-color .2s;display:flex;position:relative}.addon-card:before{content:"";border-radius:inherit;background:radial-gradient(circle at top right,var(--addon-glow,#0071e324)0%,transparent 34%),linear-gradient(180deg,var(--addon-bg,#fff)0%,#fff 100%);z-index:-1;position:absolute;top:0;bottom:0;left:0;right:0}.addon-card[data-addon-key=CarostockAddon]{--addon-accent:#0071e3;--addon-bg:#f4f9ff;--addon-glow:#0071e329}.addon-card[data-addon-key=InvoiceAddon]{--addon-accent:#8b5cf6;--addon-bg:#f7f3ff;--addon-glow:#8b5cf629}.addon-card[data-addon-key=WebsiteAddon]{--addon-accent:#d58c1b;--addon-bg:#fff8ea;--addon-glow:#d58c1b2e}.addon-card:hover{border-color:#1d1d1f2e}.addon-card.selected{border-color:var(--addon-accent,var(--primary));box-shadow:0 22px 40px -30px var(--addon-glow,#0071e329)}.addon-check-circle{border:1px solid var(--border);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:background-color .2s,border-color .2s;display:flex}.addon-check-circle svg{color:#fff;opacity:0;width:14px;height:14px;transition:opacity .2s}.addon-card.selected .addon-check-circle{background:var(--addon-accent,var(--primary));border-color:var(--addon-accent,var(--primary))}.addon-card.selected .addon-check-circle svg{opacity:1}.addon-card-title{font-size:var(--font-size-lg);color:var(--text);margin-bottom:var(--space-1);font-weight:600}.addon-card-content{flex:1;min-width:0}.addon-card-desc{font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:var(--space-3);line-height:1.5}.addon-card-price{font-size:var(--font-size-lg);color:var(--text);font-weight:600}.pricing-total-section{padding:var(--space-8)var(--space-10);justify-content:space-between;align-items:center;gap:var(--space-8);background:linear-gradient(#fafafc 0%,#f4f8ff 100%);display:flex}.pricing-total-label{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:var(--space-1);font-weight:600;display:block}.pricing-total-amount-row{align-items:baseline;gap:var(--space-1);display:flex}.pricing-total-amount{font-size:var(--font-size-5xl);letter-spacing:-.02em;color:var(--text);font-weight:600;line-height:1}.pricing-total-period{font-size:var(--font-size-xl);color:var(--text-muted);font-weight:500}.pricing-total-setup-note{font-size:var(--font-size-sm);color:var(--text-light);margin-top:var(--space-1)}.pricing-total-ex-vat{font-size:var(--font-size-sm);color:var(--text-light)}@media (max-width:768px){.pricing-base-section{padding:var(--space-6)}.pricing-base-info{flex-direction:column}.pricing-base-price-block{text-align:left}.addon-section{padding:var(--space-6)}.pricing-total-section{padding:var(--space-6);text-align:left;flex-direction:column;align-items:stretch}}.form-card{padding:var(--space-10);background:#fff;border:none;border-radius:24px;transition:box-shadow .3s;overflow:hidden;box-shadow:0 12px 40px #00000014,0 4px 12px #0000000a}.form-card:hover{box-shadow:0 16px 48px #0000001a,0 4px 12px #0000000a}.form-card-title{font-size:var(--font-size-2xl);color:var(--text);margin-bottom:var(--space-2);font-weight:700}.form-card-desc{font-size:var(--font-size-base);color:var(--text-muted);margin-bottom:var(--space-8)}.form-grid{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-group.full-width{grid-column:1/-1}.form-group label{font-size:var(--font-size-sm);color:var(--text);font-weight:500}.form-group input{padding:var(--space-4)var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--text);background:#fff;outline:none;transition:border-color .2s,box-shadow .2s}.form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1e40af1a}.form-group input.error{border-color:var(--error)}.form-group .error-message{font-size:var(--font-size-xs);color:var(--error)}@media (max-width:768px){.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:auto}}@media (max-width:480px){.form-card{padding:var(--space-6)}.input-with-button{flex-direction:column}.input-with-button .fetch-btn{width:100%}.form-card .purchase-actions{margin:var(--space-8)calc(-1*var(--space-6))calc(-1*var(--space-6));padding:var(--space-4)var(--space-6)}.usage-prices-header,.usage-prices-table th,.usage-prices-table td{padding-left:var(--space-4);padding-right:var(--space-4)}.usage-prices-title{font-size:var(--font-size-lg)}}.input-with-button{gap:var(--space-3);display:flex}.input-with-button input{flex:1}.fetch-btn{padding:var(--space-4)var(--space-8);border-radius:var(--radius-lg);background:var(--primary);color:#fff;font-size:var(--font-size-base);font-weight:600;font-family:var(--font-family);cursor:pointer;white-space:nowrap;border:none;transition:background-color .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}.fetch-btn:hover{background:var(--primary-dark);box-shadow:var(--shadow);transform:translateY(-1px)}.fetch-btn:active{box-shadow:none;transform:translateY(0)}.fetch-btn:disabled{opacity:.6;cursor:not-allowed}.org-fetch-error{font-size:var(--font-size-xs);color:var(--error);min-height:1.2em;display:block}.company-info-display{margin-top:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);background:#fff;animation:.35s cubic-bezier(.4,0,.2,1) slideDown}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-8px)}to{opacity:1;max-height:300px;transform:translateY(0)}}.company-info-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);color:var(--primary);font-weight:600;font-size:var(--font-size-sm);display:flex}.company-info-header svg{flex-shrink:0;width:20px;height:20px}.company-info-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.company-info-field{gap:var(--space-1);flex-direction:column;display:flex}.company-info-label{font-size:var(--font-size-xs);color:var(--text-light);font-weight:500}.company-info-value{font-size:var(--font-size-sm);color:var(--text);font-weight:500}@media (max-width:480px){.company-info-grid{grid-template-columns:1fr}}.payment-summary{margin-bottom:var(--space-10);flex-direction:column;display:flex}.payment-summary-row{padding:var(--space-3)0;border-bottom:1px solid var(--border-light);font-size:var(--font-size-base);color:var(--text-muted);justify-content:space-between;display:flex}.payment-summary-row span:last-child{color:var(--text);font-weight:600}.payment-summary-total{padding-top:var(--space-6);color:var(--text);font-weight:700;font-size:var(--font-size-xl);border-bottom:none;align-items:baseline}.payment-summary-total span:last-child{font-size:var(--font-size-4xl);letter-spacing:-.02em;font-weight:700}.payment-summary-stripe-indicator{padding-top:var(--space-2);font-size:var(--font-size-xs);color:var(--text-light);justify-content:space-between;align-items:center;display:flex}.payment-summary-stripe-indicator span:last-child{color:var(--text-muted);font-weight:600}.payment-summary-vat{border-bottom:1px solid var(--border-light)}.coupon-section,.payment-mode-note,.usage-prices-section,.card-storage-note{margin-bottom:var(--space-6)}.payment-mode-note{gap:var(--space-2);padding:var(--space-5);background:radial-gradient(circle at 100% 0,#0071e31f 0%,#0000 34%),linear-gradient(#f8fbff 0%,#f2f7ff 100%);border:1px solid #0071e329;border-radius:20px}.payment-mode-note strong{font-size:var(--font-size-base);color:#0b63c6;letter-spacing:-.01em}.payment-mode-note p,.card-storage-note{font-size:var(--font-size-sm);color:var(--text-muted);margin:0;line-height:1.7}.usage-prices-card{background:linear-gradient(#fff 0%,#fafcff 100%);border:1px solid #0f172a14;border-radius:24px;overflow:hidden}.usage-prices-header{padding:var(--space-6);border-bottom:1px solid #0f172a0f}.usage-prices-eyebrow{margin:0 0 var(--space-2);letter-spacing:.12em;text-transform:uppercase;color:#0b63c6;font-size:.74rem;font-weight:700}.usage-prices-title{font-size:var(--font-size-xl);color:var(--text);letter-spacing:-.02em;margin:0;font-weight:700}.usage-prices-description{margin:var(--space-2)0 0;font-size:var(--font-size-sm);color:var(--text-muted);line-height:1.7}.usage-prices-table{border-collapse:collapse;width:100%}.usage-prices-table th,.usage-prices-table td{padding:14px var(--space-6);text-align:left}.usage-prices-table th{letter-spacing:.08em;text-transform:uppercase;color:var(--text-light);background:#f8fafce6;font-size:.78rem;font-weight:700}.usage-prices-table td{font-size:var(--font-size-sm);color:var(--text);border-top:1px solid #0f172a0f}.usage-prices-table th:last-child,.usage-prices-table td:last-child{text-align:right;white-space:nowrap}.usage-prices-table td:last-child{font-weight:700}.coupon-message{font-size:var(--font-size-xs);min-height:1.2em;display:block}.coupon-message.success{color:var(--success)}.coupon-message.error{color:var(--error)}.stripe-element-wrapper{margin-bottom:var(--space-6)}#stripe-payment-element{margin-bottom:var(--space-2)}#stripe-payment-element .StripeElement{transition:border-color .2s}.stripe-error{font-size:var(--font-size-xs);color:var(--error);margin-top:var(--space-2);min-height:1.2em}.payment-terms{font-size:var(--font-size-xs);color:var(--text-light);text-align:center;line-height:1.5}.purchase-actions{justify-content:space-between;align-items:center;gap:var(--space-4);display:none}.purchase-actions.visible{display:flex}.form-card .purchase-actions{margin:var(--space-10)calc(-1*var(--space-10))calc(-1*var(--space-10));padding:var(--space-5)var(--space-10);background:var(--surface);border-top:1px solid var(--border-light)}.form-card .purchase-actions .purchase-btn-next{width:auto;font-size:var(--font-size-base);padding:var(--space-4)var(--space-6);box-shadow:none;border-radius:14px}.purchase-btn-next{padding:var(--space-5)var(--space-10);background:var(--primary);color:#fff;border-radius:var(--radius-xl);font-size:var(--font-size-xl);cursor:pointer;font-weight:600;font-family:var(--font-family);border:none;flex-shrink:0;width:100%;max-width:320px;transition:background-color .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 14px #0071e333}.purchase-btn-next:hover{background:var(--primary-dark);box-shadow:0 6px 20px #0071e34d}.purchase-btn-next:active{box-shadow:none;transform:translateY(0)}.purchase-btn-next:disabled{opacity:.5;cursor:not-allowed}.purchase-btn-next.loading{color:#0000;position:relative}.purchase-btn-next.loading:after{content:"";border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;margin:-10px 0 0 -10px;animation:.6s linear infinite spin;position:absolute;top:50%;left:50%}@keyframes spin{to{transform:rotate(360deg)}}.purchase-btn-back{padding:var(--space-4)var(--space-6);color:var(--primary);font-size:var(--font-size-base);cursor:pointer;font-weight:600;font-family:var(--font-family);background:0 0;border:none;border-radius:14px;transition:color .2s cubic-bezier(.4,0,.2,1),background-color .2s cubic-bezier(.4,0,.2,1)}.purchase-btn-back:hover{background:var(--surface-2)}.purchase-success{padding:var(--space-10)var(--space-5);box-sizing:border-box;justify-content:center;width:100%;display:flex}.success-card{background:var(--background);padding:56px var(--space-12);text-align:center;box-sizing:border-box;opacity:0;border:none;border-radius:24px;width:100%;max-width:560px;animation:.8s cubic-bezier(.16,1,.3,1) forwards premiumFadeIn;transform:translateY(20px)scale(.98);box-shadow:0 4px 20px #00000008,0 12px 48px #0000000f}@keyframes premiumFadeIn{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.success-badge{width:80px;height:80px;margin:0 auto var(--space-8);background:#e8f2fc;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 0 0 8px #0071e30d,0 12px 24px #0071e31a}.success-badge svg{width:36px;height:36px;color:var(--primary);stroke-dasharray:100;stroke-dashoffset:100px;animation:.8s cubic-bezier(.16,1,.3,1) .2s forwards drawCheck}@keyframes drawCheck{to{stroke-dashoffset:0}}.success-title{color:var(--text);letter-spacing:-.015em;margin:0 0 var(--space-3)0;font-size:32px;font-weight:700}.success-message{color:var(--text-light);letter-spacing:-.022em;margin:0 0 var(--space-10)0;font-size:17px;font-weight:400;line-height:1.47059}.success-info-premium{background:var(--surface);border-radius:var(--radius-xl);padding:var(--space-5);align-items:center;gap:var(--space-4);text-align:left;margin-bottom:var(--space-10);transition:background .2s;display:flex}.success-info-premium:hover{background:#ebebef}.info-icon-circle{background:var(--background);width:40px;height:40px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 8px #0000000a}.info-icon-circle svg{width:20px;height:20px}.info-text-group{flex-direction:column;gap:2px;display:flex}.info-text-group strong{color:#1d1d1f;letter-spacing:-.01em;font-size:15px;font-weight:600}.info-text-group span{font-size:var(--font-size-sm);color:#515154;line-height:1.4}.success-btn-premium{background:var(--primary);width:100%;color:var(--background);padding:var(--space-4)var(--space-6);box-sizing:border-box;border-radius:14px;font-size:17px;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:block}.success-btn-premium:hover{background:var(--primary-dark);transform:scale(.98)}.success-btn-premium:active{transform:scale(.96)}@media (max-width:480px){.success-card{border-radius:20px;padding:40px 24px}.success-title{font-size:28px}.success-badge{width:72px;height:72px}.success-badge svg{width:32px;height:32px}}

