:root{--green:#286746;--green-dark:#1e5136;--ink:#222b26;--muted:#5d6861;--line:#dce2dd;--soft:#f5f7f4;--font:Inter,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font-family:var(--font);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--green);outline-offset:5px}button:disabled{cursor:default}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.13;font-weight:500;letter-spacing:-.045em}p{color:var(--muted)}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.16em;color:var(--muted)}.title-dot,.brand-dot{color:var(--green)}.skip-link{position:fixed;left:16px;top:-100px;z-index:100;background:var(--ink);color:white;padding:12px}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-inner{max-width:1440px;padding:19px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;flex-direction:column;line-height:1;width:128px;flex-shrink:0}.brand-name{font-size:42px;font-weight:650;letter-spacing:-.07em}.brand-sub{font-size:9px;letter-spacing:.29em;margin-top:5px}.brand-placeholder{font-size:9px;color:var(--muted);margin-top:7px}nav{display:flex;align-items:center;gap:23px}nav>a{font-size:12px;white-space:nowrap;padding-block:10px}nav>a:hover,nav>a[aria-current]{color:var(--green)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:50px;padding:14px 22px;background:var(--green);color:#fff;font-size:13px;font-weight:600;border:1px solid var(--green);border-radius:3px;transition:background .2s,transform .2s}.button:hover{background:var(--green-dark);color:white;transform:translateY(-2px)}.button span{font-size:19px}.button-small{min-height:42px;padding:8px 16px;gap:12px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center;padding-top:84px}.hero .eyebrow{display:flex;align-items:center;gap:12px}.accent-line{width:28px;height:2px;background:var(--green)}h1{font-size:clamp(45px,4.65vw,68px);margin-top:24px;letter-spacing:-.055em}h1>span:first-of-type{color:var(--green)}.hero-description{font-size:16px;line-height:1.8;max-width:460px;margin-top:26px}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:30px;flex-wrap:wrap}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:13px;font-weight:600;min-height:44px}.text-link:hover{color:var(--green)}.text-link span{font-size:20px}.schedule-art{padding:24px 26px 20px;border:1px solid var(--line);background:linear-gradient(130deg,#f9fbf8,#f0f4f0);border-radius:5px;position:relative;box-shadow:14px 18px 0 #f7f8f5}.art-top{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;color:var(--muted);align-items:center}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:7px}.art-title{font-size:25px;line-height:1.4;letter-spacing:-.04em;margin:28px 0}.art-title strong{font-weight:500;color:var(--green)}.schedule-art svg{display:block;width:100%;height:auto}.schedule-art figcaption{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:18px;margin-top:20px;font-size:10px;color:var(--muted)}.hero-disciplines{grid-column:1/-1;font-size:12px;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:24px;text-align:center}.hero-disciplines span{color:var(--green);margin:0 22px}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:46px}.section-heading>.eyebrow{padding-top:8px}h2{font-size:clamp(30px,3vw,42px)}.section-heading p:not(.eyebrow){margin-top:18px;font-size:14px}.service{display:grid;grid-template-columns:1fr 1.8fr .2fr;gap:40px;padding:34px 0;border-top:1px solid var(--line);scroll-margin-top:115px}.service:last-child{border-bottom:1px solid var(--line)}.service-number{font-size:14px;color:var(--green);font-variant-numeric:tabular-nums}.service h3{font-size:25px;letter-spacing:-.035em}.service p{font-size:14px;max-width:630px;margin-top:14px}.tags{display:flex;gap:10px 18px;flex-wrap:wrap;list-style:none;padding:0;margin:19px 0 0;color:var(--muted);font-size:10px;letter-spacing:.02em}.tags li:before{content:"·";color:var(--green);margin-right:7px}.round-link{align-self:start;justify-self:end;display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;font-size:23px;transition:background .2s}.round-link:hover{background:var(--green);color:#fff}.training-section{background:var(--soft)}.training-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.training{border-top:1px solid var(--line);padding-top:25px}.training-top{display:flex;gap:16px;align-items:center;margin-bottom:26px}.tool-label{font-size:13px;color:var(--green);font-weight:600;border:1px solid #bed0c2;border-radius:3px;min-width:43px;height:40px;display:grid;place-items:center}.training h3{font-size:28px}.training>p{font-size:14px;max-width:440px;margin:18px 0}.agenda{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:80px;padding-top:70px;border-top:1px solid var(--line)}.agenda h2{margin:15px 0 20px}.agenda-intro>p:not(.eyebrow){font-size:14px;max-width:320px}.placeholder{font-size:12px;line-height:1.7;color:var(--muted);padding-left:13px;border-left:2px solid #b7c8bb}.agenda .placeholder{margin:25px 0}.calendar{background:#fff;border:1px solid var(--line);border-radius:4px;padding:25px}.calendar-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.calendar-header h3{font-size:19px;letter-spacing:-.02em;text-transform:capitalize}.calendar-controls{display:flex;gap:5px}.calendar-controls button{background:transparent;border:1px solid var(--line);border-radius:3px;color:var(--ink);width:44px;height:44px}.calendar-controls button:hover{background:var(--soft)}.calendar table{width:100%;table-layout:fixed;border-collapse:collapse;text-align:center;font-size:12px}.calendar th{color:var(--muted);font-size:10px;font-weight:500;height:30px}.calendar td{height:47px;padding:2px}.calendar td>span{display:inline-grid;place-items:center;width:42px;height:42px}.today{border:1px solid var(--green);border-radius:50%}.class-day{background:var(--green);color:#fff;border:0;border-radius:50%;width:42px;height:42px;font-size:10px;font-weight:600}.class-day:hover{background:var(--green-dark)}.calendar-legend{border-top:1px solid var(--line);margin-top:17px;padding-top:17px;display:flex;gap:22px;flex-wrap:wrap;font-size:10px;color:var(--muted)}.calendar-legend i{display:inline-block;width:7px;height:7px;background:var(--green);border-radius:50%;margin-right:5px}.class-list-item{padding:15px 0;border-bottom:1px solid var(--line)}.class-list-item button{border:0;background:none;text-align:left;padding:0;min-height:44px;color:var(--ink);font-size:14px}.class-list-item time{display:block;color:var(--green);font-size:12px}.class-list-item p{font-size:12px}.simulator{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.simulator h2{margin:20px 0;font-size:clamp(36px,4vw,54px)}.simulator p:not(.eyebrow):not(.placeholder){max-width:350px;font-size:15px}.simulator .text-link{margin-top:20px}.simulator .placeholder{margin-top:12px}.asset-placeholder{height:290px;background:var(--soft);border:1px dashed #bbc7bd;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:var(--muted);font-size:10px;letter-spacing:.1em}.asset-placeholder p{font-size:11px;letter-spacing:0}.asset-cross{font-size:38px;font-weight:200;color:#8e9e92}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-top:65px;padding-bottom:75px}.about h2{font-size:34px;margin-bottom:25px}.about .placeholder{max-width:570px}.about .muted{margin-top:24px;font-size:12px}.contact-section{background:var(--soft);border-block:1px solid var(--line)}.contact{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:center;padding-block:70px}.contact h2{margin:20px 0}.contact p:not(.eyebrow):not(.placeholder){font-size:14px;max-width:480px}.contact-action{justify-self:end}.contact-action .placeholder{margin-top:18px}.footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:35px}.footer-brand{font-size:32px;font-weight:600;letter-spacing:-.07em}.footer p{font-size:10px}.footer .text-link{font-size:11px}dialog{border:1px solid var(--line);border-radius:6px;padding:30px;max-width:500px;width:calc(100% - 32px);color:var(--ink)}dialog::backdrop{background:#16271bb3}dialog h2{font-size:28px;margin:15px 0 20px}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.dialog-top button{width:44px;height:44px;background:var(--soft);border:1px solid var(--line);font-size:26px}#dialog-details p{margin:8px 0;font-size:14px}#dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.pending-link{cursor:pointer}
@media(min-width:1450px){.hero{padding-top:100px;padding-bottom:10px}}
@media(max-width:1150px){.header-inner{padding-inline:24px}nav{gap:13px}nav>a{font-size:11px}.container{width:calc(100% - 64px)}.hero{gap:32px}.hero-actions{gap:12px}.hero-disciplines span{margin-inline:12px}.agenda{gap:40px}}
@media(max-width:960px){.menu-toggle{display:flex;align-items:center;gap:15px;min-height:44px;background:#fff;border:1px solid var(--line);padding:8px 15px;border-radius:3px;color:var(--ink)}.header-inner{position:relative;padding-block:12px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:20px 32px;box-shadow:0 15px 20px #1c2a2110}nav.is-open{display:flex;flex-wrap:wrap;gap:12px 28px}nav>a{font-size:13px;min-height:44px}.brand-name{font-size:34px}.brand-sub{font-size:8px}.brand-placeholder{font-size:8px}.hero{padding-top:55px}h1{font-size:48px}.hero-description{font-size:14px}.hero-disciplines{font-size:11px}.schedule-art{padding:19px}.art-title{font-size:21px}.schedule-art figcaption{flex-direction:column;gap:4px}.section{padding-block:70px}.section-heading,.service,.about{grid-template-columns:.65fr 2fr}.service{grid-template-columns:.25fr 2fr .2fr;gap:20px}.agenda{gap:30px}.calendar{padding:16px}.simulator{gap:40px}.contact{gap:30px}.contact h2{font-size:34px}}
@media(max-width:700px){html{scroll-padding-top:95px}.container{width:calc(100% - 40px)}.header-inner{padding-inline:20px}nav.is-open{flex-direction:column;align-items:stretch;gap:0;padding:14px 20px;max-height:calc(100dvh - 90px);overflow-y:auto}nav>a{padding:10px 6px}nav .button{margin-top:10px}.hero{grid-template-columns:1fr;gap:35px;padding-top:42px}h1{font-size:clamp(40px,10vw,60px);margin-top:20px}.hero-description{font-size:15px;max-width:480px}.hero-actions{gap:14px;margin-top:24px}.hero-actions .button{width:100%}.hero-actions .text-link{justify-content:center;width:100%}.schedule-art{max-width:500px;width:100%;justify-self:center;box-shadow:7px 9px 0 #f7f8f5;padding:20px}.art-title{margin:20px 0;font-size:24px}.schedule-art figcaption{flex-direction:row;font-size:9px}.hero-disciplines{margin-top:5px;line-height:2.1;padding-block:20px;text-align:left}.hero-disciplines span{margin-inline:7px}.section{padding-block:55px}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}h2{font-size:31px}.section-heading h2 br{display:none}.service{grid-template-columns:25px 1fr 44px;gap:12px;padding:28px 0}.service h3{font-size:22px}.service p{font-size:13px}.service .tags{font-size:10px;gap:5px 12px}.round-link{width:44px;height:44px}.training-grid,.agenda,.simulator,.about,.contact{grid-template-columns:1fr}.training-grid{gap:40px}.training h3{font-size:26px}.agenda{margin-top:45px;padding-top:40px;gap:30px}.calendar{padding:18px 12px}.calendar-header{padding-inline:6px}.calendar td{height:46px}.calendar-legend{gap:16px;padding-left:5px}.simulator{gap:30px}.simulator h2{font-size:42px}.asset-placeholder{height:230px}.about{gap:20px}.about h2{font-size:29px}.contact{gap:28px;padding-block:45px}.contact h2{font-size:31px}.contact-action{justify-self:stretch}.contact-action .button{width:100%}.footer{flex-wrap:wrap;gap:20px;padding-block:28px}.footer>div{width:100%}.footer .text-link{margin-left:auto}.eyebrow{font-size:10px}dialog{padding:22px}}
.training-logo { display: flex; align-items: center; justify-content: center; width: 64px; height: 52px; flex-shrink: 0; }
.training-logo img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; }
.training-top--p6 { gap: 12px; min-height: 52px; }
.training-logo--p6 { width: 46px; height: 37.44px; }
.training-interface { margin-top: 22px; padding: 8px; background: #fff; border: 1px solid var(--line); border-radius: 4px; box-shadow: 0 4px 14px #222b2606; }
.training-interface img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
@media (max-width: 700px) {
  .training-logo { width: 56px; height: 46px; }
  .training-top--p6 { min-height: 46px; }
  .training-logo--p6 { width: 40.32px; height: 33.12px; }
  .training-interface { padding: 6px; margin-top: 18px; }
}
@media (min-width: 701px) and (max-width: 960px) {
  .expertise .section-heading, .expertise .service { grid-template-columns: 40px minmax(0, 1fr) 44px; column-gap: 20px; }
  .expertise .section-heading { row-gap: 18px; }
  .expertise .section-heading > .eyebrow { grid-column: 1 / -1; padding-top: 0; }
  .expertise .section-heading > div { grid-column: 2 / -1; }
}
/* Escala desktop: descrições 18px, links 16px, rótulos 14–15px. */
@media (min-width: 961px) {
  .container { width: min(1280px, calc(100% - 72px)); }
  .section { padding-block: 72px; }
  .eyebrow { font-size: 14px; letter-spacing: .1em; }
  .button, .text-link { font-size: 16px; }
  nav > a { font-size: 14px; }
  nav { gap: 18px; }
  .brand-sub { font-size: 11px; letter-spacing: .2em; }
  .brand-placeholder { font-size: 12px; }

  .hero { padding-top: 64px; gap: 36px; }
  h1 { margin-top: 20px; }
  .hero-description { font-size: 18px; line-height: 1.65; max-width: 520px; margin-top: 20px; }
  .hero-actions { margin-top: 24px; gap: 20px; }
  .art-top { font-size: 14px; letter-spacing: .06em; }
  .art-title { font-size: 27px; margin: 20px 0; }
  .schedule-art svg text { font-size: 12px; }
  .schedule-art figcaption { font-size: 14px; padding-top: 14px; margin-top: 16px; flex-wrap: wrap; }
  .hero-disciplines { font-size: 16px; padding-block: 20px; margin-top: 12px; }
  .hero-disciplines span { margin-inline: 14px; }

  .section-heading { gap: 32px; margin-bottom: 32px; }
  .section-heading p:not(.eyebrow) { font-size: 18px; margin-top: 14px; }
  .expertise .section-heading, .expertise .service { grid-template-columns: 48px minmax(0, 1fr) 46px; column-gap: 24px; }
  .expertise .section-heading { row-gap: 18px; }
  .expertise .section-heading > .eyebrow { grid-column: 1 / -1; padding-top: 0; }
  .expertise .section-heading > div { grid-column: 2 / -1; max-width: 780px; }
  .service { padding-block: 28px; gap: 32px; }
  .service-number { font-size: 15px; }
  .service h3 { font-size: 27px; }
  .service p { font-size: 18px; line-height: 1.65; max-width: 660px; margin-top: 12px; }
  .tags { font-size: 14px; margin-top: 14px; }

  .training-grid { gap: 40px; }
  .training { padding-top: 22px; }
  .training-top { margin-bottom: 18px; }
  .training-top .eyebrow { font-size: 15px; }
  .training-logo { width: 68px; height: 56px; }
  .training-top--p6 { min-height: 56px; }
  .training-logo--p6 { width: 48.96px; height: 40.32px; }
  .training h3 { font-size: 30px; }
  .training > p { font-size: 18px; line-height: 1.65; max-width: 520px; margin-block: 14px; }
  .agenda { gap: 56px; margin-top: 52px; padding-top: 48px; }
  .agenda h2 { margin: 12px 0 16px; }
  .agenda-intro > p:not(.eyebrow) { font-size: 18px; max-width: 420px; }
  .placeholder { font-size: 15px; }
  .agenda .placeholder { margin-block: 20px; }
  .calendar-header { margin-bottom: 16px; }
  .calendar-header h3 { font-size: 21px; }
  .calendar table { font-size: 16px; }
  .calendar th, .calendar-legend, .class-day { font-size: 14px; }
  .class-list-item button { font-size: 18px; }
  .class-list-item time, .class-list-item p { font-size: 15px; }

  .simulator { gap: 56px; }
  .simulator h2 { margin-block: 16px; }
  .simulator p:not(.eyebrow):not(.placeholder) { font-size: 18px; max-width: 420px; }
  .simulator .text-link { margin-top: 14px; }
  .asset-placeholder { height: 260px; font-size: 14px; }
  .asset-placeholder p { font-size: 15px; }
  .about { gap: 32px; padding-top: 48px; padding-bottom: 54px; }
  .about h2 { margin-bottom: 18px; }
  .about .muted { font-size: 16px; margin-top: 18px; }
  .contact { gap: 56px; padding-block: 54px; }
  .contact h2 { margin-block: 16px; }
  .contact p:not(.eyebrow):not(.placeholder) { font-size: 18px; max-width: 520px; }
  .contact-action .placeholder { margin-top: 14px; }
  .footer { padding-block: 28px; }
  .footer p { font-size: 14px; }
  .footer .text-link, #dialog-details p { font-size: 16px; }
}
/* O menu recolhe antes de os rótulos maiores comprometerem o desktop estreito. */
@media (min-width: 961px) and (max-width: 1200px) {
  .header-inner { position: relative; }
  .menu-toggle { display: flex; align-items: center; gap: 15px; min-height: 44px; background: #fff; border: 1px solid var(--line); padding: 8px 15px; border-radius: 3px; color: var(--ink); }
  nav { display: none; position: absolute; top: 100%; left: 0; right: 0; background: #fff; border-bottom: 1px solid var(--line); padding: 20px 32px; box-shadow: 0 15px 20px #1c2a2110; }
  nav.is-open { display: flex; flex-wrap: wrap; gap: 12px 24px; }
  nav > a { min-height: 44px; }
}
/* Acabamento pontual do cabeçalho, hero e blocos de atuação/treinamentos. */
.site-header .brand { width: 240px; }
.brand-image { display: block; width: 100%; height: auto; }
.header-inner { padding-block: 12px; }
.site-header .button-small { min-height: 48px; padding: 11px 20px; font-size: 17px; }
.hero > * { min-width: 0; }
.hero-cover { width: 100%; }
.hero-cover img { display: block; width: 100%; height: auto; border-radius: 4px; }
.training-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.training { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; }
.training-top { flex-shrink: 0; }
.training-interface { width: 100%; min-width: 0; margin-top: auto; }
.training > .text-link { margin-bottom: 22px; }
.training-interface img { max-width: 100%; }
@media (min-width: 961px) {
  .expertise .section-heading, .expertise .service { grid-template-columns: 32px minmax(0, 1fr) 46px; column-gap: 20px; }
  .expertise .section-heading > div { max-width: 100%; }
}
@media (min-width: 1201px) and (max-width: 1350px) {
  .header-inner { padding-inline: 24px; gap: 18px; }
  .site-header .brand { width: 200px; }
  .site-header nav { gap: 12px; }
}
@media (max-width: 960px) {
  .site-header .brand { width: 200px; }
}
@media (max-width: 700px) {
  .site-header .brand { width: 174px; }
  .training-grid { grid-template-columns: minmax(0, 1fr); }
  .training > .text-link { margin-bottom: 18px; }
}
/* Refinamento de identidade e interações, mantendo a escala tipográfica. */
.brand-contact { display: flex; flex-direction: column; align-items: flex-start; flex-shrink: 0; }
.site-header .brand { width: 252px; }
.brand-phone { margin: -6px 0 0 8px; color: var(--muted); font-size: 13px; line-height: 1.4; padding: 3px 0; }
.brand-phone:hover { color: var(--green); }
.button { border-radius: 9px; box-shadow: 0 2px 4px #222b2608; transition: background .2s, box-shadow .2s, transform .2s; }
.button:hover { transform: translateY(-1px); box-shadow: 0 4px 10px #222b2612; }
.button:active { transform: translateY(0); }
.menu-toggle, .dialog-top button { border-radius: 7px; }
.round-link { transition: background .2s, color .2s, border-color .2s; }
.round-link:hover { border-color: var(--green); }
.training-interface { border-radius: 8px; }
.whatsapp-floating { position: fixed; right: max(24px, env(safe-area-inset-right)); bottom: max(24px, env(safe-area-inset-bottom)); z-index: 25; display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 12px 17px; background: var(--green); color: #fff; border: 1px solid var(--green); border-radius: 26px; font-size: 14px; font-weight: 600; box-shadow: 0 3px 12px #222b2620; transition: background .2s, transform .2s; }
.whatsapp-floating:hover { background: var(--green-dark); transform: translateY(-2px); }
.footer { padding-bottom: 86px; }
@media (min-width: 961px) {
  .expertise .section-heading { grid-template-columns: 1fr 2fr; column-gap: 32px; row-gap: 0; }
  .expertise .section-heading > .eyebrow { grid-column: auto; padding-top: 8px; }
  .expertise .section-heading > div { grid-column: auto; max-width: 100%; }
  .expertise .service { grid-template-columns: 1fr 1.8fr .2fr; column-gap: 32px; }
  .expertise .service-number { font-size: 48px; line-height: 1; font-weight: 400; letter-spacing: -.06em; padding-top: 2px; }
}
@media (min-width: 701px) and (max-width: 960px) {
  .expertise .section-heading { grid-template-columns: .65fr 2fr; column-gap: 40px; }
  .expertise .section-heading > .eyebrow, .expertise .section-heading > div { grid-column: auto; }
  .expertise .section-heading > .eyebrow { padding-top: 8px; }
  .expertise .service { grid-template-columns: 72px minmax(0, 1fr) 44px; }
  .expertise .service-number { font-size: 38px; line-height: 1; letter-spacing: -.05em; }
}
@media (min-width: 1201px) and (max-width: 1350px) {
  .site-header .brand { width: 210px; }
}
@media (max-width: 960px) {
  .site-header .brand { width: 210px; }
}
@media (max-width: 700px) {
  .site-header .brand { width: 184px; }
  .brand-phone { font-size: 12px; margin-top: -4px; }
  .expertise .service { grid-template-columns: 36px minmax(0, 1fr) 44px; }
  .expertise .service-number { font-size: 26px; line-height: 1.2; letter-spacing: -.04em; }
  .whatsapp-floating { width: 50px; height: 50px; padding: 0; right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); }
  .whatsapp-floating span { display: none; }
}
/* Eixo único dos títulos e acabamento final solicitado. */
.hero-actions .button { border-radius: 11px; min-height: 50px; padding: 12px 21px; gap: 10px; box-shadow: 0 1px 3px #222b2608; }
.hero-actions .text-link { gap: 8px; }
.hero-actions .text-link:hover { text-decoration: underline; text-underline-offset: 5px; }
.hero-disciplines { text-wrap: balance; }
.hero-disciplines span { margin-inline: 10px; }
.training > .text-link { margin-bottom: 0; }
.whatsapp-floating { top: 50%; bottom: auto; right: max(8px, env(safe-area-inset-right)); width: 60px; height: 60px; min-height: 44px; padding: 0; background: transparent; border: 0; border-radius: 8px; box-shadow: none; transform: translateY(-50%); }
.whatsapp-floating img { display: block; width: 100%; height: auto; animation: whatsapp-drift 7s ease-in-out infinite; transition: scale .2s; }
.whatsapp-floating:hover { background: transparent; transform: translateY(-50%); }
.whatsapp-floating:hover img { animation-play-state: paused; scale: 1.05; }
.footer { padding-bottom: 28px; }
@keyframes whatsapp-drift { 0%, 100% { transform: translateY(-3px); } 50% { transform: translateY(3px); } }
@media (min-width: 961px) {
  .expertise, .training-section > .container { --content-axis: calc((100% - 32px) / 3); }
  .expertise .section-heading, .training-section .section-heading { grid-template-columns: var(--content-axis) minmax(0, 1fr); column-gap: 32px; }
  .expertise .service { grid-template-columns: var(--content-axis) minmax(0, 1fr) 46px; column-gap: 32px; }
}
@media (min-width: 701px) and (max-width: 1350px) {
  .whatsapp-floating { width: 44px; height: 44px; right: 0; }
  .whatsapp-floating img { width: 32px; margin-left: auto; margin-right: 4px; }
}
@media (max-width: 700px) {
  .whatsapp-floating { width: 44px; height: 44px; top: 50%; bottom: auto; right: max(2px, env(safe-area-inset-right)); }
  .whatsapp-floating img { width: 34px; margin-left: auto; }
  .hero-actions .button { width: auto; max-width: 100%; }
  .hero-actions .text-link { width: auto; }
}
/* Ajustes pontuais: fundo do cabeçalho e presença do ícone flutuante. */
.site-header { background: #f7f8f6; }
.whatsapp-floating { width: 68px; height: 68px; }
@media (min-width: 701px) and (max-width: 1350px) {
  .whatsapp-floating { width: 68px; height: 68px; }
  .whatsapp-floating img { width: 64px; }
}
@media (max-width: 700px) {
  .whatsapp-floating { width: 54px; height: 54px; }
  .whatsapp-floating img { width: 46px; }
}
/* WhatsApp acompanha a borda do container, com margem segura em telas menores. */
.whatsapp-floating { width: var(--whatsapp-side-size, 64px); height: var(--whatsapp-side-size, 64px); right: var(--whatsapp-band-right, var(--whatsapp-side-right, 8px)); top: var(--whatsapp-band-center, var(--whatsapp-region-top, 50%)); }
.whatsapp-floating img { width: 100%; margin: 0; }
@media (max-width: 960px) {
  .whatsapp-floating { width: 64px; height: 64px; right: max(20px, env(safe-area-inset-right)); }
}
@media (max-width: 700px) {
  .whatsapp-floating { width: 60px; height: 60px; right: max(12px, env(safe-area-inset-right)); }
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
