/* ================================================================
   SeeThru Worship Suite — frontend styles
   Rebuild of the "Worship v2" design (tokens + corporate base +
   page styles + worship-v2 polish layer merged to final values).
   Everything is scoped under .stx-wor so it cannot leak into / be
   overridden by Rey theme styles. Tokens live on .stx-wor itself.
   ================================================================ */

.stx-wor{
	--ink-1000:#000;--ink-950:#0A0A0B;--ink-900:#101012;--ink-850:#161618;--ink-800:#1C1C1F;
	--ink-700:#26262A;--ink-600:#3A3A40;--ink-500:#5C5C63;--ink-400:#86868B;--ink-300:#B5B5BA;
	--ink-200:#D6D6D9;--ink-100:#ECECEE;--ink-50:#F5F5F7;--ink-0:#FFFFFF;
	--titanium:#F5F5F7;--titanium-soft:#FFFFFF;--titanium-dark:#86868B;
	--signal-on:#4ADE80;--signal-warn:#F5A524;--signal-err:#EF4444;
	--font-display:'Geist','Inter Tight',system-ui,sans-serif;
	--font-body:'Geist','Inter',system-ui,sans-serif;
	--font-mono:'Geist Mono','JetBrains Mono',ui-monospace,monospace;
	--fw-medium:500;--fw-semi:600;
	--ls-wide:0.08em;--ls-eyebrow:0.18em;
	--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--s-11:160px;
	--container:1440px;--container-w:1280px;--container-n:1040px;--gutter:max(24px,4vw);
	--r-pill:999px;--w2-r:16px;--w2-r-s:12px;
	--shadow-lift:0 30px 80px -20px rgba(0,0,0,0.8);
	--frost-blur:saturate(180%) blur(24px);
	--ease-out:cubic-bezier(0.16,1,0.3,1);--dur-fast:180ms;--dur-base:320ms;

	font-family:var(--font-body);font-size:16px;line-height:1.55;color:var(--ink-200);
	background:var(--ink-950);
	-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}
.stx-wor,.stx-wor *,.stx-wor *::before,.stx-wor *::after{box-sizing:border-box}
.stx-wor img,.stx-wor svg{display:block;max-width:100%;border:0}
.stx-wor a{color:inherit;text-decoration:none}
.stx-wor button{font:inherit;cursor:pointer;background:transparent;border:0;color:inherit}
.stx-wor h1,.stx-wor h2,.stx-wor h3,.stx-wor h4,.stx-wor h5,.stx-wor p,.stx-wor ul,.stx-wor figure{margin:0;padding:0}
.stx-wor ul{list-style:none}
.stx-wor [hidden]{display:none !important}

/* shared utilities */
.stx-wor .eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--ink-400);font-weight:500}
.stx-wor .btn{display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 24px;font-size:14px;font-weight:500;letter-spacing:0.02em;border-radius:var(--r-pill);border:1px solid transparent;transition:all var(--dur-base) var(--ease-out);white-space:nowrap;cursor:pointer;line-height:1}
.stx-wor .btn-primary,.stx-wor a.btn-primary:link,.stx-wor a.btn-primary:visited{background:var(--ink-50) !important;color:var(--ink-950) !important;box-shadow:0 10px 28px -12px rgba(255,255,255,0.25)}
.stx-wor .btn-primary:hover{background:var(--ink-0) !important;color:var(--ink-950) !important;transform:translateY(-1px);box-shadow:0 14px 34px -12px rgba(255,255,255,0.32)}
.stx-wor .btn-ghost,.stx-wor a.btn-ghost:link,.stx-wor a.btn-ghost:visited{background:transparent !important;color:var(--ink-50) !important;border-color:rgba(255,255,255,0.18) !important}
.stx-wor .btn-ghost:hover{background:rgba(255,255,255,0.06) !important;color:var(--ink-50) !important;border-color:rgba(255,255,255,0.32) !important}
.stx-wor .stx-image{width:100%;height:100%;object-fit:cover;display:block}

/* section heading (v2 commercial polish applied) */
.stx-wor .section-head{display:grid;grid-template-columns:1fr 1.6fr;gap:var(--s-7);align-items:end;margin-bottom:var(--s-8)}
.stx-wor .section-head__num{font-family:var(--font-body);font-size:12.5px;font-weight:var(--fw-semi);letter-spacing:0.04em;text-transform:uppercase;color:var(--titanium);margin-bottom:8px}
.stx-wor .section-head h2{font-size:clamp(30px,3.2vw,50px);font-weight:400;letter-spacing:-0.028em;line-height:1.06;color:var(--ink-50);max-width:16ch}
.stx-wor .section-head h2 em{font-style:normal;font-weight:400;color:var(--ink-400)}
.stx-wor .section-head__lede{font-size:16px;line-height:1.55;color:var(--ink-400);max-width:48ch}

