/* The Tool We Needed v2 (page-tool-we-needed-v2.php). New Opti-mized style: dark navy Hero A folds, highlight panel,
   Insiders-style cards + gradient icon squares in the logo colours, blue pill CTA. One screen per fold at 1440x800. */
@font-face { font-family:'Averta CY Web'; src:url('../fonts/om/AvertaCY-Regular.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:'Averta CY Web'; src:url('../fonts/om/AvertaCY-Semibold.woff2') format('woff2'); font-weight:600; font-style:normal; font-display:swap; }
.tw2 { --ink:#1D1D1B; --body:#3F4250; --muted:#6B7080; --b:#4DAAE8; --g:#98C355; --y:#F7CA50; --r:#DB4B46; --cta:linear-gradient(135deg,#2f7ff0,#1353e9);
  --font:'Averta CY Web','Averta CY',sans-serif; font-family:var(--font); color:var(--body); overflow:hidden; }
.tw2, .tw2 *, .tw2 + .obr, .obr * { font-family:var(--font) !important; }
.tw2 h1, .tw2 h2, .tw2 h3, .tw2 b, .tw2 strong { font-weight:600 !important; color:var(--ink); }
.tw2 p { margin:0 0 14px; font-size:17px; line-height:1.6; }
.tw-wrap { max-width:1240px; margin:0 auto; padding:0 32px; box-sizing:border-box; width:100%; }
.tw-fold { position:relative; min-height:min(800px,100vh); box-sizing:border-box; display:flex; align-items:center; padding:96px 0 56px; }
.tw-fold:first-child { padding-top:104px; }
.tw-light { background:#fff; } .tw-light + .tw-light { background:#f7f9fc; }
.tw-found, .tw-miss { background:#f7f9fc !important; }
.tw-dark { background:radial-gradient(120% 90% at 70% 40%,#16223d 0,#0a1020 55%,#05080f 100%); color:#c6cfe2; }
.tw-dark h1, .tw-dark h2, .tw-dark h3, .tw-dark b { color:#fff; }
.tw-dark p { color:#c6cfe2; }
.tw2 h1 { font-size:clamp(40px,4.4vw,64px); line-height:1.04; letter-spacing:-.6px; margin:0 0 20px; }
.tw2 h2 { font-size:clamp(30px,3.1vw,44px); line-height:1.1; letter-spacing:-.4px; margin:0 0 18px; }
.tw2 h1 em, .tw2 h2 em { font-style:normal; color:#2F8FD0; } .tw-dark h1 em, .tw-dark h2 em { color:var(--b); }
.tw-eyebrow { display:flex; align-items:center; gap:5px; margin:0 0 16px !important; font-size:11.5px !important; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:#2f7fb8 !important; }
.tw-eyebrow i { width:6px; height:6px; border-radius:50%; background:var(--b); } .tw-eyebrow i:nth-child(2) { background:var(--g); } .tw-eyebrow i:nth-child(3) { background:var(--y); } .tw-eyebrow i:nth-child(4) { background:var(--r); margin-right:6px; }
.tw-eyebrow--l { color:#8CC8F0 !important; } .tw-eyebrow--c { justify-content:center; }
.tw-lead { font-size:19px !important; } .tw-lead--b { color:#fff !important; font-weight:600; }
.tw-sub { max-width:780px; margin:0 auto 26px !important; font-size:18px !important; }
.tw-punch { font-size:19px !important; font-weight:600; color:var(--ink) !important; line-height:1.4 !important; } .tw-dark .tw-punch { color:#fff !important; }
.tw-center { text-align:center; } .tw-head { text-align:center; margin-bottom:28px; }
.tw-back { display:inline-flex; gap:8px; margin-bottom:22px; font-size:14px; color:#aab6d8 !important; text-decoration:none; } .tw-back:hover { color:#fff !important; }
/* buttons */
.tw-ctas { display:flex; flex-wrap:wrap; align-items:center; gap:14px 24px; margin-top:26px; } .tw-ctas--c { justify-content:center; }
.tw2 .tw-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:56px; padding:0 30px; border-radius:999px; background:var(--cta); color:#fff !important; font-weight:600; font-size:16.5px; text-decoration:none; box-shadow:0 10px 28px -10px rgba(19,83,233,.6),0 2px 6px -2px rgba(19,83,233,.3); transition:transform .18s, box-shadow .18s; }
.tw2 .tw-btn:hover { transform:translateY(-2px); box-shadow:0 16px 34px -12px rgba(19,83,233,.65); }
.tw2 .tw-btn--ghost { background:transparent; border:1.5px solid rgba(255,255,255,.3); box-shadow:none; }
.tw-link { color:#fff !important; font-weight:600; text-decoration:underline; text-underline-offset:4px; font-size:16px; }
.tw-under { margin-top:16px !important; font-size:14px !important; color:#8f9ab5 !important; }
/* icon squares */
.tw-ic { flex:0 0 40px; width:40px; height:40px; border-radius:12px; display:grid; place-items:center; color:#fff; }
.tw-ic svg { width:20px; height:20px; display:block; }
.tw-ic--b { background:linear-gradient(145deg,#6cbcf0,#4DAAE8); box-shadow:0 8px 18px -8px #4DAAE8; }
.tw-ic--g { background:linear-gradient(145deg,#aed173,#98C355); box-shadow:0 8px 18px -8px #98C355; }
.tw-ic--y { background:linear-gradient(145deg,#ffd86f,#F7CA50); box-shadow:0 8px 18px -8px #F7CA50; color:#1D1D1B; }
.tw-ic--r { background:linear-gradient(145deg,#e86d68,#DB4B46); box-shadow:0 8px 18px -8px #DB4B46; }
/* cards */
.tw-cards { list-style:none; margin:0; padding:0; display:grid; gap:14px; }
.tw-card { position:relative; background:#fff; border:1px solid #edf0f5; border-radius:22px; padding:18px 20px; box-shadow:0 24px 60px -34px rgba(29,29,27,.35); display:flex; gap:14px; align-items:center; }
.tw-card b { font-size:17px; line-height:1.3; }
/* split */
.tw-split { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.tw-split--flip > :first-child { order:2; } .tw-split--wide { grid-template-columns:.9fr 1.1fr; gap:48px; }
/* hero */
.tw-hero__grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:32px; align-items:center; }
.tw-hero__art { margin:0 -60px 0 0; }
.tw-fac { position:relative; aspect-ratio:1800/965; }
.tw-fac img { position:absolute; inset:0; width:100%; height:100%; display:block; }
.tw-fac__spot { -webkit-mask:radial-gradient(circle at var(--x) var(--y),#000 0,#000 7%,transparent 13%); mask:radial-gradient(circle at var(--x) var(--y),#000 0,#000 7%,transparent 13%); opacity:0; animation:twSpot 9s calc(var(--i) * 1.5s) infinite; }
@keyframes twSpot { 0%,100% { opacity:0; } 6%,18% { opacity:1; } 26% { opacity:0; } }
.tw-fac__tag { position:absolute; transform:translate(-50%,-160%); opacity:.35; animation:twTag 9s calc(var(--i) * 1.5s) infinite; }
.tw-fac__tag .tw-ic { width:34px; height:34px; flex-basis:34px; border-radius:10px; outline:4px solid rgba(255,255,255,.08); }
.tw-fac__tag .tw-ic svg { width:17px; height:17px; }
@keyframes twTag { 0%,100% { opacity:.3; transform:translate(-50%,-150%) scale(.9); } 6%,18% { opacity:1; transform:translate(-50%,-175%) scale(1.08); } 26% { opacity:.3; } }
/* 2 assumed */
.tw-quote { margin:22px 0 0; padding:18px 22px; border-left:4px solid var(--b); background:rgba(77,170,232,.08); border-radius:0 16px 16px 0; }
.tw-quote p { margin:0 !important; font-size:18px !important; font-weight:600; color:var(--ink) !important; line-height:1.45 !important; }
.tw-qs__k { font-size:13px !important; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--muted) !important; }
.tw-cards--q .tw-card:nth-child(even) { margin-left:42px; }
/* 3 expect */
.tw-tiles { list-style:none; padding:0; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; max-width:880px; text-align:left; }
.tw-tile { display:flex; gap:12px; align-items:center; padding:12px 14px; border-radius:16px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.09); }
.tw-tile b { display:block; font-size:15.5px; } .tw-tile small { display:block; margin-top:2px; font-size:13.5px; color:#aab6d8; }
.tw2 .tw-hl { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); margin-top:24px; }
.tw-expect .tw-hl .opti-hl__lines { grid-template-columns:repeat(3,auto); justify-content:center; gap:.7rem 2.4rem; }
.tw2 .opti-hl__punch { font-size:clamp(1.1rem,1.9vw,1.4rem) !important; color:#cfe3ff !important; margin-bottom:0 !important; }
.tw2 .opti-hl li { color:#fff; }
/* 4 found */
.tw-cards--tools { grid-template-columns:repeat(6,1fr); gap:14px; }
.tw-tool { flex-direction:column; align-items:stretch; padding:10px 10px 14px; }
.tw-tool__art { position:relative; display:block; aspect-ratio:1; border-radius:14px; overflow:hidden; background-size:340%; background-position:var(--pos); }
.tw-tool__art i { position:absolute; inset:0; background-size:340%; background-position:var(--pos); -webkit-mask:radial-gradient(circle at 50% 50%,transparent 0 26%,#000 46%); mask:radial-gradient(circle at 50% 50%,transparent 0 26%,#000 46%); }
.tw-tool__art::after { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 50%,transparent 0 30%,rgba(5,8,15,.82) 52%); }
.tw-tool__row { display:flex; gap:10px; align-items:center; padding:0 4px; }
.tw-tool__row .tw-ic { width:34px; height:34px; flex-basis:34px; border-radius:10px; } .tw-tool__row .tw-ic svg { width:17px; height:17px; }
.tw-tool b { display:block; font-size:15px; } .tw-tool small { display:block; font-size:13px; color:var(--muted); }
.tw-band { margin:26px auto 0 !important; max-width:980px; padding:18px 28px; border-radius:22px; background:#0f172a; color:#c6cfe2 !important; text-align:center; }
.tw-band b { color:#fff; }
/* 5 ring */
.tw-ring { position:relative; margin:0 auto; width:min(440px,100%); aspect-ratio:1; }
.tw-ring__svg { position:absolute; inset:0; width:100%; height:100%; transform:rotate(-90deg); }
.tw-ring__track { fill:none; stroke:rgba(255,255,255,.12); stroke-width:2; stroke-dasharray:4 8; }
.tw-ring__run { fill:none; stroke:url(#none); stroke:var(--b); stroke-width:3; stroke-linecap:round; stroke-dasharray:14 86; animation:twRun 6s linear infinite; filter:drop-shadow(0 0 6px #4DAAE8); }
@keyframes twRun { to { stroke-dashoffset:-100; } }
.tw-ring__n { position:absolute; left:50%; top:50%; display:flex; flex-direction:column; align-items:center; gap:6px; transform:translate(-50%,-50%) rotate(var(--a)) translate(min(165px,37.5vw)) rotate(calc(var(--a) * -1)); }
.tw-ring__n .tw-ic { width:52px; height:52px; flex-basis:52px; border-radius:16px; animation:twPop 6s calc(var(--i) * 1s) infinite; }
.tw-ring__n .tw-ic svg { width:24px; height:24px; }
.tw-ring__n b { font-size:13px; color:#c6cfe2 !important; }
@keyframes twPop { 0%,12%,100% { transform:scale(1); } 5% { transform:scale(1.18); } }
.tw-ring__core { position:absolute; left:50%; top:50%; width:46%; aspect-ratio:1; transform:translate(-50%,-50%); border-radius:50%; overflow:hidden; background:radial-gradient(circle,rgba(77,170,232,.25),transparent 70%); display:grid; place-items:center; }
.tw-ring__core img { width:150%; max-width:none; }
/* 6 cal */
.tw-who { list-style:none; padding:0; margin:4px 0 18px; display:flex; flex-wrap:wrap; gap:10px; }
.tw-who li { display:flex; align-items:center; gap:10px; padding:8px 14px 8px 8px; background:#fff; border:1px solid #edf0f5; border-radius:14px; font-weight:600; color:var(--ink); font-size:15px; box-shadow:0 14px 30px -24px rgba(29,29,27,.4); }
.tw-who .tw-ic { width:32px; height:32px; flex-basis:32px; border-radius:9px; } .tw-who .tw-ic svg { width:16px; height:16px; }
.tw-cal { margin:0; padding:26px; border-radius:26px; background:radial-gradient(120% 90% at 70% 30%,#16223d 0,#0a1020 60%,#05080f 100%); box-shadow:0 30px 60px -30px rgba(5,8,15,.8); display:flex; flex-direction:column; gap:18px; }
.tw-cal__row { display:flex; align-items:center; gap:16px; padding-bottom:16px; border-bottom:1px solid rgba(255,255,255,.08); }
.tw-cal__row:last-child { border:0; padding:0; }
.tw-cal__dots { flex:1; display:flex; flex-wrap:wrap; gap:6px; }
.tw-cal__dots i { width:14px; height:14px; border-radius:4px; background:rgba(255,255,255,.08); }
.tw-cal__dots--1 i { background:var(--r); box-shadow:0 0 12px var(--r); }
.tw-cal__dots--12 i { background:var(--y); box-shadow:0 0 10px rgba(247,202,80,.6); }
.tw-cal__dots--365 { display:grid; grid-template-columns:repeat(31,1fr); gap:3px; }
.tw-cal__dots--365 i { width:auto; aspect-ratio:1; height:auto; border-radius:2px; background:var(--b); box-shadow:0 0 5px rgba(77,170,232,.6); }
.tw-js .tw-cal__dots--365 i { opacity:.08; transition:opacity .25s calc(var(--d) * 6ms); }
.tw-js .tw-cal.is-in .tw-cal__dots--365 i { opacity:1; }
/* 7 reveal */
.tw-real .tw-hl--l { text-align:left; margin:18px 0 0; padding:1.4rem 1.6rem; }
.tw-real .tw-hl--l .opti-hl__lines li { font-size:1.08rem; }
.tw-real .tw-hl--l .opti-hl__punch { font-size:1.05rem !important; line-height:1.45; }
.tw-reveal { position:relative; margin:0 -60px 0 0; aspect-ratio:1800/965; }
.tw-reveal img { position:absolute; inset:0; width:100%; height:100%; }
.tw-reveal__b { clip-path:inset(0 0 0 0); }
.tw-reveal__scan { position:absolute; top:0; bottom:0; left:100%; width:3px; background:linear-gradient(#4DAAE800,#4DAAE8,#98C355,#4DAAE800); box-shadow:0 0 24px 6px rgba(77,170,232,.5); opacity:0; }
.tw-js .tw-reveal__b { clip-path:inset(0 100% 0 0); }
.tw-js .tw-reveal.is-in .tw-reveal__b { clip-path:inset(0 0 0 0); transition:clip-path 2.6s cubic-bezier(.6,.1,.3,1) .4s; }
.tw-js .tw-reveal.is-in .tw-reveal__scan { animation:twScan 2.6s cubic-bezier(.6,.1,.3,1) .4s forwards; }
@keyframes twScan { 0% { left:0; opacity:1; } 92% { opacity:1; } 100% { left:100%; opacity:0; } }
/* 2 cards slide in */
.tw-js .tw2 [data-rv] .tw-card { opacity:0; transform:translateY(16px); transition:opacity .5s, transform .5s; }
.tw-js .tw2 [data-rv].is-in .tw-card { opacity:1; transform:none; }
.tw-js .tw2 [data-rv].is-in .tw-card:nth-child(2) { transition-delay:.12s; } .tw-js .tw2 [data-rv].is-in .tw-card:nth-child(3) { transition-delay:.24s; }
.tw-js .tw2 [data-rv].is-in .tw-card:nth-child(4) { transition-delay:.36s; } .tw-js .tw2 [data-rv].is-in .tw-card:nth-child(5) { transition-delay:.48s; } .tw-js .tw2 [data-rv].is-in .tw-card:nth-child(6) { transition-delay:.6s; }
/* benefit row on this page */
.tw2 + .obr, main.tw2 .obr { background:#f7f9fc; }
.tw2 .obr__h, .tw2 .obr__it b { color:var(--ink); }
.tw-end { min-height:min(640px,100vh); }
@media (prefers-reduced-motion: reduce) { .tw2 *, .tw2 *::before, .tw2 *::after { animation:none !important; transition:none !important; } .tw-fac__spot { opacity:1; } .tw-fac__tag { opacity:1; } }
/* tablet / phone */
@media (max-width:1100px) { .tw-cards--tools { grid-template-columns:repeat(3,1fr); } }
@media (max-width:900px) {
  .tw-fold { min-height:0; padding:64px 0 48px; } .tw-fold:first-child { padding-top:96px; }
  .tw-wrap { padding:0 20px; }
  .tw-hero__grid, .tw-split, .tw-split--wide { grid-template-columns:1fr; gap:28px; }
  .tw-split--flip > :first-child { order:0; }
  .tw-hero__art, .tw-reveal { margin:0 -20px; }
  .tw2 h1 { font-size:38px; } .tw2 h2 { font-size:29px; }
  .tw2 p, .tw-sub { font-size:16px !important; } .tw-lead { font-size:17px !important; }
  .tw-tiles { grid-template-columns:1fr; }
  .tw-expect .tw-hl .opti-hl__lines { grid-template-columns:1fr; justify-content:start; }
  .tw-expect .tw-hl { text-align:left; }
  .tw-cards--q .tw-card:nth-child(even) { margin-left:0; }
  .tw-cards--tools { grid-template-columns:1fr 1fr; gap:10px; }
  .tw-ring__n .tw-ic { width:44px; height:44px; flex-basis:44px; }
  .tw2 .tw-btn { width:100%; } .tw-ctas { flex-direction:column; align-items:stretch; text-align:center; }
  .tw-cal { padding:18px; } .tw-cal__dots--365 { grid-template-columns:repeat(26,1fr); gap:2px; }
}
/* round 1 QA fixes */
@media (min-width:901px) { .tw-hero__grid { grid-template-columns:.8fr 1.2fr; } .tw-hero__art { margin:0 -140px 0 -20px; } }
.tw-fac__spot { filter:brightness(1.25) saturate(1.2); }
.tw2 .obr__h { font-weight:600 !important; }
.tw-back, .tw-link { min-height:44px; align-items:center; display:inline-flex; gap:8px; }
.tw-back { margin-bottom:10px; }
@media (max-width:900px) { .tw-link { justify-content:center; } }
/* ===== Round 2 (Oct 19 2026): one icon style (tinted square + 2px line glyph, as nav / benefit row), aligned grids, less text ===== */
.tw2 .tw-ic { flex:0 0 44px; width:44px; height:44px; border-radius:12px; box-shadow:none; background:var(--t); color:var(--c); }
.tw2 .tw-ic svg { width:22px; height:22px; }
.tw2 .tw-ic--b { --t:rgba(77,170,232,.14); --c:#2A8BD0; } .tw2 .tw-ic--g { --t:rgba(152,195,85,.2); --c:#5E9B2A; }
.tw2 .tw-ic--y { --t:rgba(247,202,80,.24); --c:#B88A0E; } .tw2 .tw-ic--r { --t:rgba(219,75,70,.12); --c:#DB4B46; }
.tw-dark .tw-ic, .tw2 .tw-fac__tag .tw-ic, .tw2 .tw-cal .tw-ic { background:color-mix(in srgb,var(--c) 22%,#0a1020); border:1px solid color-mix(in srgb,var(--c) 45%,transparent); }
.tw-dark .tw-ic--b, .tw2 .tw-fac__tag .tw-ic--b, .tw2 .tw-cal .tw-ic--b { --c:#4DAAE8; } .tw-dark .tw-ic--g, .tw2 .tw-fac__tag .tw-ic--g { --c:#98C355; }
.tw-dark .tw-ic--y, .tw2 .tw-cal .tw-ic--y { --c:#F7CA50; } .tw-dark .tw-ic--r, .tw2 .tw-cal .tw-ic--r { --c:#DB4B46; }
.tw2 .tw-fac__tag .tw-ic, .tw2 .tw-tool__row .tw-ic, .tw2 .tw-who .tw-ic, .tw2 .tw-ring__n .tw-ic { width:44px; height:44px; flex-basis:44px; border-radius:12px; outline:0; }
.tw2 .tw-fac__tag .tw-ic svg, .tw2 .tw-tool__row .tw-ic svg, .tw2 .tw-who .tw-ic svg, .tw2 .tw-ring__n .tw-ic svg { width:22px; height:22px; }
/* pain: 3 equal cards */
.tw-grid3 { list-style:none; margin:0 auto; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; max-width:1040px; }
.tw-card--v { flex-direction:column; align-items:flex-start; gap:0; padding:28px; }
.tw-card--v .tw-ic { margin-bottom:20px; }
.tw-card--v b { font-size:22px; line-height:1.25; margin-bottom:8px; } .tw-card--v span:not(.tw-ic) { font-size:17px; color:var(--body); line-height:1.45; }
.tw-pain .tw-band { margin-top:32px !important; font-size:17px; line-height:1.55; padding:22px 32px; }
.tw-head h2 { max-width:900px; margin-left:auto; margin-right:auto; }
/* search: clean numbered list */
.tw-qlist { list-style:none; margin:0; padding:0; display:grid; gap:12px; counter-reset:none; }
.tw-qlist li { display:flex; align-items:center; gap:18px; padding:18px 22px; border-radius:18px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1); font-size:19px; font-weight:600; color:#fff; line-height:1.3; }
.tw-qlist__n { flex:0 0 44px; height:44px; border-radius:12px; display:grid; place-items:center; font-size:15px; letter-spacing:.04em; color:#4DAAE8; background:rgba(77,170,232,.14); border:1px solid rgba(77,170,232,.35); }
.tw-qlist li:nth-child(2) .tw-qlist__n { color:#98C355; background:rgba(152,195,85,.14); border-color:rgba(152,195,85,.35); }
.tw-qlist li:nth-child(3) .tw-qlist__n { color:#F7CA50; background:rgba(247,202,80,.14); border-color:rgba(247,202,80,.35); }
.tw-qlist li:nth-child(4) .tw-qlist__n { color:#DB4B46; background:rgba(219,75,70,.14); border-color:rgba(219,75,70,.4); }
.tw-js .tw2 .tw-qlist li { opacity:0; transform:translateX(16px); transition:opacity .45s, transform .45s; }
.tw-js .tw2 .tw-qlist.is-in li { opacity:1; transform:none; }
.tw-js .tw2 .tw-qlist.is-in li:nth-child(2) { transition-delay:.1s; } .tw-js .tw2 .tw-qlist.is-in li:nth-child(3) { transition-delay:.2s; } .tw-js .tw2 .tw-qlist.is-in li:nth-child(4) { transition-delay:.3s; } .tw-js .tw2 .tw-qlist.is-in li:nth-child(5) { transition-delay:.4s; }
/* found */
.tw-found .tw-band { padding:16px 28px; font-size:18px; max-width:640px; }
.tw-tool { padding:12px 12px 16px; } .tw-tool__row { gap:12px; padding:4px 2px 0; } .tw-tool__art { margin-bottom:12px; }
/* aha panel single column, left */
.tw-real .tw-hl--l .opti-hl__lines li { font-size:1.25rem; }
.tw-real .tw-hl--l .opti-hl__lines li:last-child { color:#8CC8F0; }
/* even rhythm */
.tw2 .tw-txt h2 { max-width:560px; }
.tw-who { gap:12px; } .tw-who li { padding:8px 16px 8px 8px; }
.tw-ring__n b { margin-top:2px; }
@media (max-width:900px) {
  .tw-grid3 { grid-template-columns:1fr; gap:12px; }
  .tw-card--v { flex-direction:row; align-items:center; gap:16px; padding:18px; flex-wrap:wrap; }
  .tw-card--v .tw-ic { margin:0; } .tw-card--v b { font-size:18px; margin:0; flex:1; } .tw-card--v span:not(.tw-ic) { flex-basis:100%; padding-left:60px; margin-top:-6px; font-size:15.5px; }
  .tw-qlist li { font-size:17px; padding:14px 16px; }
  .tw-pain .tw-band { padding:18px 20px; font-size:15.5px; }
}
.tw2 .tw-fac__tag .tw-ic { background:color-mix(in srgb,var(--c) 40%,#0a1020); border-color:var(--c); color:#fff; }
.tw-who { display:grid; grid-template-columns:repeat(3,auto); justify-content:start; }
.tw-who li { white-space:nowrap; }
@media (max-width:600px) {
  .tw-cards--tools { grid-template-columns:1fr; gap:10px; }
  .tw-tool { flex-direction:row; align-items:center; gap:14px; padding:10px; }
  .tw-tool__art { flex:0 0 76px; width:76px; margin:0; }
  .tw-tool__row { flex:1; min-width:0; }
  .tw-who { grid-template-columns:1fr; }
}
/* ===== Pain options (?pain=1..3) ===== */
.tw-pv { display:none; } .tw-pain:not([data-pain]) .tw-pv--1, .tw-pain[data-pain="1"] .tw-pv--1, .tw-pain[data-pain="2"] .tw-pv--2, .tw-pain[data-pain="3"] .tw-pv--3 { display:block; }
.tw-pain .tw-wrap > .tw-pv { width:100%; }
.tw-pain .tw-head { margin-bottom:32px; }
/* accents */
.tw-scene--r { --ac:#DB4B46; } .tw-scene--y { --ac:#F7CA50; } .tw-scene--b { --ac:#4DAAE8; } .tw-scene--g { --ac:#98C355; }
/* option 1: scene cards */
.tw-scenes { list-style:none; margin:0 auto; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; max-width:1120px; }
.tw-scene { position:relative; display:flex; flex-direction:column; padding:28px 28px 30px; background:#fff; border:1px solid #edf0f5; border-top:4px solid var(--ac); border-radius:22px; box-shadow:0 24px 60px -34px rgba(29,29,27,.35); overflow:hidden; }
.tw-scene::after { content:""; position:absolute; right:-40px; top:-40px; width:140px; height:140px; border-radius:50%; background:var(--ac); opacity:.08; }
.tw2 .tw-scene .tw-ic, .tw2 .tw-day .tw-ic { width:56px; height:56px; flex-basis:56px; border-radius:16px; margin-bottom:18px; }
.tw2 .tw-scene .tw-ic svg, .tw2 .tw-day .tw-ic svg { width:28px; height:28px; }
.tw-scene small { font-size:12.5px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin-bottom:6px; }
.tw-scene b { font-size:24px; line-height:1.2; margin-bottom:10px; }
.tw-scene span:not(.tw-ic) { font-size:17px; line-height:1.5; color:var(--body); }
.tw-turn { margin:32px auto 0 !important; max-width:760px; padding:22px 32px; border-radius:22px; background:#0f172a; text-align:center; font-size:clamp(22px,2.2vw,28px) !important; line-height:1.25 !important; }
.tw-turn b { color:#fff; } .tw-turn span { color:#8CC8F0; font-weight:600; }
.tw-turn--l { text-align:left; margin:22px 0 0 !important; font-size:22px !important; }
/* option 2: checklist */
.tw-split--pain { grid-template-columns:.8fr 1.2fr; }
.tw-split--pain h2 { font-size:clamp(40px,4.2vw,58px); }
.tw-check { list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.tw-check li { display:flex; align-items:center; gap:18px; padding:18px 22px; background:#fff; border:1px solid #edf0f5; border-radius:18px; box-shadow:0 18px 44px -30px rgba(29,29,27,.35); font-size:19px; font-weight:600; color:var(--ink); line-height:1.35; }
.tw-check i { display:block; }
.tw-js .tw-check .tw-ic { transform:scale(0); transition:transform .35s cubic-bezier(.3,1.6,.5,1); }
.tw-js .tw-check li { opacity:.35; transition:opacity .4s; }
.tw-js .tw-check.is-in li { opacity:1; } .tw-js .tw-check.is-in .tw-ic { transform:scale(1); }
.tw-js .tw-check.is-in li:nth-child(2), .tw-js .tw-check.is-in li:nth-child(2) .tw-ic { transition-delay:.35s; }
.tw-js .tw-check.is-in li:nth-child(3), .tw-js .tw-check.is-in li:nth-child(3) .tw-ic { transition-delay:.7s; }
.tw-js .tw-check.is-in li:nth-child(4), .tw-js .tw-check.is-in li:nth-child(4) .tw-ic { transition-delay:1.05s; }
.tw-js .tw-check.is-in li:nth-child(5), .tw-js .tw-check.is-in li:nth-child(5) .tw-ic { transition-delay:1.4s; }
/* option 3: day timeline */
.tw-day { list-style:none; margin:0 auto; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:18px; max-width:1180px; position:relative; }
.tw-day::before { content:""; position:absolute; left:4%; right:4%; top:14px; height:2px; background:linear-gradient(90deg,#F7CA50,#DB4B46,#4DAAE8,#98C355); opacity:.5; }
.tw-day__it { position:relative; display:flex; flex-direction:column; padding:44px 24px 26px; background:#fff; border:1px solid #edf0f5; border-radius:22px; box-shadow:0 24px 60px -34px rgba(29,29,27,.35); margin-top:14px; }
.tw-day__it time { position:absolute; top:-14px; left:24px; padding:5px 12px; border-radius:999px; background:#0f172a; color:#fff; font-size:14px; font-weight:600; border:2px solid var(--ac); }
.tw-day__it b { font-size:21px; line-height:1.25; margin-bottom:8px; } .tw-day__it span:not(.tw-ic) { font-size:16px; line-height:1.5; color:var(--body); }
.tw-day__cap { text-align:center; margin:12px 0 0 !important; font-size:13px !important; color:var(--muted); }
.tw-pv--3 .tw-turn { margin-top:18px !important; }
.tw-js .tw2 .tw-day .tw-day__it { opacity:0; transform:translateY(14px); transition:opacity .5s, transform .5s; }
.tw-js .tw2 .tw-day.is-in .tw-day__it { opacity:1; transform:none; }
.tw-js .tw2 .tw-day.is-in .tw-day__it:nth-child(2) { transition-delay:.25s; } .tw-js .tw2 .tw-day.is-in .tw-day__it:nth-child(3) { transition-delay:.5s; } .tw-js .tw2 .tw-day.is-in .tw-day__it:nth-child(4) { transition-delay:.75s; }
.tw-js .tw2 .tw-scenes .tw-scene { opacity:0; transform:translateY(14px); transition:opacity .5s, transform .5s; }
.tw-js .tw2 .tw-scenes.is-in .tw-scene { opacity:1; transform:none; }
.tw-js .tw2 .tw-scenes.is-in .tw-scene:nth-child(2) { transition-delay:.15s; } .tw-js .tw2 .tw-scenes.is-in .tw-scene:nth-child(3) { transition-delay:.3s; }
@media (max-width:900px) {
  .tw-scenes, .tw-day { grid-template-columns:1fr; gap:14px; } .tw-day::before { display:none; }
  .tw-scene { padding:22px; } .tw-scene b { font-size:21px; }
  .tw2 .tw-scene .tw-ic { width:48px; height:48px; flex-basis:48px; margin-bottom:12px; }
  .tw-split--pain { grid-template-columns:1fr; } .tw-split--pain h2 { font-size:38px; }
  .tw-check li { font-size:16.5px; padding:14px 16px; gap:14px; }
  .tw-turn { font-size:21px !important; padding:18px 20px; }
  .tw-day__it { padding:38px 20px 20px; }
}
@media (max-width:900px) { .tw-split--pain { gap:16px; } .tw-split--pain .tw-txt { display:contents; } .tw-split--pain .tw-check { order:5; } .tw-split--pain .tw-turn--l { order:6; margin-top:6px !important; } .tw-split--pain h2 { margin-bottom:0; } }
