/* Sizes are in px: the store theme sets the root font size to 10px, so rem would shrink everything.
   VoIPTools Subscription purchase page (see assets/buy.js). Only applies once the script has built the page (body.vtb-on). */
.vtb-on #main > .elementor,.vtb-on .page-header,.vtb-on #main > .elementor-location-single{display:none!important}
.vtb-on #content-wrap,.vtb-on #primary,.vtb-on #content{padding:0!important;margin:0!important;width:100%!important;max-width:none!important;float:none!important}
.vtb{--o:#f5a21f;--o2:#d88a0b;--sky:#5db9ea;--blue:#2a7fb5;--leaf:#8cc63f;--navy:#1f2b3b;--ink:#232323;--mute:#646464;--line:#e6e3dc;--bone:#f6f4ef;
  font-family:Figtree,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;background:var(--bone)}
.vtb *{box-sizing:border-box}
.vtb-wrap{width:min(1200px,calc(100% - 40px));margin:0 auto}
.vtb-hero{background:radial-gradient(900px 520px at 0% 0%,rgba(42,127,181,.45),transparent 70%),radial-gradient(800px 500px at 100% 20%,rgba(93,185,234,.25),transparent 70%),var(--navy);color:#fff;padding:72px 0 120px;text-align:center}
.vtb-kicker{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;font-weight:700;font-size:16px;color:#e3e9f0;padding:7px 16px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14)}
.vtb-dia{width:10px;height:10px;transform:rotate(45deg);border-radius:2px;background:var(--o)}
.vtb-hero h1{font-family:inherit;font-size:clamp(32px,4vw,52.8px);line-height:1.08;letter-spacing:-.03em;font-weight:800;color:#fff;margin:0 auto;max-width:24ch;text-transform:none}
.vtb-grad{background:linear-gradient(90deg,var(--o),#ffc766 45%,var(--o));-webkit-background-clip:text;background-clip:text;color:transparent}
.vtb-hero h1 .vtb-grad{display:block}
.vtb-lede{font-size:18.4px;color:#c9d3df;margin:20px auto 0;max-width:34em}
.vtb-main{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start;margin-top:-72px;padding-bottom:96px;position:relative;z-index:2}
.vtb-steps{display:grid;gap:18px}
.vtb-step{margin:0;background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px 26px 24px;box-shadow:0 30px 50px -40px rgba(31,43,59,.5);transition:border-color .2s}
.vtb-step.is-done{border-color:rgba(140,198,63,.6)}
.vtb-step legend{float:left;width:100%;display:flex;align-items:center;gap:12px;font-weight:800;font-size:20px;color:#2b2b2b;margin:0 0 6px;padding:0;letter-spacing:-.01em}
.vtb-num{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--navy);color:#fff;font-size:14.4px;font-weight:800;transition:background .2s}
.vtb-step.is-done .vtb-num{background:var(--leaf);color:var(--navy)}
.vtb-hint{clear:both;margin:0 0 14px 44px;color:var(--mute);font-size:16px}
.vtb-opts{clear:both;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-left:44px}
.vtb-opts--grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}
.vtb-opt{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:14px 16px;border-radius:14px;border:1.5px solid var(--line);background:#fff;font-family:inherit;color:var(--ink);transition:border-color .15s,box-shadow .15s,background .15s;min-height:54px;justify-content:center}
.vtb-opt b{font-weight:800;font-size:17px}
.vtb-opt span{font-size:14.5px;color:var(--mute);line-height:1.4}
.vtb-opts--grid .vtb-opt{align-items:center;text-align:center;padding:12px 6px}
.vtb-opts--grid .vtb-opt b{font-size:19.2px}
.vtb-opt:hover{border-color:var(--sky)}
.vtb-opt:focus-visible{outline:3px solid rgba(93,185,234,.6);outline-offset:2px}
.vtb-opt[aria-pressed="true"]{border-color:var(--blue);background:#eef7fd;box-shadow:inset 0 0 0 1px var(--blue)}
.vtb-opt.is-off{opacity:.4;cursor:not-allowed}
.vtb-sum{position:sticky;top:100px;display:grid;gap:14px}
.vtb-card{background:#fff;border-radius:22px;padding:26px;border:1px solid var(--line);box-shadow:0 40px 70px -40px rgba(31,43,59,.6)}
.vtb-card__k{margin:0 0 12px;font-weight:800;font-size:18.4px;color:#2b2b2b}
.vtb-list{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:0}
.vtb-list li{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-top:1px solid var(--line);font-size:14.7px}
.vtb-list li span{color:var(--mute)}
.vtb-list li b{text-align:right;font-weight:700;color:#2b2b2b}
.vtb-list li b.is-empty{color:#b0aca3;font-weight:500}
.vtb-price{border-radius:14px;background:var(--bone);padding:16px 18px;margin-bottom:16px;min-height:62px;display:flex;flex-direction:column;justify-content:center}
.vtb-price__k{font-size:14.5px;color:var(--mute);font-weight:600}
.vtb-price .price{font-size:30.4px;font-weight:800;color:#2b2b2b;letter-spacing:-.02em;line-height:1.2}
.vtb-price .price .subscription-details{font-size:16px;font-weight:600;color:var(--mute);letter-spacing:0}
.vtb-price__wait{color:var(--mute);font-size:16px}
.vtb-price__wait a{color:var(--blue)}
.vtb-form form.cart{margin:0!important}
.vtb-form table.variations,.vtb-form .reset_variations,.vtb-form .woocommerce-variation,.vtb-form .quantity,.vtb-form .wc-no-matching-variations{display:none!important}
.vtb-form .single_variation_wrap,.vtb-form .woocommerce-variation-add-to-cart{display:block!important;margin:0!important}
.vtb-form .single_add_to_cart_button{display:block!important;width:100%!important;float:none!important;margin:0!important;padding:16px 20px!important;border:0!important;border-radius:999px!important;background:var(--o)!important;color:var(--ink)!important;font:800 16.8px Figtree,system-ui,sans-serif!important;letter-spacing:0!important;text-transform:none!important;box-shadow:0 18px 34px -16px rgba(216,138,11,.75)!important;cursor:pointer;transition:background .2s,opacity .2s}
.vtb-form .single_add_to_cart_button:hover{background:#ffb436!important}
.vtb-form .single_add_to_cart_button.disabled{opacity:.45!important;box-shadow:none!important;cursor:not-allowed}
.vtb-hint b{color:#2b2b2b;font-weight:700}
.vtb-hint a,.vtb-note a{color:#2a7fb5;font-weight:600}
.vtb-note{clear:both;margin:12px 0 0 44px;padding:10px 14px;border-radius:12px;background:#fff6e5;border:1px solid #f6d28f;color:#6b4a07;font-size:14.4px}
.vtb-note[hidden]{display:none}
.vtb-check{margin:0 0 16px;padding:14px 16px;border-radius:14px;background:#eef7fd;border:1px solid #cfe6f6}
.vtb-check__k{margin:0 0 6px;font-weight:800;font-size:14.7px;color:#1d5f8a}
.vtb-check ul{margin:0;padding:0 0 0 18px;display:grid;gap:6px;font-size:14.5px;color:#33495e;line-height:1.45}
.vtb-check b{color:#1f2b3b}
.vtb-agree{display:flex;align-items:flex-start;gap:12px;margin:0 0 14px;padding:14px 16px;border-radius:14px;border:1.5px solid #f6d28f;background:#fff9ee;cursor:pointer;font-size:14.5px;line-height:1.45;color:#3d3420;transition:border-color .2s,background .2s}
.vtb-agree:hover{border-color:#f5a21f}
.vtb.is-agreed .vtb-agree{border-color:rgba(140,198,63,.7);background:#f3f9ea;color:#2f4a12}
.vtb-agree__in{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.vtb-agree__sw{flex:none;position:relative;width:46px;height:26px;margin-top:1px;border-radius:999px;background:#c9c4b8;transition:background .2s}
.vtb-agree__sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.vtb-agree__in:checked+.vtb-agree__sw{background:#6aa22b}
.vtb-agree__in:checked+.vtb-agree__sw::after{transform:translateX(20px)}
.vtb-agree__in:focus-visible+.vtb-agree__sw{outline:3px solid rgba(93,185,234,.6);outline-offset:2px}
.vtb-agree__t b{font-weight:800}
.vtb-agree__t a{color:#2a7fb5;font-weight:600;white-space:nowrap}
.vtb-agree.is-shake{animation:vtbShake .4s}
@keyframes vtbShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.vtb-agree__err{margin:-6px 0 12px;font-size:13.5px;font-weight:700;color:#b32d2e}
.vtb-agree__err[hidden]{display:none}
.vtb:not(.is-agreed) .vtb-form .single_add_to_cart_button{opacity:.55!important;box-shadow:none!important}
.vtb-fine{margin:14px 0 0;font-size:14px;color:var(--mute);line-height:1.5}
.vtb-help{background:var(--navy);color:#e3e9f0;border-radius:18px;padding:18px 22px;display:grid;gap:4px;font-size:14.7px}
.vtb-help b{color:#fff;margin-bottom:2px}
.vtb-help a{color:#9fd6f5;text-decoration:none}
.vtb-help a:hover{color:#fff;text-decoration:underline}
@media (max-width:980px){
  .vtb-main{grid-template-columns:1fr;margin-top:-56px}
  .vtb-sum{position:static}
  .vtb-hero{padding:56px 0 96px}
}
@media (max-width:560px){
  .vtb-wrap{width:calc(100% - 32px)}
  .vtb-step{padding:20px 16px}
  .vtb-hint,.vtb-opts,.vtb-note{margin-left:0}
  .vtb-opts{grid-template-columns:1fr}
  .vtb-opts--grid{grid-template-columns:repeat(3,1fr)}
  .vtb-card{padding:20px}
}