/* ---------- HERO — full-bleed image overlay ---------- */
.stx-wor .hero-img{position:relative;min-height:92vh;display:flex;flex-direction:column;color:var(--ink-50);overflow:hidden;isolation:isolate;background:#000}
.stx-wor .hero-img__bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0;transform:scale(1.02)}
.stx-wor .hero-img__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,7,9,0.78) 0%,rgba(7,7,9,0.18) 22%,rgba(7,7,9,0.12) 55%,rgba(7,7,9,0.82) 100%),linear-gradient(90deg,rgba(7,7,9,0.55) 0%,rgba(7,7,9,0) 55%)}
.stx-wor .hero-img__grain{position:absolute;inset:0;z-index:1;opacity:0.4;mix-blend-mode:overlay;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,0.06) 1px,transparent 1px);background-size:3px 3px}
.stx-wor .hero-img__inner{position:relative;z-index:2;max-width:var(--container);width:100%;margin-inline:auto;padding:168px var(--gutter) var(--s-7);flex:1;display:flex;flex-direction:column;justify-content:flex-end}
.stx-wor .hero-img__eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:var(--s-5)}
.stx-wor .hero-img__eyebrow .eyebrow{font-family:var(--font-body);font-size:12.5px;font-weight:var(--fw-medium);letter-spacing:0.02em;text-transform:none;color:var(--ink-100);background:rgba(255,255,255,0.09);border:1px solid rgba(255,255,255,0.16);border-radius:var(--r-pill);padding:7px 14px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.stx-wor .hero-img__title{font-family:var(--font-display);font-size:clamp(42px,5.8vw,92px);line-height:1.0;letter-spacing:-0.032em;font-weight:400;color:#fff;margin:0;max-width:16ch;text-shadow:0 2px 24px rgba(0,0,0,0.35)}
.stx-wor .hero-img__title em{font-style:normal;font-weight:400;color:rgba(255,255,255,0.6)}
.stx-wor .hero-img__row{margin-top:var(--s-7);display:grid;grid-template-columns:1.4fr 1fr;gap:var(--s-8);align-items:end}
.stx-wor .hero-img__lede{font-size:clamp(16px,1.3vw,19px);line-height:1.5;color:rgba(255,255,255,0.82);max-width:48ch;margin:0;text-shadow:0 1px 8px rgba(0,0,0,0.4)}
.stx-wor .hero-img__cta{display:flex;gap:var(--s-3);justify-content:flex-end;align-items:center;flex-wrap:wrap}
.stx-wor .hero-img__cta .btn{height:52px;padding:0 26px;font-size:15px}
.stx-wor .hero-img__caption{position:relative;z-index:2;border-top:1px solid rgba(255,255,255,0.12);background:linear-gradient(180deg,rgba(7,7,9,0.55),rgba(7,7,9,0.85));backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.stx-wor .hero-img__caption-inner{max-width:var(--container);margin-inline:auto;padding:var(--s-4) var(--gutter);display:grid;grid-template-columns:auto 1fr auto;gap:var(--s-6);align-items:center}
.stx-wor .hero-img__caption .lbl{font-family:var(--font-body);font-size:11.5px;letter-spacing:0.01em;text-transform:none;font-weight:var(--fw-medium);color:rgba(255,255,255,0.55);display:block;margin-bottom:4px}
.stx-wor .hero-img__caption .val{color:rgba(255,255,255,0.95);font-size:14px;letter-spacing:-0.005em}
.stx-wor .hero-img__caption .dot{width:6px;height:6px;border-radius:50%;background:var(--signal-on);box-shadow:0 0 12px rgba(74,222,128,0.55);display:inline-block;animation:stxwHeroDot 2.2s ease-in-out infinite}
@keyframes stxwHeroDot{0%,100%{opacity:0.45}50%{opacity:1}}
.stx-wor .hero-img__caption-meta{font-family:var(--font-body);font-size:12.5px;letter-spacing:0;text-transform:none;color:rgba(255,255,255,0.5);text-align:right;display:flex;gap:18px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.stx-wor .hero-img__caption-meta b{color:rgba(255,255,255,0.9);font-weight:500}

/* ---------- LOGO WALL ---------- */
.stx-wor .logos{background:var(--ink-1000);padding-block:var(--s-8);border-top:1px solid var(--ink-700);border-bottom:1px solid var(--ink-700)}
.stx-wor .logos__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .logos__label{font-family:var(--font-body);font-size:13px;letter-spacing:0.01em;text-transform:none;color:var(--ink-400);text-align:center;margin-bottom:var(--s-6)}
.stx-wor .logos__label .count{color:var(--ink-100)}
.stx-wor .logos__grid{display:grid;grid-template-columns:repeat(6,1fr);align-items:stretch}
.stx-wor .logos__item{display:flex;align-items:center;justify-content:center;padding:var(--s-5) var(--s-3);border-left:1px solid var(--ink-700);height:96px;transition:background var(--dur-fast) var(--ease-out)}
.stx-wor .logos__item:first-child{border-left:0}
.stx-wor .logos__item:hover{background:var(--ink-900)}
.stx-wor .logos__item .name{font-family:var(--font-display);font-size:17px;font-weight:400;color:var(--ink-400);letter-spacing:-0.01em;text-align:center;line-height:1.1;transition:color var(--dur-base) var(--ease-out)}
.stx-wor .logos__item:hover .name{color:var(--ink-100)}
.stx-wor .logos__item .name em{font-style:italic;color:var(--ink-500);font-weight:300}
.stx-wor .logos__item .name .city{display:block;font-family:var(--font-mono);font-size:9px;letter-spacing:var(--ls-eyebrow);color:var(--ink-500);margin-top:4px;text-transform:uppercase}
/* uploaded logo images (instead of text wordmarks) */
.stx-wor .logos__item .name.has-logo{display:flex;flex-direction:column;align-items:center}
.stx-wor .logos__item .name.has-logo .city{margin-top:8px}
.stx-wor .logos__img{max-height:44px;max-width:min(150px,80%);width:auto;height:auto;object-fit:contain;transition:filter var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-out)}
.stx-wor .logos__grid--gray .logos__img{filter:grayscale(1);opacity:0.6}
.stx-wor .logos__grid--gray .logos__item:hover .logos__img{filter:grayscale(0);opacity:1}
.stx-wor .logos__grid--white .logos__img{filter:brightness(0) invert(1);opacity:0.55}
.stx-wor .logos__grid--white .logos__item:hover .logos__img{opacity:0.95}
.stx-wor .logos__grid--normal .logos__img{opacity:0.85}
.stx-wor .logos__grid--normal .logos__item:hover .logos__img{opacity:1}

/* ---------- FIND YOUR FIT ---------- */
.stx-wor .finder{background:var(--ink-950);padding-block:var(--s-9);border-top:1px solid var(--ink-700)}
.stx-wor .finder__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .finder-head{display:flex;justify-content:space-between;align-items:end;gap:var(--s-5);margin-bottom:var(--s-6)}
.stx-wor .finder-head h2{margin:0;font-size:clamp(30px,3.2vw,50px);font-weight:400;letter-spacing:-0.028em;line-height:1.06;color:var(--ink-50)}
.stx-wor .finder-head__num{font-family:var(--font-body);font-size:12.5px;font-weight:var(--fw-semi);letter-spacing:0.04em;text-transform:uppercase;color:var(--titanium);margin-bottom:8px}
.stx-wor .finder-head .section-head__lede{max-width:44ch}
.stx-wor .finder-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-4)}
.stx-wor .finder-card{background:var(--ink-900);border:1px solid var(--ink-700);border-radius:14px;overflow:hidden;padding:var(--s-5);cursor:pointer;transition:border-color var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);text-align:left;color:inherit;font:inherit;display:flex;flex-direction:column}
.stx-wor .finder-card:hover{border-color:var(--ink-500);box-shadow:var(--shadow-lift);transform:translateY(-3px)}
.stx-wor .finder-card__thumb{display:block;margin:calc(-1 * var(--s-5)) calc(-1 * var(--s-5)) var(--s-4);border-bottom:1px solid var(--ink-700);overflow:hidden}
.stx-wor .finder-card__thumb img{width:100%;height:132px;object-fit:cover;display:block;filter:saturate(0.9);transition:transform var(--dur-base) var(--ease-out)}
.stx-wor .finder-card:hover .finder-card__thumb img{transform:scale(1.045)}
.stx-wor .finder-card__attendance{font-family:var(--font-body);font-size:12px;font-weight:var(--fw-medium);letter-spacing:0.01em;text-transform:none;color:var(--ink-400);margin-bottom:var(--s-3)}
.stx-wor .finder-card__size{font-size:20px;font-weight:500;letter-spacing:-0.02em;color:var(--ink-50);margin:0 0 8px;line-height:1.15}
.stx-wor .finder-card__spec{font-family:var(--font-body);font-size:12.5px;color:var(--ink-400);letter-spacing:0}
.stx-wor .finder-card__price{font-family:var(--font-body);font-size:13.5px;font-weight:var(--fw-semi);color:var(--ink-100);margin-top:auto;padding-top:16px;border-top:1px solid var(--ink-700);display:flex;justify-content:space-between;align-items:center}
.stx-wor .finder-card__price .arrow{color:var(--ink-400);font-size:14px;transition:transform var(--dur-fast) var(--ease-out)}
.stx-wor .finder-card:hover .arrow{transform:translateX(4px);color:var(--ink-50)}

