/* UI audit 2026-10-15: retained Laravel pages use the exported marketing shell.
   Keep page-specific styling scoped so its header/menu/footer retain one design. */
.marketing-v2 .page-hero { position: static; border: 0; }
.marketing-v2 h1, .marketing-v2 h2 { font-weight: 600; }
.marketing-v2 .check-list li { display: grid; grid-template-columns: 1rem minmax(0, 1fr); gap: .6rem; }
.marketing-v2 .check-list li::before { grid-column: 1; }
.marketing-v2 .check-list li > span { grid-column: 2; }
.marketing-v2 .reveal { opacity: 1; transform: none; }
.marketing-v2 a:not(.btn) { text-underline-offset: .2em; }
.marketing-v2 .v2-prose a { color: #087556; text-decoration: underline; }
.marketing-v2 .btn { min-height: 50px; }
.marketing-v2 :focus-visible, .marketing-solutions :focus-visible { outline: 3px solid #087556; outline-offset: 4px; }

.legal { overflow-wrap: anywhere; }
.legal .about-hero { margin-bottom: 40px; }
.legal .about-hero h1 { margin-bottom: 24px; }
.legal .about-hero .lead { font-size: 1.15rem; }
.legal .about-section { margin-top: 40px; }
.legal .values-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.legal .value-card, .legal .stat-item, .legal .about-info-box, .legal .about-cta, .legal .info-box, .legal .callout {
    padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: #fff;
}
.legal .value-card h3 { margin: 12px 0; }
.legal .stats-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 32px 0; }
.legal .stat-item { text-align: center; padding: 20px 12px; }
.legal .stat-number { font-family: var(--font-heading); font-size: 2rem; font-weight: 600; }
.legal .stat-label, .legal .meta, .legal .legal-meta { color: var(--muted); }
.legal .about-cta { margin-top: 40px; text-align: center; }
.legal .about-cta h2 { margin-top: 0; }
.legal .about-cta-buttons { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }
.legal .about-cta-buttons a { display: inline-flex; justify-content: center; align-items: center; padding: 12px 24px; min-height: 50px; border: 1px solid var(--pine); border-radius: 100px; color: var(--pine); font-weight: 600; text-decoration: none; }
.legal .about-cta-buttons .btn-primary-gradient { background: var(--pine); color: white; }
.legal .compliance-badges { display: flex; flex-wrap: wrap; gap: 16px; margin: 24px 0; }
.legal .compliance-badge { display: flex; align-items: center; gap: 12px; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: white; }
.legal .badge-text strong, .legal .badge-text span { display: block; }
.legal .badge-text span { color: var(--muted); font-size: .875rem; }

/* Existing specialist components retain their interactions and composition. */
.marketing-solutions { --font-family: var(--font-body); --editorial-serif: var(--font-heading); --editorial-sans: var(--font-body); }
.marketing-solutions, .marketing-solutions.solutions-page :where(p, span, div, a, button, label, input, li, small, strong, em) { font-family: var(--font-body) !important; }
.marketing-solutions.solutions-page h1, .marketing-solutions.solutions-page h2, .marketing-solutions.solutions-page h3, .marketing-solutions.solutions-page .editorial-serif { font-family: var(--font-heading) !important; font-weight: 600 !important; }
.marketing-solutions.solutions-page .editorial-mono { font-family: ui-monospace, monospace !important; }
.marketing-solutions .solutions-container { max-width: 1320px; padding-inline: 40px; }
.marketing-solutions .solutions-container > *, .marketing-solutions [class$="__grid"] > *, .marketing-solutions [class$="__cta"] > * { min-width: 0; }
.marketing-solutions .editorial-btn { white-space: normal; text-align: center; min-height: 44px; }
.marketing-solutions .solutions-roi-calculator-v2__range { min-height: 44px; }
.marketing-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
/* The shell's footer must remain reachable above device safe areas. */
body > footer { padding-bottom: calc(40px + env(safe-area-inset-bottom)); }
body > footer .footer-links a, body > footer .footer-links summary { min-height: 44px; display: inline-flex; align-items: center; }
@media (max-width: 760px) {
    .marketing-v2 .wrap { width: calc(100% - 40px); }
    .marketing-solutions .solutions-container { padding-inline: 20px; }
    .legal .values-grid { grid-template-columns: 1fr; }
    .legal .stats-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .legal .value-card, .legal .about-cta { padding: 20px; }
}

.marketing-contact { padding-block: 64px; overflow-wrap: anywhere; }
.marketing-contact .contact-header { max-width: 760px; margin-bottom: 40px; }
.marketing-contact h1 { font-size: clamp(2.4rem, 5vw, 3.5rem); margin-bottom: 24px; }
.marketing-contact h2 { font-size: 1.5rem; margin-bottom: 24px; }
.marketing-contact h3 { font-size: 1rem; margin-bottom: 12px; }
.marketing-contact p, .marketing-contact .info-item { color: var(--muted); }
.marketing-contact .contact-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 32px; align-items: start; }
.marketing-contact .contact-card { background: white; border: 1px solid var(--line); border-radius: 16px; padding: 32px; }
.marketing-contact .form-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.marketing-contact .form-group { margin-bottom: 20px; }
.marketing-contact label { display: block; font-weight: 600; margin-bottom: 6px; }
.marketing-contact input, .marketing-contact select, .marketing-contact textarea { width: 100%; min-height: 44px; padding: 10px 14px; border: 1px solid #7b8d84; border-radius: 8px; color: var(--ink); background: white; }
.marketing-contact textarea { resize: vertical; min-height: 130px; }
.marketing-contact .form-submit-btn { display: block; width: 100%; min-height: 50px; padding: 12px 24px; border: 0; border-radius: 100px; background: var(--pine); color: white; font-weight: 600; }
.marketing-contact .form-submit-btn:hover { background: #165040; }
.marketing-contact .honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.marketing-contact .alert { padding: 16px; border-radius: 12px; margin-bottom: 24px; }
.marketing-contact .alert-success { color: #065b43; background: #e7f4ee; }
.marketing-contact .alert-error, .marketing-contact .field-error { color: #a52b25; }
.marketing-contact .alert-error { background: #fff0ef; }
.marketing-contact .info-section { margin-block: 24px; }
.marketing-contact .info-item { display: flex; align-items: start; gap: 10px; margin-bottom: 10px; }
.marketing-contact .info-item svg { flex-shrink: 0; margin-top: 4px; }
.marketing-contact a { color: #087556; text-decoration: underline; text-underline-offset: .2em; }
.marketing-contact hr { border: 0; border-top: 1px solid var(--line); margin-block: 24px; }
@media (max-width: 760px) {
    .marketing-contact { padding-block: 40px; }
    .marketing-contact .contact-grid, .marketing-contact .form-row { grid-template-columns: minmax(0, 1fr); }
    .marketing-contact .contact-card { padding: 20px; }
}

/* Dark demonstration surfaces need their own readable accent and caption tokens. */
.marketing-solutions.solutions-page .solutions-hero-revenue__stat-source { color: #58616d; font-size: 12px; opacity: 1; }
.marketing-solutions.solutions-page .solutions-conversation-demo__footer { color: #afb8c4; font-size: 12px; }
.marketing-solutions.solutions-page .solutions-conversation-demo__footer span { font-size: 12px; }
.marketing-solutions.solutions-page .solutions-outbound-agents { --color-solutions-accent: #7cc8bb; }
.marketing-solutions.solutions-page .solutions-outbound-agents__tab-tag { color: #a9d2ff !important; }
.marketing-solutions.solutions-page .solutions-hero-revenue__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 900px) {
    .marketing-solutions.solutions-page .solutions-hero-revenue__grid { grid-template-columns: minmax(0, 1fr); }
}
.marketing-solutions.solutions-page .solutions-hero-revenue__content,
.marketing-solutions.solutions-page .solutions-hero-revenue__demo { min-width: 0; }
.marketing-solutions.solutions-page .solutions-voice-technology__orb-badge { color: #3d6100; }
.marketing-solutions.solutions-page .solutions-whatsapp-demo__header { background: #076b60; }
.marketing-solutions.solutions-page .solutions-whatsapp-demo__status { color: white; }
.marketing-solutions.solutions-page .solutions-beta-cta { --color-solutions-accent: #7cc8bb; }
.marketing-solutions.solutions-page .solutions-beta-cta .editorial-pill--beta { color: #c4a5ff; }
.marketing-solutions.solutions-page.editorial-theme .solutions-outbound-agents__bubble--hexyl { color: #f4d1c8; }
.marketing-solutions.solutions-page .solutions-whatsapp-cascade .editorial-section-label { color: #076b60 !important; }
.marketing-solutions.solutions-page .solutions-beta-cta .editorial-btn--primary { background: #087556; color: white; }
.marketing-solutions.solutions-page .solutions-beta-cta .editorial-btn--primary:hover { background: #065b43; }
.marketing-solutions.solutions-page .solutions-integration-status { background: #e7f4ee; color: #087556; }
.marketing-solutions.solutions-page .solutions-platform-card { min-width: 0; overflow-wrap: anywhere; }
.marketing-solutions.solutions-page.editorial-v3 .solutions-outbound-agents__tab { min-width: 0; opacity: 1; }
.marketing-solutions.solutions-page.editorial-v3 .solutions-outbound-agents__tab-tag { opacity: 1; }
@media (max-width: 760px) {
    .marketing-solutions.solutions-page.editorial-v3 .solutions-outbound-agents__tabs { display: grid; grid-template-columns: minmax(0, 1fr); }
}
.marketing-solutions.solutions-page.editorial-v3 :is(.solutions-revenue-leak, .solutions-outbound-agents, .solutions-voice-technology) { position: relative; }
.marketing-solutions.solutions-page.editorial-v3 :is(.solutions-revenue-leak, .solutions-outbound-agents, .solutions-voice-technology)::before {
    position: absolute; inset-inline: 0; top: 0; margin: 0; padding: 0; width: auto;
}
.marketing-solutions.solutions-page.editorial-theme .solutions-sentiment-card.positive .solutions-sentiment-indicator { color: #087556; }
@media (max-width: 480px) {
    .marketing-solutions.solutions-page .solutions-platforms-grid { grid-template-columns: minmax(0, 1fr); }
}
.legal .draft { background: #fff6e5; border: 1px solid #f2d79a; border-radius: 12px; padding: 16px 20px; margin: 20px 0; color: #7a5b12; font-size: 1rem; }
.marketing-solutions.solutions-page .solutions-outbound-agents__outcome,
.marketing-solutions.solutions-page .solutions-outbound-agents__detail-highlight .editorial-sans { color: #b8dce9 !important; }
/* Align the retained hero with the shared 1240px content grid. */
.marketing-solutions.solutions-page .solutions-hero-revenue { max-width: none; padding-inline: 0; }
.marketing-solutions.solutions-page .solutions-hero-revenue__headline { font-size: clamp(32px, 4.2vw, 56px); }
/* A 44px input hit area with a thin visible rail, rather than a 44px rail. */
.marketing-solutions.solutions-page .solutions-roi-calculator-v2 input[type="range"] { height: 44px; background: transparent; }
.marketing-solutions.solutions-page .solutions-roi-calculator-v2 input[type="range"]::-webkit-slider-runnable-track { height: 4px; border-radius: 2px; background: var(--color-solutions-border); }
.marketing-solutions.solutions-page .solutions-roi-calculator-v2 input[type="range"]::-webkit-slider-thumb { margin-top: -8px; }
.marketing-solutions.solutions-page .solutions-roi-calculator-v2 input[type="range"]::-moz-range-track { height: 4px; border-radius: 2px; background: var(--color-solutions-border); }
.marketing-solutions.solutions-page .solutions-roi-calculator-v2 input[type="range"]:focus-visible { outline: 3px solid #087556; outline-offset: 4px; }
.marketing-solutions.solutions-page.editorial-v3 .solutions-roi-calculator-v2 input[type="range"]::-webkit-slider-runnable-track { background: linear-gradient(to right, var(--color-solutions-accent) 0%, var(--color-solutions-accent) var(--range-progress, 50%), var(--color-solutions-border) var(--range-progress, 50%), var(--color-solutions-border) 100%); }

/* User-input scenario calculator: no embedded performance benchmarks. */
.roi-scenario{color:#153d32}.roi-scenario-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.roi-scenario fieldset{border:1px solid #8faa9b;border-radius:10px;padding:18px;min-width:0}.roi-scenario legend{font-weight:600;padding:0 6px}.roi-scenario label{display:block;margin:14px 0 6px}.roi-scenario input{display:block;width:100%;min-height:44px;padding:10px;border:1px solid #82968b;border-radius:6px;background:white;color:#153d32;font:inherit}.roi-scenario input:focus-visible{outline:3px solid #187451;outline-offset:3px}.roi-scenario-totals{margin:24px 0}.roi-scenario-totals>div{display:flex;justify-content:space-between;gap:16px;padding:12px;border-bottom:1px solid #bccfc4}.roi-scenario-totals dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.roi-scenario [data-roi-error]{color:#a12622}.roi-scenario a{text-decoration:underline}.roi-scenario p{margin-top:16px}.roi-scenario .solutions-roi-calculator-v2__result-value{overflow-wrap:anywhere;font-size:clamp(24px,3vw,40px)}@media(max-width:700px){.roi-scenario-inputs{grid-template-columns:1fr}.roi-scenario-totals>div{flex-direction:column;gap:4px}}
