/**
 * AkuyDesign Theme — Funnel Review Landing Page (funnel-review.css)
 * Loaded only when Template: Funnel Review Landing Page is active.
 * Scoped under .akd-fr-page for full specificity guarantee.
 *
 * Section backgrounds:
 *  1. Hero         — warm beige
 *  2. Included     — white
 *  3. Reasons      — near-black
 *  4. Helps        — soft off-white
 *  5. Review Areas — white
 *  6. Proof        — warm beige
 *  7. Different    — near-black
 *  8. CTA          — dark red (via .akd-cta from theme.css)
 */

/* ── 1. HERO ─────────────────────────────────────────────────────────────── */

.akd-fr-page .akd-fr-hero {
  background: var(--akd-bg);
  padding-top: 72px;
  padding-bottom: 80px;
}

.akd-fr-page .akd-fr-hero__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: start;
}

.akd-fr-page .akd-fr-hero__content {
  padding-top: 16px;
}

.akd-fr-page .akd-fr-hero__title {
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.04em;
  color: var(--akd-text);
  margin: 12px 0 20px;
}

.akd-fr-page .akd-fr-hero__copy {
  font-size: 1.05rem;
  line-height: 1.72;
  color: var(--akd-text-soft);
  margin: 0 0 16px;
  max-width: 480px;
}

.akd-fr-page .akd-fr-hero__support {
  font-size: 0.875rem;
  font-style: italic;
  color: var(--akd-text-soft);
  margin: 0 0 28px;
  opacity: 0.75;
}

/* Trust badges */
.akd-fr-page .akd-fr-hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.akd-fr-trust-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--akd-text-soft);
}

.akd-fr-trust-item svg {
  color: var(--akd-accent);
  flex-shrink: 0;
}

/* Form card */
.akd-fr-page .akd-fr-hero__form-col {
  position: sticky;
  top: calc(var(--akd-header-h) + 24px);
}

.akd-fr-form-card {
  background: var(--akd-bg-dark);
  border-radius: var(--akd-radius-xl);
  padding: 36px 32px;
  box-shadow: var(--akd-shadow-md);
}

.akd-fr-form-card__title {
  font-size: 1.3rem;
  font-weight: 800;
  letter-spacing: -0.025em;
  color: var(--akd-white);
  margin: 0 0 10px;
}

.akd-fr-form-card__intro {
  font-size: 0.875rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.50);
  margin: 0 0 24px;
}

/* Form fields */
.akd-fr-form { display: flex; flex-direction: column; gap: 16px; }

.akd-fr-form__field { display: flex; flex-direction: column; gap: 6px; }

.akd-fr-form__label {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: rgba(255,255,255,0.55);
}

.akd-fr-form__req { color: var(--akd-accent); margin-left: 2px; }

.akd-fr-form__input {
  width: 100%;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: var(--akd-radius);
  padding: 11px 14px;
  font-size: 0.93rem;
  color: var(--akd-white);
  font-family: inherit;
  transition: border-color var(--akd-dur), background var(--akd-dur);
  outline: none;
  box-sizing: border-box;
}

.akd-fr-form__input::placeholder { color: rgba(255,255,255,0.25); }
.akd-fr-form__input:focus {
  border-color: var(--akd-accent);
  background: rgba(255,255,255,0.10);
}

