.sub-page{height:100vh;height:100dvh;overflow-y:auto;overflow-x:hidden;display:flex;align-items:center;align-items:safe center;justify-content:center;padding:2.5rem 1.25rem;background:var(--bg-body);font-family:var(--font-sans)}.sub-card{width:100%;max-width:440px;background:var(--bg-surface);border:1px solid var(--border);border-radius:16px;padding:2.5rem 2.25rem;box-shadow:0 18px 50px rgba(42,18,46,.08);text-align:center}.sub-eyebrow{font-family:var(--font-brand,"Jost",sans-serif);letter-spacing:.34em;text-transform:uppercase;font-size:12px;color:var(--accent);margin-bottom:1rem}.sub-title{font-family:var(--font-display);font-weight:500;font-size:30px;color:var(--text-primary);margin-bottom:.5rem}.sub-sub{font-size:14px;font-weight:300;color:var(--text-secondary);line-height:1.6;margin-bottom:1.75rem}.sub-plan{border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;text-align:left;background:var(--fig-wash)}[data-theme=dark] .sub-plan{background:rgba(185,143,168,.08)}.sub-plan-name{font-family:var(--font-brand,"Jost",sans-serif);text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--accent);margin-bottom:.4rem}.sub-price{font-family:var(--font-display);color:var(--text-primary);margin-bottom:1rem}.sub-price span{font-size:40px;font-weight:600}.sub-alpha{display:inline-block;font-family:var(--font-brand,"Jost",sans-serif);font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--accent);background:rgba(120,90,110,.12);border:1px solid var(--border);border-radius:100px;padding:3px 10px;margin:0 0 .9rem}.sub-feats{list-style:none;display:flex;flex-direction:column;gap:.6rem;padding:0;margin:0}.sub-feats li{position:relative;padding-left:1.5rem;font-size:14px;color:var(--text-secondary);line-height:1.5}.sub-feats li:before{content:"\2713";position:absolute;left:0;color:var(--accent);font-weight:700}.sub-btn{width:100%;background:var(--fig);color:#fff;border:none;border-radius:10px;padding:.9rem 1rem;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,transform .15s}.sub-btn:hover:not(:disabled){background:var(--fig-deep);transform:translateY(-1px)}.sub-btn:disabled{opacity:.6;cursor:default}[data-theme=dark] .sub-btn{background:var(--fig-soft);color:var(--fig-deep)}.sub-link{display:block;margin:1.1rem auto 0;background:none;border:none;color:var(--text-muted);font-size:13px;cursor:pointer}.sub-link:hover{color:var(--text-primary);text-decoration:underline}.sub-err{font-size:13px;color:#a32d2d;background:rgba(163,45,45,.06);border:1px solid rgba(163,45,45,.2);border-radius:8px;padding:.6rem .8rem;margin-bottom:1rem}.sub-note{margin-top:1rem;line-height:1.5}.sub-note,.sub-skip{font-size:12px;color:var(--text-muted)}.sub-skip{display:block;margin:.9rem auto 0;background:none;border:none;text-decoration:underline;cursor:pointer}.sub-skip:hover{color:var(--text-secondary)}.sub-seg{display:flex;gap:6px;background:var(--bg-chip);border:1px solid var(--border);border-radius:10px;padding:4px;margin-bottom:1.25rem}.sub-seg-btn{flex:1 1;padding:.6rem;border:none;background:none;border-radius:7px;font-size:14px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.sub-seg-btn.on{background:var(--fig);color:#fff}.sub-field{display:block;text-align:left;margin-bottom:.9rem}.sub-field>span{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:.35rem}.sub-field>span small{font-weight:400;color:var(--text-muted)}.sub-input{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:9px;padding:.7rem .8rem;font-size:14px;color:var(--text-primary);font-family:inherit}.sub-input:focus{outline:none;border-color:var(--accent)}.sub-seats{display:flex;align-items:center;gap:8px}.sub-step{width:42px;height:42px;flex:none;border:1px solid var(--border);border-radius:9px;background:var(--bg-surface);color:var(--text-primary);font-size:18px;line-height:1;cursor:pointer;transition:border-color .15s}.sub-step:hover{border-color:var(--accent)}.sub-seats-in{text-align:center}.sub-total{text-align:left;font-family:var(--font-display);font-size:24px;font-weight:600;color:var(--text-primary);margin:1.1rem 0 1.25rem}.sub-total small{font-family:var(--font-sans);font-size:13px;font-weight:400;color:var(--text-muted);margin-left:.4rem}@media (max-width:600px){.sub-input{font-size:16px}.sub-seg-btn{min-height:44px;padding:.75rem .6rem}}