/* ADES theme: responsive and media rules. Extracted unchanged from the original ADES design system. */
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { color-scheme: light; } }
@media (max-width: 1023px) { h1 { font-size: 46px; } h2 { font-size: 32px; } }
@media (max-width: 767px) {
  body { font-size: 16px; }
  h1 { font-size: 34px; } h2 { font-size: 27px; } h3 { font-size: 19px; }
  .lead { font-size: 17px; }
}
@media (max-width: 767px) { .section { padding: 50px 0; } .section.tight { padding: 50px 0; } .hero{ padding:50px 0!important; }}
@media (max-width: 1200px) { .g5, .g6 { grid-template-columns: repeat(3, 1fr); } .g4 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 880px) { .g2, .g3, .g4 { grid-template-columns: 1fr; } .g5, .g6 { grid-template-columns: repeat(2, 1fr); } .split, .split-7-5, .split-4-8{ grid-template-columns: 1fr;} .split{gap:20px!important;}}
@media (max-width: 440px) { .g5, .g6 { grid-template-columns: 1fr; } }
@media (max-width: 1024px) { .split, .split-7-5, .split-4-8 { gap: 36px; } .hero{ padding:60px 0; }}
@media (max-width: 520px) { .btn-row .btn { width: 100%; white-space: normal; } .dummy{width:100%;} }
@media (max-width: 1080px) { .main-nav, .header-cta .btn { display: none; } .menu-btn { display: grid; } }
@media (max-width: 900px) { .hero .split { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .hero-card { left: 16px; bottom: 16px; } }
@media (hover: hover) { .step:hover .step-tip { display: block; } }
@media (max-width: 860px) {
  .stepper { grid-template-columns: 1fr; justify-self: center; }
  .step { display: grid; grid-template-columns: 48px 1fr; gap: 0 16px; text-align: left; padding: 0 0 24px; }
  .step .dot { margin: 0; grid-row: span 3; }
  .step:not(:last-child)::after { top: 52px; bottom: 4px; left: 23px; right: auto; width: 2px; height: auto; }
  .step-btn { display: contents; text-align: left; }
  .step-tip { position: static; transform: none; width: auto; margin-top: 8px; grid-column: 2; box-shadow: none; }
  .step:hover .step-tip { display: none; }
  .step-btn[aria-expanded="true"] + .step-tip { display: block; }
  .step-panel { grid-template-columns: 1fr; padding: 24px; }
}
@media (min-width: 761px) { .flow .fbox { flex: 1 1 0; min-width: 0; } .flow .farrow { flex: none; } }
@media (max-width: 880px) { .flow { flex-direction: column; } .flow .farrow { justify-content: center; transform: rotate(90deg); align-self: center; } }
@media (max-width: 860px) { .fits { grid-template-columns: 1fr; } .fits .farrow { justify-self: center; transform: rotate(90deg); } }
@media (max-width: 520px) { .warn-list { grid-template-columns: 1fr; } }
@media (max-width: 767px) { .check-grid { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .svc-block { grid-template-columns: 1fr; padding: 24px; gap: 24px; } .svc-block.rev .svc-text { order: 0; } .svc-block .media { order: -1; } }
@media (max-width: 760px) { .duo { grid-template-columns: 1fr; } }
@media (max-width: 767px) { .pull { font-size: 24px; } }
@media (max-width: 767px) { .quote-big { font-size: 22px; } }
@media (max-width: 767px) { .ba { aspect-ratio: 4 / 3; } }
@media (max-width: 767px) { .pills { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; scrollbar-width: none; } .pill { white-space: nowrap; } }
@media (max-width: 560px) { .snap { grid-template-columns: 1fr; } }
@media (max-width: 860px) { .featured { grid-template-columns: 1fr; } .featured .f-media { min-height: 220px; } .featured .f-body { padding: 28px; } }
@media (max-width: 960px) { .article-wrap { grid-template-columns: 1fr; gap: 24px; } .toc { position: static; } }
@media (max-width: 640px) { .form-card { padding: 22px; } }
@media (max-width: 640px) { .form-grid { grid-template-columns: 1fr; } }
@media (max-width: 640px) { .choice-cards { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .newsletter { flex-direction: column; } }
@media (max-width: 767px) { .cta-band h2 { font-size: 30px; } .cta-band { padding: 72px 0; } }
@media (max-width: 900px) { .foot-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .foot-grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
  .reveal { opacity: 1; transform: none; }
}
