/* Home adaptation of /materials. Legacy component geometry lives in style.css;
   this layer owns the shared visual identity and responsive refinements. */
:root {
    --brand-blue: var(--ea-blue);
    --brand-blue-dark: var(--ea-blue);
    --brand-blue-soft: var(--ea-tint);
    --brand-charcoal: var(--ea-ink);
    --brand-gray: var(--ea-muted);
    --brand-gray-light: var(--ea-line);
    --brand-bg: var(--ea-paper);
    --brand-white: var(--ea-white);
    --surface-soft: var(--ea-section);
    --text-muted: var(--ea-muted);
    --shadow-sm: 0 4px 16px #2954c208;
    --shadow-md: 0 8px 24px #2954c214;
    --shadow-lg: 0 8px 24px #2954c21a;
    --shadow-card: none;
    --radius-sm: var(--ea-radius-sm);
    --radius-md: var(--ea-radius-md);
    --radius-lg: var(--ea-radius-lg);
    --radius-xl: var(--ea-radius-lg);
    --nav-h: 88px;
}

html { scroll-padding-top: 112px; }
body { font-family: var(--ea-body); font-size: 15px; line-height: 1.8; overflow-x: clip; }
h1, h2, h3, h4, h5, h6 { font-family: var(--ea-heading); font-weight: 800; line-height: 1.12; letter-spacing: -.025em; }
h2 { font-size: clamp(32px, 3.6vw, 48px); }
p { text-wrap: pretty; }
.container { width: min(var(--ea-container), calc(100% - 64px)); max-width: none; padding: 0; }
.hero-grid > *, .app-section-grid > *, .emotion-section-grid > *, .ms-story-wrapper > *, .sales-section > .container > * { min-width: 0; }
.text-gradient { background: none; color: var(--ea-blue); -webkit-text-fill-color: currentColor; }
.reveal, .reveal.active { opacity: 1; transform: none; transition: none; }
:where(a, button, summary):focus-visible { outline: 3px solid var(--ea-accent); outline-offset: 5px; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 2000; padding: 16px; background: var(--ea-blue); color: white; border-radius: 8px; }
.skip-link:focus { top: 8px; }
main:focus { outline: none; }
.section-header { max-width: 760px; margin: 0 0 40px; text-align: left; }
.section-header h2 { font-size: clamp(32px, 3.6vw, 48px); margin-bottom: 16px; }
.section-header p { font-size: 16px; line-height: 1.8; }
.section-tag, .hero-badge, .art-kicker, .cta-tag {
    display: inline-flex; gap: 8px; align-items: center; padding: 0; margin-bottom: 16px;
    background: none; border: 0; border-radius: 0; box-shadow: none;
    font: 700 11px/1.6 var(--ea-body); letter-spacing: .12em; text-transform: uppercase; color: var(--ea-blue);
}
.btn { min-height: 48px; padding: 16px 24px; gap: 16px; border-radius: 8px; font: 700 13px/1.5 var(--ea-body); white-space: normal; text-align: center; }
.btn-primary { background: var(--ea-blue); border: 1px solid var(--ea-blue); box-shadow: none; color: white; }
.btn-secondary { background: white; color: var(--ea-blue); border: 1px solid var(--ea-line); box-shadow: none; }
.btn:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.btn-primary:hover { background: var(--ea-blue); }
.btn-secondary:hover { background: var(--ea-tint); border-color: var(--ea-blue); }

/* Quiet, stable navigation, matching the materials header. */
.navbar, .navbar.scrolled { position: sticky; top: 0; padding: 0; background: white; border-bottom: 1px solid var(--ea-line); backdrop-filter: none; box-shadow: none; }
.navbar.hidden { transform: none; }
.nav-container { min-height: var(--nav-h); gap: 32px; }
.logo { flex-shrink: 0; }
.logo-wordmark, .logo-footer .logo-wordmark { width: 184px; height: 32px; object-fit: contain; }
.nav-links { gap: 24px; }
.nav-links a { font: 600 12px/1.5 var(--ea-body); color: var(--ea-ink); }
.nav-links a:hover { color: var(--ea-blue); }
.nav-links .btn-nav { color: white; font-size: 12px; padding: 8px 16px; }
.mobile-menu-icon { display: none; width: 48px; height: 48px; align-items: center; justify-content: center; border: 1px solid var(--ea-line); border-radius: 8px; color: var(--ea-blue); }