.akd-fr-form__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  background: var(--akd-accent);
  color: var(--akd-white);
  border: none;
  border-radius: var(--akd-radius);
  padding: 14px 20px;
  font-size: 0.97rem;
  font-weight: 700;
  font-family: inherit;
  letter-spacing: 0.01em;
  cursor: pointer;
  transition: background var(--akd-dur), transform 80ms;
  margin-top: 4px;
}
.akd-fr-form__submit:hover  { background: #6f1824; }
.akd-fr-form__submit:active { transform: scale(0.98); }

.akd-fr-form__privacy {
  font-size: 0.73rem;
  color: rgba(255,255,255,0.28);
  text-align: center;
  margin: 4px 0 0;
  line-height: 1.5;
}

/* CF7 shortcode wrapper — make form fields match dark card style */
.akd-fr-form-wrap .wpcf7-form-control-wrap input,
.akd-fr-form-wrap .wpcf7-form-control-wrap select,
.akd-fr-form-wrap .wpcf7-form-control-wrap textarea {
  width: 100%;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: var(--akd-radius);
  padding: 11px 14px;
  font-size: 0.93rem;
  color: var(--akd-white);
  font-family: inherit;
  box-sizing: border-box;
}
.akd-fr-form-wrap .wpcf7-submit {
  width: 100%;
  background: var(--akd-accent);
  color: var(--akd-white);
  border: none;
  border-radius: var(--akd-radius);
  padding: 14px 20px;
  font-size: 0.97rem;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
}

/* WPForms wrapper — make form fields match dark card style */
.akd-fr-form-wrap .wpforms-field label {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: rgba(255,255,255,0.55);
  margin-bottom: 6px;
  display: block;
}
.akd-fr-form-wrap .wpforms-field input[type="text"],
.akd-fr-form-wrap .wpforms-field input[type="email"],
.akd-fr-form-wrap .wpforms-field input[type="url"],
.akd-fr-form-wrap .wpforms-field input[type="tel"],
.akd-fr-form-wrap .wpforms-field select,
.akd-fr-form-wrap .wpforms-field textarea {
  width: 100%;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: var(--akd-radius);
  padding: 11px 14px;
  font-size: 0.93rem;
  color: var(--akd-white);
  font-family: inherit;
  box-sizing: border-box;
  outline: none;
  transition: border-color var(--akd-dur), background var(--akd-dur);
}
.akd-fr-form-wrap .wpforms-field input::placeholder,
.akd-fr-form-wrap .wpforms-field textarea::placeholder {
  color: rgba(255,255,255,0.25);
}
.akd-fr-form-wrap .wpforms-field input:focus,
.akd-fr-form-wrap .wpforms-field textarea:focus {
  border-color: var(--akd-accent);
  background: rgba(255,255,255,0.10);
}
.akd-fr-form-wrap .wpforms-field { margin-bottom: 16px; }
.akd-fr-form-wrap .wpforms-field-label-hide label { display: none; }
.akd-fr-form-wrap .wpforms-submit-container { margin-top: 4px; }
.akd-fr-form-wrap .wpforms-submit,
.akd-fr-form-wrap button[type="submit"] {
  width: 100%;
  background: var(--akd-accent);
  color: var(--akd-white);
  border: none;
  border-radius: var(--akd-radius);
  padding: 14px 20px;
  font-size: 0.97rem;
  font-weight: 700;
  font-family: inherit;
  letter-spacing: 0.01em;
  cursor: pointer;
  transition: background var(--akd-dur);
}
.akd-fr-form-wrap .wpforms-submit:hover,
.akd-fr-form-wrap button[type="submit"]:hover {
  background: #6f1824;
}
.akd-fr-form-wrap .wpforms-confirmation-container-full {
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: var(--akd-radius-lg);
  padding: 20px;
  color: rgba(255,255,255,0.80);
  font-size: 0.9rem;
  margin-top: 12px;
}
/* Hide WPForms default styling that conflicts */
.akd-fr-form-wrap .wpforms-container-full .wpforms-form { padding: 0; }
.akd-fr-form-wrap .wpforms-container-full { margin: 0; }

/* ── 2. WHAT'S INCLUDED ──────────────────────────────────────────────────── */

.akd-fr-page .akd-fr-included {
  background: var(--akd-white);
  padding-block: var(--akd-section-py);
}

.akd-fr-page .akd-fr-included__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 48px;
}

.akd-fr-included__item {
  background: var(--akd-bg-soft);
  border: 1px solid var(--akd-border);
  border-top: 3px solid var(--akd-accent);
  border-radius: 0 0 var(--akd-radius-lg) var(--akd-radius-lg);
  padding: 24px 22px 22px;
}

.akd-fr-included__num {
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  color: var(--akd-accent);
  margin-bottom: 10px;
}

.akd-fr-included__title {
  font-size: 0.97rem;
  font-weight: 700;
  color: var(--akd-text);
  margin: 0 0 8px;
  line-height: 1.35;
}

