/* Extensões que reutilizam a identidade visual original. */
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
:focus-visible { outline: 3px solid var(--primary); outline-offset: 5px; }
.section-title p { max-width: 820px; margin: 20px auto 0; }
.service-examples { padding-left: 20px; list-style: disc; margin: 20px 0; color: var(--text-light); }
.service-examples li { margin-bottom: 8px; }
.solution-link { color: var(--primary-dark); font-weight: 700; display: inline-block; padding: 12px 0; }
.product-status { font-size: .85rem; margin: 20px 0; }
.solutions-menu { position: relative; }
.solutions-menu summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; gap: 6px; }
.solutions-menu summary::after { content: '⌄'; }
.solutions-dropdown { position: absolute; top: 100%; left: 0; width: 310px; padding: 12px; background: var(--white); border: 1px solid var(--border); border-radius: 8px; box-shadow: var(--shadow); }
.solutions-dropdown a { display: block; padding: 10px; color: var(--text-dark); }
.solutions-dropdown a:hover { color: var(--primary-dark); background: var(--bg-light); }
.nav-links { gap: 18px; align-items: center; font-size: .85rem; }
.nav-links > a { white-space: nowrap; }
.header-actions .btn { padding: 14px 18px; font-size: .75rem; }
.full-services { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px 40px; list-style: disc; padding-left: 24px; }
.application { margin: 50px 0 24px; }
.application p { margin-top: 16px; }
.related-links { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 24px; }
.related-links a { text-decoration: underline; }
.solution-hero { clip-path: none; padding: 150px 0 80px; }
.solution-hero .hero-text { max-width: var(--container); }
.commercial .hero-buttons { justify-content: center; }
.footer-col a { overflow-wrap: anywhere; }
.features-grid { grid-template-columns: repeat(auto-fit,minmax(min(100%,300px),1fr)); }
@media(max-width:1200px) { .nav-links,.header-actions { display:none; } .mobile-menu-btn { display:block; } }
.mobile-menu-btn { min-width:44px; min-height:44px; }
.mobile-nav { max-height:calc(100dvh - 80px); overflow-y:auto; }
.mobile-nav .solutions-dropdown { position:static; width:100%; box-shadow:none; }
.mobile-nav summary { padding: 10px 0; }
@media(max-width:600px) { .full-services { grid-template-columns:1fr; } .solution-hero h1 { font-size:2rem; overflow-wrap:anywhere; } .commercial .btn { width:100%; text-align:center; padding:14px 16px; } }
@media(prefers-reduced-motion:reduce) { html {scroll-behavior:auto;} *,*::before,*::after {animation:none!important;transition:none!important;} }
.mobile-nav { visibility:hidden; }
.mobile-nav.active { visibility:visible; }

.hero-visual { min-width:0; } .mockup-header-logo { max-width:100%; height:auto; }
.mockup-header-logo { transform: scale(1.08) translateY(4px); }