/* Family-first hero: original manual artwork, no simulated UI or shadows. */
.hero { padding: 80px 0 64px; }
.hero-grid { grid-template-columns: 1.25fr 1fr; gap: 64px; align-items: center; }
.hero-content h1 { max-width: 18ch; font-size: clamp(40px, 4.8vw, 64px); line-height: 1.06; letter-spacing: -.025em; margin-bottom: 24px; }
.hero-subtitle { max-width: 590px; font-size: 17px; line-height: 1.8; margin-bottom: 0; }
.hero-btns { gap: 24px; margin: 32px 0; }
.hero-trust { gap: 16px; margin: 0; font-size: 11px; line-height: 1.8; }
.hero-trust > span { max-width: 240px; }
.hero-visual { width: 100%; max-width: none; margin: 0; padding: 0; }
.brand-hero-art { margin: 0; padding: 40px 32px 32px; background: var(--ea-tint); border-radius: 120px 24px 24px 24px; display: flex; flex-direction: column; align-items: center; gap: 24px; }
.brand-hero-art .art-kicker { margin: 0; text-align: center; }
.brand-hero-art > img { width: 100%; height: 340px; object-fit: contain; }
.brand-hero-art figcaption { width: 100%; padding: 16px; border-radius: 8px; background: white; font-size: 11px; text-align: center; color: var(--ea-muted); }
.brand-hero-art figcaption strong { display: block; color: var(--ea-blue); font-size: 12px; margin-bottom: 8px; }

/* Editorial rhythm and restrained cards across every section. */
.stats-section { padding: 0 0 64px; }
.stats-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); border-radius: 16px; padding: 24px; gap: 16px; box-shadow: none; border: 1px solid var(--ea-line); }
.stat-card { padding: 16px; }
.stat-card + .stat-card { border-left: 1px solid var(--ea-line); }
.stat-number { font: 800 40px/1.12 var(--ea-heading); color: var(--ea-blue); }
.stat-icon { margin-bottom: 16px; color: var(--ea-blue); }
.stat-card p { margin-top: 8px; font-size: 12px; color: var(--ea-muted); }
.testimonials-section, .features, .app-section, .emotion-section,
.integrations-section, .faq-section, .microsoft-section, .sales-section { padding: 80px 0; background: var(--ea-paper); }
.testimonials-section, .app-section, .integrations-section, .sales-section { background: var(--ea-section); }
.testimonials-grid, .features-grid { gap: 16px; }
.testimonial-card, .feature-card, .app-highlight-card, .app-benefit-card,
.emotion-audience-card, .emotion-proof-card, .emotion-report-card, .partner-card, .sales-card {
    padding: 24px; border: 1px solid var(--ea-line); border-radius: 16px; background: white; box-shadow: none;
}
.testimonial-card:hover, .feature-card:hover, .emotion-audience-card:hover, .sales-card:hover {
    border-color: var(--ea-blue); box-shadow: none; transform: translateY(-2px);
}
.testimonial-card { min-height: 184px; gap: 16px; }
.testimonial-card h3 { font-size: 20px; }
.client-logo { width: 64px; height: 64px; border-radius: 8px; box-shadow: none; }
.feature-card { padding: 32px; }
.feature-card-linked { display: flex; flex-direction: column; align-items: flex-start; }
.feature-card-linked .feature-list { margin-bottom: 0; }
.feature-details { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; margin-top: auto; padding-top: 24px; color: var(--ea-blue); font: 700 13px/1.6 var(--ea-body); }
.feature-details > span { font-size: 20px; }
.feature-card-linked:hover .feature-details, .feature-card-linked:focus-visible .feature-details { text-decoration: underline; text-underline-offset: 4px; }
.feature-card:not(a):hover { transform: none; border-color: var(--ea-line); box-shadow: none; }
.feature-card::before, .feature-card::after { display: none; }
.feature-card h3 { font-size: 24px; margin-bottom: 16px; }
.feature-card > p { font-size: 14px; line-height: 1.8; }
.feature-list { margin-top: 24px; gap: 8px; font-size: 12px; }
.icon-box, .emotion-audience-card > i, .emotion-report-card > i {
    width: 48px; height: 48px; border-radius: 8px; color: var(--ea-blue); background: var(--ea-tint); box-shadow: none; margin-bottom: 24px;
}
.icon-box i, .feature-list i, .emotion-sales-points i { color: var(--ea-blue); }
.feature-card-ms { border-color: var(--ea-line); background: white; }
.ms-tag { background: var(--ea-tint); color: var(--ea-blue); border-radius: 8px; padding: 8px 16px; }