/* ---------- USE CASES — featured wide + 2×2 mosaic ---------- */
.stx-wor .usecases{background:var(--ink-950);padding-block:var(--s-11)}
.stx-wor .usecases__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .usecase-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--s-4)}
.stx-wor .usecase{position:relative;overflow:hidden;border:1px solid var(--ink-700);background:var(--ink-900);border-radius:var(--w2-r);aspect-ratio:4/5;cursor:pointer;transition:border-color var(--dur-base) var(--ease-out);display:block}
.stx-wor .usecase:hover{border-color:var(--ink-500)}
.stx-wor .usecase--wide{grid-column:1 / -1;aspect-ratio:21/8}
.stx-wor .usecase--med,.stx-wor .usecase--sm,.stx-wor .usecase--row2{grid-column:span 6;aspect-ratio:2/1}
.stx-wor .usecase__img{position:absolute;inset:0}
.stx-wor .usecase__img img{width:100%;height:100%;object-fit:cover;display:block}
.stx-wor .usecase__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,0.85) 100%);pointer-events:none}
.stx-wor .usecase__content{position:absolute;left:0;right:0;bottom:0;padding:var(--s-5);z-index:2}
.stx-wor .usecase__num{font-family:var(--font-body);font-size:11.5px;font-weight:var(--fw-medium);letter-spacing:0.02em;text-transform:none;color:var(--ink-400);margin-bottom:12px;display:flex;justify-content:space-between}
.stx-wor .usecase__title{font-size:clamp(20px,1.8vw,27px);line-height:1.1;letter-spacing:-0.018em;font-weight:500;color:var(--ink-50);margin:0 0 8px}
.stx-wor .usecase__sub{font-size:13px;color:var(--ink-300);margin:0;max-width:42ch}
.stx-wor .usecase__arrow{position:absolute;top:var(--s-5);right:var(--s-5);width:36px;height:36px;border:1px solid rgba(255,255,255,0.18);border-radius:50%;display:grid;place-items:center;color:var(--ink-50);transition:all var(--dur-base) var(--ease-out);z-index:2}
.stx-wor .usecase:hover .usecase__arrow{background:var(--ink-50);color:var(--ink-950);transform:rotate(-45deg)}

/* ---------- TESTIMONIALS ---------- */
.stx-wor .testimonials{background:var(--ink-1000);padding-block:var(--s-11);border-top:1px solid var(--ink-700)}
.stx-wor .testimonials__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-5);margin-top:var(--s-7)}
.stx-wor .testimonial{border:1px solid var(--ink-700);border-radius:var(--w2-r);overflow:hidden;padding:var(--s-6) var(--s-5);display:flex;flex-direction:column;background:var(--ink-900)}
.stx-wor .testimonial__photo{display:block;margin:calc(-1 * var(--s-6)) calc(-1 * var(--s-5)) var(--s-4);border-bottom:1px solid var(--ink-700)}
.stx-wor .testimonial__photo img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.stx-wor .testimonial__mark{font-family:var(--font-display);font-size:72px;line-height:0.6;color:var(--ink-700);margin-bottom:var(--s-3);font-weight:300}
.stx-wor .testimonial__quote{font-size:clamp(16px,1.3vw,18px);line-height:1.5;color:var(--ink-100);letter-spacing:-0.005em;margin:0 0 var(--s-5);flex:1}
.stx-wor .testimonial__attribution{border-top:1px solid var(--ink-700);padding-top:var(--s-4)}
.stx-wor .testimonial__name{font-size:14px;color:var(--ink-50);font-weight:500}
.stx-wor .testimonial__role{font-size:13px;color:var(--ink-400);margin-top:2px}
.stx-wor .testimonial__org{font-family:var(--font-body);font-size:11.5px;letter-spacing:0.02em;text-transform:none;color:var(--ink-500);margin-top:6px}

/* ---------- EDITORIAL — 2×2 feature cards ---------- */
.stx-wor .editorial{background:var(--ink-950);padding-block:var(--s-11);border-top:1px solid var(--ink-700)}
.stx-wor .editorial__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter);display:block}
.stx-wor .editorial__head{max-width:760px;margin-bottom:var(--s-7)}
.stx-wor .editorial__head h2{margin:0 0 var(--s-5);font-size:clamp(30px,3.4vw,54px);line-height:1.05;letter-spacing:-0.028em;font-weight:400;color:var(--ink-50)}
.stx-wor .editorial__head h2 em{font-style:normal;font-weight:400;color:var(--ink-400)}
.stx-wor .edit2-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-4)}
.stx-wor .edit2-card{border:1px solid var(--ink-700);background:var(--ink-900);border-radius:var(--w2-r);padding:var(--s-5);display:flex;flex-direction:column;gap:10px}
.stx-wor .edit2-card__ico{width:40px;height:40px;border:1px solid var(--ink-700);border-radius:10px;display:grid;place-items:center;color:var(--titanium);margin-bottom:4px}
.stx-wor .edit2-card h3{margin:0;font-size:19px;font-weight:500;color:var(--ink-50);letter-spacing:-0.01em}
.stx-wor .edit2-card p{margin:0;font-size:14.5px;line-height:1.55;color:var(--ink-300);max-width:46ch}
.stx-wor .edit2-card__meta{margin-top:auto;padding-top:14px;border-top:1px solid var(--ink-700);font-family:var(--font-mono);font-size:11px;letter-spacing:var(--ls-wide);color:var(--ink-400);display:flex;align-items:center;gap:8px}
.stx-wor .edit2-card__meta::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--signal-on);flex:none}

/* ---------- PHOTO STRIP ---------- */
.stx-wor .strip{background:var(--ink-1000);border-top:1px solid var(--ink-700);padding-block:var(--s-8)}
.stx-wor .strip__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .strip-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:var(--s-4);align-items:stretch}
.stx-wor .strip-fig{margin:0;border:1px solid var(--ink-700);border-radius:var(--w2-r);overflow:hidden;background:var(--ink-900);display:flex;flex-direction:column}
.stx-wor .strip-fig img{width:100%;flex:1;min-height:0;aspect-ratio:16/10;object-fit:cover;display:block}
.stx-wor .strip-fig figcaption{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--ink-400);padding:12px 14px;border-top:1px solid var(--ink-700);display:flex;justify-content:space-between;gap:12px}
.stx-wor .strip-fig figcaption b{color:var(--ink-100);font-weight:500}

