/* Report PREVIEW pages (page-report-signup-preview.php, page-report-preview.php). Oct 2026.
   Figma 7021:17124 + 5805:13336. Case-study type scale, ~85px section gaps at 1366 (6.25vw), natural heights,
   core brand palette only, #F7F8FC rounded bands. */
.rpt { --ink:#0F1E28; --ink2:#1A1C27; --body:#3B3F59; --muted:#68739B; --hair:rgba(13,23,88,.12);
  --peri:#6285FB; --green:#1FAB3D; --sky:#219EFC; --orange:#FF7F27; --band:#F7F8FC;
  --h1:clamp(40px,3.2vw,56px); --h2:clamp(32px,2.6vw,44px); --h3:clamp(18px,1.3vw,22px);
  font-family:'Averta CY',sans-serif; color:var(--body); font-size:16px; line-height:1.7; overflow-x:clip; padding-bottom:clamp(56px,6.25vw,120px); }
@media (min-width:1920px) { .rpt { font-size:18px; } }
.rpt *, .rpt *::before, .rpt *::after { box-sizing:border-box; }
:where(.rpt) :where(h1,h2,h3,p,ul,ol,figure) { margin:0; padding:0; }
:where(.rpt) :where(ul,ol) { list-style:none; }
.rpt img { max-width:100%; height:auto; display:block; }
.rpt h1, .rpt h2, .rpt h3 { font-family:'Averta CY',sans-serif; color:var(--ink); font-weight:700; }
.rpt em { font-style:normal; color:var(--green); }
.rpt em.rpt-peri { color:var(--peri); }
.rpt-wrap { width:min(1200px, calc(100% - 48px)); margin-inline:auto; }
@media (min-width:1600px) { .rpt-wrap { width:min(1520px, calc(100% - 2 * clamp(24px,7vw,200px))); } }
.rpt-sec { margin-top:clamp(56px,6.25vw,120px); }
.rpt-sec:first-child { margin-top:clamp(24px,3vw,56px); }
.rpt-h1 { font-size:var(--h1); line-height:1.12; letter-spacing:-1.2px; }
.rpt-h2 { font-size:var(--h2); line-height:1.15; letter-spacing:-1px; color:var(--ink2); }
.rpt h3 { font-size:var(--h3); line-height:1.3; }
.rpt-lead { font-size:18px; }
@media (min-width:1920px) { .rpt-lead { font-size:20px; } }
.rpt-strong { font-weight:700; color:var(--ink); }
.rpt-center { text-align:center; }
.rpt-head { text-align:center; display:flex; flex-direction:column; align-items:center; gap:14px; max-width:860px; margin:0 auto; }
/* buttons */
.rpt-btn { display:inline-flex; align-items:center; gap:14px; border:0; border-radius:100px; padding:6px 6px 6px 28px; font:700 16px/1.4 'Plus Jakarta Sans',sans-serif; color:#fff; white-space:nowrap; text-decoration:none; cursor:pointer; transition:filter .2s, transform .2s; }
.rpt-btn img { width:40px; height:40px; }
.rpt-btn:hover, .rpt-btn:focus-visible { color:#fff; text-decoration:none; filter:brightness(.93); transform:translateY(-1px); }
.rpt-btn--green { background:var(--green); } .rpt-btn--peri { background:var(--peri); }
.rpt-cta { display:flex; align-items:center; justify-content:space-between; gap:24px; border-radius:24px; padding:20px 20px 20px 28px; }
.rpt-cta p { font-weight:700; color:var(--ink); font-size:17px; line-height:1.4; max-width:30ch; }
.rpt-cta--g { background:rgba(31,171,61,.08); } .rpt-cta--b { background:rgba(98,133,251,.1); }
.rpt-cta--center { max-width:760px; margin:40px auto 0; }

/* ---------- sign-up ---------- */
.rpt-su__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,480px); gap:40px; align-items:start; }
.rpt-su__form-col { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,290px); gap:28px; margin-top:28px; align-items:start; }
.rpt-su__intro { display:flex; flex-direction:column; gap:14px; }
.rpt-form { display:flex; flex-direction:column; gap:12px; margin-top:12px; }
.rpt-form label { font-weight:700; color:var(--ink); font-size:18px; margin:0; } .rpt-form label span { color:#E5484D; }
.rpt-form__field { display:flex; align-items:center; gap:10px; border:1px solid var(--hair); border-radius:100px; padding:6px 20px; background:#fff; }
.rpt-form__field img { width:28px; height:28px; opacity:.7; }
.rpt-form__field input { flex:1; border:0; outline:0; background:none; font:inherit; padding:8px 0; color:var(--ink); min-width:0; }
.rpt-form__field:focus-within { border-color:var(--green); box-shadow:0 0 0 3px rgba(31,171,61,.15); }
.rpt-form .rpt-btn { align-self:flex-start; }
.rpt-note { display:flex; align-items:center; gap:14px; background:rgba(31,171,61,.08); border-radius:20px; padding:16px 20px; margin-top:8px; }
.rpt-note img { width:44px; height:44px; flex:none; }
.rpt-note p { font-weight:700; color:var(--ink); font-size:15px; line-height:1.5; }
.rpt-su__tablet figcaption { margin-top:12px; font-size:15px; color:var(--body); }
.rpt-incl { background:#fff; border:1px solid #E1E3EF; border-radius:32px; padding:36px 40px; box-shadow:0 30px 60px rgba(13,23,88,.05); }
.rpt-incl__head { display:flex; align-items:center; gap:16px; }
.rpt-incl__head img { width:56px; height:56px; flex:none; }
.rpt-incl__head h2 { font-size:clamp(22px,1.6vw,28px); line-height:1.25; }
.rpt-incl__lead { margin-top:14px; padding-bottom:18px; border-bottom:1px solid var(--hair); }
.rpt-incl ul { display:flex; flex-direction:column; gap:18px; margin-top:20px; }
.rpt-incl li, .rpt-trust li { display:flex; gap:16px; align-items:flex-start; }
.rpt-incl li img { width:48px; height:48px; flex:none; }
.rpt-incl li p { font-size:15px; line-height:1.6; margin-top:4px; }
.rpt-incl__secure { display:flex; gap:12px; align-items:center; background:rgba(31,171,61,.08); border-radius:14px; padding:12px 16px; margin-top:22px; }
.rpt-incl__secure img { width:36px; height:36px; flex:none; } .rpt-incl__secure p { font-size:14px; line-height:1.5; }
.rpt-trust { display:grid; grid-template-columns:repeat(3,1fr); background:var(--band); border-radius:32px; padding:32px 40px; max-width:1264px; margin:0 auto; }
.rpt-trust li { padding:0 28px; } .rpt-trust li + li { border-left:1px solid var(--hair); }
.rpt-trust img { width:48px; height:48px; flex:none; }
.rpt-trust p { font-size:15px; line-height:1.6; margin-top:4px; }

/* ---------- explainer ---------- */
.rpt-hero__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:center; }
.rpt-hero__text { display:flex; flex-direction:column; gap:22px; max-width:620px; }
.rpt-alert { display:flex; align-items:center; gap:16px; background:rgba(255,127,39,.08); border-radius:20px; padding:16px 22px; max-width:480px; }
.rpt-alert img { width:44px; height:44px; flex:none; } .rpt-alert p { font-weight:700; color:var(--ink); line-height:1.45; }
.rpt-hero__art { position:relative; display:flex; justify-content:center; }
.rpt-hero__tablet { width:auto; max-height:min(640px, calc(100vh - 130px)); min-height:360px; object-fit:contain; }
.rpt-hero__badge { position:absolute; right:0; top:42%; width:clamp(220px,20vw,360px); filter:drop-shadow(0 12px 24px rgba(13,23,88,.08)); }
.rpt-loss { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:40px; }
.rpt-loss li { background:rgba(255,127,39,.06); border-radius:24px; padding:32px 24px; text-align:center; display:flex; flex-direction:column; align-items:center; gap:18px; }
.rpt-loss img { width:44px; height:44px; } .rpt-loss h3 { font-size:18px; }
.rpt-band { background:var(--band); border-radius:40px; padding:clamp(40px,4vw,72px) clamp(24px,4vw,72px); }
.rpt-see { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:36px; }
.rpt-see li { background:#fff; border:1px solid var(--hair); border-radius:28px; padding:32px; }
.rpt-see img { width:56px; height:56px; margin-bottom:18px; } .rpt-see p { margin-top:10px; font-size:15px; }
.rpt-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin-top:40px; position:relative; }
.rpt-step { text-align:center; display:flex; flex-direction:column; align-items:center; gap:12px; position:relative; }
.rpt-step::before { content:""; position:absolute; top:84px; left:calc(50% + 48px); width:calc(100% - 64px); height:2px; background:var(--hair); }
.rpt-step:last-child::before { display:none; } .rpt-step.is-on::before { background:var(--green); }
.rpt-step__n { font:700 15px/1 'Plus Jakarta Sans',sans-serif; color:var(--muted); background:var(--band); border-radius:100px; padding:10px 18px; }
.rpt-step.is-on .rpt-step__n { color:var(--green); background:rgba(31,171,61,.1); }
.rpt-step img { width:72px; height:72px; } .rpt-step p { font-size:15px; max-width:40ch; }
.rpt-pills { display:flex; flex-wrap:wrap; justify-content:center; gap:16px; margin-top:40px; }
.rpt-pills li { display:flex; align-items:center; gap:12px; background:rgba(31,171,61,.08); border-radius:100px; padding:6px 24px 6px 6px; font-weight:700; color:var(--ink); font-size:17px; }
.rpt-pills img { width:44px; height:44px; }
.rpt-vis { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1fr); gap:64px; align-items:center; }
.rpt-vis__art img { width:100%; max-height:min(520px,72vh); object-fit:contain; border-radius:32px; }
.rpt-vis__text { display:flex; flex-direction:column; gap:16px; }
.rpt-tag { align-self:flex-start; display:inline-flex; align-items:center; gap:10px; background:rgba(255,127,39,.1); border-radius:100px; padding:4px 18px 4px 4px; font-weight:700; color:var(--ink); }
.rpt-tag img { width:32px; height:32px; }
.rpt-xlist { display:flex; flex-direction:column; gap:10px; margin-top:4px; }
.rpt-xlist li { display:flex; align-items:center; gap:12px; font-size:15px; } .rpt-xlist img { width:24px; height:24px; flex:none; }
.rpt-final { background:rgba(31,171,61,.08); border-radius:40px; padding:clamp(36px,3.5vw,64px) clamp(28px,5vw,96px); }
.rpt-final__row { display:grid; grid-template-columns:1.2fr 1fr; gap:40px; align-items:center; }
.rpt-final__row p { margin-top:12px; max-width:48ch; }
.rpt-final__row--cta { border-top:1px solid var(--hair); margin-top:32px; padding-top:32px; }
.rpt-checks { display:flex; flex-direction:column; gap:12px; align-items:flex-start; }
.rpt-checks li { display:flex; align-items:center; gap:10px; background:#fff; border-radius:100px; padding:6px 20px 6px 6px; font-weight:700; color:var(--ink); font-size:15px; }
.rpt-checks img { width:32px; height:32px; }
.rpt-final__btn { display:flex; flex-direction:column; align-items:flex-end; gap:12px; text-align:right; }
.rpt-final__btn small { font-size:14px; max-width:24ch; }

/* ---------- responsive ---------- */
@media (min-width:1600px) { .rpt-su__grid { grid-template-columns:minmax(0,1fr) minmax(0,600px); gap:64px; } .rpt-su__form-col { grid-template-columns:minmax(0,1fr) minmax(0,384px); gap:40px; } }
@media (max-width:1199px) {
  .rpt-su__grid { grid-template-columns:1fr; }
  .rpt-loss { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:991px) {
  .rpt-hero__grid, .rpt-vis, .rpt-final__row { grid-template-columns:1fr; gap:28px; }
  .rpt-see, .rpt-steps { grid-template-columns:1fr; }
  .rpt-step::before { display:none; }
  .rpt-final__btn { align-items:flex-start; text-align:left; }
}
@media (max-width:767px) {
  .rpt-hero__tablet { min-height:0; max-height:none; width:80%; }
  .rpt-sec { margin-top:48px; }
  .rpt-su__form-col { grid-template-columns:1fr; }
  .rpt-su__tablet { max-width:340px; }
  .rpt-incl { padding:28px 22px; border-radius:24px; }
  .rpt-trust { grid-template-columns:1fr; padding:24px; gap:20px; }
  .rpt-trust li { padding:0; } .rpt-trust li + li { border-left:0; border-top:1px solid var(--hair); padding-top:20px; }
  .rpt-cta { flex-direction:column; align-items:flex-start; padding:20px; }
  .rpt-loss { grid-template-columns:1fr; gap:12px; } .rpt-loss li { flex-direction:row; text-align:left; padding:18px 20px; }
  .rpt-hero__badge { width:200px; right:-8px; }
  .rpt-band, .rpt-final { border-radius:28px; }
  .rpt-pills li { font-size:15px; }
  .rpt-btn { white-space:normal; }
}

/* ---------- sign-up: fit the first screen (1366x650 incl. ~80px nav) ---------- */
@media (min-width:1200px) {
  .rpt-su .rpt-su__main { margin-top:12px; }
  .rpt-su__grid { grid-template-columns:minmax(0,1fr) minmax(0,505px); gap:32px; }
  .rpt-su__form-col { margin-top:16px; gap:24px; }
  .rpt-su__intro { gap:10px; line-height:1.55; }
  .rpt-form { gap:10px; margin-top:6px; }
  .rpt-form__field input { padding:6px 0; }
  .rpt-note { padding:12px 18px; margin-top:4px; }
  .rpt-note img { width:40px; height:40px; }
  .rpt-incl { padding:16px 24px 18px; border-radius:28px; }
  .rpt-incl__head { gap:12px; }
  .rpt-incl__head img { width:40px; height:40px; }
  .rpt-incl__head h2 { font-size:20px; line-height:1.2; letter-spacing:-.2px; }
  .rpt-incl__lead { margin-top:8px; padding-bottom:10px; font-size:14px; line-height:1.45; }
  .rpt-incl ul { gap:14px; margin-top:14px; }
  .rpt-incl li { gap:12px; margin:0; } .rpt-incl li p, .rpt-incl li h3, .rpt-incl__lead, .rpt-incl__secure p, .rpt-incl__head h2 { margin-bottom:0; }
  .rpt-incl li img { width:34px; height:34px; }
  .rpt-incl li h3 { font-size:15.5px; line-height:1.25; }
  .rpt-incl li p { font-size:13.5px; line-height:1.4; margin-top:1px; }
  .rpt-incl__secure { padding:7px 14px; margin-top:12px; gap:10px; border-radius:12px; }
  .rpt-incl__secure img { width:28px; height:28px; }
  .rpt-incl__secure p { font-size:13px; line-height:1.4; }
}
@media (min-width:1600px) {
  .rpt-su__grid { grid-template-columns:minmax(0,1fr) minmax(0,600px); gap:64px; }
  .rpt-incl { padding:28px 34px 30px; }
  .rpt-incl__head h2 { font-size:26px; }
  .rpt-incl__lead { font-size:16px; }
  .rpt-incl li h3 { font-size:19px; }
  .rpt-incl li p { font-size:15px; }
  .rpt-incl__secure p { font-size:14px; }
}

/* sign-up: content always starts below the measured floating header (Oct 13) */
body:has(.rpt-su) { padding-top:var(--rpt-pad,134px); }
/* sign-up mobile (Figma 7964:23869): full-bleed header, 48px tap targets, icon-above privacy note */
@media (max-width:999px) {
  body:has(.rpt-su) .osh { top:0; padding:0; }
  body.admin-bar:has(.rpt-su) .osh { top:46px; }
  body:has(.rpt-su) .osh__bar { border-radius:0; max-width:none; }
}
@media (max-width:767px) {
  .rpt-su .rpt-form__field { min-height:52px; }
  .rpt-su .rpt-form__field input { font-size:16px; min-height:44px; }
  .rpt-su .rpt-btn { min-height:52px; }
  .rpt-su .rpt-note { flex-direction:column; align-items:flex-start; }
}