/* Real, cleaned product capture in the same pale showcase as /materials. */
.app-section-grid { grid-template-columns: 1.2fr 1fr; gap: 64px; align-items: center; }
.app-content-block h2 { font-size: clamp(32px, 3vw, 40px); line-height: 1.12; margin-bottom: 24px; }
.app-description { font-size: 15px; line-height: 1.8; margin-bottom: 16px; }
.app-highlight-grid, .app-benefits-grid { gap: 16px; margin-top: 24px; }
.app-benefits-grid { grid-template-columns: 1fr; }
.app-highlight-card, .app-benefit-card { padding: 24px; }
.app-benefit-card { display: grid; grid-template-columns: 152px 1fr; gap: 16px; align-items: start; }
.app-benefit-card strong, .app-highlight-card strong { font-family: var(--ea-heading); font-size: 20px; line-height: 1.2; }
.app-benefit-card span, .app-highlight-card span { font-size: 13px; line-height: 1.7; }
.app-visual-block { padding: 32px; background: var(--ea-tint); border-radius: 24px; }
.phone-mockup { width: 100%; max-width: 320px; margin: 0 auto; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; display: grid; gap: 16px; }
.cheguei-app-image { width: 100%; height: auto; filter: none; border-radius: 0; box-shadow: none; }
.phone-floating-metric { display: block; position: static; max-width: none; padding: 16px; border: 0; border-radius: 8px; box-shadow: none; }
.phone-floating-metric strong { font: 800 20px/1.2 var(--ea-heading); margin-bottom: 8px; }
.phone-floating-metric span { font-size: 12px; line-height: 1.8; }

/* Brand illustration and actual report replace the old dark mockup. */
.emotion-section-grid { grid-template-columns: 1fr 1.1fr; gap: 64px; align-items: center; margin-bottom: 64px; }
.emotion-visual-block { margin: 0; max-width: none; padding: 32px; background: var(--ea-tint); border-radius: 24px; box-shadow: none; }
.emotion-visual-block::before { display: none; }
.emotion-brand-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.emotion-brand-heading h3 { color: var(--ea-blue); font-size: 32px; }
.emotion-brand-heading img { width: 112px; height: 192px; object-fit: contain; }
.emotion-report-image { width: 100%; height: auto; border: 1px solid var(--ea-line); border-radius: 8px; }
.emotion-visual-block figcaption { font-size: 11px; color: var(--ea-muted); margin-top: 16px; }
.emotion-content-block { padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; backdrop-filter: none; }
.emotion-content-block h2 { font-size: clamp(32px, 3vw, 40px); margin-bottom: 24px; }
.emotion-quote { font-size: 14px; font-weight: 500; margin-bottom: 24px; padding-left: 16px; border-left: 2px solid var(--ea-blue); }
.emotion-description { margin-bottom: 16px; font-size: 14px; line-height: 1.8; }
.emotion-sales-points { gap: 16px; margin-top: 24px; }
.emotion-sales-points span { font-size: 12px; font-weight: 600; }
.emotion-bottom-layout { gap: 32px; }
.emotion-impact-heading { text-align: left; margin: 0; max-width: 760px; }
.emotion-impact-heading h2 { font-size: clamp(32px, 3.6vw, 48px); margin-bottom: 16px; }
.emotion-impact-heading p { font-size: 16px; }
.emotion-audience-grid, .emotion-proof-grid, .emotion-report-grid { gap: 16px; }
.emotion-audience-card h3, .emotion-report-card h3 { font-size: 22px; margin-bottom: 8px; }
.emotion-audience-card p, .emotion-proof-card span, .emotion-report-card p { font-size: 13px; line-height: 1.8; }
.emotion-proof-card strong { font: 800 28px/1.12 var(--ea-heading); margin-bottom: 16px; }
.emotion-report-card { gap: 16px; }
.emotion-report-card > i { margin-bottom: 0; }
.emotion-pill-list { justify-content: flex-start; gap: 8px; }
.emotion-pill-list span { padding: 8px 16px; border-radius: 8px; font-size: 12px; }
.emotion-commercial-cta { margin-top: 0; padding: 32px; gap: 32px; border-radius: 24px; background: var(--ea-blue); box-shadow: none; }
.emotion-commercial-cta span, .emotion-commercial-cta p { color: white; }
.emotion-commercial-cta .btn { box-shadow: none; }