/* ---------- PIXEL PITCH LADDER + VISUALIZER ---------- */
.stx-wor .ladder{background:var(--ink-950);padding-block:var(--s-11);border-top:1px solid var(--ink-700)}
.stx-wor .ladder__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .ladder-flex{display:grid;grid-template-columns:1.45fr 1fr;gap:var(--s-6);margin-top:var(--s-7);align-items:start}
.stx-wor .ladder-table{border-top:1px solid var(--ink-700);margin-top:0}
.stx-wor .ladder-row{display:grid;grid-template-columns:100px 1fr 200px 180px;align-items:center;padding:var(--s-5) var(--s-4);border-bottom:1px solid var(--ink-700);gap:var(--s-5);cursor:pointer;transition:background var(--dur-fast) var(--ease-out)}
.stx-wor .ladder-row.is-active{background:var(--ink-900);box-shadow:inset 2px 0 0 var(--titanium)}
.stx-wor .ladder-row.is-active .ladder-row__pitch{color:var(--titanium)}
.stx-wor .ladder-row__pitch{font-family:var(--font-display);font-size:32px;font-weight:400;letter-spacing:-0.02em;color:var(--ink-50);transition:color var(--dur-fast) var(--ease-out)}
.stx-wor .ladder-row__title{font-size:17px;color:var(--ink-100);font-weight:400;letter-spacing:-0.005em}
.stx-wor .ladder-row__title .desc{display:block;font-size:13px;color:var(--ink-400);margin-top:4px}
.stx-wor .ladder-row__spec{font-family:var(--font-body);font-size:13px;color:var(--ink-300);letter-spacing:0}
.stx-wor .ladder-row__use{font-size:13px;color:var(--ink-300)}
.stx-wor .ladder-viz{position:sticky;top:96px;border:1px solid var(--ink-700);background:var(--ink-900);border-radius:var(--w2-r);overflow:hidden}
.stx-wor .ladder-viz__screen{position:relative;aspect-ratio:16/10;background:#050507;overflow:hidden}
.stx-wor .ladder-viz__dots{position:absolute;inset:0;background:linear-gradient(135deg,#3b82f6 0%,#06b6d4 55%,#0ea5e9 100%);-webkit-mask-image:radial-gradient(circle,#000 var(--lv-dot,2.9px),transparent calc(var(--lv-dot,2.9px) + 0.6px));mask-image:radial-gradient(circle,#000 var(--lv-dot,2.9px),transparent calc(var(--lv-dot,2.9px) + 0.6px));-webkit-mask-size:var(--lv-gap,8.5px) var(--lv-gap,8.5px);mask-size:var(--lv-gap,8.5px) var(--lv-gap,8.5px);-webkit-mask-position:center;mask-position:center;transition:-webkit-mask-size 380ms var(--ease-out),mask-size 380ms var(--ease-out)}
.stx-wor .ladder-viz__screen::after{content:"";position:absolute;inset:0;background:radial-gradient(130% 100% at 50% 0%,transparent 55%,rgba(0,0,0,0.5) 100%);pointer-events:none}
.stx-wor .ladder-viz__pitchlabel{position:absolute;left:14px;bottom:12px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:var(--ls-wide);text-transform:uppercase;color:rgba(255,255,255,0.9);text-shadow:0 1px 8px rgba(0,0,0,0.7);z-index:2}
.stx-wor .ladder-viz__read{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink-700)}
.stx-wor .ladder-viz__read > div{padding:14px;border-right:1px solid var(--ink-700)}
.stx-wor .ladder-viz__read > div:last-child{border-right:0}
.stx-wor .ladder-viz__read .lbl{font-family:var(--font-mono);font-size:9.5px;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--ink-400);display:block;margin-bottom:6px}
.stx-wor .ladder-viz__read .val{font-family:var(--font-display);font-size:22px;font-weight:300;letter-spacing:-0.02em;color:var(--ink-50)}
.stx-wor .ladder-viz__read .val .u{font-family:var(--font-mono);font-size:11px;color:var(--ink-400);margin-left:3px;letter-spacing:0}
.stx-wor .ladder-viz__foot{padding:13px 14px;border-top:1px solid var(--ink-700);font-size:12.5px;line-height:1.5;color:var(--ink-400)}
.stx-wor .ladder-viz__foot b{color:var(--ink-100);font-weight:500}

/* ---------- CASE STUDIES ---------- */
.stx-wor .cases{background:var(--ink-1000);padding-block:var(--s-11);border-top:1px solid var(--ink-700)}
.stx-wor .cases__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .case-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-5);margin-top:var(--s-7)}
.stx-wor .case{position:relative;overflow:hidden;background:var(--ink-900);border:1px solid var(--ink-700);border-radius:var(--w2-r);aspect-ratio:16/10;cursor:pointer;display:block}
.stx-wor .case--wide{grid-column:span 2;aspect-ratio:21/8}
.stx-wor .case__img{position:absolute;inset:0}
.stx-wor .case__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 600ms var(--ease-out)}
.stx-wor .case:hover .case__img img{transform:scale(1.04)}
.stx-wor .case__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0.2) 0%,transparent 50%,rgba(0,0,0,0.9) 100%);pointer-events:none}
.stx-wor .case__meta{position:absolute;top:var(--s-5);left:var(--s-5);right:var(--s-5);display:flex;justify-content:space-between;align-items:start;font-family:var(--font-body);font-size:11.5px;font-weight:var(--fw-medium);letter-spacing:0.02em;text-transform:none;color:var(--ink-300);z-index:2}
.stx-wor .case__content{position:absolute;bottom:0;left:0;right:0;padding:var(--s-5);z-index:2}
.stx-wor .case__client{font-family:var(--font-body);font-size:11.5px;font-weight:var(--fw-medium);letter-spacing:0.02em;text-transform:none;color:var(--ink-300);margin-bottom:8px}
.stx-wor .case__title{font-size:clamp(20px,1.7vw,27px);font-weight:500;letter-spacing:-0.02em;line-height:1.05;color:var(--ink-50);margin:0 0 14px;max-width:26ch}
.stx-wor .case__stats{display:flex;gap:var(--s-5);border-top:1px solid rgba(255,255,255,0.16);padding-top:14px;flex-wrap:wrap}
.stx-wor .case__stat .v{font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-0.015em;color:var(--ink-50)}
.stx-wor .case__stat .l{font-family:var(--font-mono);font-size:9px;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--ink-400);display:block;margin-top:2px}

/* ---------- TRUST / STEWARDSHIP ---------- */
.stx-wor .trust{background:var(--ink-1000);padding-block:var(--s-10);border-top:1px solid var(--ink-700)}
.stx-wor .trust__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-4);margin-top:var(--s-7)}
.stx-wor .trust-cell{padding:var(--s-6) var(--s-5);border:1px solid var(--ink-700);border-radius:var(--w2-r);background:var(--ink-900)}
.stx-wor .trust-cell__num{font-family:var(--font-display);font-size:clamp(40px,4.5vw,64px);font-weight:400;letter-spacing:-0.03em;line-height:1;color:var(--ink-50);margin-bottom:var(--s-4)}
.stx-wor .trust-cell__num .unit{font-size:0.32em;color:var(--ink-400);font-family:var(--font-mono);margin-left:6px;letter-spacing:0}
.stx-wor .trust-cell__label{font-family:var(--font-body);font-size:12px;font-weight:var(--fw-semi);letter-spacing:0.04em;text-transform:uppercase;color:var(--titanium);margin-bottom:12px}
.stx-wor .trust-cell h3{margin:0 0 12px;font-size:19px;font-weight:500;letter-spacing:-0.02em;color:var(--ink-50)}
.stx-wor .trust-cell p{margin:0;font-size:14px;line-height:1.55;color:var(--ink-300)}