.akd-fr-included__desc {
  font-size: 0.855rem;
  line-height: 1.65;
  color: var(--akd-text-soft);
  margin: 0;
}

.akd-fr-page .akd-fr-included__note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 28px;
  font-size: 0.855rem;
  font-style: italic;
  color: var(--akd-text-soft);
  max-width: 640px;
  margin-inline: auto;
  text-align: center;
  justify-content: center;
}

.akd-fr-included__note svg { flex-shrink: 0; margin-top: 2px; color: var(--akd-text-soft); }

/* ── 3. WHY FUNNELS UNDERPERFORM ─────────────────────────────────────────── */

.akd-fr-page .akd-fr-reasons {
  background: var(--akd-bg-dark);
  padding-block: var(--akd-section-py);
}

.akd-fr-page .akd-fr-reasons__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-top: 48px;
}

.akd-fr-reason-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: var(--akd-radius-xl);
  padding: 28px 28px;
  transition: background var(--akd-dur);
}
.akd-fr-reason-card:hover { background: rgba(255,255,255,0.07); }

.akd-fr-reason-card__icon {
  width: 52px;
  height: 52px;
  border-radius: var(--akd-radius-lg);
  background: rgba(139,28,36,0.18);
  color: var(--akd-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
}

.akd-fr-reason-card__title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--akd-white);
  margin: 0 0 10px;
  line-height: 1.35;
}

.akd-fr-reason-card__desc {
  font-size: 0.88rem;
  line-height: 1.70;
  color: rgba(255,255,255,0.50);
  margin: 0;
}

/* ── 4. WHY THIS HELPS ───────────────────────────────────────────────────── */

.akd-fr-page .akd-fr-helps {
  background: var(--akd-bg-soft);
  padding-block: var(--akd-section-py);
}

.akd-fr-page .akd-fr-helps__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 48px;
}

.akd-fr-help-card {
  background: var(--akd-white);
  border: 1px solid var(--akd-border);
  border-radius: var(--akd-radius-xl);
  padding: 32px 28px;
  box-shadow: var(--akd-shadow-sm);
}

.akd-fr-help-card__icon {
  width: 56px;
  height: 56px;
  border-radius: var(--akd-radius-lg);
  background: var(--akd-accent-alpha);
  color: var(--akd-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
}

.akd-fr-help-card__title {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--akd-text);
  margin: 0 0 10px;
  line-height: 1.35;
}

.akd-fr-help-card__desc {
  font-size: 0.9rem;
  line-height: 1.70;
  color: var(--akd-text-soft);
  margin: 0;
}

/* ── 5. WHAT WE REVIEW ───────────────────────────────────────────────────── */

.akd-fr-page .akd-fr-review-areas {
  background: var(--akd-white);
  padding-block: var(--akd-section-py);
}

.akd-fr-page .akd-fr-review-areas__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 72px;
  align-items: start;
}

.akd-fr-review-areas__header {
  position: sticky;
  top: calc(var(--akd-header-h) + 32px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.akd-fr-area-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.akd-fr-area-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  background: var(--akd-bg-soft);
  border: 1px solid var(--akd-border);
  border-radius: var(--akd-radius-lg);
  padding: 16px 18px;
  transition: border-color var(--akd-dur);
}
.akd-fr-area-item:hover { border-color: var(--akd-accent-alpha2); }

.akd-fr-area-item__check {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--akd-accent);
  color: var(--akd-white);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
}

.akd-fr-area-item strong {
  display: block;
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--akd-text);
  margin-bottom: 2px;
}

.akd-fr-area-item span {
  font-size: 0.845rem;
  line-height: 1.6;
  color: var(--akd-text-soft);
}

/* ── 6. SOCIAL PROOF ─────────────────────────────────────────────────────── */

.akd-fr-page .akd-fr-proof {
  background: var(--akd-bg);
  padding-block: var(--akd-section-py);
  border-top: 1px solid var(--akd-border);
  border-bottom: 1px solid var(--akd-border);
}

.akd-fr-page .akd-fr-proof__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 48px;
}

