/* ===== Bullish · Software + Video pages (Oct 28 2026) ===== */
.swp{--pa:#4A3DBB;--pa-soft:#EAE7FF;--lime:#B8E62E;--lime-soft:#F2F9D9;--ink:#12102E;--glass:rgba(255,255,255,.72)}
.swp.p-huddle{--pa:#4A3DBB;--pa-soft:#EAE7FF}
.swp.p-photo{--pa:#6E9A0C;--pa-soft:#EEF7D2}
.swp.p-skrappy{--pa:#1B4FD8;--pa-soft:#E3EBFF}
.swp.p-shelf{--pa:#13917F;--pa-soft:#DDF6F1}
.swp.p-video{--pa:#D9453B;--pa-soft:#FDE6E3}

/* hero */
.sw-hero{padding:84px 0 92px;position:relative;overflow:hidden;background:radial-gradient(900px 520px at 88% 8%,var(--pa-soft) 0%,rgba(255,255,255,0) 70%),radial-gradient(700px 480px at 6% 100%,var(--lime-soft) 0%,rgba(255,255,255,0) 70%)}
.sw-hero .wrap{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.sw-hero .wrap>*{min-width:0}
.sw-hero h1{font-size:clamp(40px,5vw,68px)}
.sw-hero h1 span{display:block}
.sw-hero .lead{margin-top:22px}
.sw-hero .cta-row{margin-top:32px}
.sw-badge{display:inline-flex;align-items:center;gap:10px;margin-bottom:20px;padding:6px 14px 6px 6px;border-radius:999px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);font-weight:700;font-size:14px;color:var(--ink)}
.sw-badge i{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(135deg,var(--pa),color-mix(in srgb,var(--pa) 60%,#fff));color:#fff}
.sw-badge i svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.sw-note{margin-top:22px;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14.5px;font-weight:600;color:var(--ink2)}
.sw-note span{display:inline-flex;align-items:center;gap:8px}
.sw-note span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px var(--lime-soft)}
@media (max-width:960px){.sw-hero .wrap{grid-template-columns:1fr;gap:44px}.sw-hero{padding:48px 0 64px}}

/* stage = soft glass backdrop that holds a device */
.swstage{position:relative;border-radius:32px;padding:34px;background:linear-gradient(150deg,rgba(255,255,255,.9),rgba(255,255,255,.55));border:1px solid rgba(255,255,255,.9);box-shadow:0 40px 90px -40px rgba(18,16,46,.4),inset 0 1px 0 #fff;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);min-height:520px;display:grid;place-items:center;overflow:hidden}
.swstage::before{content:"";position:absolute;inset:-30%;background:radial-gradient(closest-side,color-mix(in srgb,var(--pa) 22%,transparent),transparent 70%) 70% 20%/60% 60% no-repeat,radial-gradient(closest-side,rgba(184,230,46,.28),transparent 70%) 20% 90%/55% 55% no-repeat;animation:stDrift 18s ease-in-out infinite alternate;pointer-events:none}
@keyframes stDrift{to{transform:translate(4%,-3%) rotate(6deg)}}
.swstage>*{position:relative}
@media (max-width:560px){.swstage{padding:18px;min-height:0;border-radius:24px}}

/* phone mock */
.ph{width:290px;max-width:100%;aspect-ratio:9/18.5;border-radius:44px;background:#fff;border:9px solid #12102E;box-shadow:0 30px 60px -24px rgba(18,16,46,.55);position:relative;overflow:hidden;display:flex;flex-direction:column}
.ph::before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:84px;height:22px;border-radius:14px;background:#12102E;z-index:5}
.ph-status{display:flex;justify-content:space-between;padding:12px 22px 0;font-size:12px;font-weight:800;color:var(--ink)}
.ph-body{flex:1;padding:30px 18px 18px;display:flex;flex-direction:column;gap:12px;position:relative}
.ph-k{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.ph-h{font-size:21px;font-weight:800;letter-spacing:-.02em;line-height:1.12;color:var(--ink)}
.ph-card{background:#F7F7FA;border:1px solid var(--line);border-radius:16px;padding:12px 14px;font-size:13.5px;font-weight:600;color:var(--ink)}
.ph-btn{margin-top:auto;border-radius:14px;padding:14px;text-align:center;font-weight:800;font-size:14.5px;background:var(--ink);color:#fff}

/* browser window mock */
.win{width:100%;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:0 30px 70px -30px rgba(18,16,46,.45);overflow:hidden}
.win-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:1px solid var(--line);background:#FAFAFC}
.win-bar i{width:10px;height:10px;border-radius:50%;background:#E1E1E7}
.win-bar span{margin-left:10px;font-size:12.5px;font-weight:700;color:var(--ink3);background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px 12px}
.win-body{padding:22px}

/* floating chips around a device */
.chip{position:absolute;z-index:4;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid #fff;border-radius:16px;padding:11px 15px;box-shadow:0 18px 40px -18px rgba(18,16,46,.45);display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--ink2);white-space:nowrap}
.chip b{display:block;font-size:15.5px;font-weight:800;color:var(--ink);letter-spacing:-.01em}
.chip .dot{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;flex:0 0 30px;background:var(--pa-soft);color:var(--pa)}
.chip .dot svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.chip.lime .dot{background:var(--lime-soft);color:#5E8508}
@media (max-width:560px){.chip{display:none}}

/* loop choreography: containers with [data-loop] get .on toggled each cycle */
.pop{opacity:0;transform:translateY(10px) scale(.96)}
.on .pop{animation:popIn .55s cubic-bezier(.2,.8,.2,1.2) forwards;animation-delay:var(--d,0s)}
@keyframes popIn{to{opacity:1;transform:none}}
.fade{opacity:0}
.on .fade{animation:fadeIn .6s ease forwards;animation-delay:var(--d,0s)}
@keyframes fadeIn{to{opacity:1}}
.tick{width:20px;height:20px;border-radius:50%;border:2px solid #D3D3DC;display:inline-grid;place-items:center;flex:0 0 20px;transition:none}
.tick svg{width:12px;height:12px;fill:none;stroke:#fff;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.on .tick{animation:tickOn .35s ease forwards;animation-delay:var(--d,0s)}
.on .tick svg{animation:fadeIn .2s ease forwards;animation-delay:var(--d,0s)}
@keyframes tickOn{to{background:#5BAA2E;border-color:#5BAA2E}}
.press{transition:none}
.on .press{animation:press .5s ease forwards;animation-delay:var(--d,0s)}
@keyframes press{40%{transform:scale(.95)}100%{transform:none;background:var(--press,#5BAA2E)}}
.tap-hand{position:absolute;width:36px;height:36px;border-radius:50%;background:rgba(18,16,46,.18);border:2px solid rgba(255,255,255,.9);box-shadow:0 6px 16px rgba(18,16,46,.25);opacity:0;pointer-events:none;z-index:6}
.on .tap-hand{animation:tap 1.1s ease forwards;animation-delay:var(--d,0s)}
@keyframes tap{0%{opacity:0;transform:translate(30px,40px) scale(1.2)}40%{opacity:1;transform:none scale(1)}60%{transform:scale(.8)}100%{opacity:0;transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.pop,.fade{opacity:1;transform:none;animation:none!important}.swstage::before{animation:none}}

/* score ring */
.ring{--v:0;--sz:150px;width:var(--sz);height:var(--sz);position:relative;flex:0 0 var(--sz)}
.ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring circle{fill:none;stroke-width:11;stroke-linecap:round}
.ring .bg{stroke:#EDEDF2}
.ring .fg{stroke:url(#rgGrad);stroke-dasharray:314;stroke-dashoffset:314}
.on .ring .fg{animation:ringFill 1.6s cubic-bezier(.3,.7,.2,1) forwards;animation-delay:var(--d,.2s)}
@keyframes ringFill{to{stroke-dashoffset:calc(314 - 314 * var(--v) / 100)}}
.ring-n{position:absolute;inset:0;display:grid;place-items:center;text-align:center;line-height:1}
.ring-n b{font-size:calc(var(--sz) * .3);font-weight:800;letter-spacing:-.04em;color:var(--ink)}
.ring-n small{display:block;font-size:12px;font-weight:700;color:var(--ink3);margin-top:4px}

/* ===== tour: pinned, timer-driven product walkthrough ===== */
.tour{position:relative;height:200vh}
.tour-pin{position:sticky;top:84px;height:calc(100vh - 84px);min-height:620px;display:flex;align-items:center}
.tour-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:56px;align-items:center;width:100%}
.tour-grid>*{min-width:0}
.tour-head{margin-bottom:26px}
.tour-head h2{font-size:clamp(30px,3.4vw,46px)}
.tour-steps{display:flex;flex-direction:column;gap:10px}
.tstep{all:unset;cursor:pointer;display:block;position:relative;padding:16px 18px 18px 20px;border-radius:18px;border:1px solid transparent;transition:background .3s,border-color .3s,box-shadow .3s;overflow:hidden}
.tstep b{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:800;color:var(--ink3);transition:color .3s}
.tstep b em{font-style:normal;width:28px;height:28px;border-radius:9px;display:grid;place-items:center;font-size:13px;background:#EFEFF4;color:var(--ink3);transition:background .3s,color .3s}
.tstep p{max-height:0;opacity:0;overflow:hidden;margin:0 0 0 40px;font-size:15px;color:var(--ink2);line-height:1.5;transition:max-height .45s ease,opacity .45s ease,margin .45s ease}
.tstep.on{background:rgba(255,255,255,.86);border-color:var(--line);box-shadow:var(--shadow-sm)}
.tstep.on b{color:var(--ink)}
.tstep.on b em{background:var(--pa);color:#fff}
.tstep.on p{max-height:120px;opacity:1;margin-top:8px}
.tstep .bar{position:absolute;left:20px;right:20px;bottom:8px;height:3px;border-radius:3px;background:#EEEEF3;opacity:0}
.tstep.on .bar{opacity:1}
.tstep .bar i{display:block;height:100%;width:0;border-radius:3px;background:linear-gradient(90deg,var(--pa),var(--lime))}
.tstep.on .bar i{animation:barGo var(--dur,5.5s) linear forwards}
.tour.paused .tstep.on .bar i{animation-play-state:paused}
@keyframes barGo{to{width:100%}}
.tour-stage{position:relative;min-height:560px}
.tp{position:absolute;inset:0;display:grid;place-items:center;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility 0s .5s}
.tp.on{opacity:1;visibility:visible;transition:opacity .5s ease}
.tour-stage .swstage{position:absolute;inset:0}
@media (max-width:960px){
  .tour{height:auto}
  .tour-pin{position:relative;top:0;height:auto;min-height:0;display:block;padding:68px 0}
  .tour-grid{grid-template-columns:1fr;gap:28px}
  .tour-stage{min-height:600px}
}
@media (max-width:560px){.tour-stage{min-height:560px}}

/* feature cards */
.ft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ft{position:relative;background:linear-gradient(160deg,#fff,rgba(255,255,255,.7));border:1px solid var(--line);border-radius:22px;padding:30px 26px 28px;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .3s,box-shadow .3s}
.ft:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.ft::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--c,var(--pa))}
.ft::after{content:"";position:absolute;right:-60px;top:-60px;width:160px;height:160px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--c,var(--pa)) 16%,transparent),transparent);pointer-events:none}
.ft .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--c,var(--pa)) 14%,#fff);color:color-mix(in srgb,var(--c,var(--pa)) 80%,#12102E);margin-bottom:20px}
.ft .ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ft h3{font-size:21px;margin-bottom:10px}
.ft p{color:var(--ink2);font-size:15.5px;line-height:1.55}
@media (max-width:960px){.ft-grid{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.ft-grid{grid-template-columns:1fr}}

/* proof band */
.proof{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.proof>*{min-width:0}
.proof .lead{margin-top:18px}
.proof-cards{display:grid;gap:14px}
.pc{display:flex;gap:16px;align-items:flex-start;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:18px 20px;backdrop-filter:blur(8px)}
.pc i{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(184,230,46,.16);color:#B8E62E}
.pc i svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.pc b{display:block;font-size:16.5px;color:#fff;margin-bottom:3px}
.pc span{font-size:14.5px;color:var(--dark-mute)}
.band-ink .cta-row{margin-top:30px}
@media (max-width:960px){.proof{grid-template-columns:1fr;gap:32px}}

/* split rows (hub) */
.prod{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.prod>*{min-width:0}
.prod.flip>:first-child{order:2}
.prod .sw-badge{margin-bottom:16px}
.prod h2{font-size:clamp(30px,3.4vw,46px)}
.prod .lead{margin-top:16px}
.prod ul{list-style:none;padding:0;margin:24px 0 30px;display:grid;gap:10px}
.prod li{display:flex;gap:12px;align-items:flex-start;font-weight:600;color:var(--ink)}
.prod li::before{content:"";flex:0 0 22px;height:22px;margin-top:1px;border-radius:50%;background:var(--pa-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2312102E' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/12px no-repeat}
.prod .swstage{min-height:460px}
@media (max-width:960px){.prod{grid-template-columns:1fr;gap:36px}.prod.flip>:first-child{order:0}}

/* steps row */
.steps4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:st}
.st{position:relative;padding:26px 22px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.st::before{counter-increment:st;content:counter(st);width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-weight:800;font-size:15px;background:var(--ink);color:#B8E62E;margin-bottom:16px}
.st h3{font-size:18.5px;margin-bottom:8px}
.st p{font-size:15px;color:var(--ink2)}
@media (max-width:960px){.steps4{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.steps4{grid-template-columns:1fr}}

/* video embed */
.vid{position:relative;border-radius:26px;overflow:hidden;background:#12102E;box-shadow:0 40px 90px -40px rgba(18,16,46,.6);aspect-ratio:16/9}
.vid img,.vid video,.vid iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
.vid button{all:unset;cursor:pointer;position:absolute;inset:0;display:grid;place-items:center}
.vid button span{width:86px;height:86px;border-radius:50%;background:#B8E62E;display:grid;place-items:center;box-shadow:0 0 0 0 rgba(184,230,46,.6);animation:playPulse 2.4s infinite;transition:transform .25s}
.vid button:hover span{transform:scale(1.08)}
.vid button svg{width:30px;height:30px;fill:#12102E;margin-left:4px}
.vid .cap{position:absolute;left:22px;bottom:20px;color:#fff;font-weight:800;font-size:18px;text-shadow:0 2px 12px rgba(0,0,0,.4);pointer-events:none}
.vid .cap small{display:block;font-size:13px;font-weight:600;opacity:.85}
@keyframes playPulse{70%{box-shadow:0 0 0 22px rgba(184,230,46,0)}100%{box-shadow:0 0 0 0 rgba(184,230,46,0)}}

/* tile row (hub top) */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tile{display:block;text-decoration:none;position:relative;border-radius:24px;padding:26px;background:linear-gradient(160deg,#fff,rgba(255,255,255,.75));border:1px solid var(--line);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .3s,box-shadow .3s}
.tile:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.tile::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--c)}
.tile .ic{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--c),color-mix(in srgb,var(--c) 55%,#fff));margin-bottom:18px;box-shadow:0 12px 24px -12px var(--c)}
.tile .ic svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.tile h3{font-size:22px}
.tile p{margin-top:8px;color:var(--ink2);font-size:15.5px}
.tile em{display:inline-block;margin-top:16px;font-style:normal;font-weight:800;font-size:14.5px;color:var(--ink)}
@media (max-width:860px){.tiles{grid-template-columns:1fr}}

/* small helpers */
.mini-k{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.kv{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.kv div{background:#F7F7FA;border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.kv b{display:block;font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--ink);line-height:1.1}
.kv small{font-size:12px;font-weight:600;color:var(--ink3)}
.dots-cal{display:grid;grid-template-columns:repeat(10,1fr);gap:5px}
.dots-cal i{aspect-ratio:1;border-radius:6px;background:#EEEEF3}
.on .dots-cal i{animation:calOn .3s ease forwards;animation-delay:calc(var(--n) * .06s + .4s)}
.dots-cal i.g{--to:#5BAA2E}.dots-cal i.a{--to:#E9A23B}.dots-cal i.r{--to:#E35D52}.dots-cal i.x{--to:#EEEEF3}
@keyframes calOn{to{background:var(--to)}}
.scale5{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.scale5 span{border:1px solid var(--line);border-radius:10px;padding:9px 0;text-align:center;font-weight:700;font-size:14px;color:var(--ink2);background:#fff}
.on .scale5 span.pick{animation:pick .35s ease forwards;animation-delay:var(--d,0s)}
@keyframes pick{to{background:#12102E;color:#fff;border-color:#12102E}}
.mapbox{height:170px;border-radius:16px;position:relative;overflow:hidden;background:linear-gradient(135deg,#EEF3E4,#E8ECF5);border:1px solid var(--line)}
.mapbox::before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,255,255,.9) 2px,transparent 2px),linear-gradient(rgba(255,255,255,.9) 2px,transparent 2px);background-size:46px 46px,46px 46px;transform:rotate(-12deg) scale(1.4)}
.mapbox .pin{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px;border-radius:50%;background:var(--pa);border:3px solid #fff;box-shadow:0 4px 10px rgba(0,0,0,.25)}
.mapbox .rad{position:absolute;left:50%;top:50%;width:120px;height:120px;margin:-60px;border-radius:50%;background:color-mix(in srgb,var(--pa) 14%,transparent);border:2px dashed color-mix(in srgb,var(--pa) 50%,transparent)}
.on .mapbox .rad{animation:radPulse 2s ease-out infinite}
@keyframes radPulse{0%{transform:scale(.6);opacity:1}100%{transform:scale(1.15);opacity:.35}}
.okline{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:#3D7E1B;background:#EAF6DF;border-radius:12px;padding:10px 12px}
.listck{display:grid;gap:8px}
.listck div{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;color:var(--ink);background:#F7F7FA;border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.lock{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.4;color:var(--ink2);background:#F7F7FA;border:1px solid var(--line);border-radius:14px;padding:10px 12px}
.lock svg{flex:0 0 16px;width:16px;height:16px;fill:none;stroke:#5BAA2E;stroke-width:2.2;margin-top:1px}
.hbar{height:8px;border-radius:8px;background:#EEEEF3;overflow:hidden}
.hbar i{display:block;height:100%;width:0;border-radius:8px;background:linear-gradient(90deg,var(--pa),var(--lime))}
.on .hbar i{animation:hbarGo 1.4s cubic-bezier(.3,.7,.2,1) forwards;animation-delay:var(--d,.3s)}
@keyframes hbarGo{to{width:var(--w)}}

/* photo-to-price */
.snap{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:4/3.4;background:#ddd}
.snap img{width:100%;height:100%;object-fit:cover}
.snap .flash{position:absolute;inset:0;background:#fff;opacity:0}
.on .snap .flash{animation:flash .5s ease forwards;animation-delay:var(--d,.5s)}
@keyframes flash{30%{opacity:.95}100%{opacity:0}}
.snap .scan{position:absolute;left:0;right:0;height:46px;top:-50px;background:linear-gradient(180deg,transparent,rgba(184,230,46,.55),transparent);opacity:0}
.on .snap .scan{animation:scanY 1.6s ease-in-out 2 forwards;animation-delay:var(--d,1.1s)}
@keyframes scanY{0%{top:-50px;opacity:1}100%{top:100%;opacity:1}}
.snap .tag{position:absolute;padding:5px 10px;border-radius:999px;background:rgba(18,16,46,.82);color:#fff;font-size:12px;font-weight:700;backdrop-filter:blur(6px)}
.price{border-radius:16px;padding:14px 16px;background:linear-gradient(135deg,#12102E,#2A2472);color:#fff}
.price small{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#B8E62E}
.price b{display:block;font-size:28px;font-weight:800;letter-spacing:-.03em;margin:2px 0}
.price span{font-size:12.5px;color:#C9C7E0}
.truckbar{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700;color:var(--ink2)}
.truckbar .hbar{flex:1}

/* skrappy */
.sk-gig{border-radius:16px;background:#F5F8FF;border:1px solid #DCE5FB;padding:12px 14px}
.sk-gig b{display:block;font-size:15px;color:var(--ink)}
.sk-gig small{font-size:12.5px;color:var(--ink2);font-weight:600}
.sk-type{font-size:13.5px;font-weight:600;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;min-height:64px;line-height:1.45}
.sk-type .caret{display:inline-block;width:2px;height:15px;background:var(--pa);vertical-align:-2px;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.sk-pro{display:flex;align-items:center;gap:10px;border-radius:14px;padding:10px 12px;background:#fff;border:1px solid var(--line)}
.sk-pro .av{width:36px;height:36px;border-radius:50%;flex:0 0 36px;display:grid;place-items:center;font-weight:800;font-size:13px;color:#fff;background:linear-gradient(135deg,#1B4FD8,#5B83F0)}
.sk-pro div{flex:1;min-width:0}
.sk-pro b{display:block;font-size:13.5px;color:var(--ink)}
.sk-pro small{font-size:11.5px;color:var(--ink3);font-weight:600}
.sk-score{font-weight:800;font-size:13px;color:#1B4FD8;background:#E3EBFF;border-radius:999px;padding:4px 9px}
.sk-badges{display:flex;flex-wrap:wrap;gap:6px}
.sk-badges span{font-size:11.5px;font-weight:700;color:#1B4FD8;background:#E3EBFF;border-radius:999px;padding:4px 9px}
.escrow{border-radius:16px;padding:14px;background:linear-gradient(135deg,#0E2A78,#1B4FD8);color:#fff}
.escrow small{font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;opacity:.8}
.escrow b{display:block;font-size:26px;font-weight:800;letter-spacing:-.03em}
.escrow span{font-size:12.5px;opacity:.85}

/* video page cards */
.vgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.vcard{border-radius:24px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);text-decoration:none;display:block;transition:transform .3s,box-shadow .3s}
.vcard:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.vcard .vid{border-radius:0;box-shadow:none}
.vcard .m{padding:20px 22px 24px}
.vcard .m b{display:block;font-size:20px;font-weight:800;color:var(--ink)}
.vcard .m small{display:block;margin-top:4px;font-size:15px;color:var(--ink2)}
@media (max-width:760px){.vgrid{grid-template-columns:1fr}}

.nav-new-badge{display:inline-block;margin-left:8px;font-size:11px;font-weight:800;letter-spacing:.04em;padding:3px 8px;border-radius:999px;background:#B8E62E;color:#12102E;vertical-align:2px}
/* fixes */
.okline svg,.ph-card svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.sw-hero .swstage{padding:64px 34px 56px}
.tour-stage{min-height:650px}
.tour-stage .ph{width:268px}
.tour .sc-cap{text-align:left;margin-left:4px;color:var(--ink3);font-size:13px}
@media (max-width:960px){.tour-stage{min-height:660px}}
.dots-cal{grid-template-columns:repeat(12,1fr);gap:6px}
.dots-cal i{border-radius:5px}
.ph-body .ph-card{padding:10px 12px}
.tour-stage .ph-h{font-size:19px}
.tour-stage .price b{font-size:24px}
.p-skrappy{--press:#0E3BB0}
.p-photo{--press:#9CCB1F}
