:root {
 --wt-brand-900:#0B2A4A;--wt-brand-700:#14538C;--wt-brand-600:#1A6FB5;--wt-brand-100:#DCEAF6;--wt-brand-050:#EFF6FC;
 --wt-cta:#C2560E;--wt-cta-hover:#A6470A;--wt-cta-050:#FDF3EC;
 --wt-success:#1F7A4D;--wt-warning:#8A5300;--wt-warning-bg:#FFF8E8;--wt-danger:#A61B22;--wt-danger-bg:#FDF0F0;
 --wt-ink-900:#14181C;--wt-ink-700:#3C454E;--wt-ink-500:#616C77;--wt-surface:#FFFFFF;--wt-surface-sub:#F6F8FA;--wt-line:#E2E7EC;--wt-line-strong:#C9D2DB;
 --wt-r-sm:6px;--wt-r-md:10px;--wt-shadow:0 1px 2px rgba(11,42,74,.06);
 --wt-s1:4px;--wt-s2:8px;--wt-s3:12px;--wt-s4:16px;--wt-s5:20px;--wt-s6:24px;--wt-s8:32px;--wt-s10:40px;--wt-s12:48px;--wt-s16:64px;--wt-s20:80px;
}
.wt-page,.wt-component { color:var(--wt-ink-900);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;font-size:16px;line-height:1.85;font-variant-numeric:tabular-nums;overflow-wrap:anywhere; }
.wt-page *,.wt-component * { box-sizing:border-box;min-width:0; }
.wt-page { margin:auto;max-width:792px;padding:24px 16px 64px;background:var(--wt-surface); }
.wt-page h1 { font-size:24px;line-height:1.4;font-weight:700;margin:12px 0 16px; }
.wt-page h2 { font-size:21px;line-height:1.45;font-weight:700;margin:48px 0 16px;color:var(--wt-brand-900);border-bottom:2px solid var(--wt-brand-900);padding-bottom:12px; }
.wt-page h3 { font-size:18px;line-height:1.5;font-weight:700;margin:32px 0 12px; }
.wt-page p { margin:16px 0; }
.wt-page a:not(.wt-cta) { color:var(--wt-brand-700);text-underline-offset:4px; }
.wt-note { font-size:13px;line-height:1.7;color:var(--wt-ink-500); }
.wt-kicker { color:var(--wt-brand-700);font-size:13px;letter-spacing:.06em; }
.wt-verdict { border-left:4px solid var(--wt-brand-700);padding:4px 0 4px 16px;margin:20px 0; }
.wt-fact-panel { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--wt-line-strong);border-bottom:1px solid var(--wt-line-strong);margin:24px 0; }
.wt-fact-panel>div { padding:12px 10px;border-bottom:1px solid var(--wt-line); }
.wt-fact-panel>div:nth-child(odd) { border-right:1px solid var(--wt-line); }
.wt-fact-panel dt { color:var(--wt-ink-700);font-size:13px; }
.wt-fact-panel dd { margin:4px 0 0;font-size:18px;font-weight:700; }
.wt-price-table { margin:16px 0;border-top:1px solid var(--wt-line-strong); }
.wt-price-table>div { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;border-bottom:1px solid var(--wt-line);padding:14px 0; }
.wt-price-table dt { color:var(--wt-ink-700); }
.wt-price-table dd { margin:0;font-weight:600; }
.wt-notice { border-left:3px solid var(--wt-brand-700);background:var(--wt-brand-050);padding:16px;margin:20px 0; }
.wt-notice--warning { border-color:var(--wt-warning);background:var(--wt-warning-bg); }
.wt-notice--danger,.wt-notice--end { border-color:var(--wt-danger);background:var(--wt-danger-bg); }
.wt-cta-block { margin:32px 0; }
a.wt-cta,.wt-cta { display:flex;justify-content:center;align-items:center;text-align:center;min-height:56px;width:100%;padding:12px 20px;border:2px solid var(--wt-cta);border-radius:var(--wt-r-sm);background:var(--wt-cta);color:white;font-size:17px;font-weight:700;line-height:1.5;text-decoration:none;box-shadow:none; }
a.wt-cta:hover { background:var(--wt-cta-hover);border-color:var(--wt-cta-hover);color:white; }
a.wt-cta--secondary { background:var(--wt-surface);color:var(--wt-brand-700);border-color:var(--wt-brand-700);font-size:16px; }
a.wt-cta--secondary:hover { background:var(--wt-brand-050);color:var(--wt-brand-900);border-color:var(--wt-brand-900); }
.wt-page a:focus-visible,.wt-component a:focus-visible,.wt-page button:focus-visible { outline:3px solid var(--wt-brand-600);outline-offset:4px; }
.wt-audience { display:grid;gap:20px; }
.wt-audience>div { padding:16px 0;border-top:1px solid var(--wt-line-strong); }
.wt-audience h3 { margin-top:0; }
.wt-timeline { list-style:none;padding:0;margin:24px 0;counter-reset:steps; }
.wt-timeline li { counter-increment:steps;position:relative;padding:0 0 24px 44px;border-left:1px solid var(--wt-line-strong);margin-left:16px; }
.wt-timeline li:before { content:counter(steps);position:absolute;left:-16px;top:0;width:32px;height:32px;line-height:32px;text-align:center;border:1px solid var(--wt-brand-700);border-radius:50%;background:white;color:var(--wt-brand-700);font-weight:700; }
.wt-offer-row { padding:24px 0;border-bottom:2px solid var(--wt-line-strong); }
.wt-offer-row h3 { margin-top:0; }
.wt-placeholder { padding:16px;border:1px dashed var(--wt-line-strong);color:var(--wt-ink-700); }
@media(min-width:768px) {
 .wt-page,.wt-component { font-size:17px; }
 .wt-page { padding-top:40px; }
 .wt-page h1 { font-size:32px; }
 .wt-page h2 { font-size:28px;margin-top:80px;margin-bottom:20px; }
 .wt-page h3 { font-size:22px; }
 .wt-fact-panel { grid-template-columns:repeat(4,minmax(0,1fr)); }
 .wt-fact-panel>div:not(:last-child) { border-right:1px solid var(--wt-line); }
 .wt-fact-panel>div { padding:16px 12px;border-bottom:0; }
 .wt-audience { grid-template-columns:1fr 1fr;gap:32px; }
 .wt-timeline { display:flex; }
 .wt-timeline li { flex:1;border-left:0;border-top:1px solid var(--wt-line-strong);padding:32px 16px 0 0;margin:16px 0 0; }
 .wt-timeline li:before { top:-16px;left:0; }
}
@media(prefers-reduced-motion:reduce) { .wt-page *,.wt-component * { scroll-behavior:auto; } }