/* ---------- INCLUDES MATRIX ---------- */
.stx-wor .includes{background:var(--ink-950);padding-block:var(--s-11);border-top:1px solid var(--ink-700)}
.stx-wor .includes__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .includes-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:var(--s-7);border:1px solid var(--ink-700);border-radius:var(--w2-r);overflow:hidden}
.stx-wor .includes-col{padding:var(--s-6) var(--s-5);display:flex;flex-direction:column}
.stx-wor .includes-col + .includes-col{border-left:1px solid var(--ink-700)}
.stx-wor .includes-col__head{display:flex;align-items:center;gap:12px;margin-bottom:var(--s-4);padding-bottom:var(--s-4);border-bottom:1px solid var(--ink-700)}
.stx-wor .includes-col__pill{font-family:var(--font-body);font-size:11px;font-weight:var(--fw-semi);letter-spacing:0.03em;text-transform:uppercase;padding:4px 10px;border-radius:999px;white-space:nowrap}
.stx-wor .includes-col__pill.is-in{background:rgba(74,222,128,0.12);color:var(--signal-on);border:1px solid rgba(74,222,128,0.22)}
.stx-wor .includes-col__pill.is-out{background:rgba(86,86,90,0.14);color:var(--ink-400);border:1px solid var(--ink-700)}
.stx-wor .includes-col h3{margin:0;font-size:18px;font-weight:500;color:var(--ink-50);letter-spacing:-0.005em}
.stx-wor .includes-col ul{list-style:none;padding:0;margin:0;flex:1;display:grid;grid-template-columns:1fr 1fr;gap:0 var(--s-5);align-content:start}
.stx-wor .includes-col li{padding:11px 0;font-size:14px;color:var(--ink-300);display:flex;gap:12px;line-height:1.5;border-top:1px solid var(--ink-700);align-items:flex-start}
.stx-wor .includes-col li:first-child,.stx-wor .includes-col li:nth-child(2){border-top:0}
.stx-wor .includes-col li .mk{width:16px;flex:none;font-family:var(--font-mono);font-size:11px;margin-top:1px;color:var(--ink-500)}
.stx-wor .includes-col.is-in li .mk{color:var(--signal-on)}
.stx-wor .includes-col li .it b{display:block;font-size:13.5px;color:var(--ink-100);font-weight:500;letter-spacing:-0.005em}
.stx-wor .includes-col li .it span{display:block;font-size:12px;color:var(--ink-400);margin-top:2px;line-height:1.4}
.stx-wor .includes-col__foot{font-family:var(--font-body);font-size:12.5px;letter-spacing:0;color:var(--ink-400);margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--ink-700)}
.stx-wor .includes-col__foot b{color:var(--ink-100);font-weight:500}

/* ---------- PROCESS — VERTICAL TIMELINE ---------- */
.stx-wor .process{background:var(--ink-950);padding-block:var(--s-11);border-top:1px solid var(--ink-700)}
.stx-wor .process__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .tl{margin-top:var(--s-7);max-width:880px}
.stx-wor .tl-step{display:grid;grid-template-columns:56px 1fr;gap:var(--s-5);position:relative;padding-bottom:var(--s-7)}
.stx-wor .tl-step__rail{position:relative}
.stx-wor .tl-step__rail::before{content:"";position:absolute;top:50px;bottom:-6px;left:50%;width:1px;background:linear-gradient(180deg,var(--ink-600),var(--ink-700))}
.stx-wor .tl-step__node{width:44px;height:44px;border-radius:50%;border:1px solid var(--ink-600);background:var(--ink-900);display:grid;place-items:center;font-family:var(--font-mono);font-size:12px;color:var(--ink-100);position:relative;z-index:1;margin-inline:auto}
.stx-wor .tl-step__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-4);flex-wrap:wrap}
.stx-wor .tl-step__title{margin:0;font-size:22px;font-weight:500;letter-spacing:-0.015em;color:var(--ink-50)}
.stx-wor .tl-step__time{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--titanium);white-space:nowrap}
.stx-wor .tl-step__sum{margin:6px 0 14px;font-size:15px;line-height:1.5;color:var(--ink-300);max-width:56ch}
.stx-wor .tl-step__tags{display:flex;flex-wrap:wrap;gap:8px}
.stx-wor .tl-tag{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border:1px solid var(--ink-700);border-radius:999px;background:var(--ink-900);font-size:12.5px;color:var(--ink-200);white-space:nowrap}
.stx-wor .tl-tag::before{content:"✓";font-size:10px;color:var(--signal-on)}
.stx-wor .tl-total{display:grid;grid-template-columns:56px 1fr;gap:var(--s-5);align-items:center}
.stx-wor .tl-total__node{width:44px;height:44px;border-radius:50%;background:var(--ink-50);color:var(--ink-1000);display:grid;place-items:center;margin-inline:auto;position:relative;z-index:1}
.stx-wor .tl-total__txt{font-size:15px;color:var(--ink-300)}
.stx-wor .tl-total__txt b{color:var(--ink-50);font-weight:500}