.partners-grid { justify-content: flex-start; gap: 32px; }
.partner-card { padding: 32px; }
/* API-first and MCP: one paired editorial panel, followed by existing partners. */
.integration-heading { display: grid; grid-template-columns: 1.15fr 1fr; gap: 64px; align-items: end; max-width: none; margin-bottom: 40px; }
.integration-heading h2 { margin-bottom: 0; }
.integration-heading > p { font-size: 16px; line-height: 1.8; }
.integration-heading strong { color: var(--ea-ink); font-weight: 600; }
.integration-capabilities { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: hidden; border: 1px solid var(--ea-line); border-radius: 24px; background: white; }
.integration-capability { display: flex; flex-direction: column; align-items: flex-start; padding: 48px; color: var(--ea-muted); }
.integration-protocol { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-bottom: 32px; font: 700 14px/1.5 var(--ea-body); letter-spacing: .08em; color: var(--ea-blue); }
.integration-protocol > span { padding-left: 16px; border-left: 1px solid #ffffff66; font-size: 12px; font-weight: 500; letter-spacing: 0; }
.integration-capability h3 { margin-bottom: 24px; font-size: clamp(28px, 2.8vw, 36px); max-width: 20ch; }
.integration-capability > p { font-size: 16px; line-height: 1.8; margin-bottom: 32px; }
.integration-outcome { width: 100%; margin-top: auto; padding-top: 24px; border-top: 1px solid var(--ea-line); }
.integration-outcome > span { display: block; margin-bottom: 8px; color: var(--ea-blue); font-size: 12px; font-weight: 700; letter-spacing: .08em; }
.integration-outcome p { font-size: 14px; line-height: 1.8; }
.integration-capability-mcp { color: white; background: var(--ea-blue); }
.integration-capability-mcp h3, .integration-capability-mcp .integration-protocol, .integration-capability-mcp .integration-outcome > span { color: white; }
.integration-capability-mcp .integration-outcome { border-color: #ffffff40; }
.integration-partners { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 48px; margin-top: 32px; }
.integration-partners-copy { max-width: 560px; }
.integration-partners-copy h3 { margin-bottom: 8px; font-size: 22px; }
.integration-partners-copy p { color: var(--ea-muted); font-size: 14px; line-height: 1.8; }
.integration-partners .partners-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 184px)); gap: 16px; }
.integration-partners .partner-card { min-width: 0; min-height: 96px; padding: 24px; border-radius: 16px; }
.integration-partners .partner-card:hover { transform: none; box-shadow: none; }
.integration-partners .partner-card img { width: 100%; height: 40px; object-fit: contain; }
.faq-list { max-width: none; margin: 0; gap: 0; }
.faq-list details, .faq-list details[open] { background: transparent; border: 0; border-bottom: 1px solid var(--ea-line); border-radius: 0; box-shadow: none; }
.faq-list summary { padding: 24px 48px 24px 0; font: 800 22px/1.4 var(--ea-heading); }
.faq-list summary::after { right: 8px; }
.faq-list details p { padding: 0 48px 24px 0; max-width: 900px; font-size: 15px; line-height: 1.8; }
.ms-story-wrapper { padding: 40px; gap: 48px; background: var(--ea-tint); border: 0; border-radius: 24px; box-shadow: none; }
.ms-content-col h2 { font-size: clamp(32px, 3vw, 40px); }
.ms-content-col > p { margin-bottom: 24px; font-size: 14px; }
.ms-badge-pill { background: white; border-radius: 8px; padding: 8px 16px; gap: 8px; font-size: 12px; }
.ranking-badges { gap: 16px; margin-bottom: 24px; }
.rank-badge { padding: 8px 16px; background: white; border-radius: 8px; }
.rank-number { font-family: var(--ea-heading); }
.ms-subtitle { font-family: var(--ea-body); }
.ms-app-img { box-shadow: none; border-radius: 16px; }
.ms-overlay-card { position: static; margin-top: 16px; padding: 24px; box-shadow: none; border-radius: 16px; }
.sales-section > .container { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.sales-section .section-header { margin: 0; }
.sales-grid { width: 100%; max-width: none; margin: 0; }
.sales-card { align-items: flex-start; text-align: left; padding: 32px; gap: 24px; }
.sales-avatar { width: 64px; height: 64px; font-family: var(--ea-heading); border-radius: 16px; background: var(--ea-blue); box-shadow: none; }
.sales-actions { gap: 16px; }
.sales-phone { overflow-wrap: anywhere; }
.cta-section { padding: 80px 0; }
.cta-card { padding: 48px; padding-right: 280px; text-align: left; background: var(--ea-blue); color: white; border: 0; border-radius: 24px; box-shadow: none; }
.cta-card::before { display: none; }
.cta-card h2 { margin: 0 0 24px; max-width: 22ch; color: white; font-size: clamp(32px, 3.6vw, 48px); }
.cta-card .text-gradient { color: white; }
.cta-tag { color: white; }
.cta-card > p { margin: 0 0 32px; max-width: 58ch; color: white; font-size: 15px; }
.cta-btns { justify-content: flex-start; gap: 16px; }
.cta-card .btn-primary { background: white; color: var(--ea-blue); border-color: white; }
.cta-card .btn-secondary { background: transparent; color: white; border-color: #ffffff80; }
.cta-card .btn-secondary:hover { background: #ffffff16; }
.cta-illustration { position: absolute; width: 176px; height: 352px; object-fit: contain; right: 48px; bottom: 32px; }
footer { background: white; color: var(--ea-ink); padding: 64px 0 32px; border-top: 1px solid var(--ea-line); }
.footer-content { gap: 48px; margin-bottom: 48px; }
.footer-brand p, .footer-links a, .contact-item a, .footer-bottom p, .footer-legal { color: var(--ea-muted); }
.footer-links h4, .footer-contact h4, .footer-bottom strong { color: var(--ea-ink); }
.footer-links a:hover, .contact-item a:hover, .footer-legal a:hover, .contact-item i { color: var(--ea-blue); }
.contact-item a { overflow-wrap: anywhere; }
.instagram-link { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; margin-top: 8px; border: 1px solid var(--ea-line); border-radius: 8px; color: var(--ea-blue); background: white; }
.instagram-link i { font-size: 24px; line-height: 1; }
.instagram-link:hover { background: var(--ea-tint); border-color: var(--ea-blue); }
.footer-bottom { border-color: var(--ea-line); padding-top: 24px; gap: 16px; }
.whatsapp-fab { background: var(--ea-blue); color: white; border-radius: 8px; padding: 16px 24px; gap: 8px; box-shadow: var(--shadow-md); font-family: var(--ea-body); font-size: 12px; }
.whatsapp-fab:hover { background: var(--ea-blue); box-shadow: var(--shadow-md); }

@media (max-width: 1100px) {
    .hero-grid, .app-section-grid, .emotion-section-grid { gap: 32px; }
    .nav-links { gap: 16px; }
    .nav-container { gap: 24px; }
    .hero-content h1 { font-size: 48px; }
    .brand-hero-art { padding: 32px 24px 24px; }
    .brand-hero-art > img { height: 296px; }
    .app-highlight-grid { grid-template-columns: 1fr; }
    .app-benefit-card { grid-template-columns: 1fr; gap: 8px; }
    .emotion-audience-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .emotion-report-grid { grid-template-columns: 1fr; }
    .ms-story-wrapper { grid-template-columns: 1fr; }
}
@media (max-width: 960px) {
    .integration-heading { grid-template-columns: 1fr; gap: 24px; }
    .integration-capability { padding: 32px; }
    .integration-partners { grid-template-columns: 1fr; gap: 24px; }
    .nav-container { flex-wrap: wrap; padding-block: 16px; min-height: 88px; gap: 16px; }
    .nav-links { position: static; width: 100%; height: auto; padding: 16px 0 0; order: 3; flex-direction: column; align-items: stretch; gap: 8px; transform: none; box-shadow: none; background: white; transition: none; }
    .nav-links a { display: flex; min-height: 48px; align-items: center; padding: 8px 16px; border: 0; border-radius: 8px; }
    .nav-links .btn-nav { margin: 0; }
    .menu-ready .nav-links { display: none; }
    .menu-ready .nav-links.active { display: flex; max-height: calc(100dvh - 104px); overflow-y: auto; }
    .menu-ready .mobile-menu-icon { display: inline-flex; margin-left: auto; }
    .hero-grid, .app-section-grid, .emotion-section-grid, .sales-section > .container { grid-template-columns: 1fr; gap: 40px; }
    .hero-content h1 { max-width: 20ch; font-size: clamp(40px, 6.5vw, 56px); }
    .hero-visual { max-width: 560px; justify-self: center; }
    .brand-hero-art > img { height: 320px; }
    .app-visual-block { width: 100%; max-width: 560px; margin: 0 auto; }
    .app-highlight-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .app-benefit-card { grid-template-columns: 176px 1fr; }
    .emotion-visual-block { order: 2; width: 100%; max-width: 640px; margin: 0 auto; }
    .emotion-proof-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .emotion-commercial-cta { flex-direction: column; align-items: flex-start; }
    .footer-content { grid-template-columns: 1fr 1fr; gap: 32px; }
    .footer-brand { grid-column: 1 / -1; }
    .cta-card { padding-right: 232px; }
    .cta-illustration { width: 144px; right: 40px; }
}
@media (max-width: 640px) {
    .integration-capabilities { grid-template-columns: 1fr; }
    .integration-capability { padding: 32px 24px; }
    .integration-protocol { margin-bottom: 24px; }
    .integration-capability h3 { max-width: none; }
    .integration-partners .partners-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .integration-partners .partner-card { padding: 16px; }
    .container { width: calc(100% - 32px); }
    .hero { padding: 48px 0; }
    .hero-content h1 { font-size: 40px; }
    .hero-badge { font-size: 10px; }
    .hero-subtitle { font-size: 16px; }
    .hero-btns { flex-direction: column; gap: 16px; }
    .hero-btns .btn { width: 100%; }
    .hero-trust { flex-wrap: wrap; }
    .brand-hero-art { border-radius: 80px 24px 24px 24px; padding: 32px 24px 24px; }
    .brand-hero-art > img { height: 280px; }
    .stats-section { padding-bottom: 48px; }
    .stats-grid { grid-template-columns: 1fr; padding: 16px; gap: 0; }
    .stat-card { padding: 24px 16px; }
    .stat-card + .stat-card { border-left: 0; border-top: 1px solid var(--ea-line); border-radius: 0; }
    .stat-number { font-size: 32px; }
    .testimonials-section, .features, .app-section, .emotion-section, .integrations-section,
    .faq-section, .microsoft-section, .sales-section, .cta-section { padding: 48px 0; }
    .section-header { margin-bottom: 32px; }
    .testimonials-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .testimonial-card { padding: 16px; min-height: 192px; }
    .testimonial-card h3 { font-size: 18px; }
    .features-grid, .emotion-audience-grid, .emotion-proof-grid, .app-highlight-grid { grid-template-columns: 1fr; }
    .feature-card, .emotion-audience-card, .emotion-proof-card, .emotion-report-card { padding: 24px; }
    .app-benefit-card { grid-template-columns: 1fr; }
    .app-visual-block, .emotion-visual-block, .ms-story-wrapper, .emotion-commercial-cta { padding: 24px; }
    .emotion-brand-heading { gap: 8px; }
    .emotion-brand-heading h3 { font-size: 28px; }
    .emotion-brand-heading img { width: 80px; height: 152px; }
    .emotion-section-grid { margin-bottom: 48px; }
    .emotion-commercial-cta .btn { width: 100%; }
    .partners-grid { flex-direction: column; align-items: stretch; gap: 24px; }
    .connection-line { align-self: center; }
    .partner-card { min-width: 0; }
    .faq-list summary { font-size: 20px; }
    .sales-card { padding: 24px; }
    .sales-actions { flex-direction: column; }
    .cta-card { padding: 32px 24px; }
    .cta-card > p { font-size: 15px; }
    .cta-illustration { position: static; float: right; width: 80px; height: 160px; margin: 0 0 16px 16px; }
    .cta-card h2 { max-width: none; }
    .cta-btns { clear: both; }
    .cta-btns .btn { width: 100%; }
    .footer-content { grid-template-columns: 1fr; }
    footer { padding: 48px 0 104px; }
    .whatsapp-fab { width: 56px; height: 56px; padding: 0; right: 16px; bottom: 16px; justify-content: center; }
    .whatsapp-fab span { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .btn:hover, .feature-card:hover, .testimonial-card:hover, .emotion-audience-card:hover, .sales-card:hover { transform: none; }
}
