/* Home: demonstração do produto, leitura editorial e navegação acessível. */
.home-page { --hp-ink:#092b40; --hp-blue:#07659b; --hp-soft:#eff5f8; --hp-muted:#536b7b; --hp-line:#dce6ec; --hp-accent:#ffbf66; --max:1200px; color:var(--hp-ink); font-size:17px; font-weight:400; background:#fff; }
.home-page .container { width:min(calc(100% - 80px),var(--max)); }
.home-page .topbar { min-height:36px; background:#eff5f8; color:#536b7b; }
.home-page .topbar-inner { justify-content:flex-end; padding:2px 0; }
.home-page .topbar-left,.home-page .topbar-right > a { display:none; }
.home-page .topbar a { color:#25485e; }
.home-page .topbar a:hover { color:#07659b; }
.home-page .topbar .lang-switch a.is-active { color:#075d92; }
.home-page .site-header { background:#ffffffed; backdrop-filter:blur(16px); border-bottom:1px solid #e5edf2; }
.home-page .nav-inner { min-height:80px; }
.home-page .brand { font-weight:600; letter-spacing:-.05em; }
.home-page .brand small { letter-spacing:.04em; margin-left:4px; }
.home-page .nav-links { gap:28px; font-size:15px; }
.home-page .nav-cta { gap:10px; }
.home-page .nav-cta .btn { min-height:44px; border-radius:7px; font-size:11px; }
.home-page .nav-cta .btn-ghost { border-color:transparent; }
.home-page h1,.home-page h2,.home-page h3 { letter-spacing:-.035em; }
.hp-hero { background:linear-gradient(180deg,#fff 0%,#f4f8fa 50%,#eaf2f7 100%); padding:68px 0 30px; }
.hp-hero-copy { text-align:center; }
.hp-eyebrow { display:inline-flex; align-items:center; gap:10px; color:#245777; border:1px solid #d4e2eb; background:#fff; border-radius:30px; padding:7px 15px; font-size:11px; font-weight:600; letter-spacing:.11em; text-transform:uppercase; margin:0 0 24px; }
.hp-eyebrow > span { width:7px; height:7px; background:#148677; border-radius:50%; box-shadow:0 0 0 4px #14867712; }
.home-page .hp-hero h1 { font-size:clamp(44px,5.5vw,78px); line-height:1.05; font-weight:600; color:var(--hp-ink); margin:0 auto; max-width:1120px; letter-spacing:-.045em; }
.hp-hero h1 > span { display:block; color:var(--hp-blue); }
.hp-intro { max-width:680px; margin:24px auto 26px; font-size:19px; line-height:1.6; color:var(--hp-muted); }
.hp-actions { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; }
.hp-button { display:inline-flex; justify-content:center; align-items:center; gap:22px; min-height:52px; border:1px solid transparent; border-radius:8px; padding:14px 23px; font-size:15px; font-weight:600; line-height:1.3; transition:background .15s,transform .15s; }
.hp-button > span:not(.hp-play) { font-size:22px; line-height:1; }
.hp-button:hover { transform:translateY(-2px); }
.hp-button-primary { background:#075d92; color:#fff; box-shadow:0 5px 14px #075d921c; }
.hp-button-primary:hover { background:#074873; }
.hp-button-outline { color:#25485e; background:#fff; border-color:#c7d9e5; }
.hp-button-outline:hover { background:#edf5fa; }
.hp-button-accent { color:#0c2a3d; background:var(--hp-accent); }
.hp-button-accent:hover { background:#ffd08e; }
.hp-play { display:grid; place-items:center; width:23px; height:23px; border:1px solid #9eb6c6; border-radius:50%; font-size:15px; }
.hp-note { font-size:12px; color:#677f8f; margin:15px 0 0; }
.hp-product-wrap { margin-top:46px; scroll-margin-top:100px; }
.hp-product-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:13px; font-size:13px; font-weight:600; color:#31566f; }
.hp-demo-label { display:flex; gap:7px; align-items:center; font-size:11px; font-weight:400; color:#637c8d; }
.hp-demo-label i { display:block; width:5px; height:5px; background:#7998aa; border-radius:50%; }
.hp-showcase { overflow:hidden; border:1px solid #bccfdc; border-radius:14px; background:#fff; box-shadow:0 30px 70px -30px #0a375652,0 3px 10px #103d5610; }
.hp-tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); padding:0 12px; border-bottom:1px solid var(--hp-line); background:#f9fbfc; }
.hp-tabs a { display:flex; align-items:center; justify-content:center; gap:10px; padding:20px 8px 17px; color:#607889; font-size:14px; font-weight:500; border-bottom:3px solid transparent; }
.hp-tabs svg { width:20px; height:20px; flex-shrink:0; }
.hp-tabs a:hover { color:#075d92; background:#edf4f9; }
.hp-tabs a[aria-selected="true"] { color:#075d92; background:#eaf3f9; border-bottom-color:#0879b8; }
.hp-product-panel[hidden] { display:none; }
.hp-product-panel { padding:0; }
.hp-screen-caption { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:40px; padding:21px 28px; border-bottom:1px solid var(--hp-line); min-height:95px; }
.home-page .hp-screen-caption h2 { color:#173e57; font-size:23px; font-weight:500; margin:0; line-height:1.18; }
.hp-screen-caption p { color:#627888; font-size:14px; line-height:1.5; margin:0; max-width:455px; }
.hp-screen-image { display:block; position:relative; background:#e6edf3; }
.hp-screen-image picture,.hp-screen-image img { display:block; width:100%; height:auto; }
.hp-screen-image img { aspect-ratio:1200/862; object-fit:contain; }
#screen-turno .hp-screen-image { padding:16px; }
#screen-turno .hp-screen-image img { aspect-ratio:auto; }
#screen-turno .hp-enlarge { position:static; width:fit-content; margin:14px 0 0 auto; }
.hp-screen-benefits { padding:24px 28px; border-top:1px solid var(--hp-line); background:#f5f9fc; }
.hp-screen-benefits ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding:0; margin:0 0 14px; list-style:none; }
.home-page .hp-screen-benefits h3 { color:var(--hp-ink); font-size:18px; line-height:1.3; font-weight:600; margin:0 0 8px; }
.hp-screen-benefits p { color:var(--hp-muted); font-size:14px; line-height:1.5; margin:0; }
.hp-enlarge { position:absolute; right:18px; bottom:18px; display:flex; gap:26px; align-items:center; padding:11px 16px; background:#062c46ed; color:#fff; border:1px solid #526d81; border-radius:6px; font-size:12px; box-shadow:0 4px 10px #00182b25; }
.hp-maker { display:block; width:fit-content; margin:20px auto 0; font-size:12px; color:#648092; }
.hp-maker span { margin-left:8px; }
.hp-outcomes { background:#0a2d43; padding:0; }
.hp-outcome-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.hp-outcome-grid > div { display:flex; align-items:flex-start; gap:20px; padding:32px 25px 32px 0; }
.hp-outcome-grid > div + div { border-left:1px solid #305064; padding-left:30px; }
.hp-number { color:#f2ba6a; font-size:12px; padding-top:4px; }
.home-page .hp-outcomes h2 { color:#f3f7f9; font-size:19px; font-weight:500; margin:0 0 8px; letter-spacing:-.015em; }
.hp-outcomes p { color:#a6bdca; font-size:14px; line-height:1.5; margin:0; }
.hp-section { padding:96px 0; }
.hp-kicker { color:#08719d; font-size:11px; font-weight:600; letter-spacing:.13em; text-transform:uppercase; margin:0 0 17px; }
.hp-section-head { display:grid; grid-template-columns:1.15fr 1fr; align-items:end; gap:90px; margin-bottom:38px; }
.home-page .hp-section-head h2,.home-page .hp-contact h2 { font-size:clamp(32px,3.4vw,47px); line-height:1.1; font-weight:500; white-space:pre-line; margin:0; color:var(--hp-ink); }
.hp-section-head > p { font-size:17px; line-height:1.65; color:var(--hp-muted); margin:0; max-width:445px; }
.hp-overview { background:#f4f8fb; }
.hp-overview-figure { margin:0; border:1px solid #cddde8; border-radius:12px; overflow:hidden; background:#fff; }
.hp-overview-figure > a,.hp-overview-figure picture,.hp-overview-figure img { display:block; width:100%; height:auto; }
.hp-overview-figure figcaption { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:17px 22px; color:var(--hp-muted); font-size:13px; }
.hp-overview-figure figcaption a { color:var(--hp-blue); font-weight:600; }
.hp-overview-figure figcaption a span { margin-left:12px; }
.hp-cases { background:#f4f8fb; }
.hp-case-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.hp-case-card { display:flex; flex-direction:column; overflow:hidden; border:1px solid #cddde8; border-radius:12px; background:#fff; }
.hp-case-card:hover { border-color:#769fb9; }
.hp-case-image { display:grid; place-items:center; aspect-ratio:16/10; padding:10px; border-bottom:1px solid var(--hp-line); background:#eaf1f6; }
.hp-case-image picture,.hp-case-image img { display:block; width:100%; height:auto; }
.hp-case-body { display:flex; flex:1; flex-direction:column; padding:25px; }
.hp-case-tag { color:var(--hp-blue); font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.09em; }
.home-page .hp-case-body h3 { margin:14px 0 24px; font-size:25px; line-height:1.2; font-weight:500; color:var(--hp-ink); }
.hp-case-link { margin-top:auto; padding-top:17px; border-top:1px solid var(--hp-line); color:var(--hp-blue); font-size:14px; font-weight:600; }
.hp-cases-footer { display:flex; justify-content:center; margin-top:30px; }
.hp-solutions { background:#fff; }
.hp-solution-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.hp-solution { display:flex; flex-direction:column; padding:30px; border:1px solid #dae5ed; border-radius:12px; background:#fbfcfd; transition:background .15s,border-color .15s; }
.hp-solution:hover { background:#f0f6fa; border-color:#94b4c9; }
.hp-solution-label { display:flex; align-items:center; gap:13px; color:#346078; font-size:13px; font-weight:600; margin-bottom:27px; }
.hp-feature-icon { display:grid; place-items:center; width:42px; height:42px; background:#e4eff6; color:#0d6a9d; border-radius:10px; }
.hp-feature-icon svg { width:24px; height:24px; }
.hp-card-number { margin-left:auto; color:#9db3c2; font-size:12px; font-weight:400; }
.home-page .hp-solution h3 { color:#173c54; font-size:28px; line-height:1.2; font-weight:500; margin:0 0 14px; max-width:440px; }
.hp-solution > p { color:#657b89; line-height:1.6; font-size:15px; margin:0 0 27px; max-width:455px; }
.hp-solution-link { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:20px; border-top:1px solid #dee8ee; color:#076398; font-size:13px; font-weight:600; }
.hp-solution-link > span { font-size:20px; }
.hp-investigation { background:#092c42; color:#e9f2f8; }
.hp-investigation .hp-kicker { color:#83bfdc; }
.home-page .hp-investigation .hp-section-head h2 { color:#fff; }
.hp-investigation .hp-section-head > p { color:#aec6d5; }
.hp-investigation-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; margin:0 0 37px; padding:0; list-style:none; }
.hp-investigation-steps li { display:flex; gap:16px; padding-top:22px; border-top:1px solid #31566e; }
.hp-investigation-steps li > span { color:#ffc371; font-size:12px; padding-top:4px; }
.home-page .hp-investigation-steps h3 { color:#e9f2f7; font-size:19px; font-weight:500; margin:0 0 8px; }
.hp-investigation-steps p { color:#9fbdcf; font-size:14px; line-height:1.6; margin:0; }
.hp-evidence-grid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); gap:22px; align-items:stretch; }
.hp-evidence-grid figure { display:flex; flex-direction:column; margin:0; min-width:0; background:#fff; border:1px solid #7394a64d; border-radius:12px; overflow:hidden; }
.hp-evidence-label { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 21px; font-size:11px; text-transform:uppercase; letter-spacing:.09em; font-weight:600; color:#49697e; border-bottom:1px solid #dce6ed; }
.hp-evidence-label svg { width:20px; height:20px; }
.hp-flow-evidence > a { flex:1; display:flex; align-items:center; background:#f0f5f8; padding:14px; }
.hp-flow-evidence picture,.hp-flow-evidence img { display:block; width:100%; height:auto; }
.hp-paper-preview { display:flex; justify-content:center; align-items:center; background:#e9eff4; padding:24px; flex:1; min-height:0; }
.hp-paper-preview img { display:block; width:auto; height:440px; max-width:100%; object-fit:contain; box-shadow:0 7px 22px #0c304726; }
.hp-evidence-grid figcaption { padding:23px; border-top:1px solid #dbe5ec; }
.home-page .hp-evidence-grid h3 { font-size:23px; font-weight:500; color:#14394f; margin:0 0 10px; line-height:1.2; }
.hp-evidence-grid figcaption p { color:#647b8a; font-size:14px; line-height:1.5; margin:0 0 17px; }
.hp-evidence-grid figcaption a { color:#056799; font-size:13px; font-weight:600; }
.hp-proof-footer { display:flex; align-items:center; justify-content:space-between; gap:35px; margin-top:30px; }
.hp-proof-footer p { color:#9bb9cb; font-size:12px; max-width:570px; line-height:1.65; margin:0; }
.hp-proof-footer .hp-button { flex-shrink:0; }
.hp-inline-link { display:inline-flex; align-items:center; gap:20px; color:#08699c; font-size:14px; font-weight:600; padding:8px 0; }
.home-page .faq-band { padding:84px 0; background:#fff; }
.home-page .faq-band .container { display:grid; grid-template-columns:.8fr 1.2fr; gap:85px; }
.home-page .faq-band .section-head { text-align:left; margin:0; }
.home-page .faq-band .section-head h2 { color:#123c55; font-size:36px; line-height:1.14; font-weight:500; }
.home-page .faq-band .section-head > p:last-child { font-size:15px; color:#637a8a; }
.home-page .faq-list { margin:0; width:100%; }
.home-page .faq-item { border:0; border-bottom:1px solid #dbe6ed; background:transparent; border-radius:0; }
.home-page .faq-item summary { font-size:17px; font-weight:500; color:#31566d; padding-inline:0; }
.home-page .faq-answer { color:#617b8d; font-size:15px; padding-inline:0; }
.hp-contact { background:#0d344d; color:#e5eff7; }
.hp-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:start; }
.hp-contact .hp-kicker { color:#8fbad4; }
.home-page .hp-contact-copy h2 { color:#fff; font-size:47px; }
.hp-contact-copy > p:not(.hp-kicker) { color:#b6cbd9; font-size:17px; line-height:1.6; margin:25px 0; max-width:430px; }
.hp-steps { list-style:none; margin:34px 0 23px; padding:0; }
.hp-steps li { display:flex; gap:18px; padding:17px 0; border-top:1px solid #3a5b71; }
.hp-steps li > span { font-size:12px; padding-top:4px; color:#f5c076; }
.home-page .hp-steps h3 { color:#f2f7fa; font-size:19px; font-weight:500; margin:0 0 6px; }
.hp-steps p { color:#a9c3d4; font-size:14px; line-height:1.5; margin:0; }
.hp-contact-copy .hp-inline-link { color:#ffcc81; }
.hp-contact .cta-form { color:#173d54; border:1px solid #dae7ef; border-radius:14px; padding:34px; box-shadow:0 15px 40px #001d3630; background:#fff; }
.home-page .hp-contact .cta-form h2 { font-size:28px; color:#143b54; margin:0 0 14px; }
.hp-contact .cta-form input,.hp-contact .cta-form select,.hp-contact .cta-form textarea { border-radius:5px; background:#fbfdfe; }
.hp-contact .cta-form button { border-radius:6px; min-height:49px; }
.home-page .site-footer { padding-top:50px; font-size:14px; }
.home-page .footer-grid { gap:32px; }
.home-page .footer-grid > div:first-child > p:first-of-type { font-size:13px; }
#solucoes,#demonstracao,#na-pratica,#visao-integrada,#cases { scroll-margin-top:78px; }
.home-page :focus-visible { outline:2px solid #d1831a; outline-offset:4px; }
.image-preview-open { overflow:hidden; }
.hp-image-dialog { width:min(1560px,calc(100vw - 48px)); max-width:none; max-height:calc(100dvh - 48px); padding:0; border:1px solid #42647c; border-radius:10px; color:#fff; background:#081f31; box-shadow:0 24px 90px #0006; }
.hp-image-dialog::backdrop { background:#020e1de0; }
.hp-image-dialog[open] { display:flex; flex-direction:column; }
.hp-image-toolbar,.hp-image-footer { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:12px 18px; flex-shrink:0; }
.hp-image-toolbar > div { display:flex; gap:8px; }
.home-page .hp-image-toolbar h2 { font-size:17px; color:#fff; margin:0; letter-spacing:0; }
.hp-image-toolbar button { border:1px solid #7590a1; border-radius:5px; background:#193d55; color:#fff; padding:9px 14px; font:inherit; font-size:13px; cursor:pointer; white-space:nowrap; }
.hp-image-toolbar button span { margin-left:12px; font-size:20px; }
.hp-image-body { min-height:0; overflow:auto; background:#e9f0f5; overscroll-behavior:contain; }
.hp-image-body img { display:block; width:100%; max-height:calc(100dvh - 190px); height:auto; object-fit:contain; }
.hp-image-dialog.is-document .hp-image-body img { width:min(100%,1024px); margin-inline:auto; max-height:none; }
.hp-image-dialog.is-zoomed .hp-image-body img { width:auto; max-width:none; max-height:none; margin:0; }
.hp-image-footer { color:#a9c6d9; font-size:12px; }
.hp-image-footer a { color:#fff; text-decoration:underline; text-underline-offset:3px; }
.hp-image-dialog :focus-visible { outline:2px solid #ffb64c; outline-offset:3px; }
@media (max-width:1100px) {
  .home-page .nav-links { gap:20px; }
  .hp-section-head,.hp-contact-grid { gap:45px; }
  .hp-tabs a { font-size:13px; gap:7px; }
  .hp-paper-preview img { height:360px; }
}
@media (max-width:980px) {
  .home-page .container { width:calc(100% - 48px); }
  .home-page .nav-inner { min-height:72px; }
  .hp-hero { padding-top:49px; }
  .home-page .hp-hero h1 { font-size:clamp(44px,6.5vw,66px); }
  .hp-intro { font-size:18px; }
  .hp-tabs svg { width:18px; height:18px; }
  .hp-screen-caption { gap:24px; padding:18px 22px; }
  .home-page .hp-screen-caption h2 { font-size:21px; }
  .hp-outcome-grid > div { gap:13px; padding-right:19px; }
  .hp-outcome-grid > div + div { padding-left:19px; }
  .home-page .hp-outcomes h2 { font-size:17px; }
  .hp-section { padding:72px 0; }
  .hp-section-head { gap:36px; }
  .hp-case-grid { gap:15px; }
  .hp-case-body { padding:20px; }
  .home-page .hp-case-body h3 { font-size:22px; }
  .hp-solution { padding:25px; }
  .home-page .hp-solution h3 { font-size:25px; }
  .hp-evidence-grid { grid-template-columns:1.5fr 1fr; gap:16px; }
  .hp-paper-preview { padding:17px; }
  .hp-paper-preview img { height:320px; }
  .hp-evidence-grid figcaption { padding:19px; }
  .home-page .hp-evidence-grid h3 { font-size:21px; }
  .hp-contact-grid { gap:35px; }
  .home-page .hp-contact-copy h2 { font-size:37px; }
  .hp-contact .cta-form { padding:24px; }
  .home-page .faq-band .container { gap:40px; }
  .home-page .faq-band .section-head h2 { font-size:31px; }
}
@media (max-width:760px) {
  .hp-case-grid { grid-template-columns:1fr; gap:22px; }
  .hp-case-image { aspect-ratio:auto; padding:12px; }
}
@media (max-width:680px) {
  .home-page .container { width:calc(100% - 36px); }
  .home-page .nav-inner { min-height:67px; padding-block:8px; }
  .hp-hero { padding-top:36px; padding-bottom:21px; }
  .hp-eyebrow { font-size:9px; letter-spacing:.06em; padding:6px 11px; margin-bottom:20px; }
  .home-page .hp-hero h1 { font-size:clamp(37px,9.1vw,54px); line-height:1.08; }
  .hp-hero h1 > span { margin-top:5px; }
  .hp-intro { font-size:16px; line-height:1.6; margin:20px auto 23px; }
  .hp-actions { gap:10px; flex-direction:column; align-items:center; }
  .hp-actions .hp-button { width:100%; max-width:300px; }
  .hp-button { font-size:14px; padding:13px 18px; gap:15px; min-height:48px; }
  .hp-note { font-size:11px; line-height:1.5; }
  .hp-product-wrap { margin-top:31px; }
  .hp-product-heading { display:block; font-size:12px; }
  .hp-demo-label { font-size:10px; margin-top:5px; }
  .hp-showcase { border-radius:9px; }
  .hp-tabs { display:flex; overflow-x:auto; padding:0; scrollbar-width:none; }
  .hp-tabs::-webkit-scrollbar { display:none; }
  .hp-tabs a { flex:0 0 auto; font-size:12px; padding:15px 16px 12px; gap:7px; }
  .hp-tabs svg { width:17px; height:17px; }
  .hp-screen-caption { grid-template-columns:1fr; gap:8px; min-height:130px; padding:17px; }
  .home-page .hp-screen-caption h2 { font-size:20px; }
  .hp-screen-caption p { font-size:13px; line-height:1.5; }
  .hp-enlarge { right:8px; bottom:8px; padding:7px 10px; font-size:10px; gap:15px; }
  .hp-maker { font-size:11px; margin-top:16px; }
  .hp-outcome-grid { grid-template-columns:1fr; }
  .hp-outcome-grid > div,.hp-outcome-grid > div + div { padding:23px 0; border-left:0; border-bottom:1px solid #315166; gap:20px; }
  .hp-outcome-grid > div:last-child { border-bottom:0; }
  .home-page .hp-outcomes h2 { font-size:18px; }
  .hp-outcomes p { font-size:13px; }
  .hp-section { padding:52px 0; }
  .hp-section-head { grid-template-columns:1fr; gap:19px; margin-bottom:29px; }
  .hp-kicker { font-size:10px; margin-bottom:14px; }
  .home-page .hp-section-head h2,.home-page .hp-contact-copy h2 { font-size:34px; }
  .hp-section-head > p { font-size:15px; line-height:1.65; }
  .hp-overview-figure figcaption { padding:13px; font-size:11px; flex-wrap:wrap; }
  .hp-case-body { padding:23px; }
  .home-page .hp-case-body h3 { font-size:25px; }
  .hp-solution-grid { grid-template-columns:1fr; gap:15px; }
  .hp-solution { padding:23px; }
  .hp-solution-label { margin-bottom:22px; font-size:12px; }
  .home-page .hp-solution h3 { font-size:25px; }
  .hp-solution > p { font-size:14px; margin-bottom:23px; }
  .hp-investigation-steps { grid-template-columns:1fr; gap:0; margin-bottom:30px; }
  .hp-investigation-steps li { padding:18px 0; gap:18px; }
  .hp-investigation-steps p { font-size:13px; }
  .hp-evidence-grid { grid-template-columns:1fr; gap:22px; }
  .hp-paper-preview img { height:440px; }
  .hp-flow-evidence > a { padding:10px; }
  .hp-proof-footer { display:block; margin-top:24px; }
  .hp-proof-footer p { margin-bottom:22px; }
  .home-page .faq-band { padding:51px 0; }
  .home-page .faq-band .container { grid-template-columns:1fr; gap:24px; }
  .home-page .faq-item summary { font-size:16px; }
  .hp-contact-grid { grid-template-columns:1fr; gap:31px; }
  .hp-contact .cta-form { order:-1; padding:23px; }
  .home-page .hp-contact .cta-form h2 { font-size:26px; }
  .hp-contact-copy > p:not(.hp-kicker) { font-size:16px; }
  .home-page .footer-grid { gap:28px; }
  .hp-image-dialog { width:calc(100vw - 16px); max-height:calc(100dvh - 24px); }
  .hp-image-toolbar { display:block; padding:12px; }
  .hp-image-toolbar > div { margin-top:12px; justify-content:space-between; }
  .home-page .hp-image-toolbar h2 { font-size:15px; }
  .hp-image-footer { padding:10px 12px; gap:10px; flex-wrap:wrap; font-size:11px; }
}
@media (prefers-reduced-motion:reduce) {
  .hp-button,.hp-solution { transition:none; }
  .hp-button:hover { transform:none; }
}
@media (max-width:680px) {
  .hp-screen-benefits { padding:20px; }
  .hp-screen-benefits ul { grid-template-columns:1fr; gap:18px; }
}
