/* R&L — conteúdo, identidade corporativa e leitura em telas pequenas. */
:root { --blue: #244e78; --blue-soft: #eaf0f7; }
.hero { background: linear-gradient(120deg, #0d2038 30%, #183756); }
/* A foto é decorativa; o azul protege a leitura sem esconder a equipe. */
.home .hero {
  background-color: #0d2038;
  background-image: linear-gradient(100deg, rgb(9 27 48 / 89%) 0%, rgb(12 33 56 / 81%) 42%, rgb(17 43 69 / 70%) 100%), url('../img/hero-equipe.webp');
  background-size: cover;
  background-position: center, center 42%;
  background-repeat: no-repeat;
}
@media (max-width: 760px) {
  .home .hero {
    background-image: linear-gradient(180deg, rgb(13 32 56 / 78%) 0, rgb(13 32 56 / 83%) 420px, #0d2038 760px), url('../img/hero-equipe.webp');
    background-size: 100% 100%, auto 760px;
    background-position: center, 85% top;
  }
}
@media print {
  .home .hero { background: #fff; color: #000; }
}
.hero:before { background: radial-gradient(circle, #466f9c24, transparent 65%); }
.hero-copy h1 { font-size: clamp(48px, 5.2vw, 76px); line-height: 1.06; }
.hero-copy h1 em { color: var(--gold); }
.hero-copy > p:not(.eyebrow) { color: #c2cfdf; font-size: 17px; max-width: 480px; }
.hero-note { color: #b9cadd; font-size: 12px; }
.hero-index { color: #b9cadd; }
.hero .eyebrow { font-size: 10px; }
.hero-proof { display: flex; flex-wrap: wrap; gap: 10px 20px; padding: 0; margin: 26px 0 0; list-style: none; color: #c5d2e1; font-size: 12px; }
.hero-proof li::before { content: '✓'; color: var(--gold); margin-right: 7px; }
.architecture { background: #122b47cc; border-color: #38516d; box-shadow: 0 30px 80px #06101c38; }
.architecture-top { color: #c5d2e1; font-size: 9px; }
.arch-core { background: linear-gradient(140deg, #264765, #102944); border-color: #d4cb8780; }
.core-top { color: var(--gold-bright); }
.arch-node { background: #183452; border-color: #415b78; }
.arch-node:hover { background: #254765; border-color: var(--gold); }
.arch-node.active { background: #25445f; border-color: var(--gold); }
.arch-node strong { font-size: 12px; }
.arch-node small { color: #c1cede; font-size: 10px; }
.arch-lines { stroke: #8196af; }
.architecture-bottom > span { font-size: 12px; color: #c6d2e0; }
.architecture-caption { font-size: 10px; color: #a9bed3; }
.arch-support { color: #b6c8dc; font-size: 10px; }
.motion-toggle { width: 44px; height: 44px; color: #d9e4ee; }
.trust-strip { background: #fff; }
.trust-strip p { font-size: 10px; color: #52647a; }
.trust-logos img { opacity: .82; }
.case-brand-art { height: 230px; }
.case-brand-art > img { width: 220px; height: auto; max-height: 95px; object-fit: contain; position: relative; }
.muted-word { color: #596e87; }
.btn { border-radius: 7px; font-size: 14px; }
.btn-primary { box-shadow: 0 4px 18px #ecd47712; }
.btn-dark-outline { border-color: #647c98; }
.text-link { min-height: 44px; }
.section-intro, .intro-copy > p, .module-card > p { font-size: 15px; }
.module-card { background: #fff; border-color: var(--line); }
.module-icon { color: #31587c; background: var(--blue-soft); }
.focus-board { background: #fff; }
.focus-board > p, .focus-human span { color: #53657b; }
.focus-modules > span { background: #eff4fa; border-color: #d4dfeb; color: #344e69; font-size: 11px; }
.focus-board > small { color: #53657b; font-size: 11px; }
.focus-options button { min-height: 52px; }
.proximity-section { background: #edf2f8; }
.proximity-visual { background: #e3ebf4; }
.proximity-grid em { color: #345d85; }
.cta-section { background: var(--ink); border-color: #29425e; color: #fff; }
.cta-section .eyebrow, .cta-mark > span { color: var(--gold-bright); }
.cta-section .eyebrow > span { background: var(--gold); }
.cta-inner p:not(.eyebrow) { color: #bccce0; font-size: 15px; }
.cta-section .btn-primary { color: var(--ink); background: var(--gold); }
.cta-section .btn-primary:hover { background: var(--gold-bright); }
.cta-section .btn-dark-outline { color: #fff; border-color: #7288a2; }
.cta-mark:before { border-color: #44607d; }
.cta-mark img { filter: none; }
.site-footer { background: #09192d; }
.footer-brand p, .footer-contact p, .footer-links a, .footer-bottom { color: #aebfd3; }
.footer-links a, .footer-contact p { font-size: 13px; }
.footer-bottom { font-size: 11px; }
.footer-links a { margin-bottom: 0; min-height: 36px; display: flex; align-items: center; }
.page-hero-bottom > p, .page-hero > .container > p:not(.eyebrow), .about-hero .lead { color: #c1cede; font-size: 16px; }
.jump-links > a { font-size: 12px; min-height: 36px; }

/* As dores são portas de entrada para conteúdos que ajudam a decidir. */
.pain-section { background: #fff; }
.pain-section .section-head { align-items: end; }
.pain-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.pain-card { display: flex; flex-direction: column; padding: 30px; border: 1px solid var(--line); border-radius: 12px; background: #f7f9fc; }
.pain-card > span { color: var(--blue); font-size: 12px; letter-spacing: .08em; margin-bottom: 26px; }
.pain-card h3 { font-size: 25px; line-height: 1.3; letter-spacing: -.035em; margin-bottom: 18px; }
.pain-card p { font-size: 15px; color: var(--muted); line-height: 1.8; }
.pain-card a { margin-top: auto; padding-top: 16px; border-top: 1px solid var(--line); color: var(--blue); }
.pain-card:hover { border-color: #92a9c1; }
.impact-preview { background: #eaf0f7; }
.impact-preview-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: center; }
.impact-preview-grid > div > p:not(.eyebrow) { color: var(--muted); margin-top: 26px; }
.impact-preview-list { list-style: none; padding: 0; margin: 0; }
.impact-preview-list li { border-top: 1px solid #cbd7e5; display: grid; grid-template-columns: 42px 1fr; gap: 16px; padding: 24px 0; }
.impact-preview-list li > span { font-size: 12px; color: var(--blue); padding-top: 4px; }
.impact-preview-list h3 { font-size: 22px; margin-bottom: 10px; }
.impact-preview-list p { font-size: 15px; color: var(--muted); margin: 0; }

/* Guias: largura de leitura, sumário navegável e exemplos identificados. */
.breadcrumbs { font-size: 13px; color: #bdcde0; margin-bottom: 30px; }
.breadcrumbs ol { list-style: none; display: flex; align-items: center; flex-wrap: wrap; gap: 8px; padding: 0; margin: 0; }
.breadcrumbs li { display: inline-flex; align-items: center; gap: 8px; }
.breadcrumbs li + li::before { content: '/'; color: #8ba0ba; }
.breadcrumbs a { text-decoration: underline; text-underline-offset: 4px; padding-block: 8px; }
.breadcrumbs [aria-current] { color: #fff; }
.insight-hero h1 { max-width: 980px; font-size: clamp(38px, 4.6vw, 65px); text-wrap: balance; }
.insight-hero p { max-width: 780px; }
.insight-meta { display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 12px; color: #b6c9dd; margin-top: 24px; }
.article-layout { display: grid; grid-template-columns: minmax(0, 780px) minmax(220px, 1fr); gap: 70px; align-items: start; padding-block: 70px; }
.article-body { min-width: 0; font-size: 17px; line-height: 1.9; }
.article-body p, .article-body li { color: #475b73; }
.article-body h2 { font-size: clamp(28px, 3vw, 38px); line-height: 1.2; margin: 0 0 22px; }
.article-body h3 { font-size: 23px; line-height: 1.35; margin: 28px 0 12px; }
.article-body a:not(.btn) { color: #244e78; text-decoration: underline; text-underline-offset: 4px; }
.article-body ul, .article-body ol { padding-left: 23px; }
.article-body li { padding-left: 4px; margin-bottom: 10px; }
.article-summary { padding: 28px 30px; background: #eaf0f7; border-left: 4px solid #294f76; border-radius: 0 10px 10px 0; margin-bottom: 45px; }
.article-summary p:last-child { margin-bottom: 0; }
.article-summary h2, .article-summary h3 { font-size: 24px; margin: 0 0 15px; }
.article-section { margin-bottom: 48px; scroll-margin-top: 115px; }
.article-sidebar { position: sticky; top: 120px; background: #fff; padding: 26px; border: 1px solid var(--line); border-radius: 12px; }
.article-sidebar h2, .article-sidebar h3 { font-size: 19px; line-height: 1.4; margin: 0 0 17px; letter-spacing: -.025em; }
.article-sidebar p { font-size: 14px; color: var(--muted); }
.article-sidebar .btn { width: 100%; padding: 14px 16px; font-size: 13px; }
.article-sidebar .article-summary { padding: 22px 0 0; margin: 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: none; }
.article-sidebar .article-summary h2 { font-size: 21px; }
.article-toc { margin-bottom: 28px; }
.article-toc ul, .article-toc ol { list-style: none; margin: 0; padding: 0; }
.article-toc a { display: block; padding: 10px 0; font-size: 14px; color: #3f5d7c; border-bottom: 1px solid #edf1f6; }
.article-toc a:hover { color: #112e4d; text-decoration: underline; }
.insight-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.insight-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 30px; }
.insight-card .micro, .insight-card .eyebrow { font-size: 11px; color: #526b87; margin-bottom: 20px; }
.insight-card .insight-meta { color: #52657b; margin: 0 0 20px; }
.insight-card h2, .insight-card h3 { font-size: 25px; line-height: 1.3; margin: 0 0 18px; }
.insight-card p { font-size: 15px; color: var(--muted); }
.insight-card .text-link { margin-top: auto; color: var(--blue); }
.impact-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; list-style: none; padding: 0 !important; }
.impact-list > li, .impact-list > article { padding: 24px; border: 1px solid var(--line); background: #fff; border-radius: 10px; margin: 0; }
.impact-list h3 { margin-top: 0; font-size: 22px; }
.impact-list p { margin-bottom: 0; font-size: 15px; }
.comparison-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 25px 0; }
.comparison-card { padding: 24px; border-radius: 10px; background: #edf2f8; border: 1px solid #d6e1ed; }
.comparison-card h3 { margin-top: 0; font-size: 22px; }
.comparison-card p:last-child { margin: 0; }
.article-related { margin-top: 45px; padding-top: 28px; border-top: 1px solid var(--line); }
.article-related .insight-grid { margin-top: 25px; }
.article-body .faq-item summary { font-size: 17px; }
.article-body .faq-item > p { font-size: 16px; }
.article-body .faq-item { border-color: #cdd9e6; }
.article-body .faq-item summary::after { content: '+'; color: #315575; font-size: 24px; }
.article-body .faq-item[open] summary::after { content: '−'; }

@media (max-width: 1100px) and (min-width: 761px) {
  .main-nav { gap: 17px; }
  .main-nav .nav-diagnostic { display: none; }
  .hero-copy h1 { font-size: clamp(44px, 5.5vw, 60px); }
  .hero-grid { grid-template-columns: 1fr 1fr; }
  .arch-node { width: 140px; }
  .arch-node strong { font-size: 11px; }
  .arch-node small { font-size: 9px; }
  .pain-card { padding: 24px; }
  .pain-card h3 { font-size: 23px; }
  .article-layout { gap: 35px; grid-template-columns: minmax(0, 1fr) 240px; }
}
@media (max-width: 760px) {
  .hero-copy h1 { font-size: clamp(43px, 9.2vw, 65px); max-width: 600px; }
  .hero-copy > p:not(.eyebrow) { font-size: 16px; }
  .hero .eyebrow { font-size: 9px; letter-spacing: .12em; }
  .hero .btn { font-size: 14px; min-height: 52px; }
  .hero-note { font-size: 12px; }
  .hero-proof { font-size: 11px; gap: 8px 15px; }
  .architecture { max-width: 550px; }
  .hero-index > span, .hero-index > a { font-size: 10px; line-height: 1.6; }
  .hero-index { gap: 25px; }
  .trust-strip p { font-size: 10px; }
  .trust-logos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .trust-logos img { max-width: min(110px, 100%); }
  .pain-grid { grid-template-columns: 1fr; gap: 15px; }
  .pain-card { padding: 26px; }
  .pain-card > span { margin-bottom: 17px; }
  .pain-card h3 { font-size: 26px; }
  .impact-preview-grid { grid-template-columns: 1fr; gap: 35px; }
  .article-layout { display: flex; flex-direction: column; gap: 35px; padding-block: 40px; }
  .article-sidebar { position: static; width: 100%; order: -1; padding: 22px; }
  .article-toc { margin-bottom: 20px; }
  .article-sidebar .article-summary { display: none; }
  .article-sidebar .article-toc { margin-bottom: 0; }
  .article-sidebar .btn { width: auto; }
  .article-body { font-size: 16px; }
  .article-summary { padding: 24px; margin-bottom: 36px; }
  .insight-hero h1 { font-size: clamp(36px, 7vw, 51px); }
  .insight-grid { gap: 16px; }
  .insight-card { padding: 24px; }
  .insight-card h2, .insight-card h3 { font-size: 23px; }
  .eyebrow { font-size: 10px; }
  .section-intro, .intro-copy > p, .module-card > p { font-size: 15px; }
  .module-bottom > span, .case-copy .micro { font-size: 10px; }
  .case-copy > p:not(.micro), .method-grid p, .benefit-row p { font-size: 14px; }
  .faq-item summary, .faq-item > p { font-size: 15px; }
  .solution-main > .lead, .solution-deliver li, .solution-aside p { font-size: 14px; }
  .page-hero-bottom > p, .page-hero > .container > p:not(.eyebrow) { font-size: 16px; }
  .footer-links a, .footer-contact p, .footer-contact > a:first-of-type { font-size: 12px; }
  .footer-bottom, .footer-bottom .back-top { font-size: 10px; }
  .footer-brand p { font-size: 13px; }
  .cta-inner p:not(.eyebrow) { font-size: 15px; }
  .cta-inner .btn { font-size: 14px; }
  .wizard-option strong { font-size: 14px; }
  .wizard-option small, .wizard-desc, .wizard-count, .diagnostic-steps li { font-size: 12px; }
  .diagnostic-result > p, .result-module p, .result-next p { font-size: 14px; }
  .result-context > span { font-size: 11px; }
  .result-actions .btn { font-size: 13px; }
  .diagnostic-bottom > span, .wizard-empty-note { font-size: 11px; }
  .field > label, .form-intro, .consent { font-size: 13px; }
  .field-help, .form-note, .form-mode { font-size: 12px; }
  .field > label > span { font-size: 11px; }
}
@media (max-width: 480px) {
  .trust-logos img { max-width: min(93px, 100%); }
  .hero .button-row { flex-direction: column; align-items: stretch; }
  .hero .btn { width: 100%; font-size: 14px; }
  .hero-index { align-items: start; }
  .hero-index > span { max-width: 125px; }
  .hero-index > a { max-width: 165px; }
  .hero-proof { display: grid; gap: 6px; }
  .architecture-top { font-size: 8px; line-height: 1.7; }
  .architecture-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; height: auto; padding-top: 14px; }
  .arch-core { grid-column: 1/-1; position: static; transform: none; width: 100%; height: auto; padding: 17px; margin: 0 0 5px; border-radius: 10px; }
  .core-top { font-size: 9px; }
  .arch-core > img { width: 46px; height: 46px; margin: 10px 0; }
  .arch-core > strong { font-size: 13px; }
  .core-bottom { font-size: 10px; padding: 9px 0 0; }
  .arch-node { position: static; width: 100%; min-height: 85px; padding: 12px 8px; gap: 7px; }
  .arch-node strong { font-size: 12px; }
  .arch-node small { font-size: 10px; line-height: 1.5; }
  .arch-node i, .arch-orbit, .arch-lines { display: none; }
  .arch-support { position: static; grid-column: 1/-1; transform: none; justify-content: center; white-space: normal; font-size: 10px; padding-block: 8px; }
  .architecture-bottom > span { font-size: 12px; }
  .architecture-caption { font-size: 9px; align-items: start; }
  .motion-toggle { display: none; }
  .insight-grid, .impact-list, .comparison-grid { grid-template-columns: 1fr; }
  .article-body .faq-item summary { font-size: 16px; }
  .article-section { margin-bottom: 36px; }
  .article-sidebar .btn { width: 100%; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }
  .footer-links a { min-height: 40px; }
  .focus-options { grid-template-columns: 1fr; }
  .focus-options button { font-size: 15px; }
  .focus-options button:nth-child(2) { border-top: 0; }
}
@media (max-width: 360px) {
  .arch-node { gap: 4px; }
  .arch-node .node-icon { width: 20px; }
  .arch-node strong { font-size: 11px; }
  .arch-node small { font-size: 9px; }
  .hero-copy h1 { font-size: 42px; }
}
@media (prefers-reduced-motion: reduce) { .motion-toggle { display: none; } }
/* Catálogos de serviços e aplicações por setor. */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.catalog-hero h1 { max-width: 1040px; }
.catalog-jumps { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 38px; }
.catalog-jumps a { border: 1px solid #5b718b; border-radius: 30px; padding: 11px 18px; font-size: 13px; color: #dce6f0; }
.catalog-jumps a:hover { border-color: var(--gold); color: var(--gold); }
.fit-strip { padding-block: 46px; background: #eaf0f7; border-block: 1px solid #d9e3ef; }
.fit-strip-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.fit-strip h2 { font-size: clamp(25px, 2.5vw, 34px); line-height: 1.2; }
.fit-strip p { color: #465c75; line-height: 1.85; font-size: 16px; }
.fit-strip .eyebrow { font-size: 10px; margin-bottom: 16px; }
.fit-strip .text-link { margin-top: 12px; }
.sector-group { scroll-margin-top: 106px; }
.sector-group + .sector-group { padding-top: 0; }
.sector-group .section-head h2 { max-width: 650px; }
.sector-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.sector-card { display: flex; flex-direction: column; padding: 32px; background: #fff; border: 1px solid #d7e1ec; border-radius: 12px; scroll-margin-top: 112px; transition: border-color .2s, box-shadow .2s; }
.sector-card:hover, .sector-card:focus-within { border-color: #829ab4; box-shadow: 0 8px 28px #1636570a; }
.sector-card .insight-meta { margin-bottom: 19px; }
.sector-card h3 { font-size: 27px; line-height: 1.2; letter-spacing: -.025em; margin-bottom: 13px; }
.sector-card h3 a:hover { color: var(--blue); }
.sector-card > p { font-size: 15px; line-height: 1.8; color: #4b6078; margin-bottom: 18px; }
.sector-card .sector-types { font-size: 13px; padding-bottom: 19px; border-bottom: 1px solid #e1e8f0; }
.sector-card .sector-pain { color: var(--ink); font-size: 19px; line-height: 1.5; font-weight: 550; }
.sector-card .text-link { margin-top: auto; align-self: flex-start; font-size: 13px; }
.service-card { border-top: 3px solid var(--gold); }
.service-card .service-deliverables { font-size: 12px; color: #355c82; padding-top: 16px; border-top: 1px solid #e1e8f0; }
.sector-bridge { display: grid; grid-template-columns: 1fr 1fr; gap: 65px; }
.sector-bridge h2 { font-size: clamp(32px, 3.6vw, 48px); }
.sector-bridge em { color: var(--gold); }
.sector-bridge p:not(.eyebrow) { color: #c4d0df; font-size: 16px; line-height: 1.85; margin-bottom: 22px; }
.hub-faq { display: grid; grid-template-columns: 1fr 1.15fr; gap: 70px; }
.hub-faq > div > p:not(.eyebrow) { color: #4b6078; font-size: 16px; line-height: 1.85; margin-top: 24px; }
.hub-faq > div > .text-link { margin-top: 18px; }
.hub-faq .faq-item summary, .hub-faq .faq-item p { font-size: 16px; }
.implementation-overview { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 35px; padding: 0; }
.implementation-overview li { padding-top: 20px; border-top: 1px solid #c9d7e6; }
.implementation-overview span { display: block; font-size: 13px; color: var(--blue); margin-bottom: 18px; }
.implementation-overview h3 { font-size: 24px; margin-bottom: 12px; }
.implementation-overview p { color: #4b6078; line-height: 1.8; font-size: 15px; }
.delivery-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-block: 25px; }
.delivery-card { padding: 25px; background: #fff; border: 1px solid #d7e1ec; border-radius: 9px; }
.delivery-card h3 { font-size: 22px; line-height: 1.3; margin: 0 0 13px; }
.delivery-card p:last-child { margin-bottom: 0; }
.implementation-steps { counter-reset: implementation; list-style: none; padding: 0; margin: 28px 0; }
.implementation-steps > li { counter-increment: implementation; position: relative; padding: 0 0 27px 59px; margin: 0 0 27px; border-bottom: 1px solid #d7e1ec; }
.implementation-steps > li::before { content: counter(implementation, decimal-leading-zero); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 38px; height: 38px; background: var(--ink); color: var(--gold); border-radius: 8px; font-size: 13px; font-weight: 600; }
.implementation-steps h3 { margin-top: 0; line-height: 1.4; }
.implementation-steps p:last-child { margin-bottom: 0; }
.sector-tags { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin-block: 20px; }
.sector-tags > * { padding: 7px 12px; background: #eaf0f7; border-radius: 5px; font-size: 13px; color: #2e5279; }
.scope-note { padding: 22px 25px; border-left: 3px solid #59799a; background: #eaf0f7; margin-block: 24px; }
.article-body, .sector-card, .delivery-card { min-width: 0; overflow-wrap: break-word; }
.article-body h2 { text-wrap: balance; }
@media (min-width: 1001px) { .main-nav { gap: 22px; } .main-nav > a { white-space: nowrap; } }
@media (max-width: 1000px) {
  html { scroll-padding-top: 87px; }
  .site-header { height: 77px; }
  .brand, .brand img { width: 146px; }
  .menu-toggle { display: block; }
  .main-nav { display: none; position: fixed; top: 77px; left: 0; right: 0; bottom: 0; background: var(--ink); padding: 30px 25px; flex-direction: column; align-items: stretch; gap: 7px; overflow: auto; }
  .main-nav.is-open { display: flex; }
  .main-nav > a { padding: 16px 0 !important; font-size: 22px; justify-content: space-between; border-bottom: 1px solid #ffffff16; }
  .main-nav > a[aria-current]::after { display: none; }
  .main-nav .nav-cta { margin-top: 15px; padding: 17px !important; font-size: 16px; min-height: 57px; }
  .menu-toggle[aria-expanded=true] > span:first-child { transform: translateY(3px) rotate(45deg); }
  .menu-toggle[aria-expanded=true] > span:last-child { transform: translateY(-3px) rotate(-45deg); }
}
@media (max-width: 760px) {
  .fit-strip-inner, .sector-bridge, .hub-faq { grid-template-columns: 1fr; gap: 28px; }
  .sector-card { padding: 25px; }
  .sector-card h3 { font-size: 24px; }
  .sector-grid { gap: 16px; }
  .implementation-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
  .catalog-jumps { gap: 8px; margin-top: 26px; }
  .catalog-jumps a { font-size: 12px; }
}
@media (max-width: 560px) {
  .sector-grid, .delivery-grid { grid-template-columns: 1fr; }
  .sector-card .sector-pain { font-size: 18px; }
  .implementation-steps > li { padding-left: 48px; }
  .implementation-steps > li::before { width: 33px; height: 33px; }
  .implementation-overview { gap: 24px 18px; }
  .implementation-overview h3 { font-size: 21px; }
  .implementation-overview p { font-size: 14px; }
}
@media print {
  .article-sidebar { display: none; }
  .article-layout { display: block; }
  .article-body { font-size: 12pt; }
  .hero, .page-hero, .pain-card { color: #000; background: #fff; }
}

/* 29/09 — mais demonstração, menos prosa; chamada final separada do rodapé. */
.cta-section { position: relative; background: #edf3fa; color: #0d2038; border-top: 1px solid #cfdae8; border-bottom: 1px solid #cfdae8; padding: 64px 0; }
.cta-section::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: linear-gradient(90deg, #ecd477 0 28%, #d2dfec 28% 100%); }
.cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 48px; }
.cta-inner > div:first-child { flex: 1; min-width: 0; }
.cta-inner h2 { font-size: clamp(32px, 3.3vw, 46px); max-width: 900px; }
.cta-section .eyebrow, .cta-mark > span { color: #315372; }
.cta-section .eyebrow > span { background: #315372; }
.cta-inner p:not(.eyebrow) { color: #486079; margin: 20px 0 24px; font-size: 16px; }
.cta-section .btn-primary { color: #fff; background: #122e4d; box-shadow: none; }
.cta-section .btn-primary:hover { background: #244e78; }
.cta-section .btn-dark-outline { color: #173757; border-color: #7890aa; background: transparent; }
.cta-section .btn-dark-outline:hover { background: #fff; border-color: #315372; }
.cta-mark { flex: 0 0 200px; min-height: 210px; }
.cta-mark::before { width: 195px; height: 195px; border-color: #c2d2e3; background: #ffffff65; }
.cta-mark img { width: 77px; height: 77px; }
.cta-mark > span { font-size: 15px; position: relative; }
.site-footer { border-top: 0; padding-top: 56px; }
.visual-journey { margin: 28px 0 36px; padding: 28px; border: 1px solid #c9d9e8; border-radius: 14px; background: #eaf1f8; }
.visual-journey figcaption { color: #284e74; font-size: 12px; font-weight: 600; letter-spacing: .06em; margin-bottom: 22px; text-transform: uppercase; }
.flow-track, .article-body .flow-track { display: grid; grid-template-columns: repeat(auto-fit, minmax(135px, 1fr)); gap: 22px; padding: 0; margin: 0; list-style: none; }
.flow-track > li, .article-body .flow-track > li { position: relative; background: #fff; border: 1px solid #cddce9; border-radius: 9px; padding: 19px 17px; margin: 0; min-width: 0; }
.flow-track > li:not(:last-child)::after { content: '→'; position: absolute; right: -19px; top: 43%; color: #345d85; font-size: 17px; }
.flow-track strong { display: block; color: #173858; font-size: 18px; line-height: 1.35; margin-block: 10px 7px; letter-spacing: -.02em; }
.flow-track small { display: block; color: #506880; font-size: 13px; line-height: 1.55; }
.step-kicker { display: inline-grid; place-items: center; min-width: 28px; height: 28px; padding-inline: 6px; background: #f8edbf; color: #173858; border-radius: 7px; font-size: 11px; font-weight: 600; }
.quick-facts, .article-body .quick-facts { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 25px 0; }
.quick-facts li, .article-body .quick-facts li { padding: 20px; margin: 0; border: 1px solid #d4dfeb; border-radius: 10px; background: #fff; }
.quick-facts strong { display: block; color: #173858; font-size: 18px; line-height: 1.35; margin-bottom: 7px; }
.quick-facts span { display: block; font-size: 14px; color: #506880; line-height: 1.6; }
.detail-disclosure { border: 1px solid #cbd9e7; border-radius: 10px; background: #fff; margin: 24px 0; scroll-margin-top: 112px; }
.detail-disclosure summary { cursor: pointer; color: #173858; padding: 22px 25px; font-size: 17px; font-weight: 550; line-height: 1.5; }
.detail-disclosure[open] summary { border-bottom: 1px solid #dbe5ef; }
.disclosure-content { padding: 22px 25px; font-size: 15px; line-height: 1.75; }
.disclosure-content p:last-child { margin-bottom: 0; }
.detail-page .article-layout { display: flex; flex-direction: column; gap: 35px; padding-top: 32px; }
.detail-page .article-sidebar { order: -1; position: static; width: 100%; padding: 0; background: transparent; border: 0; }
.detail-page .article-sidebar .article-summary { display: none; }
.detail-page .article-toc { display: flex; flex-wrap: wrap; gap: 7px 10px; margin: 0; }
.detail-page .article-toc .micro { flex-basis: 100%; margin-bottom: 4px; }
.detail-page .article-toc a { padding: 10px 15px; background: #fff; border: 1px solid #d5e0ec; border-radius: 25px; font-size: 12px; line-height: 1.5; }
.detail-page .article-body { width: 100%; font-size: 16px; line-height: 1.75; }
.detail-page .article-body > .article-summary { padding: 24px 28px; margin-bottom: 36px; max-width: 950px; }
.detail-page .article-body h2 { font-size: clamp(26px, 2.8vw, 35px); }
.detail-page .article-section { margin-bottom: 42px; }
.detail-page .article-section > p { max-width: 880px; }
.detail-page .delivery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.detail-page .delivery-card h3 { font-size: 21px; }
.detail-page .delivery-card p { font-size: 15px; line-height: 1.7; }
.detail-page .impact-list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.detail-page .impact-list li { font-size: 15px; padding: 22px; line-height: 1.7; border-top: 3px solid #c4d8eb; }
.detail-page .implementation-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; padding: 0; }
.detail-page .implementation-steps > li { background: #fff; border: 1px solid #d5e0ec; border-radius: 10px; padding: 61px 23px 23px; margin: 0; }
.detail-page .implementation-steps > li::before { top: 18px; left: 23px; width: 29px; height: 29px; font-size: 11px; }
.detail-page .implementation-steps h3 { font-size: 20px; margin-top: 0; }
.detail-page .implementation-steps p { font-size: 15px; line-height: 1.7; }
.detail-page .article-related { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 25px; }
.detail-page .article-related h2 { flex-basis: 100%; }
.detail-page .article-related p { margin: 0; }
.detail-page .article-related .text-link { font-size: 14px; }
.detail-page .faq-item summary { font-size: 16px; }
.home .section { padding-block: 76px; }
.home .modules-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.home .module-card { padding: 25px; }
.home .module-top { margin-bottom: 20px; }
.home .module-card h3 { font-size: 23px; }
.home .module-card > p { font-size: 14px; line-height: 1.75; }
.home .module-bottom > span { font-size: 10px; }
.home .case-copy > p:not(.micro) { font-size: 15px; }
.home .pain-card h3 { font-size: 24px; }
.home .pain-card > p { line-height: 1.7; }
.workflow-feature { background: #edf3f9; }
.workflow-feature .visual-journey { background: transparent; padding: 0; border: 0; margin: 0; }
.workflow-feature .flow-track li { padding: 26px; }
.workflow-feature .flow-track strong { font-size: 22px; }
.home .areas-preview { padding-block: 60px; }
.area-shortcuts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.area-shortcuts a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 20px; background: #fff; border: 1px solid #d5e0ec; border-radius: 9px; font-size: 15px; color: #173858; }
.area-shortcuts a:hover { border-color: #547b9f; background: #edf3f9; }
.area-shortcuts a > span { color: #547b9f; }
.application-art { position: relative; display: grid; place-items: center; min-height: 248px; padding: 34px 30px 42px; overflow: hidden; background: #173858; color: #fff; }
.application-art::before { content: ''; position: absolute; inset: 0; opacity: .15; background-image: radial-gradient(#c4d9f0 1px, transparent 1px); background-size: 18px 18px; }
.application-art.agent-art { background: #e6eff8; color: #173858; }
.application-art .art-label { color: #bdcfe2; z-index: 1; font-size: 10px; }
.application-art.agent-art .art-label { color: #476684; }
.mini-workflow { display: flex; flex-direction: column; gap: 10px; position: relative; width: min(100%, 330px); }
.mini-workflow > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; background: #244d71; border: 1px solid #52789a; padding: 12px 17px; border-radius: 8px; font-size: 14px; }
.mini-workflow > div:first-child { width: 86%; margin-left: auto; }
.mini-workflow > div:last-child { width: 86%; }
.mini-workflow b { background: #ecd477; color: #173858; padding: 2px 8px; border-radius: 5px; font-size: 10px; }
.mini-agent { width: min(100%, 365px); position: relative; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 15px; }
.mini-agent > div { display: flex; flex-direction: column; gap: 8px; }
.mini-agent span { display: block; background: #fff; border: 1px solid #c1d3e6; border-radius: 7px; padding: 10px; color: #345d7f; font-size: 12px; text-align: center; }
.mini-agent > strong { display: grid; place-items: center; width: 74px; height: 74px; border-radius: 22px; background: #173858; color: #ecd477; border: 6px solid #cadcec; font-size: 24px; }
.application-card .case-copy .micro { color: #315372; }
.application-card .case-copy h3 { font-size: 25px; line-height: 1.3; }
.application-card .case-copy { padding: 28px 30px; }
.application-card .case-copy > p:not(.micro) { min-height: 0; font-size: 15px; }
.sector-card .insight-meta { color: #42617e; } /* contraste dos índices sobre branco */
@media (max-width: 1100px) {
  .home .modules-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .detail-page .impact-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .cta-section { padding-block: 50px; }
  .cta-inner { gap: 25px; }
  .cta-mark { display: none; }
  .cta-inner p:not(.eyebrow) { font-size: 15px; }
  .visual-journey { padding: 21px; }
  .flow-track, .article-body .flow-track { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .flow-track > li:not(:last-child)::after { display: none; }
  .flow-track > li, .article-body .flow-track > li { padding: 16px; }
  .flow-track strong { font-size: 17px; }
  .quick-facts, .article-body .quick-facts { grid-template-columns: 1fr; gap: 10px; }
  .detail-page .delivery-grid { grid-template-columns: 1fr; }
  .detail-page .implementation-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .detail-page .implementation-steps > li { padding: 58px 18px 18px; }
  .detail-page .implementation-steps > li::before { left: 18px; }
  .detail-page .implementation-steps h3 { font-size: 19px; }
  .detail-page .article-toc { gap: 8px; }
  .detail-page .article-toc a { font-size: 12px; padding: 8px 12px; }
  .home .section { padding-block: 54px; }
  .area-shortcuts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .area-shortcuts a { font-size: 14px; padding: 17px; }
  .home .module-card h3 { font-size: 22px; }
  .application-art { min-height: 220px; padding-inline: 22px; }
}
@media (max-width: 560px) {
  .home .modules-grid { grid-template-columns: 1fr; }
  .home .module-card { display: grid; grid-template-columns: 45px 1fr; gap: 8px 18px; padding: 23px; }
  .home .module-top { grid-column: 1; grid-row: 1/4; margin: 0; display: block; }
  .home .module-top .module-number { display: none; }
  .home .module-card h3 { grid-column: 2; margin: 0; }
  .home .module-card > p { grid-column: 2; margin: 0; font-size: 14px; }
  .home .module-bottom { grid-column: 2; border: 0; padding-top: 5px; }
  .detail-page .impact-list { grid-template-columns: 1fr; }
  .detail-page .implementation-steps { grid-template-columns: 1fr; }
  .detail-page .implementation-steps > li { padding-left: 62px; padding-top: 18px; }
  .detail-page .article-summary { padding: 23px; }
  .flow-track strong { font-size: 16px; }
  .flow-track small { font-size: 12px; }
  .visual-journey { padding: 17px; }
  .mini-agent { gap: 8px; }
  .mini-agent > strong { width: 63px; height: 63px; font-size: 22px; }
  .mini-agent span { padding: 8px; font-size: 11px; }
  .application-card .case-copy h3 { font-size: 24px; }
  .application-card .case-copy { padding: 25px; }
  .cta-section .button-row { flex-direction: column; align-items: stretch; }
  .area-shortcuts a { font-size: 13px; padding: 15px 12px; }
}
.visual-detail .section { padding-block: 58px; }
.soft-section { background: #edf3f9; }
.visual-detail .visual-journey:first-child { margin-top: 0; }
.visual-detail .visual-journey + .section-head { margin-top: 46px; }
.step-kicker { height: auto; min-height: 28px; max-width: 100%; line-height: 1.4; padding: 5px 8px; }
.cta-inner h2 + .button-row { margin-top: 26px; }
@media (max-width: 760px) { .visual-detail .section { padding-block: 40px; } }.application-art .art-label { left: 20px; right: 16px; line-height: 1.45; }
@media (max-width: 760px) {
 .workflow-feature .flow-track li { padding: 16px; }
 .workflow-feature .flow-track strong { font-size: 17px; }
}
@media (max-width: 560px) {
 .workflow-feature .flow-track li { padding: 15px; }
 .workflow-feature .flow-track strong { font-size: 16px; }
}@media (max-width: 360px) {
 .flow-track, .article-body .flow-track { grid-template-columns: 1fr; }
 .flow-track > li, .article-body .flow-track > li, .workflow-feature .flow-track li { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 5px 12px; padding: 15px; }
 .flow-track .step-kicker { grid-column: 1; grid-row: 1/3; align-self: start; padding-inline: 4px; }
 .flow-track strong, .workflow-feature .flow-track strong { grid-column: 2; margin: 0; font-size: 17px; }
 .flow-track small { grid-column: 2; font-size: 13px; }
}.article-body .service-link-list { display: flex; flex-wrap: wrap; gap: 10px 25px; list-style: none; padding: 0; margin: 0; flex-basis: 100%; }
.article-body .service-link-list li { margin: 0; padding: 0; }
.article-body .service-link-list a { display: inline-flex; padding-block: 10px; font-size: 14px; }.detail-page .impact-list li > strong { display: block; color: #173858; font-size: 18px; line-height: 1.35; margin-bottom: 10px; }
.detail-page .impact-list li > span { display: block; font-size: 15px; line-height: 1.7; }
.detail-page .implementation-steps.steps-four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1000px) { .detail-page .implementation-steps.steps-four { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .detail-page .implementation-steps.steps-four { grid-template-columns: 1fr; } }
/* Diagrama da home: seis módulos ao redor do negócio. */
.architecture-six .architecture-grid {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .85fr) minmax(0, 1fr);
  grid-template-areas: "atendimento core comercial" "automacoes core agentes" "dados core integracoes" "support support support";
  grid-template-rows: repeat(3, minmax(82px, 1fr)) auto;
  align-items: center; gap: 18px 12px; height: 355px; padding-top: 10px;
}
.architecture-six .arch-node { position: relative; inset: auto; width: 100%; min-width: 0; min-height: 80px; padding: 12px 9px; gap: 7px; }
.architecture-six .arch-node > span:last-of-type { min-width: 0; }
.architecture-six .arch-node strong { font-size: 12px; line-height: 1.4; }
.architecture-six .arch-node small { font-size: 9px; line-height: 1.5; }
.architecture-six .node-icon { flex: 0 0 22px; width: 22px; }
.architecture-six .node-icon .icon { width: 19px; height: 19px; }
.architecture-six .node-0 { grid-area: atendimento; }
.architecture-six .node-1 { grid-area: comercial; }
.architecture-six .node-2 { grid-area: dados; }
.architecture-six .node-3 { grid-area: integracoes; }
.architecture-six .node-4 { grid-area: automacoes; }
.architecture-six .node-5 { grid-area: agentes; }
.architecture-six .arch-core { grid-area: core; position: relative; inset: auto; transform: none; width: 100%; height: 190px; margin: 0; padding: 18px 6px 0; }
.architecture-six .arch-core > img { width: 58px; height: 58px; margin: 14px 0; }
.architecture-six .arch-core > strong { font-size: 11px; }
.architecture-six .core-top { font-size: 8px; }
.architecture-six .core-bottom { font-size: 9px; line-height: 1.5; margin-top: 10px; }
.architecture-six .arch-support { grid-area: support; position: static; transform: none; justify-content: center; white-space: normal; padding-block: 0; font-size: 10px; }
.architecture-six .arch-lines { height: calc(100% - 35px); pointer-events: none; }
.architecture-six .arch-orbit { top: 45%; }
.architecture-six .architecture-bottom { min-height: 90px; }
@media (max-width: 1100px) and (min-width: 761px), (max-width: 599px) {
  .architecture-six .architecture-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas: "core core" "atendimento comercial" "automacoes agentes" "dados integracoes" "support support";
    grid-template-rows: auto; height: auto; gap: 12px; padding-top: 10px;
  }
  .architecture-six .arch-core { height: auto; padding: 15px; border-radius: 12px; }
  .architecture-six .arch-core > img { width: 44px; height: 44px; margin: 9px 0; }
  .architecture-six .arch-core > strong { font-size: 13px; }
  .architecture-six .core-bottom { margin-top: 8px; padding-top: 7px; }
  .architecture-six .arch-node { min-height: 84px; }
  .architecture-six .arch-node strong { font-size: 12px; }
  .architecture-six .arch-node small { font-size: 10px; }
  .architecture-six .arch-lines, .architecture-six .arch-orbit, .architecture-six .motion-toggle { display: none; }
  .architecture-six .arch-support { padding-block: 5px; }
}
@media (max-width: 380px) {
  .architecture-six .arch-node { gap: 5px; padding: 12px 8px; }
  .architecture-six .node-icon { flex-basis: 18px; width: 18px; }
  .architecture-six .node-icon .icon { width: 17px; height: 17px; }
  .architecture-six .arch-node strong { font-size: 11px; }
  .architecture-six .arch-node small { font-size: 9px; }
}

/* Identificação das dores: contraste, sinais concretos e uma ação por situação. */
.home .pain-section { background: #eaf0f7; padding-block: 80px 55px; border-block: 1px solid #d4dfeb; }
.pain-section .section-head { gap: 45px; margin-bottom: 36px; }
.pain-section .pain-eyebrow { display: inline-flex; padding: 9px 13px; background: #ecd477; border-radius: 5px; color: #102b46; font-size: 10px; letter-spacing: .12em; margin-bottom: 23px; }
.pain-section .pain-eyebrow > span { background: #173858; }
.pain-section h2 { font-size: clamp(35px, 3.6vw, 52px); line-height: 1.12; color: #102b46; }
.pain-section h2 em { color: #315b82; }
.pain-section .section-intro { max-width: 340px; color: #385571; font-size: 16px; line-height: 1.8; }
.pain-section .section-intro p { margin: 0; }
.pain-section .section-intro strong { color: #102b46; font-weight: 600; }
.pain-section .pain-grid { gap: 22px; }
.pain-section .pain-card { position: relative; padding: 30px; border: 1px solid #294c6c; border-top: 4px solid #ecd477; border-radius: 14px; background: #102b46; color: #fff; box-shadow: 0 12px 28px #132e4812; transition: border-color .2s, box-shadow .2s; min-width: 0; }
.pain-section .pain-card:hover, .pain-section .pain-card:focus-within { border-color: #ecd477; box-shadow: 0 18px 35px #132e4826; }
.pain-card-top { display: flex; align-items: center; gap: 13px; margin-bottom: 27px; min-height: 48px; }
.pain-symbol { display: grid; place-items: center; width: 48px; height: 48px; flex: 0 0 48px; border-radius: 12px; color: #ecd477; background: #244865; border: 1px solid #46667f; }
.pain-tag { color: #ecd477; font-size: 10px; font-weight: 600; letter-spacing: .065em; line-height: 1.6; }
.home .pain-section .pain-card h3 { color: #fff; font-size: clamp(24px, 2.05vw, 29px); line-height: 1.23; letter-spacing: -.025em; margin-bottom: 24px; text-wrap: balance; }
.pain-signals { list-style: none; padding: 0; margin: 0 0 28px; }
.pain-signals li { position: relative; color: #d5e1ed; font-size: 15px; line-height: 1.65; padding-left: 17px; margin-bottom: 12px; }
.pain-signals li::before { content: ''; position: absolute; left: 0; top: .7em; width: 5px; height: 5px; border-radius: 50%; background: #ecd477; }
.pain-signals li:last-child { margin-bottom: 0; }
.pain-section .pain-card .pain-action { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 15px 17px; margin-top: auto; min-height: 58px; border: 1px solid #ecd477; border-radius: 7px; background: #ecd477; color: #102b46; font-size: 14px; font-weight: 650; line-height: 1.45; }
.pain-section .pain-card .pain-action:hover { background: #f8e7a6; border-color: #f8e7a6; color: #102b46; }
.pain-section .pain-card .pain-action > span { flex-shrink: 0; font-size: 21px; font-weight: 400; }
.pain-section .pain-card a:focus-visible { outline: 3px solid #fff; outline-offset: 5px; }
.pain-next { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 25px; padding-top: 27px; }
.pain-next p { font-size: 15px; color: #385571; margin: 0; }
.pain-next .text-link { font-size: 14px; color: #173858; text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 1100px) and (min-width: 761px) {
 .pain-section .pain-card { padding: 24px 20px; }
 .pain-card-top { flex-direction: column; align-items: flex-start; gap: 13px; margin-bottom: 22px; }
 .home .pain-section .pain-card h3 { font-size: 25px; }
 .pain-signals li { font-size: 14px; }
 .pain-section .pain-card .pain-action { padding: 13px; font-size: 13px; }
}
@media (max-width: 760px) {
 .home .pain-section { padding-block: 50px 35px; }
 .pain-section .section-head { margin-bottom: 28px; }
 .pain-section .section-intro { max-width: 480px; margin-top: 20px; font-size: 15px; }
 .pain-section .pain-grid { grid-template-columns: 1fr; gap: 20px; }
 .pain-section .pain-card { padding: 27px; }
 .pain-card-top { margin-bottom: 22px; }
 .home .pain-section .pain-card h3 { font-size: 28px; }
 .pain-signals { margin-bottom: 25px; }
 .pain-next { padding-top: 22px; }
}
@media (max-width: 380px) {
 .pain-section .pain-card { padding: 23px; }
 .home .pain-section .pain-card h3 { font-size: 25px; }
 .pain-tag { font-size: 9px; }
 .pain-signals li { font-size: 14px; }
 .pain-section .pain-card .pain-action { padding: 14px; font-size: 13px; }
}
@media print {
 .home .pain-section, .pain-section .pain-card { background: #fff; color: #000; box-shadow: none; }
 .home .pain-section .pain-card h3, .pain-signals li, .pain-tag { color: #000; }
}

/* Serviços como peças: paleta conectada à marca e encaixes visíveis. */
.home .puzzle-section { --puzzle-board: #f8fafc; background: var(--puzzle-board); padding-block: 76px 50px; border-color: #d6e1eb; }
.puzzle-section .section-head { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: 50px; margin-bottom: 44px; }
.puzzle-section h2 { color: #12334e; font-size: clamp(35px, 3.45vw, 50px); line-height: 1.13; }
.puzzle-section h2 em { color: #176d80; }
.puzzle-section .eyebrow { color: #315775; }
.puzzle-section .eyebrow > span { background: #16788a; }
.puzzle-intro { display: flex; align-items: center; gap: 22px; }
.puzzle-preview { width: 165px; height: 140px; flex: 0 0 165px; overflow: visible; }
.puzzle-intro p { color: #456078; line-height: 1.75; font-size: 16px; margin: 0 0 12px; }
.puzzle-intro strong { color: #12334e; font-weight: 650; }
.puzzle-intro .text-link { color: #13556c; font-size: 13px; text-decoration: underline; text-underline-offset: 4px; }
.home .puzzle-section .modules-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; padding: 0 2px; }
.home .puzzle-section .module-card {
 --piece: #173c5a; --piece-ink: #fff; --piece-copy: #e0ebf5; --piece-line: #ffffff36; --piece-icon: #ffffff16; --piece-accent: #ecd477;
 position: relative; isolation: isolate; display: flex; flex-direction: column;
 min-width: 0; padding: 28px 27px 24px; background: var(--piece); color: var(--piece-ink); border: 0; border-radius: 12px;
 box-shadow: 0 9px 19px #173c5a0d; overflow: visible; transition: transform .2s, box-shadow .2s;
}
.puzzle-section .module-card:nth-child(2), .puzzle-section .module-card:nth-child(7) { --piece: #0c6d7b; --piece-copy: #e4f4f5; }
.puzzle-section .module-card:nth-child(3), .puzzle-section .module-card:nth-child(6) { --piece: #256497; --piece-copy: #e5eff9; }
.puzzle-section .module-card:nth-child(4), .puzzle-section .module-card:nth-child(5) {
 --piece: #ecd477; --piece-ink: #12334e; --piece-copy: #264a64; --piece-line: #12334e35; --piece-icon: #ffffff4d; --piece-accent: #173c5a;
}
.puzzle-section .module-card:nth-child(8) { --piece: #18334f; }
.puzzle-section .module-card::before, .puzzle-section .module-card::after { content: ''; position: absolute; top: 60px; width: 30px; height: 30px; border-radius: 50%; pointer-events: none; }
.puzzle-section .module-card::before { right: -15px; background: var(--piece); z-index: -1; }
.puzzle-section .module-card::after { left: -15px; background: var(--puzzle-board); }
.home .puzzle-section .module-card:hover { transform: translateY(-5px); box-shadow: 0 16px 28px #173c5a26; z-index: 2; }
.home .puzzle-section .module-card:focus-visible { outline: 3px solid #12334e; outline-offset: 6px; z-index: 3; }
.home .puzzle-section .module-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 25px; }
.puzzle-section .module-icon { background: var(--piece-icon); color: var(--piece-accent); border-color: var(--piece-line); width: 45px; height: 45px; }
.puzzle-section .module-icon .icon { width: 23px; height: 23px; }
.home .puzzle-section .module-number { display: block; color: var(--piece-copy); font-size: 10px; letter-spacing: .08em; }
.home .puzzle-section .module-card h3 { color: var(--piece-ink); font-size: 23px; line-height: 1.2; letter-spacing: -.025em; margin: 0 0 13px; }
.home .puzzle-section .module-card > p { color: var(--piece-copy); font-size: 14px; line-height: 1.75; margin: 0 0 25px; }
.home .puzzle-section .module-bottom { color: var(--piece-ink); border-top: 1px solid var(--piece-line); padding-top: 18px; gap: 12px; margin-top: auto; }
.home .puzzle-section .module-bottom > span:first-child { font-size: 12px; line-height: 1.55; max-width: none; }
.puzzle-section .module-bottom > span:last-child { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--piece-icon); color: var(--piece-accent); flex: 0 0 28px; font-size: 19px; }
.puzzle-bottom { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 30px; margin-top: 36px; padding-top: 24px; border-top: 1px solid #cddce8; }
.puzzle-bottom p { color: #456078; font-size: 14px; line-height: 1.75; margin: 0; }
.puzzle-bottom p strong { color: #12334e; font-weight: 650; }
.puzzle-bottom .text-link { color: #13556c; font-size: 13px; }
@media (max-width: 1100px) {
 .puzzle-section .section-head { grid-template-columns: 1fr 1fr; gap: 30px; }
 .puzzle-preview { width: 130px; height: 115px; flex-basis: 130px; }
 .puzzle-intro { gap: 16px; }
 .puzzle-intro p { font-size: 14px; }
 .home .puzzle-section .modules-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .home .puzzle-section .module-card { padding: 28px 30px; }
}
@media (max-width: 760px) {
 .home .puzzle-section { padding-block: 50px 35px; }
 .puzzle-section .section-head { grid-template-columns: 1fr; gap: 18px; margin-bottom: 32px; }
 .puzzle-intro { max-width: 490px; }
 .puzzle-preview { width: 118px; height: 102px; flex-basis: 118px; }
 .puzzle-intro p { font-size: 15px; }
 .home .puzzle-section .modules-grid { gap: 30px; }
 .home .puzzle-section .module-card { padding: 26px 22px; }
}
@media (max-width: 560px) {
 .home .puzzle-section .modules-grid { grid-template-columns: 1fr; gap: 30px; padding-inline: 0; }
 .home .puzzle-section .module-card { padding: 28px; }
 .puzzle-section .module-card::before { top: auto; bottom: -15px; left: calc(50% - 15px); right: auto; }
 .puzzle-section .module-card::after { top: -15px; left: calc(50% - 15px); }
 .home .puzzle-section .module-top { margin-bottom: 18px; }
 .home .puzzle-section .module-card h3 { font-size: 25px; }
 .home .puzzle-section .module-card > p { margin-bottom: 20px; font-size: 15px; }
 .home .puzzle-section .module-bottom { padding-top: 16px; }
 .puzzle-bottom { margin-top: 37px; }
}
@media (max-width: 360px) {
 .puzzle-preview { width: 92px; height: 84px; flex-basis: 92px; }
 .puzzle-intro { gap: 12px; }
 .puzzle-intro p { font-size: 14px; }
 .home .puzzle-section .module-card { padding: 26px; }
}
@media (prefers-reduced-motion: reduce) { .home .puzzle-section .module-card:hover { transform: none; } }
@media print {
 .home .puzzle-section .module-card { background: #fff; box-shadow: none; border: 1px solid #bbb; --piece-ink: #000; --piece-copy: #000; }
 .puzzle-section .module-card::before, .puzzle-section .module-card::after { display: none; }
}

/* Integração: os recursos existentes participam da mesma operação. */
.home .integration-feature { background: #eaf1f7; padding-block: 76px 50px; }
.integration-feature .section-head { align-items: center; gap: 55px; margin-bottom: 35px; }
.integration-feature h2 { font-size: clamp(34px, 3.4vw, 49px); line-height: 1.15; color: #12334e; }
.integration-feature h2 em { color: #176d80; }
.integration-feature .section-intro { max-width: 350px; font-size: 16px; color: #456078; }
.integration-feature .section-intro p { margin: 0; line-height: 1.85; }
.integration-feature .section-intro strong { font-weight: 600; color: #12334e; }
.integration-map { margin: 0; padding: 28px 34px 0; border: 1px solid #325675; border-radius: 20px; background: #102b46; color: #fff; box-shadow: 0 18px 40px #183b5514; }
.integration-map figcaption { display: flex; align-items: center; gap: 10px; color: #e9d27b; font-size: 10px; line-height: 1.6; letter-spacing: .1em; }
.integration-status { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: #ecd477; box-shadow: 0 0 0 5px #ecd47712; }
.integration-caption-note { margin-left: auto; color: #bbd1e2; font-size: 11px; letter-spacing: 0; }
.integration-network { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .9fr) minmax(0, 1fr); align-items: center; gap: 72px; padding-block: 30px; }
.integration-network::before { content: ''; position: absolute; z-index: 0; height: 2px; left: 25%; right: 25%; top: 50%; background: #69aeb9; }
.integration-sources { position: relative; display: grid; gap: 16px; list-style: none; padding: 0; margin: 0; }
.integration-sources::after { content: ''; position: absolute; top: 49px; bottom: 49px; right: -37px; width: 2px; background: #69aeb9; }
.integration-sources-right::after { right: auto; left: -37px; }
.integration-node { position: relative; display: flex; align-items: center; gap: 15px; min-height: 98px; padding: 17px; border: 1px solid #53718b; border-radius: 12px; background: #1d405e; color: #fff; }
.integration-node::after { content: ''; position: absolute; top: calc(50% - 1px); right: -37px; width: 36px; height: 2px; background: #69aeb9; }
.integration-node::before { content: ''; position: absolute; z-index: 1; top: calc(50% - 4px); right: -40px; width: 8px; height: 8px; border-radius: 50%; background: #ecd477; box-shadow: 0 0 0 4px #102b46; }
.integration-sources-right .integration-node::after { right: auto; left: -37px; }
.integration-sources-right .integration-node::before { right: auto; left: -40px; }
.integration-icon { display: grid; place-items: center; width: 39px; height: 39px; flex: 0 0 39px; color: #ecd477; background: #ffffff0c; border: 1px solid #6e879755; border-radius: 9px; }
.integration-node > div { min-width: 0; }
.integration-node strong { display: block; font-size: 15px; font-weight: 600; line-height: 1.4; }
.integration-node small { display: block; margin-top: 5px; color: #d1e1ec; font-size: 12px; line-height: 1.5; }
.integration-sources-right .integration-node { background: #155369; border-color: #4e8693; }
.integration-hub { position: relative; z-index: 2; padding: 24px 16px 19px; border: 1px solid #f5e6aa; border-radius: 22px; background: #ecd477; color: #12334e; text-align: center; box-shadow: 0 0 0 10px #ecd4770c, 0 14px 35px #071a3066; }
.integration-hub-label { display: block; font-size: 9px; letter-spacing: .09em; font-weight: 650; }
.integration-link-symbol { display: block; margin: 17px auto 12px; }
.integration-hub h3 { font-size: clamp(24px, 2.1vw, 30px); line-height: 1.16; letter-spacing: -.025em; color: #12334e; margin: 0 0 14px; }
.integration-hub p { font-size: 13px; line-height: 1.65; color: #264a64; margin: 0 0 17px; }
.integration-hub-base { display: block; border-top: 1px solid #12334e30; padding-top: 13px; font-size: 10px; line-height: 1.55; }
.integration-value { display: flex; justify-content: space-between; align-items: center; gap: 18px 35px; padding-block: 23px; border-top: 1px solid #4c6b84; }
.integration-value > strong { color: #fff; font-size: 15px; line-height: 1.5; font-weight: 600; }
.integration-value ul { display: flex; flex-wrap: wrap; gap: 10px 23px; list-style: none; padding: 0; margin: 0; }
.integration-value li { color: #d4e5ef; font-size: 12px; line-height: 1.6; }
.integration-value li::before { content: '✓'; margin-right: 7px; color: #ecd477; }
.integration-next { display: flex; align-items: center; justify-content: space-between; gap: 20px 45px; margin-top: 24px; }
.integration-next p { max-width: 660px; color: #456078; font-size: 13px; line-height: 1.75; margin: 0; }
.integration-next .text-link { color: #12334e; flex-shrink: 0; font-size: 14px; text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 1100px) and (min-width: 961px) {
 .integration-map { padding-inline: 25px; }
 .integration-network { gap: 54px; grid-template-columns: minmax(0, 1fr) 220px minmax(0, 1fr); }
 .integration-node { padding: 14px; gap: 10px; }
 .integration-icon { width: 31px; height: 35px; flex-basis: 31px; }
 .integration-node strong { font-size: 14px; }
 .integration-sources::after { right: -28px; }
 .integration-sources-right::after { left: -28px; right: auto; }
 .integration-node::after { right: -28px; width: 27px; }
 .integration-node::before { right: -31px; }
 .integration-sources-right .integration-node::after { left: -28px; }
 .integration-sources-right .integration-node::before { left: -31px; }
}
@media (max-width: 960px) {
 .integration-network { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 48px; align-items: stretch; padding-block: 27px; }
 .integration-network::before { top: 76px; bottom: 100px; left: calc(50% - 1px); right: auto; width: 2px; height: auto; }
 .integration-sources { grid-template-rows: repeat(3, 1fr); }
 .integration-sources::after { display: none; }
 .integration-sources-left { grid-column: 1; grid-row: 1; }
 .integration-sources-right { grid-column: 2; grid-row: 1; }
 .integration-node::after { width: 24px; right: -25px; }
 .integration-node::before { right: -28px; }
 .integration-sources-right .integration-node::after { left: -25px; }
 .integration-sources-right .integration-node::before { left: -28px; }
 .integration-hub { grid-column: 1 / -1; grid-row: 2; width: min(100%, 370px); justify-self: center; padding: 23px; }
 .integration-link-symbol { width: 56px; height: 43px; margin-block: 12px; }
 .integration-hub h3 { font-size: 27px; }
 .integration-hub h3 br { display: none; }
 .integration-hub p br { display: none; }
 .integration-value { flex-direction: column; align-items: flex-start; gap: 12px; }
 .integration-next { flex-wrap: wrap; gap: 12px; }
}
@media (max-width: 760px) {
 .home .integration-feature { padding-block: 50px 35px; }
 .integration-feature .section-head { margin-bottom: 27px; }
 .integration-feature .section-intro { max-width: 540px; margin-top: 20px; font-size: 15px; }
 .integration-map { padding: 23px 23px 0; border-radius: 15px; }
 .integration-map figcaption { flex-wrap: wrap; font-size: 9px; gap: 8px; letter-spacing: .06em; }
 .integration-caption-note { width: 100%; margin-left: 15px; font-size: 10px; }
 .integration-node { gap: 11px; padding: 14px; }
 .integration-node strong { font-size: 14px; }
}
@media (max-width: 560px) {
 .integration-map { padding-inline: 17px; }
 .integration-network { column-gap: 28px; }
 .integration-network::before { top: 105px; }
 .integration-node { flex-direction: column; align-items: flex-start; gap: 10px; padding: 15px 13px; }
 .integration-node strong { font-size: 15px; }
 .integration-icon { width: 34px; height: 34px; flex-basis: 34px; }
 .integration-icon .icon { width: 21px; height: 21px; }
 .integration-node::after { width: 14px; right: -15px; }
 .integration-node::before { right: -18px; }
 .integration-sources-right .integration-node::after { left: -15px; }
 .integration-sources-right .integration-node::before { left: -18px; }
 .integration-hub { padding: 22px 17px; }
 .integration-hub h3 { font-size: 26px; }
 .integration-value { padding-block: 20px; }
 .integration-value ul { gap: 7px 18px; }
}
@media (max-width: 360px) {
 .integration-map { padding-inline: 13px; }
 .integration-node { padding: 13px 10px; }
 .integration-node strong { font-size: 14px; }
 .integration-node small { font-size: 11px; }
 .integration-map figcaption { font-size: 8px; }
 .integration-hub { padding-inline: 12px; }
 .integration-hub h3 { font-size: 24px; }
}
@media print {
 .integration-map, .integration-node, .integration-sources-right .integration-node, .integration-hub { background: #fff; color: #000; box-shadow: none; }
 .integration-node small, .integration-value > strong, .integration-value li, .integration-map figcaption { color: #000; }
}

/* Áreas: ilustrações próprias para reconhecer cada tipo de negócio. */
.home .area-showcase { background: #f8fafc; padding-block: 72px 60px; }
.area-showcase .section-head { align-items: center; gap: 45px; margin-bottom: 35px; }
.area-showcase h2 { color: #12334e; font-size: clamp(33px, 3.2vw, 46px); line-height: 1.15; }
.area-showcase h2 em { color: #176d80; }
.area-showcase .section-intro { max-width: 330px; color: #456078; font-size: 15px; }
.area-showcase .section-intro .text-link { color: #12334e; }
.area-business-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 17px; }
.area-business-card { --area-accent: #ecd477; --area-surface: #fff8e1; --area-icon-bg: #f6e7a7; --area-border: #e5d799; display: flex; flex-direction: column; min-width: 0; padding: 22px; background: var(--area-surface); border: 1px solid var(--area-border); border-radius: 15px; color: #173c5a; box-shadow: 0 4px 12px #173c5a06; transition: transform .2s, box-shadow .2s, border-color .2s; }
.area-tone-teal { --area-accent: #82c6bd; --area-surface: #eaf5f2; --area-icon-bg: #c7e6df; --area-border: #b9dcd3; }
.area-tone-blue { --area-accent: #91bde1; --area-surface: #edf3fc; --area-icon-bg: #d2e2f5; --area-border: #c7d8ed; }
.area-card-art { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; margin-bottom: 17px; }
.area-business-icon { position: relative; display: grid; place-items: center; width: 80px; height: 80px; flex: 0 0 80px; background: var(--area-icon-bg); border-radius: 22px 22px 22px 7px; color: #173c5a; }
.area-business-icon svg { display: block; width: 62px; height: 62px; }
.area-card-arrow { display: grid; place-items: center; width: 30px; height: 30px; flex: 0 0 30px; border: 1px solid var(--area-border); border-radius: 50%; color: #315775; font-size: 18px; background: #ffffff88; transition: background .2s, color .2s; }
.area-business-card h3 { margin: 0 0 7px; color: #12334e; font-size: 21px; font-weight: 600; line-height: 1.25; letter-spacing: -.025em; }
.area-business-card p { margin: 0; color: #3e5e73; font-size: 13px; line-height: 1.7; }
.area-business-card:hover { transform: translateY(-4px); border-color: #53758b; box-shadow: 0 14px 26px #173c5a17; }
.area-business-card:hover .area-card-arrow { background: #173c5a; color: #fff; }
.area-business-card:focus-visible { outline: 3px solid #13556c; outline-offset: 4px; }
.area-business-contact { --area-border: #54718b; --area-icon-bg: #294a64; background: #12334e; border-color: #315775; }
.area-business-contact h3 { color: #fff; }
.area-business-contact p { color: #d4e3ee; }
.area-business-contact .area-card-arrow { color: #ecd477; background: #24465f; border-color: #54718b; }
.area-business-contact:hover .area-card-arrow { background: #ecd477; color: #12334e; }
@media (max-width: 1100px) {
 .area-business-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
 .area-business-card { padding: 21px; }
}
@media (max-width: 760px) {
 .home .area-showcase { padding-block: 50px 40px; }
 .area-showcase .section-head { margin-bottom: 28px; }
 .area-showcase .section-intro { max-width: 450px; margin-top: 20px; }
 .area-business-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
 .area-business-card h3 { font-size: 20px; }
}
@media (max-width: 560px) {
 .area-business-card { padding: 17px; border-radius: 12px; }
 .area-card-art { gap: 8px; margin-bottom: 16px; }
 .area-business-icon { width: 65px; height: 65px; flex-basis: 65px; border-radius: 17px 17px 17px 5px; }
 .area-business-icon svg { width: 53px; height: 53px; }
 .area-card-arrow { width: 23px; height: 23px; flex-basis: 23px; font-size: 16px; }
 .area-business-card h3 { font-size: 18px; }
 .area-business-card p { font-size: 12px; line-height: 1.65; }
}
@media (max-width: 380px) {
 .area-business-grid { gap: 10px; }
 .area-business-card { padding: 13px; }
 .area-card-art { gap: 5px; }
 .area-business-icon { width: 56px; height: 56px; flex-basis: 56px; }
 .area-business-icon svg { width: 46px; height: 46px; }
 .area-card-arrow { width: 20px; height: 20px; flex-basis: 20px; font-size: 15px; }
 .area-business-card h3 { font-size: 17px; overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) { .area-business-card:hover { transform: none; } }
@media print {
 .area-business-card, .area-business-contact { background: #fff; border-color: #aaa; box-shadow: none; }
 .area-business-card h3, .area-business-card p { color: #000; }
}

/* Dores reconhecíveis antes da leitura: ruptura, espera e falta de direção. */
.home .pain-alert-section { background: #edf1f5; }
.pain-alert-section .section-head { display: grid; grid-template-columns: minmax(0, 1fr) 290px; align-items: center; gap: 55px; margin-bottom: 34px; }
.pain-alert-section .pain-eyebrow { align-items: center; gap: 9px; background: #fbe2da; border: 1px solid #e8b9ad; color: #85392f; font-size: 9px; letter-spacing: .08em; padding: 9px 12px; line-height: 1.55; }
.pain-alert-section .pain-eyebrow svg { flex: 0 0 16px; }
.pain-alert-section h2 { font-size: clamp(34px, 3.55vw, 51px); line-height: 1.13; letter-spacing: -.035em; }
.pain-alert-section h2 em { color: #b34036; }
.pain-lead { max-width: 620px; margin: 20px 0 0; color: #385571; font-size: 16px; line-height: 1.75; }
.pain-pressure { margin: 0; padding: 22px; background: #ffffffb3; border: 1px solid #d1dce7; border-radius: 15px; }
.pressure-lane span { display: block; font-size: 12px; font-weight: 600; }
.pressure-lane svg { display: block; width: 100%; height: 47px; margin-top: 5px; }
.pressure-growth { color: #246c75; }
.pressure-stuck { color: #b34036; margin-top: 12px; }
.pressure-stuck svg { height: 37px; }
.pain-pressure figcaption { border-top: 1px solid #d1dce7; margin-top: 12px; padding-top: 12px; font-size: 11px; line-height: 1.65; color: #486176; }
.pain-alert-section .pain-card { padding: 25px 28px 28px; border-top-color: #ef9d88; }
.pain-alert-section .pain-card:hover, .pain-alert-section .pain-card:focus-within { border-color: #ef9d88; }
.pain-scene { display: flex; align-items: center; min-width: 0; min-height: 85px; padding: 5px 0; margin-bottom: 18px; border-radius: 10px; color: #a9c3d7; background: #193b5559; }
.pain-scene svg { display: block; width: 100%; height: auto; max-height: 115px; }
.pain-alert-section .pain-card .pain-tag { margin: 0 0 13px; color: #f6b3a1; font-size: 10px; line-height: 1.6; font-weight: 600; letter-spacing: .05em; }
.home .pain-alert-section .pain-card h3 { font-size: clamp(24px, 2.08vw, 30px); line-height: 1.2; text-wrap: initial; margin-bottom: 22px; }
.pain-alert-section .pain-signals li { padding-left: 20px; }
.pain-alert-section .pain-signals li::before { content: '×'; color: #f6a28f; background: none; top: -.05em; left: 0; width: auto; height: auto; font-size: 19px; font-weight: 500; }
@media (max-width: 1100px) {
 .pain-alert-section .section-head { grid-template-columns: minmax(0, 1fr) 245px; gap: 30px; }
 .pain-pressure { padding: 18px; }
 .pain-alert-section .pain-card { padding: 22px 20px; }
 .pain-alert-section .pain-card .pain-tag { font-size: 9px; }
}
@media (max-width: 900px) {
 .pain-alert-section .section-head { grid-template-columns: 1fr; gap: 25px; }
 .pain-pressure { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 25px; padding: 18px 22px; }
 .pressure-stuck { margin-top: 0; }
 .pressure-lane svg, .pressure-stuck svg { height: 45px; }
 .pain-pressure figcaption { grid-column: 1 / -1; margin-top: 8px; padding-top: 9px; }
}
@media (max-width: 760px) {
 .pain-alert-section h2 { font-size: clamp(34px, 5vw, 44px); }
 .pain-alert-section .pain-card { padding: 25px 27px 27px; }
 .pain-alert-section .pain-card .pain-tag { font-size: 10px; }
 .home .pain-alert-section .pain-card h3 { font-size: 29px; }
 .pain-scene { margin-bottom: 18px; }
 .pain-lead { font-size: 15px; margin-top: 17px; }
}
@media (max-width: 380px) {
 .pain-alert-section .pain-eyebrow { font-size: 8px; }
 .pain-alert-section .pain-card { padding: 22px; }
 .home .pain-alert-section .pain-card h3 { font-size: 26px; }
 .pain-alert-section .pain-card .pain-tag { font-size: 9px; }
 .pain-pressure { padding: 16px; gap: 0 17px; }
 .pressure-lane span { font-size: 11px; }
}
@media print {
 .pain-alert-section .pain-card .pain-tag, .pressure-lane, .pain-alert-section h2 em { color: #000; }
 .pain-pressure { background: #fff; }
}
