.professionals-page {
    margin: 0;
    color: #18332d;
    background: #fff;
    font: 1rem/1.65 system-ui, -apple-system, "Segoe UI", sans-serif;
}
.professionals-page *, .professionals-page *::before, .professionals-page *::after { box-sizing: border-box; }
.professionals-page a { color: #06634b; text-underline-offset: .2em; }
.professionals-page a:focus-visible, .professionals-page summary:focus-visible, .professionals-page video:focus-visible { outline: 3px solid #d97706; outline-offset: 4px; }
.professionals-page .container { width: min(1160px, 100% - 40px); margin-inline: auto; }
.professionals-page .section { padding-block: 76px; }
.professionals-page section[id], .professionals-page main[id] { scroll-margin-top: 110px; }
.professionals-page h1, .professionals-page h2, .professionals-page h3 { line-height: 1.18; letter-spacing: -.025em; margin: 0 0 18px; color: #102e26; }
.professionals-page h1 { font-size: clamp(2.2rem, 4vw, 3.65rem); max-width: 760px; }
.professionals-page h2 { font-size: clamp(1.65rem, 3vw, 2.35rem); }
.professionals-page h3 { font-size: 1.2rem; }
.professionals-page p { margin: 0 0 20px; }
.professionals-page .eyebrow { font-size: .77rem; font-weight: 750; text-transform: uppercase; letter-spacing: .1em; color: #07674e; margin-bottom: 16px; }
.professionals-page .section-intro { max-width: 760px; color: #4d635d; }
.professionals-page .muted { color: #50685f; font-size: .9rem; }
.professionals-page .skip-link { position: absolute; left: 12px; top: -100px; padding: 12px; background: white; z-index: 100; }
.professionals-page .skip-link:focus { top: 12px; }
.professionals-page .site-header { position: sticky; top: 0; z-index: 20; background: #fffffff5; border-bottom: 1px solid #dce8e2; }
.professionals-page .navigation { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 88px; }
.professionals-page .brand { display: inline-flex; gap: 10px; align-items: center; text-decoration: none; font-weight: 800; font-size: 1.3rem; line-height: 1.3; }
.professionals-page .brand small { display: block; font-size: .7rem; font-weight: 500; color: #50685f; }
.professionals-page .desktop-links, .professionals-page .nav-actions { display: flex; align-items: center; gap: 20px; font-size: .83rem; font-weight: 650; }
.professionals-page .desktop-links a, .professionals-page .nav-actions > a:not(.button) { display: flex; align-items: center; min-height: 44px; text-decoration: none; }
.professionals-page .mobile-menu { display: none; }
.professionals-page .button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 12px 21px; border: 1px solid #08684d; border-radius: 10px; background: #08684d; color: #fff; text-align: center; text-decoration: none; font-size: .94rem; font-weight: 700; line-height: 1.45; }
.professionals-page .button:hover { background: #064c3a; }
.professionals-page .button-small { font-size: .8rem; padding: 10px 14px; }
.professionals-page .button-light { color: #06533e; background: #fff; border-color: #fff; }
.professionals-page .button-light:hover { background: #e6f5ed; }
.professionals-page .button-outline-light { background: transparent; color: white; border-color: #c0e5d3; }
.professionals-page .button-outline-light:hover { background: #ffffff15; }
.professionals-page .button-secondary { background: #f5faf7; color: #06533e; border-color: #bdd7ca; }
.professionals-page .button-secondary:hover { background: #e6f5ed; }
.professionals-page .hero { padding: 72px 0; background: radial-gradient(ellipse at top right, #0b8060, transparent 65%), #064c3a; color: #e3f5ec; }
.professionals-page .hero h1 { color: white; }
.professionals-page .hero > .container > div > .eyebrow { color: #b1e6cd; }
.professionals-page .hero-grid { display: grid; grid-template-columns: 1.4fr 1fr; align-items: center; gap: 60px; }
.professionals-page .lead { font-size: 1.12rem; max-width: 650px; }
.professionals-page .actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.professionals-page .quick-card { background: #fff; color: #294c40; padding: 32px; border-radius: 22px; box-shadow: 0 24px 60px #001f2d30; }
.professionals-page .quick-card h2 { font-size: 1.65rem; }
.professionals-page .check-list { padding: 0; margin: 22px 0; list-style: none; }
.professionals-page .check-list li { padding: 10px 0 10px 29px; position: relative; }
.professionals-page .check-list li::before { content: "\2713"; position: absolute; left: 0; color: #087150; font-weight: 800; }
.professionals-page .cards { display: grid; gap: 20px; margin-top: 32px; }
.professionals-page .benefits { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.professionals-page .card { padding: 26px; border: 1px solid #dce8e2; border-radius: 16px; background: white; }
.professionals-page .card p:last-child { margin-bottom: 0; }
.professionals-page .card-number { display: inline-flex; padding: 8px 13px; margin-bottom: 22px; border-radius: 10px; background: #e9f6ef; color: #07724f; font-weight: 750; }
.professionals-page .section-muted { background: #f4f8f5; }
.professionals-page .video-card { margin: 0; padding: 12px; border: 1px solid #cbded3; background: white; border-radius: 20px; }
.professionals-page video { display: block; width: 100%; height: auto; max-height: 570px; background: #0c1d2b; border-radius: 10px; }
.professionals-page figcaption { font-size: .8rem; text-align: center; color: #52695f; padding: 8px 4px 0; }
.professionals-page .text-link { font-weight: 750; display: inline-flex; align-items: center; min-height: 44px; }
.professionals-page .disclosure { border: 1px solid #d4e2d9; border-radius: 12px; margin-top: 14px; background: white; }
.professionals-page summary { cursor: pointer; padding: 18px 20px; min-height: 48px; font-weight: 700; line-height: 1.5; }
.professionals-page .disclosure > p, .professionals-page .disclosure > a { margin: 0 20px 20px; }
.professionals-page .full-training { margin-top: 32px; }
.professionals-page .installation-guides { margin-top: 32px; }
.professionals-page .installation-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
.professionals-page .training-player { width: min(100% - 40px, 340px); margin: 0 auto 20px; }
.professionals-page .spaces { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.professionals-page .space-card { display: flex; flex-direction: column; gap: 12px; }
.professionals-page .space-card h3, .professionals-page .space-card p { margin-bottom: 8px; }
.professionals-page .space-card p { flex: 1; }
.professionals-page .steps { list-style: none; padding: 0; margin: 30px 0 0; max-width: 900px; }
.professionals-page .steps li { display: flex; gap: 24px; padding: 22px 0; border-bottom: 1px solid #d7e6dd; }
.professionals-page .steps h3 { margin-bottom: 8px; }
.professionals-page .steps p { margin: 0; color: #4d635d; }
.professionals-page .step-number { flex: 0 0 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: #08684d; color: white; font-weight: 800; }
.professionals-page .features { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.professionals-page .check { color: #087150; }
.professionals-page .notice { background: #fff7e5; color: #694c12; border: 1px solid #efd7a8; padding: 22px; border-radius: 12px; margin-top: 24px; }
.professionals-page .notice h3 { color: #694c12; }
.professionals-page .notice p { margin-bottom: 0; }
.professionals-page .quality { background: #e8f4ed; }
.professionals-page .quality-grid, .professionals-page .contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.professionals-page .faq { max-width: 900px; }
.professionals-page .contact-card { font-style: normal; display: flex; flex-direction: column; gap: 12px; overflow-wrap: anywhere; }
.professionals-page .contact-card strong { font-size: 1.5rem; }
.professionals-page .contact-card > a:not(.button) { min-height: 44px; display: flex; align-items: center; }
.professionals-page .site-footer { padding: 36px 0; background: #0d2c23; color: #d9eee2; }
.professionals-page .site-footer .container { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; justify-content: space-between; }
.professionals-page .site-footer a { color: #d9eee2; min-height: 44px; display: inline-flex; align-items: center; }
.professionals-page .site-footer p { margin: 0; font-size: .83rem; }
@media (max-width: 1100px) {
    .professionals-page .desktop-links, .professionals-page .nav-actions { display: none; }
    .professionals-page .mobile-menu { display: block; }
    .professionals-page .mobile-menu summary { border: 1px solid #bbd5c8; border-radius: 10px; padding: 10px 16px; }
    .professionals-page .mobile-menu > div { position: absolute; top: 88px; right: 20px; left: 20px; padding: 14px; background: #fff; border: 1px solid #d4e2d9; border-radius: 12px; box-shadow: 0 12px 30px #12322420; max-height: calc(100dvh - 110px); overflow-y: auto; }
    .professionals-page .mobile-menu a { display: flex; align-items: center; padding: 10px 14px; min-height: 44px; text-decoration: none; }
    .professionals-page .hero-grid { gap: 30px; }
    .professionals-page .benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .professionals-page .container { width: calc(100% - 32px); }
    .professionals-page .section { padding-block: 48px; }
    .professionals-page .hero { padding-block: 42px; }
    .professionals-page .hero-grid, .professionals-page .quality-grid, .professionals-page .contact-grid { grid-template-columns: minmax(0, 1fr); gap: 30px; }
    .professionals-page .benefits, .professionals-page .spaces, .professionals-page .features { grid-template-columns: minmax(0, 1fr); }
    .professionals-page .quick-card, .professionals-page .card { padding: 24px; }
    .professionals-page .actions { flex-direction: column; }
    .professionals-page .button { width: 100%; }
    .professionals-page .video-card { width: min(100%, 380px); justify-self: center; }
    .professionals-page .steps li { gap: 16px; }
    .professionals-page .full-training .button { width: calc(100% - 40px); }
    .professionals-page .installation-grid { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .professionals-page .installation-guide .button { width: calc(100% - 40px); }
}