.akd-fr-proof-card {
  background: var(--akd-white);
  border: 1px solid var(--akd-border);
  border-radius: var(--akd-radius-xl);
  padding: 28px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: var(--akd-shadow-sm);
}

.akd-fr-proof-card__quote-mark {
  font-size: 3.5rem;
  font-family: Georgia, serif;
  color: var(--akd-accent);
  opacity: 0.3;
  line-height: 1;
  margin-bottom: -8px;
}

.akd-fr-proof-card__quote {
  font-size: 0.93rem;
  line-height: 1.72;
  color: var(--akd-text);
  margin: 0;
  flex: 1;
  font-style: italic;
}

.akd-fr-proof-card__person {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--akd-border);
}

.akd-fr-proof-card__avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--akd-accent);
  color: var(--akd-white);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.85rem;
  font-weight: 700;
  flex-shrink: 0;
}

.akd-fr-proof-card__person strong {
  display: block;
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--akd-text);
}

.akd-fr-proof-card__person span {
  font-size: 0.78rem;
  color: var(--akd-text-soft);
}

/* ── 7. WHY THIS IS DIFFERENT ────────────────────────────────────────────── */

.akd-fr-page .akd-fr-different {
  background: var(--akd-bg-dark);
  padding-block: var(--akd-section-py);
}

.akd-fr-page .akd-fr-different__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 48px;
}

.akd-fr-different-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: var(--akd-radius-xl);
  padding: 24px 22px;
  transition: background var(--akd-dur);
}
.akd-fr-different-card:hover { background: rgba(255,255,255,0.07); }

.akd-fr-different-card__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--akd-accent);
  margin-bottom: 14px;
}

.akd-fr-different-card__title {
  font-size: 0.97rem;
  font-weight: 700;
  color: var(--akd-white);
  margin: 0 0 8px;
  line-height: 1.35;
}

.akd-fr-different-card__desc {
  font-size: 0.855rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.48);
  margin: 0;
}

/* ── SMOOTH SCROLL ANCHOR ────────────────────────────────────────────────── */
html:has(.akd-fr-page) { scroll-behavior: smooth; }

/* ── TABLET 769px – 1024px ───────────────────────────────────────────────── */

@media (min-width: 769px) and (max-width: 1024px) {

  .akd-fr-page .akd-fr-hero__grid       { grid-template-columns: 1fr 1fr; gap: 40px; }
  .akd-fr-page .akd-fr-hero__title      { font-size: clamp(1.8rem, 3.5vw, 2.6rem); }
  .akd-fr-page .akd-fr-included__grid   { grid-template-columns: repeat(2, 1fr); }
  .akd-fr-page .akd-fr-reasons__grid    { grid-template-columns: repeat(2, 1fr); }
  .akd-fr-page .akd-fr-helps__grid      { grid-template-columns: 1fr 1fr; }
  .akd-fr-page .akd-fr-review-areas__inner { grid-template-columns: 1fr; gap: 36px; }
  .akd-fr-review-areas__header           { position: static; }
  .akd-fr-page .akd-fr-proof__grid      { grid-template-columns: 1fr 1fr; }
  .akd-fr-page .akd-fr-different__grid  { grid-template-columns: repeat(2, 1fr); }
  .akd-fr-hero__form-col                 { position: static; }
}

/* ── MOBILE ≤ 768px ──────────────────────────────────────────────────────── */

@media (max-width: 768px) {

  .akd-fr-page .akd-fr-hero { padding-top: 48px; padding-bottom: 48px; }

  .akd-fr-page .akd-fr-hero__grid {
    display: flex;
    flex-direction: column;
    gap: 36px;
  }

  .akd-fr-page .akd-fr-hero__form-col  { position: static; width: 100%; }
  .akd-fr-page .akd-fr-hero__title     { font-size: clamp(1.9rem, 7vw, 2.6rem); }
  .akd-fr-page .akd-fr-hero__copy      { max-width: 100%; }
  .akd-fr-page .akd-fr-hero__trust     { gap: 10px; flex-direction: column; }
  .akd-fr-page .akd-fr-included__grid  { grid-template-columns: 1fr; }
  .akd-fr-page .akd-fr-reasons__grid   { grid-template-columns: 1fr; }
  .akd-fr-page .akd-fr-helps__grid     { grid-template-columns: 1fr; }
  .akd-fr-page .akd-fr-review-areas__inner { grid-template-columns: 1fr; gap: 32px; }
  .akd-fr-review-areas__header          { position: static; }
  .akd-fr-page .akd-fr-proof__grid     { grid-template-columns: 1fr; }
  .akd-fr-page .akd-fr-different__grid { grid-template-columns: 1fr 1fr; gap: 10px; }
}