/* ---------- FULL-BLEED IMAGE BREAK ---------- */
.stx-wor .bleed{position:relative;min-height:62vh;display:flex;align-items:flex-end;overflow:hidden;border-top:1px solid var(--ink-700);background:#000}
.stx-wor .bleed > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.stx-wor .bleed::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,7,9,0.5) 0%,rgba(7,7,9,0.05) 40%,rgba(7,7,9,0.8) 100%)}
.stx-wor .bleed__caption{position:relative;z-index:2;width:100%;max-width:var(--container);margin-inline:auto;padding:var(--s-5) var(--gutter);display:flex;justify-content:space-between;gap:var(--s-5);align-items:baseline}
.stx-wor .bleed__caption .t{font-family:var(--font-display);font-size:clamp(22px,2.4vw,34px);font-weight:300;letter-spacing:-0.02em;color:#fff;margin:0}
.stx-wor .bleed__caption .m{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:rgba(255,255,255,0.6);white-space:nowrap}

/* ---------- COMPARE TABLE ---------- */
.stx-wor .compare{background:var(--ink-1000);padding-block:var(--s-11);border-top:1px solid var(--ink-700)}
.stx-wor .compare__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .compare-table{margin-top:var(--s-7);border:1px solid var(--ink-700);border-radius:var(--w2-r);overflow:hidden;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr}
/* rows/header wrap the cells but stay transparent to the grid on desktop */
.stx-wor .compare-head,.stx-wor .compare-row{display:contents}
.stx-wor .compare-table .header,.stx-wor .compare-table .row-label,.stx-wor .compare-table .cell{padding:var(--s-4);border-bottom:1px solid var(--ink-700);border-right:1px solid var(--ink-700);display:flex;align-items:center;gap:10px;font-size:14px;min-height:64px}
.stx-wor .compare-head > *:last-child,.stx-wor .compare-row > *:last-child{border-right:0}
.stx-wor .compare-table > *:last-child > *{border-bottom:0}
.stx-wor .compare-table .header{font-family:var(--font-body);font-size:11.5px;font-weight:var(--fw-semi);letter-spacing:0.03em;text-transform:uppercase;color:var(--ink-400);background:var(--ink-900);align-items:end;padding-top:var(--s-5);padding-bottom:var(--s-3);line-height:1.3}
.stx-wor .compare-table .header.is-us{color:var(--ink-50);background:var(--ink-850)}
.stx-wor .compare-table .row-label{color:var(--ink-100);font-weight:400;font-size:14px;letter-spacing:-0.005em}
.stx-wor .compare-table .cell{color:var(--ink-300);font-size:13px}
.stx-wor .compare-table .cell.is-us{background:rgba(255,255,255,0.02);color:var(--ink-50)}
.stx-wor .compare-table .icon{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;border-radius:50%;flex:none;font-size:11px;font-family:var(--font-mono)}
.stx-wor .compare-table .icon.yes{background:rgba(74,222,128,0.14);color:var(--signal-on)}
.stx-wor .compare-table .icon.no{background:rgba(86,86,90,0.18);color:var(--ink-500)}
.stx-wor .compare-table .icon.partial{background:rgba(245,165,36,0.15);color:var(--signal-warn)}
.stx-wor .compare-table .cell-text{font-size:12px;color:inherit}

/* ---------- FAQ ---------- */
.stx-wor .faq{background:var(--ink-950);padding-block:var(--s-11);border-top:1px solid var(--ink-700)}
.stx-wor .faq__inner{max-width:var(--container-w);margin-inline:auto;padding-inline:var(--gutter)}
.stx-wor .faq-list{border-top:1px solid var(--ink-700);margin-top:var(--s-7)}
.stx-wor .faq-item{border-bottom:1px solid var(--ink-700)}
.stx-wor .faq-item summary{cursor:pointer;padding:var(--s-5) 0;display:flex;justify-content:space-between;gap:var(--s-5);align-items:center;list-style:none;font-size:clamp(17px,1.5vw,21px);font-weight:500;color:var(--ink-50);letter-spacing:-0.01em}
.stx-wor .faq-item summary::-webkit-details-marker{display:none}
.stx-wor .faq-item summary::after{content:"+";font-family:var(--font-mono);font-size:22px;color:var(--ink-400);width:28px;height:28px;display:grid;place-items:center;flex:none;transition:transform var(--dur-fast) var(--ease-out)}
.stx-wor .faq-item[open] summary::after{content:"−";color:var(--ink-50)}
.stx-wor .faq-item summary:hover{color:var(--ink-100)}
.stx-wor .faq-item__body{padding:0 0 var(--s-6) 0;max-width:70ch;color:var(--ink-300);font-size:16px;line-height:1.65}
.stx-wor .faq-item__body p{margin:0 0 12px}
.stx-wor .faq-item__body p:last-child{margin-bottom:0}

/* ---------- RESOURCE / GUIDE LEAD MAGNET ---------- */
.stx-wor .resource{background:var(--ink-1000);border-top:1px solid var(--ink-700);padding-block:var(--s-10)}
.stx-wor .resource__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter);display:grid;grid-template-columns:1fr 1.2fr;gap:var(--s-9);align-items:center}
.stx-wor .resource__visual{aspect-ratio:4/5;background:radial-gradient(60% 50% at 50% 30%,rgba(255,255,255,0.06),transparent 70%),var(--ink-950);border:1px solid var(--ink-700);border-radius:var(--w2-r);position:relative;display:grid;place-items:center;overflow:hidden;isolation:isolate}
.stx-wor .resource__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0.3;z-index:-1;filter:saturate(0.8)}
.stx-wor .resource__pages{position:relative;width:64%;aspect-ratio:3/4;background:linear-gradient(160deg,#18181b 0%,#0a0a0b 100%);border:1px solid var(--ink-600);border-radius:8px;box-shadow:-20px 22px 0 -1px rgba(0,0,0,0.6),-20px 22px 0 var(--ink-700),0 40px 80px -20px rgba(0,0,0,0.7);display:flex;flex-direction:column;padding:var(--s-5)}
.stx-wor .resource__pages .p-eye{font-family:var(--font-mono);font-size:9px;letter-spacing:var(--ls-eyebrow);color:var(--titanium);text-transform:uppercase}
.stx-wor .resource__pages .p-title{color:var(--ink-50);font-size:clamp(18px,1.8vw,24px);line-height:1.05;letter-spacing:-0.025em;font-weight:300;margin-top:var(--s-4)}
.stx-wor .resource__pages .p-title em{font-style:italic}
.stx-wor .resource__pages .p-meta{margin-top:auto;font-family:var(--font-mono);font-size:9px;color:var(--ink-500);letter-spacing:var(--ls-eyebrow);text-transform:uppercase}
.stx-wor .resource__kicker{font-family:var(--font-body);font-size:12.5px;font-weight:var(--fw-semi);letter-spacing:0.04em;text-transform:uppercase;color:var(--titanium);margin-bottom:12px}
.stx-wor .resource__content h3{font-size:clamp(28px,3vw,42px);line-height:1;font-weight:400;letter-spacing:-0.026em;color:var(--ink-50);margin:0 0 var(--s-4)}
.stx-wor .resource__content h3 em{font-style:normal;color:var(--ink-400);font-weight:400}
.stx-wor .resource__content > p{font-size:16px;line-height:1.55;color:var(--ink-300);margin:0 0 var(--s-5);max-width:48ch}
.stx-wor .resource__form{display:flex;gap:var(--s-3);margin-top:var(--s-5);max-width:480px}
.stx-wor .resource__form input[type=email]{flex:1;background:var(--ink-900);border:1px solid var(--ink-700);color:var(--ink-50);padding:0 16px;height:48px;font:14px var(--font-body);outline:none;transition:border-color var(--dur-fast) var(--ease-out);border-radius:10px;box-shadow:none}
.stx-wor .resource__form input[type=email]:focus{border-color:var(--ink-400)}
.stx-wor .resource__form input[type=email]::placeholder{color:var(--ink-500)}
.stx-wor .resource__form button{white-space:nowrap;border:0}
.stx-wor .resource__includes{font-family:var(--font-body);font-size:12.5px;letter-spacing:0;color:var(--ink-400);margin:14px 0 0}
.stx-wor .resource__includes b{color:var(--ink-100);font-weight:500}
.stx-wor .resource__success{display:none;font-size:14px;color:var(--signal-on);margin-top:12px;font-family:var(--font-body);letter-spacing:0}
.stx-wor .resource__success.is-on{display:block}

/* ---------- FINAL CTA ---------- */
.stx-wor .cta-final{background:var(--ink-1000);padding-block:var(--s-11);border-top:1px solid var(--ink-700);position:relative;overflow:hidden}
.stx-wor .cta-final__bg{position:absolute;inset:0;z-index:0}
.stx-wor .cta-final__bg img{width:100%;height:100%;object-fit:cover;opacity:0.22}
.stx-wor .cta-final__bg::after{content:"";position:absolute;inset:0;background:radial-gradient(80% 80% at 50% 100%,rgba(7,7,9,0.25),rgba(7,7,9,0.88))}
.stx-wor .cta-final__inner{max-width:var(--container-n);margin-inline:auto;padding-inline:var(--gutter);text-align:center;position:relative;z-index:2}
.stx-wor .cta-final__eyebrow{margin-bottom:var(--s-5);display:flex;justify-content:center}
.stx-wor .cta-final__eyebrow .eyebrow{font-family:var(--font-body);font-size:12.5px;font-weight:var(--fw-semi);letter-spacing:0.04em;color:var(--titanium)}
.stx-wor .cta-final h2{margin:0 auto var(--s-6);font-size:clamp(34px,4.4vw,68px);line-height:1.02;letter-spacing:-0.032em;font-weight:400;color:var(--ink-50);max-width:16ch}
.stx-wor .cta-final h2 em{font-style:normal;font-weight:400;color:var(--ink-400)}
.stx-wor .cta-final__lede{font-size:19px;line-height:1.55;color:var(--ink-300);max-width:56ch;margin:0 auto var(--s-7)}
.stx-wor .cta-final__buttons{display:flex;gap:var(--s-3);justify-content:center;flex-wrap:wrap}
.stx-wor .cta-final__glow{position:absolute;left:50%;bottom:-40%;width:80%;aspect-ratio:2/1;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(255,255,255,0.08),transparent 60%);pointer-events:none;z-index:1}

/* ---------- STICKY BOTTOM CTA ---------- */
.stx-wor.stx-wor--sticky{background:transparent}
.stx-wor .stickycta{position:fixed;left:0;right:0;bottom:0;background:rgba(10,10,11,0.86);backdrop-filter:var(--frost-blur);-webkit-backdrop-filter:var(--frost-blur);border-top:1px solid rgba(255,255,255,0.08);z-index:90;padding:14px var(--gutter);transform:translateY(100%);transition:transform var(--dur-base) var(--ease-out);pointer-events:none}
.stx-wor .stickycta.is-in{transform:translateY(0);pointer-events:auto}
.stx-wor .stickycta__inner{max-width:var(--container);margin-inline:auto;display:flex;justify-content:space-between;align-items:center;gap:var(--s-5)}
.stx-wor .stickycta__left{display:flex;flex-direction:column;gap:2px;min-width:0}
.stx-wor .stickycta__title{font-size:14px;color:var(--ink-50);font-weight:500;letter-spacing:-0.005em}
.stx-wor .stickycta__sub{font-size:12px;color:var(--ink-400)}
.stx-wor .stickycta__right{display:flex;gap:10px;align-items:center}
.stx-wor .stickycta__close{width:32px;height:32px;background:transparent;border:1px solid var(--ink-700);color:var(--ink-400);border-radius:50%;display:grid;place-items:center;cursor:pointer;transition:all var(--dur-fast) var(--ease-out);font-size:16px;line-height:1}
.stx-wor .stickycta__close:hover{color:var(--ink-50);border-color:var(--ink-500)}
.stx-wor .stickycta .btn{height:40px;padding:0 18px;font-size:13px}
/* in the Elementor editor the bar renders in-flow so it can be selected */
.stx-wor .stickycta.is-static{position:static;transform:none;pointer-events:auto}

/* ================= RESPONSIVE ================= */
@media (max-width:1100px){
	.stx-wor .ladder-row{grid-template-columns:60px 1fr 100px}
	.stx-wor .ladder-row__use{grid-column:1 / -1;padding-left:76px}
	.stx-wor .case-grid{grid-template-columns:1fr}
	.stx-wor .case--wide{grid-column:span 1;aspect-ratio:16/9}
}
@media (max-width:1000px){
	.stx-wor .ladder-flex{grid-template-columns:1fr}
	.stx-wor .ladder-viz{position:static}
}
@media (max-width:900px){
	.stx-wor .hero-img__row{grid-template-columns:1fr}
	.stx-wor .hero-img__cta{justify-content:flex-start}
	.stx-wor .hero-img__caption-inner{grid-template-columns:1fr;gap:var(--s-3)}
	.stx-wor .hero-img__caption-meta{justify-content:flex-start;text-align:left}
	.stx-wor .logos__grid{grid-template-columns:repeat(3,1fr)}
	.stx-wor .logos__item:nth-child(n+4){border-top:1px solid var(--ink-700)}
	.stx-wor .logos__item:nth-child(3n+1){border-left:0}
	.stx-wor .finder-grid{grid-template-columns:1fr 1fr}
	.stx-wor .finder-head{flex-direction:column;align-items:start}
	.stx-wor .testimonial-grid{grid-template-columns:1fr}
	.stx-wor .strip-grid{grid-template-columns:1fr}
	.stx-wor .trust-grid{grid-template-columns:1fr}
	.stx-wor .includes-grid{grid-template-columns:1fr}
	.stx-wor .includes-col + .includes-col{border-left:0;border-top:1px solid var(--ink-700)}
	.stx-wor .resource__inner{grid-template-columns:1fr;gap:var(--s-6)}
	.stx-wor .resource__visual{aspect-ratio:4/3;max-width:360px}
}
@media (max-width:760px){
	.stx-wor .section-head{grid-template-columns:1fr;gap:var(--s-4)}
	.stx-wor .usecase--wide,.stx-wor .usecase--med,.stx-wor .usecase--sm,.stx-wor .usecase--row2{grid-column:span 1;aspect-ratio:16/10}
	.stx-wor .usecase-grid{grid-template-columns:1fr}
	.stx-wor .edit2-grid{grid-template-columns:1fr}
}
@media (max-width:700px){
	.stx-wor .bleed__caption{flex-direction:column;gap:8px}
	.stx-wor .stickycta__sub{display:none}
	.stx-wor .stickycta .btn{padding:0 14px}
}
@media (max-width:640px){
	.stx-wor .includes-col ul{grid-template-columns:1fr}
	.stx-wor .includes-col li:nth-child(2){border-top:1px solid var(--ink-700)}
	.stx-wor .tl-step,.stx-wor .tl-total{grid-template-columns:40px 1fr;gap:var(--s-4)}
	.stx-wor .tl-step__node,.stx-wor .tl-total__node{width:34px;height:34px;font-size:11px}
	.stx-wor .tl-step__rail::before{top:40px}
}
@media (max-width:520px){
	.stx-wor .logos__grid{grid-template-columns:repeat(2,1fr)}
	.stx-wor .logos__item:nth-child(3n+1){border-left:1px solid var(--ink-700)}
	.stx-wor .logos__item:nth-child(odd){border-left:0}
	.stx-wor .logos__item:nth-child(n+3){border-top:1px solid var(--ink-700)}
	.stx-wor .finder-grid{grid-template-columns:1fr}
}

/* ================================================================
   MOBILE REFINEMENTS — v1.2.0
   (a) section vertical padding is now editor-controlled per widget
       via the "Section spacing" controls (loader: stx_w_pad_controls),
       with tightened mobile defaults — so no padding overrides here.
   (b) horizontal-scroll card carousels on phones
   (c) editorial card: icon + heading on one row, subtext below
   (d) pixel-pitch ladder: rotate on mobile + drop the dot overlay label
   (e) hero, resource form, overflow guards
   ================================================================ */

/* (e) Guard: a section's children can never push the page sideways.
   overflow-x:clip does NOT create a scroll container, so the sticky
   pixel-pitch visualizer on desktop is unaffected. overflow-clip-margin gives
   hover lift / box-shadows on edge cards room to paint before the x-clip (it
   never enables scrolling, so the page-overflow guarantee holds). */
.stx-wor{overflow-x:clip;overflow-clip-margin:3rem}

/* (c) Editorial feature card — Icon + Heading inline, subtext underneath. */
.stx-wor .edit2-card__top{display:flex;align-items:center;gap:12px;margin-bottom:2px}
.stx-wor .edit2-card__top .edit2-card__ico{margin-bottom:0;flex:none}
.stx-wor .edit2-card__top h3{margin:0}

/* (d) The "P3.9 · …" label overlaid on the visualizer dots — removed
   everywhere (the read-out below the screen already states the pitch). */
.stx-wor .ladder-viz__pitchlabel{display:none}

@media (max-width:760px){
	/* (b) Card sections → FULL-BLEED horizontal scroll-snap carousels.
	   The scroller breaks out of the section gutter (margin-inline:-gutter)
	   then re-adds it as padding + scroll-padding, so: the FIRST card lines up
	   under the heading, mid-scroll cards run edge-to-edge (never clipped ~10px
	   in from the sides), and a peek of the next card signals more. The section
	   keeps its gutter on the heading/text only. overflow-x:clip on .stx-wor
	   keeps this from ever scrolling the page. */
	.stx-wor .finder-grid,
	.stx-wor .testimonial-grid,
	.stx-wor .case-grid,
	.stx-wor .usecase-grid,
	.stx-wor .strip-grid{
		display:flex;grid-template-columns:none;flex-wrap:nowrap;
		overflow-x:auto;-webkit-overflow-scrolling:touch;
		scroll-snap-type:x mandatory;gap:var(--s-3);
		/* an overflow-x scroller also clips the Y axis, which would crop a
		   card's hover lift + shadow — so give it vertical breathing room and
		   pull the layout back so section spacing is unchanged */
		margin-top:calc(var(--s-6) - 10px);margin-bottom:-18px;
		margin-inline:calc(-1 * var(--gutter));
		padding-inline:var(--gutter);scroll-padding-inline:var(--gutter);
		padding-block:10px 28px;scrollbar-width:none;
	}
	.stx-wor .finder-grid::-webkit-scrollbar,
	.stx-wor .testimonial-grid::-webkit-scrollbar,
	.stx-wor .case-grid::-webkit-scrollbar,
	.stx-wor .usecase-grid::-webkit-scrollbar,
	.stx-wor .strip-grid::-webkit-scrollbar{display:none}
	.stx-wor .finder-card,
	.stx-wor .testimonial,
	.stx-wor .case,
	.stx-wor .usecase,
	.stx-wor .strip-fig{flex:0 0 88%;scroll-snap-align:start}
	/* the only card with an outward hover lift; use a contained shadow that
	   fits the scroller's padding-block so it is never cropped */
	.stx-wor .finder-card:hover{box-shadow:0 12px 28px -16px rgba(0,0,0,0.75);transform:translateY(-3px)}
	/* cancel the mosaic/asymmetric spans so every tile is a uniform card */
	.stx-wor .case,.stx-wor .case--wide,
	.stx-wor .usecase--wide,.stx-wor .usecase--med,
	.stx-wor .usecase--sm,.stx-wor .usecase--row2{grid-column:auto}
	.stx-wor .case,.stx-wor .case--wide{aspect-ratio:16/11}
	.stx-wor .usecase,.stx-wor .usecase--wide,.stx-wor .usecase--med,
	.stx-wor .usecase--sm,.stx-wor .usecase--row2{aspect-ratio:4/5}

	/* (d) Pixel-pitch ladder — rotate (visualizer on top) + full-bleed card
	   scroller. Cards are narrower (~58%) so one shows with the next clearly
	   peeking in. */
	.stx-wor .ladder-flex{display:flex;flex-direction:column;gap:var(--s-5);align-items:stretch}
	.stx-wor .ladder-viz{order:-1;position:static}
	/* contained (not full-bleed — it lives in a column-flex parent); cards are
	   just narrowed so one shows with the next peeking in. */
	.stx-wor .ladder-table{
		border-top:0;display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;
		scroll-snap-type:x mandatory;gap:var(--s-3);scroll-padding-inline:0;
		padding-bottom:8px;scrollbar-width:none;
	}
	.stx-wor .ladder-table::-webkit-scrollbar{display:none}
	.stx-wor .ladder-row{
		flex:0 0 58%;scroll-snap-align:start;
		grid-template-columns:1fr;gap:6px;align-content:start;
		border:1px solid var(--ink-700);border-radius:var(--w2-r-s);
		background:var(--ink-900);padding:var(--s-4);
	}
	.stx-wor .ladder-row.is-active{border-color:var(--titanium);box-shadow:inset 0 0 0 1px var(--titanium)}
	.stx-wor .ladder-row__pitch{font-size:28px}
	.stx-wor .ladder-row__use{grid-column:auto;padding-left:0}

	/* (f) Compare table → one card per feature (was a cramped sideways scroll).
	   Each row is a card: feature on top, then every option labelled by its
	   column name (data-col) with its status mark. */
	.stx-wor .compare-table{display:block;border:0;border-radius:0;overflow:visible;margin-top:var(--s-6)}
	.stx-wor .compare-head{display:none}
	.stx-wor .compare-row{display:block;border:1px solid var(--ink-700);border-radius:var(--w2-r-s);background:var(--ink-900);padding:var(--s-4) var(--s-5);margin-bottom:var(--s-3)}
	.stx-wor .compare-row .row-label{display:block;min-height:0;border:0;border-bottom:1px solid var(--ink-700);padding:0 0 var(--s-3);margin-bottom:6px;font-size:15px;font-weight:500;color:var(--ink-50);line-height:1.3}
	.stx-wor .compare-row .cell{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;min-height:0;border:0;border-top:1px solid var(--ink-800);padding:11px 0;font-size:13px}
	.stx-wor .compare-row .cell:first-of-type{border-top:0}
	.stx-wor .compare-row .cell::before{content:attr(data-col);color:var(--ink-400);font-size:12px;letter-spacing:0;line-height:1.3}
	.stx-wor .compare-row .cell .cell-text{text-align:right}
	.stx-wor .compare-row .cell.is-us{margin-inline:-10px;padding-inline:10px;background:rgba(255,255,255,0.035);border-radius:8px;border-top-color:transparent}
	.stx-wor .compare-row .cell.is-us::before{color:var(--ink-100);font-weight:500}
}

/* (e) Hero — tighten the first section so it reads cleanly on a phone. */
@media (max-width:600px){
	.stx-wor .hero-img{min-height:74vh}
	.stx-wor .hero-img__title{font-size:clamp(31px,8.4vw,44px);line-height:1.05;letter-spacing:-0.02em}
	.stx-wor .hero-img__lede{font-size:15px;line-height:1.5}
	.stx-wor .hero-img__eyebrow{margin-bottom:var(--s-4)}
	.stx-wor .hero-img__eyebrow .eyebrow{font-size:11.5px;padding:6px 12px}
	.stx-wor .hero-img__row{margin-top:var(--s-5);gap:var(--s-4)}
	.stx-wor .hero-img__cta{gap:10px}
	.stx-wor .hero-img__cta .btn{height:46px;padding:0 20px;font-size:14px;flex:1 1 auto;justify-content:center}
	.stx-wor .hero-img__caption-inner{padding-block:14px;gap:10px}
	.stx-wor .hero-img__caption-meta{font-size:11.5px;gap:12px}

	/* (e) Guide / lead magnet — stack the email field and the submit button,
	   and give the email input a comfortable (taller) tap target. */
	.stx-wor .resource__form{flex-direction:column;align-items:stretch;max-width:none}
	.stx-wor .resource__form input[type=email]{flex:none;width:100%;height:54px;font-size:15px}
	.stx-wor .resource__form .btn{width:100%;justify-content:center;height:54px}
}
