.order-request-page{padding:36px 20px 64px;background:linear-gradient(180deg,#faf8ff,#fff);color:var(--navy)}
.order-request-shell{width:100%;max-width:680px;margin:0 auto;min-width:0}
.order-request-heading{margin:24px 0;text-align:right}
.order-request-heading h1{font-size:clamp(25px,4vw,34px);line-height:1.5;margin:0 0 10px}
.order-request-heading p{margin:0;color:var(--gray);font-size:14px;line-height:1.9}
.order-request-card,.order-request-result{background:#fff;border:1px solid var(--g200);border-radius:20px;padding:28px;box-shadow:0 12px 40px rgba(40,23,71,.05)}
.order-request-note{margin:0 0 24px;color:var(--gray);font-size:13px;line-height:1.8}
.order-request-card form,.order-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.order-request-card .fg{display:flex;flex-direction:column;gap:8px;margin:0;min-width:0}
.order-request-card .fg label{margin:0;color:var(--navy);font-size:13px;font-weight:700;line-height:1.7}
.order-request-card .fg input,.order-request-card .fg select,.order-request-card .fg textarea{width:100%;min-width:0;border:1px solid var(--g200);border-radius:11px;background:#fff;color:var(--navy);padding:12px 14px;font:inherit;font-size:16px;min-height:48px;line-height:1.6}
.order-request-card .fg textarea{min-height:110px;resize:vertical}
.order-request-card .fg :is(input,select,textarea):focus{outline:2px solid var(--blue2);outline-offset:2px}
.order-request-card .field-err{color:#b42318;font-size:12px;line-height:1.8}
.order-request-card .field-err:empty,.order-request-card .validation-summary-valid{display:none}
.order-request-card .form-err{margin:0;color:#b42318;background:#fff5f5;border-radius:10px;font-size:13px}
.order-request-card .form-err ul{padding:12px 24px;margin:0}
.order-request-card .captcha-wrap{gap:12px;padding:12px;border-radius:11px}
.order-request-card .captcha-question{gap:10px;min-width:0;flex-wrap:wrap;width:100%}
.order-request-card .fg .captcha-answer{width:160px !important;min-width:140px;flex:1 0 140px;text-align:center;direction:ltr;font-size:20px;letter-spacing:3px}
.order-request-card .captcha-brand{display:none}
.order-request-card .fsub{margin:4px 0 0;min-height:50px;border-radius:12px;font-size:15px}
.order-request-card .form-privacy-note{margin:0;font-size:11px;line-height:1.9;color:var(--gray)}
.order-request-result{text-align:center;display:grid;gap:16px}
.order-request-result h2{font-size:22px;margin:0;line-height:1.6}
.order-request-result p{margin:0;font-size:14px;line-height:1.8}
.order-success-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#ecfdf3;color:#067647;font-size:28px;justify-self:center}
.order-request-status{background:#f5efff;color:var(--blue2);padding:8px 16px;border-radius:10px;justify-self:center}
@media(max-width:480px){.order-request-page{padding:24px 16px 40px}.order-request-card,.order-request-result{padding:20px}.order-request-heading{margin:20px 0}.order-request-card form,.order-fields{gap:18px}}

.order-request-heading h1{letter-spacing:-.5px}.order-request-card{padding:32px;border-radius:24px}
.order-form-intro{display:flex;align-items:center;gap:12px;margin-bottom:26px;padding-bottom:20px;border-bottom:1px solid var(--g200)}
.order-form-intro p{margin:0;font-size:13px;color:var(--gray);line-height:1.9}
.order-form-mark{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:11px;background:#f3edff;color:var(--blue2);font-weight:700}
.order-plan-summary{padding:24px;background:linear-gradient(120deg,#f9f5ff,#f2edff);border:1px solid #e5d9ff;border-radius:18px;display:grid;gap:16px}
.order-plan-summary-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.order-plan-badge{font-size:12px;color:var(--blue2);font-weight:700}.order-plan-term{font-size:12px;background:#fff;padding:5px 12px;border-radius:20px;color:var(--navy)}
.order-plan-summary h2{font-size:21px;line-height:1.6;margin:0;color:var(--navy)}
.order-price-summary{margin:0;padding-top:16px;border-top:1px solid #e3d8f5}.order-price-summary>div{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.order-price-summary dt{color:var(--gray);font-size:13px}.order-price-summary dd{margin:0;color:var(--blue2);font-size:22px;font-weight:800;line-height:1.7}
.order-plan-summary p{font-size:12px;line-height:1.9;margin:0;color:var(--gray)}
.order-form-section{font-size:16px;line-height:1.7;margin:6px 0 0;padding-bottom:12px;border-bottom:1px solid var(--g200)}
@media(max-width:480px){.order-request-card{padding:20px}.order-plan-summary{padding:18px}.order-price-summary dd{font-size:20px}}

.order-referrer-chip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:12px 16px;background:var(--surface-soft,#f5f0ff);border:1px solid var(--border,#e8def8);border-radius:14px}.order-referrer-chip[hidden]{display:none}.order-price-final{border-top:1px solid #e3d8f5;padding-top:14px;margin-top:8px}.order-plan-summary ul{margin:10px 0;padding-inline-start:18px;line-height:1.8}.order-plan-summary #orderDiscountNotice:empty{display:none}

.order-request-card [data-order-quote]{border:1px solid var(--blue2);background:#fff;color:var(--blue2);border-radius:12px;padding:10px 16px;min-height:42px;font:inherit;font-size:13px;cursor:pointer}.order-request-card [data-order-quote]:hover{background:var(--surface-soft)}.order-request-card [data-order-quote]:focus-visible{outline:2px solid var(--blue2);outline-offset:3px}.order-referrer-chip [data-order-quote]{min-inline-size:92px;white-space:nowrap;flex-shrink:0}.order-price-summary>div+div{margin-top:10px}

/* Receipt and fields remain in one form; the receipt stays visible while the document scrolls. */
.order-request-shell{max-width:1080px}.order-request-layout{display:grid;grid-template-columns:minmax(280px,350px) minmax(0,1fr);align-items:start;gap:26px;position:relative}.order-receipt{position:sticky;top:100px;align-self:start;min-width:0}.order-form-fields{display:grid;gap:20px;min-width:0}.order-form-fields .order-form-intro{margin:0}.order-request-result{max-width:680px;margin-inline:auto}.order-receipt .order-plan-summary{position:relative;box-shadow:0 12px 35px #31156008;background:linear-gradient(160deg,#fff,#f6f0ff);border-radius:20px;border-top:4px solid var(--blue2);padding:24px}.order-receipt .order-plan-summary:after{content:'';display:block;border-top:2px dashed #ded1f3;padding-bottom:2px}.order-receipt .order-price-summary>div{gap:10px}.order-receipt .order-price-summary dd{font-size:18px}.order-receipt .order-price-final dd{font-size:22px}.order-receipt .order-plan-summary ul:empty{display:none}.order-receipt h2{font-size:22px}.order-receipt #orderDiscountComponents{font-size:12px}
@media(max-width:760px){.order-request-layout{display:flex;flex-direction:column;gap:18px}.order-form-fields{width:100%}.order-receipt{width:100%;top:76px;z-index:15}.order-receipt .order-plan-summary{padding:12px 16px;gap:6px;border-radius:14px;box-shadow:0 5px 24px #31156018}.order-receipt .order-plan-summary-head{float:none}.order-receipt .order-plan-badge{font-size:10px}.order-receipt .order-plan-term{font-size:10px;padding:2px 8px}.order-receipt h2{font-size:15px}.order-receipt .order-price-summary{padding-top:6px}.order-receipt .order-price-summary>div{margin-top:0}.order-receipt .order-price-summary dt{font-size:11px}.order-receipt .order-price-summary dd{font-size:12px;line-height:1.6}.order-receipt .order-price-final{padding-top:5px;margin-top:4px!important}.order-receipt .order-price-final dd{font-size:15px}.order-receipt #orderDiscountComponents{display:none}.order-receipt #orderDiscountNotice{font-size:10px;line-height:1.5}.order-receipt .order-plan-summary>p:last-of-type{font-size:10px;line-height:1.5}.order-receipt .order-plan-summary:after{display:none}.order-request-card .fg :is(input,select,textarea){scroll-margin-top:340px}.order-request-heading{margin:12px 0 18px}}
/* Scope overflow to the form page so the viewport, not a non-scrolling main, owns sticky positioning. */
body:has(.order-request-layout){overflow-x:clip}
.site-main:has(.order-request-layout){overflow:visible}
.order-confirmation-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;align-items:start}.order-confirmation-layout .order-request-result{margin:0;max-width:none}.order-tracking{display:grid;gap:10px;padding:18px;border:1px dashed var(--g200);border-radius:14px;background:#f8f5ff}.order-tracking strong{font-size:21px;letter-spacing:1px;overflow-wrap:anywhere;color:var(--blue2)}.order-tracking small{color:var(--muted)}.order-proforma{padding:26px;background:#fff;border:1px solid var(--g200);border-radius:20px;box-shadow:0 12px 40px #2817470d}.order-proforma header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.order-proforma h2{font-size:21px;margin:10px 0}.order-invoice-meta{display:grid;gap:12px;padding-block:18px;border-block:1px solid var(--g200)}.order-invoice-meta>div{display:flex;justify-content:space-between;gap:20px}.order-invoice-meta dd{margin:0;overflow-wrap:anywhere}.order-invoice-meta dt{color:var(--muted)}.order-invoice-plan{display:flex;justify-content:space-between;gap:14px;padding-block:16px}.order-proforma .order-price-summary dd{font-size:19px}.order-invoice-content>p{font-size:13px;line-height:1.9}.order-invoice-content>button{width:100%}@media(max-width:760px){.order-confirmation-layout{grid-template-columns:1fr}.order-proforma{padding:20px}}.order-invoice-letterhead{display:none}
@media print{
  @page{size:A4 portrait;margin:0}
  html,body.site-body{margin:0!important;padding:0!important;min-height:0;background:#fff}
  body>*{display:none!important}
  body>main.site-main{display:block!important;min-height:0;padding:0;overflow:visible;isolation:auto}
  .site-main>*:not(.order-request-page),.breadcrumb,.order-request-heading,.order-request-result,[data-order-print]{display:none!important}
  .order-request-page,.order-request-shell,.order-confirmation-layout{display:block;width:auto;max-width:none;margin:0;padding:0;background:none}
  .order-proforma{margin:0;padding:48mm 14mm 30mm;border:0;border-radius:0;box-shadow:none;background:transparent;color:#211747;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  /* A real image prints even when browser background graphics are disabled.
     Invoice padding reserves space for the logo and contact details. */
  .order-invoice-letterhead{display:block;position:fixed;top:0;left:0;width:210mm;height:297mm;max-width:none;z-index:0;pointer-events:none}
  .order-invoice-content{position:relative;z-index:1;font-size:12pt;line-height:1.8}
  .order-proforma header,.order-invoice-meta>div,.order-invoice-plan,.order-price-summary>div,.order-invoice-content>p{break-inside:avoid}
  .order-proforma h2{font-size:20pt}
  .order-proforma .order-price-summary dd{font-size:16pt}
  .order-invoice-content>p{color:#444}
}

.trial-app-downloads{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.trial-app-downloads .btn{min-height:44px}