/* ══════════════════════════════════════════════════════════════════════════
   JAPANESE TEMPLATE VARIANTS
   page-ja-funnel-review.php uses different component structures from the
   English template. All new classes are scoped under .akd-fr-page.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── JA: Hero check list ────────────────────────────────────────────────── */

.akd-fr-hero__sub {
  font-size: 1.05rem;
  line-height: 1.72;
  color: var(--akd-text-soft);
  margin: 0 0 20px;
  max-width: 480px;
}

.akd-fr-page .akd-fr-hero__checks {
  list-style: none;
  margin: 0 0 28px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.akd-fr-page .akd-fr-hero__checks li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--akd-text-soft);
}

.akd-fr-page .akd-fr-hero__checks li svg {
  color: var(--akd-accent);
  flex-shrink: 0;
}

/* ── JA: Included cards (icon + title + desc) ───────────────────────────── */

.akd-fr-included-card {
  background: var(--akd-bg-soft);
  border: 1px solid var(--akd-border);
  border-radius: var(--akd-radius-xl);
  padding: 28px 24px;
  transition: box-shadow var(--akd-dur);
}
.akd-fr-included-card:hover { box-shadow: var(--akd-shadow-sm); }

.akd-fr-included-card__icon {
  width: 52px;
  height: 52px;
  border-radius: var(--akd-radius-lg);
  background: var(--akd-accent-alpha);
  color: var(--akd-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
}

.akd-fr-included-card__title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--akd-text);
  margin: 0 0 8px;
  line-height: 1.35;
}

.akd-fr-included-card__desc {
  font-size: 0.875rem;
  line-height: 1.68;
  color: var(--akd-text-soft);
  margin: 0;
}

/* ── JA: Problems section (light bg, bordered cards) ────────────────────── */

.akd-fr-page .akd-fr-problems {
  background: var(--akd-bg-soft);
  padding-block: var(--akd-section-py);
}

.akd-fr-page .akd-fr-problems__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 48px;
}

.akd-fr-problem-card {
  background: var(--akd-white);
  border: 1px solid var(--akd-border);
  border-left: 3px solid var(--akd-accent);
  border-radius: var(--akd-radius-lg);
  padding: 24px 22px;
  transition: box-shadow var(--akd-dur);
}
.akd-fr-problem-card:hover { box-shadow: var(--akd-shadow-sm); }

.akd-fr-problem-card__line { display: none; }

.akd-fr-problem-card__title {
  font-size: 0.97rem;
  font-weight: 700;
  color: var(--akd-text);
  margin: 0 0 8px;
  line-height: 1.35;
}

.akd-fr-problem-card__desc {
  font-size: 0.875rem;
  line-height: 1.68;
  color: var(--akd-text-soft);
  margin: 0;
}

/* ── JA: Benefits section ───────────────────────────────────────────────── */

.akd-fr-page .akd-fr-benefits {
  background: var(--akd-white);
  padding-block: var(--akd-section-py);
}

.akd-fr-page .akd-fr-benefits__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-top: 48px;
}

.akd-fr-benefit-card {
  background: var(--akd-bg-soft);
  border: 1px solid var(--akd-border);
  border-radius: var(--akd-radius-xl);
  padding: 28px 24px;
  transition: box-shadow var(--akd-dur);
}
.akd-fr-benefit-card:hover { box-shadow: var(--akd-shadow-sm); }

.akd-fr-benefit-card__icon {
  width: 52px;
  height: 52px;
  border-radius: var(--akd-radius-lg);
  background: var(--akd-accent-alpha);
  color: var(--akd-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
}

.akd-fr-benefit-card__title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--akd-text);
  margin: 0 0 8px;
  line-height: 1.35;
}

