/* v1.19.15: full usable section width and legible type, without changing authored copy. */
:root { --nra-readable-max: 1440px; }
body { font-size: 18px; line-height: 1.8; }
body .container, body .section > .container, body .content-page > .container {
  width: min(var(--nra-readable-max), calc(100% - clamp(36px, 6vw, 104px)));
  max-width: var(--nra-readable-max);
  margin-inline: auto;
}
body .section { padding-block: clamp(64px, 6.5vw, 112px); }
body .section-title { font-size: clamp(30px, 2.8vw, 44px); line-height:1.32; max-width:none; }
body .section-title::after { width: min(100%, 150px); }
body .section p, body .process-block p, body .pricing-block p, body .final-cta p,
body .entry-content, body .faq-answer { font-size: clamp(17px, 1.25vw, 20px); line-height:1.85; }
body .section .nra-visual-lead, body .section .merged-concern-intro,
body .process-block .nra-visual-lead { max-width: 84ch; }
body .service-card p, body .reason-item p, body .goal-card p, body .nra-process-card p {
  max-width:none; font-size: clamp(16px, 1.16vw, 19px); line-height:1.7;
}
body .section h3, body .process-block h3, body .pricing-block h3 {font-size:clamp(21px,1.7vw,27px);line-height:1.45;}
body .section .service-grid, body .section .reasons-grid, body .section .cases-grid,
body .section .insights-grid, body .section .goal-grid {width:100%; column-gap:clamp(20px,2.5vw,38px);row-gap:clamp(24px,3vw,44px);}
body .service-card, body .goal-card, body .reason-item, body .case-content {min-width:0;}
body .section .btn, body .final-cta .btn, body .process-block .btn, body .pricing-block .btn {font-size:clamp(16px,1.15vw,19px);min-height:54px;}
body .faq-item summary {font-size:clamp(18px,1.4vw,22px);line-height:1.6;}
body .entry-content {max-width:none;}
body .content-page > .container {max-width: min(1200px, var(--nra-readable-max));}
body .section .section-note, body .section .card-link, body .section .text-link {font-size:clamp(15px,1.1vw,18px);}
@media(max-width:900px){
 body .container, body .section > .container, body .content-page > .container {width:calc(100% - 36px);}
 body .section {padding-block:clamp(54px,8vw,78px);}
 body .section-title {font-size:clamp(28px,6vw,38px);}
 body .section p, body .process-block p, body .pricing-block p, body .final-cta p,
 body .entry-content, body .faq-answer {font-size:17px;}
 body .service-card p,body .reason-item p,body .goal-card p,body .nra-process-card p {font-size:16px;}
}
@media(max-width:700px){
 body .section .service-grid,body .section .reasons-grid {grid-template-columns:1fr;}
 body .service-card {min-height:0;padding:22px 20px;}
 body .service-card h3,body .reason-item h3,body .goal-text h3 {font-size:21px;min-height:0;}
 body .service-card p,body .goal-card p {min-height:0;}
 body .section .card-link,body .section .text-link {font-size:16px;}
 body .faq-item summary {font-size:18px;}
}