/* Component-only layout: leave the surrounding article/theme untouched. */
.wt-component { box-sizing:border-box;width:100%;max-width:900px;margin-inline:auto; }
.wt-component .wt-empty-state { margin:16px 0;padding:16px 0;border-block:1px solid var(--wt-line);font-size:16px;font-weight:400;color:var(--wt-ink-700); }
.wt-component .wt-fact-panel { margin:24px 0; }
.wt-component .wt-fact-panel dt { margin:0;font-size:14px;font-weight:400; }
.wt-component .wt-fact-panel dd { margin:8px 0 0;font-size:20px;line-height:1.5; }
.wt-component .wt-price-table { margin:16px 0; }
.wt-component .wt-price-table dt { margin:0;font-size:16px;font-weight:400; }
.wt-component .wt-price-table dd { margin:0;font-size:16px;line-height:1.7; }
.wt-component.wt-campaign-summary { margin-block:24px; }
.wt-campaign-summary .wt-price-table>.wt-standard-cash { padding-block:20px; }
.wt-campaign-summary .wt-standard-cash dt { font-weight:700; }
.wt-campaign-summary .wt-standard-cash dd { font-size:24px;font-weight:700;line-height:1.5; }
@media(min-width:768px) {
 .wt-component .wt-fact-panel dd { font-size:22px; }
 .wt-campaign-summary .wt-standard-cash dd { font-size:28px; }
}