.akd-fr-benefit-card__desc {
  font-size: 0.875rem;
  line-height: 1.68;
  color: var(--akd-text-soft);
  margin: 0;
}

/* ── JA: Review areas (3-col card grid) ─────────────────────────────────── */

.akd-fr-page .akd-fr-review {
  background: var(--akd-bg-soft);
  padding-block: var(--akd-section-py);
}

.akd-fr-page .akd-fr-review__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 48px;
}

.akd-fr-review-area {
  background: var(--akd-white);
  border: 1px solid var(--akd-border);
  border-radius: var(--akd-radius-xl);
  padding: 28px 24px;
}

.akd-fr-review-area__num {
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  color: var(--akd-accent);
  margin-bottom: 10px;
}

.akd-fr-review-area__title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--akd-text);
  margin: 0 0 16px;
  line-height: 1.35;
}

.akd-fr-review-area__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.akd-fr-review-area__list li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 0.855rem;
  line-height: 1.6;
  color: var(--akd-text-soft);
}

.akd-fr-review-area__list li svg {
  color: var(--akd-accent);
  flex-shrink: 0;
  margin-top: 3px;
}

/* ── JA: Proof stats (large numbers) ───────────────────────────────────── */

.akd-fr-proof-item {
  text-align: center;
  padding: 36px 20px;
}

.akd-fr-proof-item__stat {
  font-size: clamp(2.4rem, 5vw, 3.5rem);
  font-weight: 900;
  color: var(--akd-accent);
  letter-spacing: -0.04em;
  line-height: 1;
  margin-bottom: 6px;
}

.akd-fr-proof-item__label {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--akd-text);
  margin-bottom: 8px;
  line-height: 1.35;
}

.akd-fr-proof-item__desc {
  font-size: 0.855rem;
  line-height: 1.65;
  color: var(--akd-text-soft);
  margin: 0;
  max-width: 200px;
  margin-inline: auto;
}

/* ── JA: Different section (2-col layout with list) ─────────────────────── */

.akd-fr-page .akd-fr-different__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 72px;
  align-items: start;
}

.akd-fr-page .akd-section-header--left {
  text-align: left;
}

.akd-fr-different__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-self: center;
}

.akd-fr-different__list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 0.93rem;
  font-weight: 600;
  color: rgba(255,255,255,0.72);
  padding: 14px 16px;
  border-radius: var(--akd-radius);
  border: 1px solid rgba(255,255,255,0.06);
  background: rgba(255,255,255,0.03);
  line-height: 1.5;
  transition: background var(--akd-dur);
}
.akd-fr-different__list li:hover { background: rgba(255,255,255,0.07); }

.akd-fr-different__check {
  color: var(--akd-accent);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  margin-top: 2px;
}

/* Text color overrides for dark section bg */
.akd-fr-page .akd-fr-different .akd-section-title {
  color: var(--akd-white);
}
.akd-fr-page .akd-fr-different .akd-section-sub {
  color: rgba(255,255,255,0.52);
}

/* ── RESPONSIVE — Japanese variant overrides ─────────────────────────────── */

@media (min-width: 769px) and (max-width: 1024px) {
  .akd-fr-page .akd-fr-included__grid  { grid-template-columns: repeat(2, 1fr); }
  .akd-fr-page .akd-fr-benefits__grid  { grid-template-columns: repeat(2, 1fr); }
  .akd-fr-page .akd-fr-review__grid    { grid-template-columns: 1fr 1fr; }
  .akd-fr-page .akd-fr-different__inner { grid-template-columns: 1fr; gap: 36px; }
}

@media (max-width: 768px) {
  .akd-fr-page .akd-fr-problems__grid  { grid-template-columns: 1fr; }
  .akd-fr-page .akd-fr-benefits__grid  { grid-template-columns: 1fr; }
  .akd-fr-page .akd-fr-review__grid    { grid-template-columns: 1fr; }
  .akd-fr-page .akd-fr-different__inner { grid-template-columns: 1fr; gap: 32px; }
}