/* Refinamento comercial e navegação adaptável. */
.skip-link { position:fixed; left:16px; top:-100px; z-index:2000; background:var(--secondary); color:white; padding:12px 20px; border-radius:4px; }
.skip-link:focus { top:12px; }
img { max-width:100%; }
.container > *, .features-grid > *, .footer-grid > *, .contact-grid > *, .cards-grid > * { min-width:0; }
.btn { min-height:48px; text-align:center; display:inline-flex; align-items:center; justify-content:center; gap:10px; }
.feature-card { display:flex; flex-direction:column; }
.feature-card .solution-link { margin-top:auto; }
.feature-card p { margin-bottom:12px; }
.product-card .btn { margin-top:auto; align-self:flex-start; }
.product-label { color:var(--primary-dark); font-size:.8rem; font-weight:700; margin-bottom:16px; }
.product-domain { display:block; margin-top:14px; font-size:.8rem; color:var(--text-light); overflow-wrap:anywhere; }
.products { background:var(--white); }
.hero-buttons { flex-wrap:wrap; }
.hero-text h1 { font-size:clamp(2.05rem,4vw,3.5rem); }
.hero-text p { max-width:65ch; }
.section-title h2 { font-size:clamp(1.65rem,3.2vw,2.5rem); line-height:1.25; }
.hero-scroll-section { height:44px; margin-top:16px; }
.features,.showcase,.industries { padding:80px 0; }
.section-title { margin-bottom:40px; }
.mobile-contact { display:none; }
.mobile-menu-btn { color:var(--secondary); border-radius:4px; }
.mobile-nav { overscroll-behavior:contain; transform:none; opacity:0; pointer-events:none; transition:opacity .18s ease; }
.mobile-nav.active { opacity:1; pointer-events:auto; }
.mobile-nav a,.mobile-nav summary { min-height:48px; }
.mobile-nav .solutions-dropdown a { padding:12px; line-height:1.5; }
.mobile-nav .btn { margin-top:16px; }
.related-links a { padding:8px 0; }
.full-services li { padding:8px 0; }
.contact-link { overflow-wrap:anywhere; min-height:48px; display:inline-flex; align-items:center; }
@media(min-width:1201px) { .mobile-nav {display:none;} .nav-links {font-size:.9rem;gap:26px;} }
@media(max-width:1200px) { .mobile-nav { padding-bottom:28px; } }
@media(max-width:768px) {
 .features,.showcase,.industries {padding:52px 0;}
 .section-title {margin-bottom:28px;}
 .features-grid {gap:20px;}
 .feature-card {padding:28px 24px;}
 .hero {padding-bottom:70px;}
 .hero-text p {font-size:1rem;line-height:1.7;}
 .hero-buttons .btn {min-height:50px;}
 .showcase-container {gap:28px;}
 .showcase-image img {aspect-ratio:16/10;object-fit:cover;}
 .footer-grid {gap:28px;margin-bottom:32px;}
 footer {padding-top:48px;}
 .mobile-contact {display:flex;position:fixed;bottom:0;left:0;right:0;z-index:1100;background:var(--white);border-top:1px solid var(--border);box-shadow:0 -4px 20px rgba(0,0,0,.06);gap:10px;align-items:center;padding:10px 16px calc(10px + env(safe-area-inset-bottom));}
 .mobile-contact>a {flex:1;font-size:.78rem;text-align:center;font-weight:700;min-height:46px;display:flex;align-items:center;justify-content:center;line-height:1.4;}
 .mobile-contact .btn {padding:10px 12px;}
 body {padding-bottom:calc(78px + env(safe-area-inset-bottom));}
 .mobile-nav {max-height:calc(100dvh - 160px - env(safe-area-inset-bottom));}
 html {scroll-padding-bottom:95px;}
 .solution-hero {padding-top:120px;}
 .application {margin-top:32px;}
}
@media(max-width:480px) {
 .container {padding-left:20px;padding-right:20px;}
 .nav-container {gap:12px;}
 .logo {max-width:190px;}
 .logo img {max-height:46px;}
 .hero-text h1 {font-size:clamp(1.85rem,8.4vw,2.5rem);}
 .hero-buttons {width:100%;}
 .hero-buttons .btn {width:100%;font-size:.78rem;padding:14px 16px;}
 .service-badges {gap:8px;margin-top:20px;}
 .service-badge {width:auto;font-size:.75rem;padding:7px 10px;}
 .product-card .btn {width:100%;}
 .full-services {font-size:.95rem;gap:8px;}
 .hero h1 {overflow-wrap:break-word;}
}
@media(hover:none) { .feature-card:hover,.btn-primary:hover {transform:none;} }
body.menu-open { overflow:hidden; } body.menu-open .mobile-contact { visibility:hidden; }

.solution-preview { padding:40px; background:var(--bg-light); border:1px solid var(--border); border-radius:8px; box-shadow:var(--shadow); }
.solution-preview img { width:220px; height:auto; box-shadow:none; border-radius:0; }
.preview-heading { display:block; font-family:Montserrat,sans-serif; font-size:1.8rem; font-weight:800; color:var(--secondary); margin:32px 0 12px; line-height:1.3; }
.preview-tags { display:flex;flex-wrap:wrap;gap:10px;margin-top:24px; }
.preview-tags span { background:white;border:1px solid var(--border);padding:8px 12px;border-radius:4px;font-size:.85rem; }
@media(max-width:768px) { .solution-preview {padding:28px;} .solution-preview img {aspect-ratio:auto;object-fit:contain;} .preview-tags {justify-content:center;} }
@media(max-width:480px) { .hero .service-badges {display:none;} .hero:not(.solution-hero) {padding-bottom:48px;} .feature-card h3 {font-size:1.2rem;} .feature-card .icon-box {width:48px;height:48px;margin-bottom:18px;} #solucoes .service-examples {font-size:.9rem;margin:12px 0;} .preview-heading {font-size:1.5rem;} }
.sr-only { position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; } [hidden] { display:none!important; } #help-result {margin-top:12px;}

.solutions-invitation { margin-top:36px; padding:36px; background:var(--white); border:1px solid var(--border); border-left:4px solid var(--primary); border-radius:8px; box-shadow:var(--shadow); }
.solutions-invitation h3,.solutions-invitation h2 {font-family:Montserrat,sans-serif;font-size:1.6rem;line-height:1.3;color:var(--secondary);}
.solutions-invitation p {max-width:760px;margin:16px 0 24px;color:var(--text-light);}
.catalogue-eyebrow {display:block;font-size:.8rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--primary);margin-bottom:14px;}
.solutions-preview .feature-card .solution-link {margin-top:auto;}
@media(max-width:600px) {.solutions-invitation {padding:26px 22px;margin-top:24px;} .solutions-invitation h3,.solutions-invitation h2 {font-size:1.35rem;} .solutions-invitation .btn {width:100%;font-size:.78rem;padding:14px 12px;} }

/* Logos oficiais dos produtos, com proporções originais. */
.product-logo-wrap {height:170px;display:flex;align-items:center;justify-content:center;width:100%;margin:0 0 24px;background:#fff;border-radius:4px;}
.product-logo {display:block;max-width:100%;width:auto;height:auto;max-height:160px;object-fit:contain;}
.product-logo-foxmotors,.product-logo-agendeseuhorario {width:100%;}
.product-logo-alanaia {width:160px;height:160px;}
@media(max-width:480px) {.product-logo-wrap {height:150px;margin-bottom:18px;} .product-logo {max-height:140px;} .product-logo-alanaia {width:140px;height:140px;} }