/* RC8: conversion-oriented campaign card. Scoped to the Data Hub component only. */
.wt-campaign-card {
 margin-block:24px;
 border:1px solid var(--wt-line-strong);
 border-radius:12px;
 background:var(--wt-surface);
 box-shadow:var(--wt-shadow);
 padding:18px;
}
.wt-campaign-card__head { margin-bottom:14px; }
.wt-campaign-card__eyebrow {
 margin:0 0 4px;
 color:var(--wt-brand-700);
 font-size:12px;
 font-weight:700;
 letter-spacing:.08em;
}
.wt-campaign-card__head h3 {
 margin:0;
 color:var(--wt-ink-900);
 font-size:18px;
 line-height:1.5;
}
.wt-campaign-card__money {
 display:grid;
 grid-template-columns:1fr;
 gap:10px;
 margin:14px 0 16px;
}
.wt-campaign-card__primary,
.wt-campaign-card__max {
 border-radius:10px;
 padding:14px 16px;
}
.wt-campaign-card__primary {
 background:var(--wt-brand-050);
 border:1px solid var(--wt-brand-100);
}
.wt-campaign-card__max {
 background:var(--wt-cta-050);
 border:1px solid #F0D5C2;
}
.wt-campaign-card__money span {
 display:block;
 margin-bottom:2px;
 color:var(--wt-ink-700);
 font-size:13px;
 font-weight:700;
}
.wt-campaign-card__money strong {
 display:block;
 font-size:27px;
 line-height:1.35;
 letter-spacing:.01em;
}
.wt-campaign-card__max strong { font-size:22px; }
.wt-campaign-card__max small {
 display:block;
 margin-top:3px;
 color:var(--wt-ink-500);
 font-size:12px;
}
.wt-campaign-card__facts {
 margin:0 0 12px;
 border-top:1px solid var(--wt-line);
}
.wt-campaign-card__facts>div {
 display:grid;
 grid-template-columns:88px minmax(0,1fr);
 gap:12px;
 padding:11px 0;
 border-bottom:1px solid var(--wt-line);
}
.wt-campaign-card__facts dt {
 margin:0;
 color:var(--wt-ink-700);
 font-size:13px;
 font-weight:700;
}
.wt-campaign-card__facts dd {
 margin:0;
 font-size:14px;
 font-weight:500;
 line-height:1.7;
}
.wt-campaign-card__note,
.wt-campaign-card__verified {
 margin:8px 0;
 color:var(--wt-ink-500);
 font-size:12px;
 line-height:1.65;
}
.wt-campaign-card>.wt-cta { margin-top:14px; }

@media(min-width:768px) {
 .wt-campaign-card { padding:22px; }
 .wt-campaign-card__head h3 { font-size:20px; }
 .wt-campaign-card__money {
  grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
 }
 .wt-campaign-card__money strong { font-size:32px; }
 .wt-campaign-card__max strong { font-size:24px; }
 .wt-campaign-card__facts>div { grid-template-columns:110px minmax(0,1fr); }
}


/* RC10: offer comparison grid. Mobile-first; no horizontal-scroll dependency. */
.wt-offer-compare {
 margin-block:28px;
 border:1px solid var(--wt-line-strong);
 border-radius:12px;
 background:var(--wt-surface);
 overflow:hidden;
 box-shadow:var(--wt-shadow);
}
.wt-offer-compare__head {
 padding:18px 18px 12px;
}
.wt-offer-compare__head h3 {
 margin:0 0 5px;
 font-size:19px;
 line-height:1.5;
}
.wt-offer-compare__head p {
 margin:0;
 color:var(--wt-ink-500);
 font-size:13px;
 line-height:1.65;
}
.wt-offer-compare__grid { border-top:1px solid var(--wt-line); }
.wt-offer-compare__row--header { display:none; }
.wt-offer-compare__row {
 padding:15px 16px;
 border-bottom:1px solid var(--wt-line);
}
.wt-offer-compare__row:last-child { border-bottom:0; }
.wt-offer-compare__row>[role="cell"] {
 display:grid;
 grid-template-columns:118px minmax(0,1fr);
 gap:10px;
 align-items:start;
 padding:7px 0;
 font-size:14px;
 line-height:1.6;
}
.wt-offer-compare__row>[role="cell"]::before {
 content:attr(data-label);
 color:var(--wt-ink-500);
 font-size:12px;
 font-weight:700;
}
.wt-offer-compare__service {
 display:block !important;
 padding-top:0 !important;
}
.wt-offer-compare__service::before { display:none; }
.wt-offer-compare__service strong {
 display:block;
 color:var(--wt-ink-900);
 font-size:17px;
}
.wt-offer-compare__service span,
.wt-offer-compare__service small {
 display:block;
 margin-top:2px;
 color:var(--wt-ink-500);
 font-size:12px;
}
.wt-offer-compare__row [role="cell"]>strong {
 font-size:18px;
 line-height:1.4;
}
.wt-offer-compare__receipt { word-break:break-word; }
.wt-offer-compare__pending,
.wt-offer-compare__dash {
 color:var(--wt-ink-500);
 font-size:13px;
}
.wt-offer-compare__action .wt-cta {
 width:100%;
 min-height:44px;
 padding:10px 12px;
 font-size:14px;
}
.wt-offer-compare__note {
 margin:0;
 padding:12px 16px 16px;
 color:var(--wt-ink-500);
 font-size:12px;
 line-height:1.65;
}

