/* Content layouts use the existing theme, typography and palette. */
.logo { font-size: 22px; }
.nav { gap: 24px; }
.nav a[aria-current="page"] { color: var(--pink); }
.hero-home .hero-title { max-width: 22ch; font-size: clamp(44px, 5.5vw, 88px); line-height: 1.02; text-wrap: balance; }
.hero-home .hero-lead { max-width: 760px; }
.hero-home .hero-inner { padding-top: 60px; padding-bottom: 60px; }
.hero-micro { max-width: 660px; margin: 24px 0 0; font-size: 12.5px; line-height: 1.7; color: var(--text-2); }
.content-section { padding-top: 80px; padding-bottom: 64px; }
.section-intro { max-width: 920px; margin-bottom: 36px; }
.section-intro .sec-title, .free-panel .sec-title, .conversion-panel .sec-title { margin: 20px 0 0; font-size: clamp(34px, 3.8vw, 58px); line-height: 1.08; letter-spacing: -0.035em; text-wrap: balance; }
.section-intro p, .free-panel p, .conversion-panel p { margin: 22px 0 0; max-width: 850px; font-size: 17px; line-height: 1.8; color: var(--text-2); }
.decision-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.decision-card { position: relative; padding: 36px; border: 1px solid var(--line); border-radius: 24px; background: var(--card); }
.decision-card:last-child { grid-column: 1 / -1; }
.decision-n { display: inline-block; font: 12px var(--mono); color: var(--pink); border: 1px solid var(--line); padding: 9px 11px; border-radius: 9px; }
.decision-card h3 { margin: 24px 0 0; max-width: 24ch; font-size: clamp(25px, 2.4vw, 34px); line-height: 1.12; letter-spacing: -0.025em; text-wrap: balance; }
.decision-card p { font-size: 16px; line-height: 1.8; color: var(--text-2); margin: 18px 0 0; max-width: 75ch; }
.decision-links { display: flex; flex-wrap: wrap; gap: 18px 28px; margin-top: 26px; }
.decision-links a { display: inline-block; padding: 8px 0; }
.decision-links a::after { content: ' ↗'; }
.criteria-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 34px; counter-reset: criteria; }
.criterion { border-top: 1px solid var(--line); padding: 28px 0; counter-increment: criteria; }
.criterion h3 { margin: 0; font-size: 24px; letter-spacing: -0.02em; }
.criterion h3::before { content: counter(criteria, decimal-leading-zero); display: block; margin-bottom: 18px; font: 11px var(--mono); color: var(--pink); }
.criterion p { margin: 16px 0 0; font-size: 15.5px; line-height: 1.8; color: var(--text-2); }
.section-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; margin-top: 30px; }
.free-panel, .conversion-panel { padding: clamp(28px, 4vw, 64px); border: 1px solid var(--line); border-radius: 28px; background: var(--card); }
.free-panel { background: radial-gradient(ellipse at top right, rgba(244,114,182,.12), transparent 65%), var(--card); }
.trust { padding-top: 64px; padding-bottom: 24px; }
.panel-title { font-size: clamp(30px, 3vw, 44px); line-height: 1.08; text-wrap: balance; }
.panel-text { color: var(--text-2); }
.conversion-section { padding-bottom: 100px; }
.conversion-panel { text-align: center; }
.conversion-panel .sec-title { max-width: 20ch; margin-left: auto; margin-right: auto; }
.conversion-panel p { max-width: 720px; margin-left: auto; margin-right: auto; }
.conversion-panel .section-actions { justify-content: center; }
.faq-home .faq-intro { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .8fr); gap: 48px; align-items: end; }
.faq-home .faq-list { grid-column: auto; }
.footer-grid { grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr)); gap: 36px; }
.footer-brand { grid-column: auto; min-width: 0; }
.footer-logo { font-size: 22px; }
.exit-content { max-width: 800px; padding-top: 15vh; }
.exit-content .kw-lead { margin-top: 28px; }
.tool-profile-review-title { margin: 18px 0 0; font-size: 30px; line-height: 1.08; letter-spacing: -.025em; }
.tool-profile-date { margin: 18px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.tool-profile-review-points { list-style: none; padding: 0; margin: 22px 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.tool-profile-review-points strong { display: block; font-size: 14px; font-weight: 500; }
.tool-profile-review-points span { display: block; margin-top: 10px; color: var(--text-2); font-size: 13px; line-height: 1.7; }
@media (max-width: 1100px) {
  .nav { display: none; }
  .burger { display: block; }
  .footer-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .footer-brand { grid-column: 1 / -1; }
  .footer-brand p { max-width: 600px; }
}
@media (max-width: 900px) {
  .tool-profile-review-points { grid-template-columns: 1fr; gap: 20px; }
  .criteria-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .faq-home .faq-intro { grid-template-columns: 1fr; gap: 20px; }
  .decision-card { padding: 28px; }
}
@media (max-width: 640px) {
  .logo { font-size: 19px; gap: 8px; }
  .logo-mark { width: 32px; height: 32px; }
  .nav-cta { display: none; }
  .hero-home .hero-inner { padding-top: 48px; padding-bottom: 48px; }
  .hero-home .hero-title { font-size: clamp(40px, 10.5vw, 62px); }
  .hero-home .hero-lead { font-size: 16px; }
  .hero-home .kicker { font-size: 10px; letter-spacing: .07em; }
  .hero-ctas { width: 100%; justify-content: center; }
  .hero-ctas .btn { width: 100%; max-width: 360px; }
  .hero-micro { font-size: 12px; }
  .content-section { padding-top: 56px; padding-bottom: 32px; }
  .decision-grid, .criteria-grid { grid-template-columns: 1fr; }
  .decision-card:last-child { grid-column: auto; }
  .decision-card { padding: 26px; }
  .criterion { padding: 24px 0; }
  .section-intro p, .free-panel p, .conversion-panel p { font-size: 16px; }
  .panel { padding: 28px; }
  .conversion-section { padding-bottom: 72px; }
  .section-actions .btn { width: 100%; justify-content: center; }
  .guide-page .hero-plain .kw-title { font-size: 42px; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 24px; }
  .footer-col a { font-size: 13px; }
}
