/* Choose a tool, try a round, then get help. Each job has its own full-width
   surface; the inner content keeps the same edges from top to bottom. */
.td-directory {
  --td-ink: var(--mu-ink, #183541);
  --td-muted: var(--mu-muted, #4c6573);
  --td-border: var(--mu-line, #dce4e6);
  --td-sand: var(--mu-paper);
  --td-blue: var(--mu-blue);
  --td-navy: var(--mu-dark);
  --td-section-space: clamp(36px, 4vw, 54px);
  color: var(--td-ink);
  background: var(--mu-white);
}
.td-directory .wrap { width: min(1240px, calc(100% - 88px)); }
.td-directory :is(h1, h2, h3) { font-family: 'Manrope', sans-serif; }
.td-directory p { margin: 0; }
.td-directory .td-kicker {
  margin: 0 0 15px;
  color: #096a9b;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .1em;
  line-height: 1.5;
}
.td-intro {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 32px;
  padding-block: 38px 34px;
}
.td-intro h1 { font-size: clamp(38px, 4vw, 51px); line-height: 1.1; letter-spacing: -.045em; }
.td-intro .td-intro-copy { margin-top: 14px; max-width: 620px; font-size: 18px; line-height: 1.55; color: var(--td-muted); }
.td-intro-note { display: flex; align-items: center; gap: 12px; padding-bottom: 4px; flex: 0 0 auto; }
.td-free-mark { display: grid; place-items: center; width: 35px; height: 35px; border-radius: 50%; background: #e7f3e8; color: #28753e; font-weight: 900; font-size: 19px; }
.td-intro-note strong, .td-intro-note div > span { display: block; }
.td-intro-note strong { font-size: 15px; font-weight: 900; }
.td-intro-note div > span { font-size: 14px; color: var(--td-muted); margin-top: 2px; }
.td-workbench { background: var(--td-sand); border-top: 1px solid var(--mu-paper-line); padding-block: 30px 36px; scroll-margin-top: 20px; }
.td-section-label { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-bottom: 22px; }
.td-section-label h2 { font-size: 23px; letter-spacing: -.025em; line-height: 1.3; }
.td-section-label p { margin-top: 6px; font-size: 14px; line-height: 1.5; color: var(--td-muted); }
.td-section-label > a { flex: 0 0 auto; display: flex; align-items: center; min-height: 40px; font-size: 13px; color: var(--td-muted); padding-block: 8px; }
.td-section-label > a span { color: #166989; font-weight: 850; margin-left: 5px; }
.td-section-label > a:hover span, .td-draft-note a:hover { text-decoration: underline; text-underline-offset: 4px; }
.td-tools-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.td-tool {
  --td-accent: #167ba4;
  --td-soft: #eef7fa;
  display: flex;
  flex-direction: column;
  min-width: 0;
  border: 1px solid #d3d8d5;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 2px 5px #28362f08;
  transition: border-color .16s, box-shadow .16s;
  scroll-margin-top: 20px;
}
.td-popup:hover { border-color: var(--td-accent); box-shadow: 0 5px 16px #16394312; }
.td-tool:focus-visible { outline-color: var(--td-accent); outline-offset: 5px; }
.td-sms { --td-accent: #334d42; --td-soft: #edf2ee; }
.td-popup { --td-accent: #387458; --td-soft: #eef5f0; }
.td-tool-copy { padding: 23px 24px 20px; }
.td-tool-icon { width: 33px; height: 33px; display: grid; place-items: center; float: right; margin: 0 0 12px 10px; border-radius: 8px; color: var(--td-accent); background: var(--td-soft); }
.td-tool-icon svg { width: 25px; height: 25px; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.td-tool h3 { font-size: 20px; line-height: 1.3; letter-spacing: -.035em; margin: 4px 0 13px; }
.td-tool-copy > p { clear: both; color: var(--td-muted); font-size: 15px; line-height: 1.55; min-height: 47px; }
.td-preview { margin: 0 16px; padding: 17px; height: 318px; background: var(--td-soft); border-radius: 10px; }
.td-preview-label { font-size: 10px; line-height: 1.4; font-weight: 900; letter-spacing: .065em; color: var(--td-accent); }
.td-preview-label > span { font-size: 11px; letter-spacing: 0; float: right; font-weight: 650; }
/* A sample, one result, one control. Keep each stage still when its state changes. */
.td-directory [hidden] { display: none !important; }
.td-tool .td-review-demo { display: flex; flex-direction: column; padding: 16px 16px 0; background: #f1f3f1; }
.td-email-sample { background: #fff; border-radius: 6px; overflow: hidden; box-shadow: 0 2px 8px #25352d0c; }
.td-mail-subject { height: 40px; display: flex; align-items: center; padding: 8px 13px; }
.td-mail-subject > strong { font-size: 12px; line-height: 1.3; font-weight: 750; color: #32443e; }
.td-mini-mail { display: grid; grid-template-columns: 43% 1fr; background: #fff8e8; }
.td-mini-mail > img { width: 100%; height: 210px; object-fit: cover; object-position: 32% 50%; }
.td-mini-mail > div { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-width: 0; padding: 16px 13px; }
.td-mini-mail > div > span:first-child { color: #784033; font-size: 8px; font-weight: 900; letter-spacing: .14em; }
.td-mini-mail > div > strong { font: 700 25px/1.02 Georgia, serif; letter-spacing: -.035em; color: #6b282a; margin-top: 13px; }
.td-mail-cta { display: inline-block; padding: 9px 10px; background: #743b31; color: #fff; border-radius: 2px; margin-top: 20px; font-size: 10px; line-height: 1.2; font-weight: 800; white-space: nowrap; }
.td-demo-control { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex: 1; min-height: 52px; }
.td-demo-control > span { color: #617269; font-size: 10px; line-height: 1.3; }
.td-demo-control button { flex: 0 0 auto; min-height: 40px; padding: 8px 0 8px 8px; border: 0; border-radius: 3px; background: transparent; font: 850 12px/1.3 'Nunito', sans-serif; color: #225b70; cursor: pointer; }
.td-demo-control button:hover { text-decoration: underline; text-underline-offset: 4px; }
.td-demo-control button > span { margin-left: 5px; }
.td-review-demo[data-fixed="true"] .td-mail-subject { background: #eaf4e9; }
.td-review-demo[data-fixed="true"] .td-mail-cta { background: #3e643a; }
/* Show the SMS in a phone crop; keep the count outside the shopper's screen. */
.td-tool .td-text-demo { padding: 0; background: #e9eeea; overflow: hidden; }
.td-text-sheet { display: flex; flex-direction: column; width: 100%; height: 100%; min-width: 0; }
.td-text-device-crop { display: flex; justify-content: center; flex: 1; min-height: 0; overflow: hidden; padding: 18px 22px 0; }
.td-text-device { width: 100%; max-width: 280px; min-height: 320px; border: 6px solid #252c2a; border-radius: 29px 29px 0 0; background: #fff; box-shadow: 0 0 0 1px #6b746e, 0 8px 20px #1e34251c; overflow: hidden; }
.td-text-contact { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 46px; border-bottom: 1px solid #dedfdf; background: #f6f6f7; color: #25282a; }
.td-text-avatar { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #263b32; color: #fff; font: 700 17px/1 Georgia, serif; }
.td-text-contact strong { font: 600 12px/1.3 -apple-system, BlinkMacSystemFont, 'Arial', sans-serif; }
.td-text-copy { padding: 17px 14px; }
.td-text-copy p { padding: 13px 14px; border-radius: 16px 16px 16px 4px; background: #e9e9eb; color: #222426; font: 15px/1.4 -apple-system, BlinkMacSystemFont, 'Arial', sans-serif; overflow-wrap: anywhere; }
.td-text-copy [data-text-emoji] { white-space: nowrap; }
.td-text-bottom { position: relative; display: flex; align-items: center; justify-content: space-between; flex: 0 0 70px; gap: 12px; padding: 12px 18px; border-top: 1px solid #d7ded9; background: #f5f7f4; }
.td-text-result { display: flex; align-items: baseline; gap: 6px; color: #243b30; white-space: nowrap; }
.td-text-result [data-text-parts] { font: 800 24px/1 'Manrope', sans-serif; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
.td-text-result > span { font-size: 12px; line-height: 1.3; font-weight: 750; }
.td-text-bottom button { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 42px; padding: 9px 11px; border: 1px solid #b8c8bc; border-radius: 6px; background: #fff; font: 850 12px/1.3 'Nunito', sans-serif; color: #2f4e3d; cursor: pointer; box-shadow: 0 1px 1px #243b3010; }
.td-text-bottom button:hover { border-color: #607e68; background: #e9f2e8; }
.td-popup-preview { padding: 26px 15px; }
.td-sample-popup { display: grid; grid-template-columns: 30% 1fr; margin-top: 13px; border: 1px solid #d6e0d5; border-radius: 7px; background: #fffef7; overflow: hidden; }
.td-sample-popup img { width: 100%; height: 222px; object-fit: cover; object-position: 44% center; }
.td-sample-popup > div { padding: 17px 12px; display: flex; flex-direction: column; justify-content: center; }
.td-sample-popup small { display: block; color: #586346; font-size: 8px; font-weight: 850; letter-spacing: .18em; }
.td-sample-popup strong { display: block; margin-top: 10px; font: 700 24px/1.04 Georgia, serif; color: #394d37; }
.td-sample-field { display: block; border: 1px solid #cbd6c6; border-radius: 3px; background: #fff; font-size: 10px; color: #6c7666; margin-top: 17px; padding: 7px; }
.td-sample-submit { display: block; border-radius: 3px; background: #3d613e; color: #fff; text-align: center; font-size: 10px; font-weight: 800; padding: 9px 3px; margin-top: 6px; }
.td-tool-footer { margin-top: auto; padding: 18px 24px 24px; }
.td-open { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 46px; padding: 11px 15px; color: var(--td-accent); border: 1px solid #d4e0e4; border-radius: 7px; font-size: 15px; font-weight: 900; background: #fff; transition: background .16s; }
.td-open:hover, .td-popup:hover .td-open { background: var(--td-soft); border-color: var(--td-accent); }
.td-open > span { font-size: 21px; line-height: 1; transition: transform .16s; }
.td-open:hover > span, .td-popup:hover .td-open > span { transform: translateX(3px); }
.td-workbench .td-draft-note { margin-top: 24px; display: flex; justify-content: center; flex-wrap: wrap; gap: 4px 8px; font-size: 14px; color: var(--td-muted); }
.td-draft-note a { color: #166989; font-weight: 850; }

/* The game is a page section, with one white playing surface. */
.td-game-chapter { background: var(--td-navy); color: #fff; scroll-margin-top: 20px; }
.td-play-section { padding-block: var(--td-section-space); display: grid; grid-template-columns: .88fr 1.12fr; align-items: start; gap: clamp(32px, 4vw, 64px); }
.td-game-copy .td-kicker { color: #b4d1db; display: flex; align-items: center; gap: 14px; margin-bottom: 19px; }
.td-game-copy .td-kicker > span { border-left: 1px solid #53737d; padding-left: 14px; text-transform: none; letter-spacing: 0; font-size: 12px; font-weight: 700; }
.td-game-copy h2 { color: #fff; font-size: clamp(30px, 3.4vw, 43px); line-height: 1.13; letter-spacing: -.045em; }
.td-game-copy > p:not(.td-kicker) { font-size: 16px; color: #cee0e5; margin-top: 17px; line-height: 1.6; max-width: 400px; }
.td-game-rule { border-left: 3px solid #b8db83; padding-left: 16px; margin-top: 25px; }
.td-game-rule > span { display: block; color: #bfd899; font-size: 10px; font-weight: 900; letter-spacing: .07em; }
.td-game-rule > strong { display: block; font-size: 18px; line-height: 1.4; margin-top: 5px; max-width: 290px; }
.td-game-rule > p { color: #c3d8df; font-size: 14px; line-height: 1.5; margin-top: 7px; max-width: 320px; }
.td-play-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 48px; padding: 12px 20px; background: #dff4b4; color: #234e27; font-size: 16px; font-weight: 900; border-radius: 7px; margin-top: 26px; transition: background .16s; }
.td-play-button:hover { background: #edffd2; }
.td-game-copy > small { display: block; margin-top: 12px; font-size: 12px; line-height: 1.5; color: #b5cbd2; }
.td-game-preview { min-width: 0; border-radius: 12px; background: #fff; color: var(--td-ink); overflow: hidden; }
.td-game-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 22px; border-bottom: 1px solid #e0e7e4; background: #f5f8f6; }
.td-game-top > strong { font-size: 11px; letter-spacing: .04em; color: #375447; }
.td-game-top > span { font-size: 11px; color: #62746a; }
.td-game-question { padding: 18px 22px 16px; }
.td-game-question h3 { font: 800 25px/1.25 'Manrope', sans-serif; letter-spacing: -.035em; }
.td-game-question p { font-size: 14px; line-height: 1.5; color: #4e645a; margin-top: 9px; }
.td-game-question small { display: block; font-size: 12px; line-height: 1.5; color: #617264; margin-top: 6px; }
.td-deal-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-inline: 22px; }
.td-deal-options button { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 12px 15px; text-align: left; border: 2px solid #cbd8d2; border-radius: 8px; background: #fff; color: #213d30; cursor: pointer; font-family: 'Nunito', sans-serif; transition: background .15s, border-color .15s, transform .15s; }
.td-deal-options button:hover { border-color: #668675; background: #f5f8f6; }
.td-deal-options button:active { transform: translateY(1px); }
.td-game-preview[data-game-outcome="win"] .td-deal-options button[aria-pressed="true"] { border-color: #268347; background: #eef8f0; }
.td-game-preview[data-game-outcome="loss"] .td-deal-options button[aria-pressed="true"] { border-color: #a36a20; background: #fff8eb; }
.td-deal-name { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 5px; font-size: 14px; font-weight: 900; }
.td-deal-options [data-game-value] { font: 800 28px/1.2 'Manrope', sans-serif; letter-spacing: -.04em; margin-top: 7px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.td-deal-options [data-game-metric] { font-size: 12px; color: #5a6c5b; line-height: 1.4; margin-top: 2px; }
.td-deal-pick { margin-top: 8px; font-size: 12px; font-weight: 850; color: #466654; }
.td-game-result { padding: 18px 22px 16px; scroll-margin-block: 110px 20px; }
.td-game-score-label { font-size: 10px; font-weight: 850; letter-spacing: .05em; color: #607169; }
.td-game-scoreboard { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 9px; margin-bottom: 15px; }
.td-game-score { min-width: 0; }
.td-game-score + .td-game-score { border-left: 1px solid #dce5e0; padding-left: 16px; }
.td-game-score > span { display: block; font-size: 13px; font-weight: 850; }
.td-game-score > strong { display: block; margin-top: 3px; font: 800 clamp(23px, 2.3vw, 30px)/1.2 'Manrope', sans-serif; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.td-game-score > small { display: block; font-size: 11px; margin-top: 4px; color: #65766d; }
.td-game-preview[data-game-outcome="win"] .td-game-your-score > strong { color: #23773c; }
.td-game-preview[data-game-outcome="loss"] .td-game-your-score > strong { color: #935c17; }
.td-game-verdict { display: flex; align-items: flex-start; gap: 10px; min-height: 124px; padding: 13px; background: #f3f6f4; border-radius: 8px; }
.td-game-verdict > div { min-width: 0; }
.td-game-verdict-icon { display: grid; place-items: center; flex: 0 0 24px; height: 24px; border-radius: 50%; background: #dfe9e3; color: #496555; font-weight: 900; }
.td-game-verdict strong { display: block; font-size: 17px; line-height: 1.4; }
.td-game-verdict p { margin-top: 5px; font-size: 13px; line-height: 1.45; color: #4f6458; }
.td-game-verdict .td-game-math { margin-top: 8px; font-size: 12px; line-height: 1.5; font-weight: 800; font-variant-numeric: tabular-nums; color: #304c3c; }
.td-game-math:empty { visibility: hidden; }
.td-game-preview[data-game-outcome="win"] .td-game-verdict { background: #edf8ee; }
.td-game-preview[data-game-outcome="win"] .td-game-verdict strong { color: #236b36; }
.td-game-preview[data-game-outcome="win"] .td-game-verdict-icon { background: #288449; color: #fff; }
.td-game-preview[data-game-outcome="loss"] .td-game-verdict { background: #fff5e4; }
.td-game-preview[data-game-outcome="loss"] .td-game-verdict strong { color: #85521a; }
.td-game-preview[data-game-outcome="loss"] .td-game-verdict-icon { background: #a36a20; color: #fff; }
.td-game-footnote { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 22px; border-top: 1px solid #e0e7e4; }
.td-game-footnote > span { font-size: 10px; line-height: 1.5; color: #68766a; }
.td-game-footnote a { display:inline-block; padding:6px 0 2px; color:#176f96; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.td-game-reset-slot { display: flex; align-items: center; min-width: 75px; min-height: 40px; }
.td-game-footnote button { flex-shrink: 0; min-height: 40px; border: 0; border-radius: 4px; padding: 5px 0 5px 8px; color: #375d3c; background: transparent; font: 850 12px/1.3 'Nunito', sans-serif; cursor: pointer; }
.td-game-footnote button:hover { text-decoration: underline; text-underline-offset: 4px; }
.td-game-noscript { padding: 12px 22px; font-size: 13px; }
.td-help-chapter { background: #fff; scroll-margin-top: 20px; }
.td-help { padding-block: var(--td-section-space); display: grid; grid-template-columns: .8fr 1.4fr; gap: 72px; }
.td-help-intro .td-kicker { margin-bottom: 12px; font-size: 11px; }
.td-help h2 { font-size: 28px; letter-spacing: -.035em; line-height: 1.2; }
.td-help-intro > p:last-child { max-width: 280px; font-size: 15px; color: var(--td-muted); margin-top: 12px; }
.td-faqs { border-top: 1px solid var(--td-border); }
.td-faqs details { border-bottom: 1px solid var(--td-border); }
.td-faqs summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-block: 18px; font-size: 15px; font-weight: 850; cursor: pointer; }
.td-faqs summary::-webkit-details-marker { display: none; }
.td-faqs summary > span { font-size: 22px; font-weight: 600; color: #5e7c80; line-height: 1; }
.td-faqs details[open] summary > span { transform: rotate(45deg); }
.td-faqs details > p { font-size: 15px; line-height: 1.65; color: var(--td-muted); padding: 0 40px 20px 0; }
.td-product-chapter { background: var(--td-blue); border-top: 1px solid #c8dce9; }
.td-product { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding-block: var(--td-section-space); }
.td-product .td-kicker { font-size: 10px; margin-bottom: 10px; }
.td-product h2 { font-size: 28px; line-height: 1.25; letter-spacing: -.035em; }
.td-product p:last-child { font-size: 15px; color: var(--td-muted); margin-top: 8px; max-width: 560px; }
.td-product > a { flex-shrink: 0; display: flex; align-items: center; gap: 24px; min-height: 48px; border: 1px solid var(--td-navy); border-radius: 7px; padding: 12px 17px; font-size: 14px; font-weight: 850; background: var(--td-navy); color: #fff; }
.td-product > a:hover { background: #194355; border-color: #194355; }

@media (max-width: 1100px) and (min-width: 901px) {
  .td-directory .wrap { width: calc(100% - 56px); }
  .td-tools-grid { gap: 14px; }
  .td-tool-copy { padding: 20px 18px 17px; }
  .td-tool h3 { font-size: 19px; min-height: 49px; }
  .td-tool-copy > p { min-height: 70px; }
  .td-preview { margin-inline: 10px; padding: 14px 12px; }
  .td-tool .td-review-demo { padding-inline: 11px; }
  .td-mini-mail { grid-template-columns: 38% 1fr; }
  .td-mini-mail > div { padding-inline: 10px; }
  .td-mini-mail > div > strong { font-size: 23px; }
  .td-text-device-crop { padding-inline: 12px; }
  .td-text-copy { padding: 14px 10px; }
  .td-text-copy p { padding: 12px; font-size: 14px; }
  .td-text-bottom { gap: 8px; padding-inline: 12px; }
  .td-text-bottom button { padding-inline: 8px; }
  .td-demo-control button { font-size: 11px; }
  .td-tool-footer { padding-inline: 18px; }
  .td-sample-popup > div { padding: 11px 9px; }
  .td-sample-popup strong { font-size: 17px; }
  .td-play-section { gap: 28px; }
}
@media (max-width: 900px) {
  .td-directory .wrap { width: calc(100% - 56px); }
  .td-intro { padding-top: 34px; }
  .td-intro h1 { font-size: 45px; }
  .td-intro-note { margin-bottom: 4px; }
  .td-tools-grid { grid-template-columns: 1fr; gap: 18px; }
  .td-tool { display: grid; grid-template-columns: 1fr 1fr; column-gap: 10px; padding: 22px; }
  .td-tool-copy { padding: 0 12px 0 0; }
  .td-tool h3 { font-size: 22px; }
  .td-tool-copy > p { min-height: 0; }
  .td-tool-icon { margin-bottom: 12px; }
  .td-preview { grid-column: 2; grid-row: 1 / 3; height: 318px; align-self: center; margin: 0; }
  .td-tool-footer { padding: 16px 12px 0 0; }
  .td-open { font-size: 14px; }
  .td-play-section { gap: 30px; }
  .td-game-copy h2 { font-size: 34px; }
  .td-game-copy > p:not(.td-kicker) { font-size: 15px; }
  .td-play-section { grid-template-columns: 1fr; }
  .td-game-copy { max-width: 600px; }
  .td-game-copy h2 br { display: none; }
  .td-game-copy > p:not(.td-kicker), .td-game-rule > p, .td-game-rule > strong { max-width: none; }
  .td-help { grid-template-columns: .8fr 1.2fr; gap: 32px; }
  .td-product { align-items: flex-start; }
  .td-product > a { max-width: 200px; gap: 16px; }
}
@media (max-width: 620px) {
  .td-directory { --td-section-space: 32px; }
  .td-directory .wrap { width: calc(100% - 36px); }
  .td-intro { flex-direction: column; align-items: flex-start; gap: 19px; padding-block: 28px 25px; }
  .td-intro .td-kicker { font-size: 10px; margin-bottom: 12px; }
  .td-intro h1 { font-size: clamp(33px, 8.9vw, 46px); }
  .td-intro .td-intro-copy { font-size: 16px; margin-top: 15px; max-width: 340px; }
  .td-intro-note { gap: 8px; padding: 0; margin: 0; }
  .td-free-mark { width: 23px; height: 23px; font-size: 13px; }
  .td-intro-note > div { display: flex; gap: 6px; align-items: center; }
  .td-intro-note strong, .td-intro-note div > span { font-size: 13px; margin: 0; }
  .td-workbench { padding-block: 25px 30px; }
  .td-section-label { flex-direction: column; align-items: flex-start; gap: 8px; padding-bottom: 18px; }
  .td-section-label h2 { font-size: 21px; }
  .td-section-label p { font-size: 13px; }
  .td-section-label > a { font-size: 12px; min-height: 36px; padding-block: 6px; }
  .td-tool { display: flex; padding: 0; border-radius: 12px; gap: 0; }
  .td-tool-copy { padding: 20px 21px 18px; }
  .td-tool-icon { float: right; margin: 0 0 12px 15px; width: 33px; height: 33px; border-radius: 8px; }
  .td-tool-icon svg { width: 22px; height: 22px; }
  .td-tool h3 { font-size: 20px; line-height: 1.3; margin: 4px 0 12px; }
  .td-tool-copy > p { clear: both; font-size: 15px; }
  .td-preview { align-self: stretch; height: 318px; margin: 0 13px; padding: 16px; }
  .td-popup-preview { padding: 26px 15px; }
  .td-tool-footer { padding: 17px 21px 21px; }
  .td-open { font-size: 15px; min-height: 48px; }
  .td-workbench .td-draft-note { justify-content: flex-start; font-size: 13px; margin-top: 19px; }
  .td-play-section { grid-template-columns: 1fr; gap: 28px; }
  .td-game-copy .td-kicker { font-size: 10px; margin-bottom: 15px; }
  .td-game-copy .td-kicker > span { font-size: 11px; }
  .td-game-copy h2 { font-size: 34px; }
  .td-play-button { margin-top: 18px; width: 100%; justify-content: space-between; }
  .td-game-copy > small { font-size: 11px; }
  .td-game-preview { margin-inline: 0; }
  .td-game-top { padding-inline: 16px; }
  .td-game-question { padding-inline: 16px; }
  .td-game-question h3 { font-size: 23px; }
  .td-deal-options { margin-inline: 16px; gap: 9px; }
  .td-deal-options button { padding: 12px; }
  .td-deal-name { font-size: 13px; }
  .td-deal-options [data-game-value] { font-size: 27px; }
  .td-game-result { padding-inline: 16px; }
  .td-game-score > strong { font-size: clamp(21px, 6.5vw, 30px); }
  .td-game-verdict { min-height: 158px; }
  .td-game-footnote { padding-inline: 16px; flex-wrap: wrap; gap: 2px 12px; }
  .td-help { grid-template-columns: 1fr; gap: 22px; }
  .td-help h2 { font-size: 26px; }
  .td-help-intro > p:last-child { max-width: none; }
  .td-faqs summary { font-size: 14px; padding-block: 17px; }
  .td-faqs details > p { font-size: 14px; padding-right: 20px; }
  .td-product { flex-direction: column; gap: 18px; }
  .td-product h2 { font-size: 24px; max-width: 260px; }
  .td-product > a { max-width: none; width: 100%; justify-content: space-between; }
}
@media (max-width: 480px) {
  .td-deal-options { grid-template-columns: 1fr; }
  .td-deal-options button { display: grid; grid-template-columns: minmax(0, 1fr) auto; min-height: 88px; column-gap: 10px; row-gap: 2px; }
  .td-deal-name { grid-column: 1; }
  .td-deal-options [data-game-value] { grid-column: 2; grid-row: 1 / 4; align-self: center; margin: 0; font-size: 27px; }
  .td-deal-options [data-game-metric] { grid-column: 1; font-size: 11px; }
  .td-deal-pick { grid-column: 1; margin-top: 4px; }
  .td-game-scoreboard { gap: 10px; }
  .td-game-score + .td-game-score { padding-left: 10px; }
}
@media (max-width: 380px) {
  .td-game-scoreboard { grid-template-columns: 1fr; }
  .td-game-score { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 8px; }
  .td-game-score > strong { grid-column: 2; grid-row: 1 / 3; font-size: 24px; margin: 0; }
  .td-game-score + .td-game-score { border-left: 0; border-top: 1px solid #dce5e0; padding: 9px 0 0; }
  .td-game-verdict { min-height: 200px; }
  .td-tool .td-review-demo { padding-inline: 11px; }
  .td-mini-mail { grid-template-columns: 37% 1fr; }
  .td-mini-mail > div { padding-inline: 10px; }
  .td-mini-mail > div > strong { font-size: 23px; }
  .td-mail-cta { font-size: 9px; padding-inline: 8px; }
  .td-text-device-crop { padding-inline: 12px; }
  .td-text-copy { padding: 14px 10px; }
  .td-text-copy p { padding: 12px; font-size: 14px; }
  .td-text-bottom { padding-inline: 10px; gap: 8px; }
  .td-text-bottom button { padding-inline: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .td-directory *, .td-directory *::before, .td-directory *::after { transition: none !important; animation: none !important; }
}