@media(min-width:900px) {
 .wt-offer-compare__head { padding:20px 20px 14px; }
 .wt-offer-compare__row {
  display:grid;
  grid-template-columns:
   minmax(135px,1.1fr)
   minmax(88px,.72fr)
   minmax(88px,.72fr)
   minmax(150px,1.18fr)
   minmax(100px,.78fr);
  gap:8px;
  align-items:center;
  padding:13px 14px;
 }
 .wt-offer-compare__row--header {
  display:grid;
  background:var(--wt-brand-050);
  color:var(--wt-ink-700);
  font-size:11px;
  font-weight:700;
 }
 .wt-offer-compare__row>[role="cell"],
 .wt-offer-compare__row>[role="columnheader"] {
  min-width:0;
  overflow-wrap:anywhere;
 }
 .wt-offer-compare__row>[role="cell"] {
  display:block;
  padding:0;
  font-size:12px;
 }
 .wt-offer-compare__row>[role="cell"]::before { display:none; }
 .wt-offer-compare__service strong { font-size:14px; }
 .wt-offer-compare__row [role="cell"]>strong { font-size:16px; }
 .wt-offer-compare__receipt {
  font-size:12px;
  line-height:1.55;
 }
 .wt-offer-compare__action .wt-cta {
  width:100%;
  min-width:0;
  min-height:38px;
  padding:9px 8px;
  font-size:12px;
  white-space:normal;
  line-height:1.35;
 }
}

.wt-offer-compare,
.wt-offer-compare__grid,
.wt-offer-compare__row {
 max-width:100%;
 box-sizing:border-box;
}
.wt-offer-compare__row > * {
 min-width:0;
}


/* RC12: aggregate freshness badge for campaign/comparison pages. */
.wt-offer-freshness {
 display:flex;
 flex-wrap:wrap;
 gap:8px 14px;
 align-items:center;
 margin:14px 0 18px;
 padding:10px 12px;
 border:1px solid var(--wt-line-strong);
 border-radius:9px;
 background:var(--wt-brand-050);
 color:var(--wt-ink-700);
 font-size:12px;
 line-height:1.5;
}
.wt-offer-freshness__state {
 color:#08785b;
 font-weight:700;
}
.wt-offer-freshness--warn .wt-offer-freshness__state {
 color:#9a6700;
}
@media(max-width:599px) {
 .wt-offer-freshness {
  display:grid;
  grid-template-columns:1fr;
  gap:4px;
 }
}


/* RC17: reusable disclosure for long evidence/method sections. */
.wt-disclosure {
 margin:24px 0;
 border:1px solid var(--wt-line-strong);
 border-radius:10px;
 background:var(--wt-surface);
 overflow:hidden;
}
.wt-disclosure > summary {
 cursor:pointer;
 padding:15px 18px;
 font-weight:700;
 color:var(--wt-ink-900);
 background:var(--wt-brand-050);
 list-style-position:inside;
}
.wt-disclosure[open] > summary {
 border-bottom:1px solid var(--wt-line);
}
.wt-disclosure__body {
 padding:18px;
}
.wt-disclosure__body > :first-child { margin-top:0; }
.wt-disclosure__body > :last-child { margin-bottom:0; }

.wt-cv-campaign__action .wt-cta-block + .wt-cta-block {
 margin-top:10px;
}
