/* Mobile reading and navigation layer.
   Loaded after the shared styles so every public section behaves consistently. */

@media (max-width: 760px) {
  :root {
    --mobile-gutter: 18px;
    --mobile-section: 64px;
    --mobile-ink: #172a37;
    --mobile-muted: #526873;
    --mobile-paper: #fcfbf7;
    --mobile-line: rgba(23, 42, 55, .13);
  }

  html {
    scroll-padding-top: 76px !important;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }

  body {
    min-width: 320px;
    padding-bottom: calc(82px + env(safe-area-inset-bottom)) !important;
    overflow-x: hidden;
    color: var(--mobile-ink) !important;
    font-family: "Onest", Arial, sans-serif !important;
    font-size: 16px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
  }

  body.aa-menu-open {
    overflow: hidden;
  }

  img,
  svg,
  video {
    max-width: 100%;
  }

  /* Dimensional story: one strong visual at a time on narrow screens. */
  .aa-dimensional {
    width: 100% !important;
    padding: 72px var(--mobile-gutter) !important;
  }

  .aa-dimensional-heading {
    width: 100% !important;
    margin-bottom: 30px !important;
  }

  .aa-dimensional-heading h2 {
    margin: 10px 0 17px !important;
    font-size: clamp(34px, 9.8vw, 42px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
  }

  .aa-dimensional-heading > p:last-child {
    font-size: 15.5px !important;
    line-height: 1.62 !important;
  }

  .aa-dimensional-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .aa-dimensional-card {
    min-height: 520px !important;
    border-radius: 22px !important;
    transform: none !important;
  }

  .aa-dimensional-card-skill {
    min-height: 500px !important;
  }

  .aa-dimensional-card-person {
    min-height: 560px !important;
  }

  .aa-dimensional-copy,
  .aa-dimensional-card-person .aa-dimensional-copy {
    width: 100% !important;
    padding: 25px 22px !important;
    transform: none !important;
  }

  .aa-dimensional-label {
    min-height: 28px !important;
    padding: 6px 10px !important;
    font-size: 10px !important;
  }

  .aa-dimensional-card h3,
  .aa-dimensional-card-person h3 {
    max-width: 440px !important;
    margin: 17px 0 13px !important;
    font-size: clamp(28px, 8vw, 35px) !important;
    line-height: 1.04 !important;
  }

  .aa-dimensional-card p,
  .aa-dimensional-card-person p {
    max-width: 430px !important;
    font-size: 14.5px !important;
    line-height: 1.56 !important;
  }

  .aa-dimensional-card .aa-dimensional-copy > a {
    min-height: 42px !important;
    margin-top: 15px !important;
    padding-bottom: 1px !important;
    font-size: 12.5px !important;
  }

  .aa-dimensional-wave {
    width: min(112%, 430px) !important;
    right: -58px !important;
    bottom: -20px !important;
  }

  .aa-dimensional-rings {
    width: min(54vw, 210px) !important;
    right: -38px !important;
    bottom: 7px !important;
  }

  .aa-dimensional-portrait {
    width: 82% !important;
    height: 48% !important;
    transform: none !important;
  }

  .aa-dimensional-number {
    top: 22px !important;
    right: 20px !important;
    font-size: 58px !important;
  }

  p,
  li,
  a,
  label,
  summary,
  figcaption {
    overflow-wrap: break-word;
  }

  h1,
  h2,
  h3,
  .aa-bl-title,
  .aa-cl-title,
  .aa-art-title,
  .aa-lg-title,
  .aa-library-hero h1 {
    font-family: "Onest", Arial, sans-serif !important;
    text-wrap: balance;
  }

  a,
  button,
  input,
  select,
  textarea,
  summary {
    -webkit-tap-highlight-color: rgba(50, 96, 120, .12);
  }

  button,
  input,
  select,
  textarea {
    font: inherit;
  }

  /* Header and full-screen menu */
  .aa-nav,
  .aa-global-nav,
  .aa-finished-site .aa-nav {
    width: 100% !important;
    min-height: 64px !important;
    margin: 0 !important;
    padding: 9px 14px 9px 18px !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--mobile-line) !important;
    border-radius: 0 !important;
    background: rgba(252, 251, 247, .97) !important;
    backdrop-filter: blur(16px);
  }

  .aa-nav-logo,
  .aa-global-logo {
    min-width: 0;
    min-height: 44px;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    text-decoration: none;
  }

  .aa-nav-logo strong,
  .aa-global-logo strong,
  .aa-finished-site .aa-nav-logo strong {
    font-size: 15px !important;
    line-height: 1.15 !important;
    white-space: nowrap;
  }

  .aa-nav-logo small,
  .aa-global-logo small {
    margin-top: 3px;
    display: block !important;
    font-size: 8px !important;
    line-height: 1.2;
    letter-spacing: .06em !important;
    white-space: nowrap;
  }

  .aa-menu-button {
    width: auto !important;
    min-width: 88px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border: 1px solid rgba(50, 96, 120, .24) !important;
    border-radius: 999px !important;
    background: var(--mobile-paper) !important;
  }

  .aa-menu-button span {
    position: static !important;
    width: auto !important;
    height: auto !important;
    clip: auto !important;
    overflow: visible !important;
    color: var(--mobile-ink) !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .aa-menu-button i,
  .aa-menu-button i::before,
  .aa-menu-button i::after {
    width: 16px !important;
    height: 1.5px !important;
    background: var(--mobile-ink) !important;
  }

  .aa-menu-button[aria-expanded="true"] i {
    background: transparent !important;
  }

  .aa-nav-links,
  .aa-global-links,
  .aa-finished-site .aa-nav-links {
    position: fixed !important;
    inset: 64px 0 0 !important;
    min-height: 0 !important;
    padding: 18px var(--mobile-gutter) calc(100px + env(safe-area-inset-bottom)) !important;
    overflow-y: auto;
    align-content: start !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: var(--mobile-paper) !important;
    box-shadow: none !important;
  }

  .aa-nav-links a,
  .aa-global-links a,
  .aa-finished-site .aa-nav-links a {
    width: 100%;
    min-height: 54px;
    padding: 15px 4px !important;
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--mobile-line);
    color: var(--mobile-ink) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    letter-spacing: -.02em !important;
    text-align: left !important;
    text-transform: none !important;
  }

  .aa-nav-links .aa-nav-cta,
  .aa-global-links .aa-nav-cta,
  .aa-finished-site .aa-nav-links .aa-nav-cta {
    min-height: 52px;
    margin-top: 18px !important;
    padding: 14px 18px !important;
    justify-content: center;
    border: 1px solid var(--mobile-ink) !important;
    border-radius: 999px !important;
    background: var(--mobile-ink) !important;
    color: var(--mobile-paper) !important;
    text-align: center !important;
  }

  /* Persistent three-item dock */
  .aa-mobile-dock {
    right: 8px !important;
    bottom: max(8px, env(safe-area-inset-bottom)) !important;
    left: 8px !important;
    min-height: 66px !important;
    padding: 5px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    border: 1px solid var(--mobile-line) !important;
    border-radius: 18px !important;
    background: rgba(252, 251, 247, .97) !important;
    box-shadow: 0 12px 32px rgba(23, 42, 55, .14) !important;
    backdrop-filter: blur(18px);
  }

  .aa-mobile-dock a,
  .aa-mobile-dock .aa-mobile-dock-contact {
    min-width: 0;
    min-height: 54px !important;
    padding: 4px 2px;
    gap: 4px !important;
    border-radius: 13px !important;
    background: transparent !important;
    color: #667982 !important;
    font-size: 10px !important;
    font-weight: 650 !important;
    line-height: 1.1;
    letter-spacing: 0 !important;
  }

  .aa-mobile-dock a.is-active {
    background: #e6eeee !important;
    color: #183a51 !important;
  }

  .aa-mobile-dock svg {
    width: 21px !important;
    height: 21px !important;
  }

  /* Shared type and touch sizing */
  .aa-btn,
  .aa-cbtn,
  .aa-request-submit,
  .aa-contact-actions a,
  .aa-library-all,
  .aa-library-index a,
  .aa-seminar-back,
  .aa-bl-back,
  .aa-cl-back,
  .aa-art-back,
  .aa-lg-back {
    min-height: 48px;
  }

  .aa-kicker,
  .aa-library-kicker,
  .aa-bl-eyebrow,
  .aa-cl-eyebrow,
  .aa-art-eyebrow,
  .aa-lg-eyebrow {
    font-size: 10px !important;
    line-height: 1.35 !important;
    letter-spacing: .12em !important;
  }

  /* Home */
  .aa-finished-site .aa-calm-hero {
    min-height: 0 !important;
    padding: 32px var(--mobile-gutter) 58px !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .aa-finished-site .aa-calm-hero-copy {
    order: -1;
  }

  .aa-finished-site .aa-calm-hero h1 {
    max-width: 11ch;
    margin: 0 0 20px;
    font-size: clamp(40px, 11.2vw, 48px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.052em !important;
  }

  .aa-finished-site .aa-calm-hero-copy > p:not(.aa-kicker) {
    font-size: 16px !important;
    line-height: 1.62 !important;
  }

  .aa-finished-site .aa-calm-actions {
    margin-top: 26px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .aa-finished-site .aa-calm-actions .aa-btn {
    width: 100%;
    min-height: 52px;
    padding: 15px 18px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px !important;
    text-align: center;
  }

  .aa-finished-site .aa-calm-hero-media {
    width: calc(100% - 18px) !important;
    max-width: 390px;
    justify-self: start;
  }

  .aa-finished-site .aa-calm-hero-media img {
    max-height: 470px;
    object-fit: cover;
  }

  .aa-proof-strip {
    padding: 0 var(--mobile-gutter) !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .aa-proof-strip > div,
  .aa-proof-strip > div:first-child {
    min-height: 106px;
    padding: 20px 14px !important;
    border-right: 1px solid var(--mobile-line);
    border-bottom: 1px solid var(--mobile-line);
  }

  .aa-proof-strip > div:nth-child(2n) {
    border-right: 0;
  }

  .aa-proof-strip > div:nth-last-child(-n+2) {
    border-bottom: 0;
  }

  .aa-proof-strip strong {
    font-size: 20px !important;
    line-height: 1.15;
  }

  .aa-proof-strip span {
    font-size: 11px !important;
    line-height: 1.4;
  }

  .aa-podcast-brief {
    padding: 28px var(--mobile-gutter) !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .aa-podcast-brief > span,
  .aa-podcast-brief > strong,
  .aa-podcast-brief > p,
  .aa-podcast-brief > i {
    white-space: normal !important;
  }

  .aa-podcast-brief > strong {
    font-size: 20px !important;
    line-height: 1.25;
  }

  .aa-podcast-brief > p {
    font-size: 14px !important;
    line-height: 1.55;
  }

  .aa-podcast-brief > i {
    margin-top: 6px;
    font-size: 12px !important;
  }

  .aa-method-ticker > div {
    padding: 14px 0 !important;
  }

  .aa-method-ticker span {
    font-size: 11px !important;
  }

  .aa-finished-site .aa-calm-section,
  .aa-calm-gallery-section,
  .aa-finished-site .aa-calm-library,
  .aa-finished-site .aa-calm-contact {
    padding: var(--mobile-section) var(--mobile-gutter) !important;
  }

  .aa-finished-site .aa-calm-heading {
    margin-bottom: 34px !important;
  }

  .aa-finished-site .aa-calm-heading h2,
  .aa-finished-site .aa-calm-about h2,
  .aa-finished-site .aa-calm-library h2,
  .aa-finished-site .aa-calm-contact h2,
  .aa-finished-site .aa-brand-video h2 {
    font-size: clamp(31px, 8.8vw, 38px) !important;
    line-height: 1.06 !important;
    letter-spacing: -.04em !important;
  }

  .aa-finished-site .aa-calm-heading > p:last-child,
  .aa-finished-site .aa-calm-about > div > p:not(.aa-kicker),
  .aa-finished-site .aa-calm-library-intro > p:last-of-type {
    font-size: 15.5px !important;
    line-height: 1.67 !important;
  }

  .aa-finished-site .aa-calm-situation-grid a,
  .aa-finished-site .aa-calm-situation-grid a:nth-child(even) {
    min-height: 0 !important;
    padding: 27px 0 !important;
  }

  .aa-finished-site .aa-calm-situation-grid strong {
    font-size: 22px !important;
    line-height: 1.22;
  }

  .aa-finished-site .aa-calm-situation-grid p,
  .aa-finished-site .aa-calm-steps p,
  .aa-role-grid p {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }

  .aa-finished-site .aa-calm-process {
    grid-template-columns: 1fr !important;
    gap: 22px;
  }

  .aa-depth-model {
    display: none !important;
  }

  .aa-finished-site .aa-calm-steps li {
    min-height: 0;
    padding: 23px 0 !important;
    grid-template-columns: 38px 1fr !important;
  }

  .aa-finished-site .aa-calm-steps strong {
    font-size: 18px !important;
  }

  .aa-finished-site .aa-brand-video > a,
  .aa-calm-site .aa-brand-video > a {
    min-height: 430px !important;
    padding: 42px var(--mobile-gutter) !important;
    grid-template-columns: 1fr !important;
    gap: 32px;
    background:
      linear-gradient(0deg, rgba(16, 40, 56, .96), rgba(16, 40, 56, .46)),
      url("images/about-photo.jpg") center 44% / cover no-repeat !important;
  }

  .aa-finished-site .aa-brand-video p:last-child {
    font-size: 15px !important;
    line-height: 1.65;
  }

  .aa-video-play {
    justify-self: start;
  }

  .aa-finished-site .aa-calm-gallery {
    min-height: 0 !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: 300px 210px 250px !important;
    gap: 8px !important;
  }

  .aa-finished-site .aa-calm-gallery .is-large {
    grid: 1 / 1 / 2 / 3 !important;
  }

  .aa-finished-site .aa-calm-gallery figure:nth-child(2) {
    grid: 2 / 1 / 3 / 2 !important;
  }

  .aa-finished-site .aa-calm-gallery figure:nth-child(3) {
    grid: 2 / 2 / 3 / 3 !important;
  }

  .aa-finished-site .aa-calm-gallery figure:nth-child(4) {
    grid: 3 / 1 / 4 / 3 !important;
  }

  .aa-finished-site .aa-calm-gallery figure {
    border-radius: 14px !important;
  }

  .aa-finished-site .aa-calm-gallery figcaption {
    right: 12px;
    bottom: 11px;
    left: 12px;
    font-size: 9px !important;
    line-height: 1.35;
  }

  .aa-finished-site .aa-calm-about {
    grid-template-columns: 1fr !important;
    gap: 48px;
  }

  .aa-finished-site .aa-calm-about figure {
    width: calc(100% - 18px) !important;
    max-width: 390px;
  }

  .aa-finished-site .aa-calm-about img {
    max-height: 510px;
    object-fit: cover;
    box-shadow: 18px 18px 0 var(--finish-mist) !important;
  }

  .aa-role-grid {
    grid-template-columns: 1fr !important;
  }

  .aa-role-grid article {
    min-height: 0 !important;
    padding: 23px 20px !important;
  }

  .aa-role-grid span {
    margin-bottom: 12px !important;
  }

  .aa-role-grid strong {
    font-size: 19px !important;
  }

  .aa-finished-site .aa-calm-library {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }

  .aa-finished-site .aa-calm-library-links-four {
    grid-template-columns: 1fr !important;
  }

  .aa-finished-site .aa-calm-library-links-four a,
  .aa-finished-site .aa-library-coming {
    min-height: 0 !important;
    padding: 24px 21px !important;
    grid-column: auto !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    border-radius: 14px !important;
  }

  .aa-finished-site .aa-library-coming span {
    grid-row: auto !important;
  }

  .aa-finished-site .aa-calm-price-grid {
    grid-template-columns: 1fr 1fr !important;
  }

  .aa-finished-site .aa-calm-price-grid article {
    min-height: 145px !important;
    padding: 22px 15px !important;
  }

  .aa-finished-site .aa-calm-price-grid article:last-child {
    grid-column: 1 / 3;
  }

  .aa-finished-site .aa-calm-faq summary {
    min-height: 60px;
    padding: 18px 46px 18px 0 !important;
    display: flex;
    align-items: center;
    font-size: 16px !important;
    line-height: 1.4;
  }

  .aa-finished-site .aa-calm-faq details[open] summary,
  .aa-finished-site .aa-calm-faq details[open] p {
    padding-left: 12px !important;
  }

  /* Library */
  .aa-library-hero {
    padding: 48px var(--mobile-gutter) 54px !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .aa-library-hero h1 {
    max-width: 9ch !important;
    font-size: clamp(39px, 10.8vw, 47px) !important;
    line-height: 1.02 !important;
  }

  .aa-library-hero-copy > p:last-child {
    font-size: 16px !important;
    line-height: 1.62;
  }

  .aa-library-portrait {
    width: min(88%, 340px);
  }

  .aa-library-portrait img {
    max-height: 420px;
    object-fit: cover;
  }

  .aa-library-index {
    padding: 0 var(--mobile-gutter) 28px !important;
    grid-template-columns: 1fr !important;
  }

  .aa-library-index a {
    min-height: 52px;
    padding: 14px 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.14);
    font-size: 14px !important;
  }

  .aa-library-section,
  .aa-library-podcast,
  .aa-library-note {
    padding-right: var(--mobile-gutter) !important;
    padding-left: var(--mobile-gutter) !important;
  }

  .aa-library-section {
    padding-top: var(--mobile-section) !important;
    padding-bottom: var(--mobile-section) !important;
  }

  .aa-library-heading {
    margin-bottom: 32px !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .aa-library-heading h2,
  .aa-library-podcast h2 {
    font-size: 32px !important;
    line-height: 1.08 !important;
  }

  .aa-library-heading > p,
  .aa-library-guide-grid p,
  .aa-library-feature p,
  .aa-library-podcast p {
    font-size: 15px !important;
    line-height: 1.65 !important;
  }

  .aa-library-guide-grid,
  .aa-library-article-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .aa-library-guide-grid article {
    grid-template-columns: 1fr !important;
    border-radius: 15px !important;
    overflow: hidden;
  }

  .aa-library-guide-grid img,
  .aa-library-feature img {
    width: 100% !important;
    height: 245px !important;
    object-fit: cover;
    border-radius: 0 !important;
  }

  .aa-library-guide-grid article > div,
  .aa-library-feature > div {
    padding: 23px 20px !important;
  }

  .aa-library-guide-grid h3,
  .aa-library-feature h3 {
    font-size: 23px !important;
    line-height: 1.18 !important;
  }

  .aa-library-article-list a {
    min-height: 96px !important;
    padding: 20px 0 !important;
  }

  .aa-library-article-list strong {
    font-size: 18px !important;
    line-height: 1.3;
  }

  .aa-library-podcast {
    padding-top: 58px !important;
    padding-bottom: 58px !important;
    grid-template-columns: 1fr !important;
  }

  /* Article lists, guides, articles and legal pages */
  .aa-bl,
  .aa-cl,
  .aa-art,
  .aa-lg {
    padding: 38px var(--mobile-gutter) 72px !important;
  }

  .aa-bl-wrap,
  .aa-cl-wrap,
  .aa-art-wrap,
  .aa-lg-wrap {
    width: 100% !important;
    padding: 0 !important;
  }

  .aa-bl-back,
  .aa-cl-back,
  .aa-art-back,
  .aa-lg-back,
  .aa-seminar-back {
    margin-bottom: 28px !important;
    display: inline-flex;
    align-items: center;
    font-size: 12px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
  }

  .aa-bl-title,
  .aa-cl-title,
  .aa-art-title,
  .aa-lg-title {
    font-size: clamp(36px, 9.8vw, 43px) !important;
    line-height: 1.06 !important;
    letter-spacing: -.042em !important;
  }

  .aa-bl-sub,
  .aa-cl-sub {
    margin-bottom: 32px !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
  }

  .aa-bl-grid,
  .aa-cl-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .aa-bl-grid {
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .aa-bl-card,
  .aa-cl-main,
  .aa-cl-next-card {
    border-radius: 15px !important;
  }

  .aa-bl-card,
  .aa-bl-card:nth-child(1) {
    width: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    flex: none !important;
    scroll-snap-align: none !important;
  }

  .aa-bl-card img {
    height: 220px !important;
    border-radius: 0 !important;
  }

  .aa-bl-card-body,
  .aa-cl-body {
    padding: 22px 20px 25px !important;
  }

  .aa-bl-card-tag,
  .aa-cl-tag {
    font-size: 10px !important;
  }

  .aa-bl-card-title,
  .aa-cl-card-title {
    font-size: 23px !important;
    line-height: 1.18 !important;
  }

  .aa-bl-card-excerpt,
  .aa-cl-list li,
  .aa-cl-next-text {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }

  .aa-cl-cover {
    min-height: 270px !important;
    padding: 24px !important;
  }

  .aa-cl-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .aa-cl-actions .aa-btn {
    width: 100%;
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

  .aa-cl-meta,
  .aa-art-sources,
  .aa-form-footnote,
  .aa-contact-boundary,
  .aa-seminar-note {
    font-size: 12px !important;
    line-height: 1.6 !important;
  }

  .aa-art-meta {
    font-size: 13px !important;
    line-height: 1.5;
  }

  .aa-art-img {
    height: 250px !important;
    margin: 28px 0 32px !important;
    border-radius: 15px !important;
  }

  .aa-article-visual {
    height: auto !important;
    margin: 28px 0 34px !important;
    border-radius: 15px !important;
    overflow: hidden;
  }

  .aa-article-visual img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1200 / 760;
    object-fit: cover;
  }

  .aa-article-visual figcaption {
    padding: 12px 2px !important;
    font-size: 9px !important;
    line-height: 1.35 !important;
  }

  .aa-art-body {
    max-width: 100% !important;
    color: #334b58 !important;
    font-size: 16.5px !important;
    line-height: 1.72 !important;
  }

  .aa-art-body h2 {
    margin: 42px 0 15px !important;
    font-size: 28px !important;
    line-height: 1.16 !important;
  }

  .aa-art-body p,
  .aa-art-body ul {
    margin-bottom: 19px !important;
  }

  .aa-art-body ul {
    padding-left: 22px !important;
  }

  .aa-art-body li {
    margin-bottom: 10px;
  }

  .aa-art-lead {
    padding-left: 16px !important;
    font-size: 19px !important;
    line-height: 1.52 !important;
  }

  .aa-art-callout,
  .aa-art-checklist,
  .aa-art-cta {
    padding: 21px 18px !important;
    border-radius: 14px !important;
  }

  .aa-art-checklist li {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .aa-art-cta .aa-btn {
    min-height: 44px !important;
    display: inline-flex;
    align-items: center;
  }

  .aa-lg-body h2 {
    font-size: 25px !important;
    line-height: 1.2;
  }

  .aa-lg-body,
  .aa-lg-body p,
  .aa-lg-body li {
    font-size: 15.5px !important;
    line-height: 1.7 !important;
  }

  /* Contact form */
  .aa-contact-page,
  .aa-request-page {
    padding: 0 0 78px !important;
  }

  .aa-request-hero {
    padding: 38px var(--mobile-gutter) 58px !important;
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }

  .aa-request-intro h1 {
    font-size: clamp(40px, 11vw, 48px) !important;
    line-height: 1.02 !important;
  }

  .aa-request-intro > p:not(.aa-kicker) {
    font-size: 16px !important;
    line-height: 1.65 !important;
  }

  .aa-request-points {
    gap: 0 !important;
  }

  .aa-request-points span {
    min-height: 52px;
    padding: 13px 0 !important;
    font-size: 14px !important;
    line-height: 1.45;
  }

  .aa-request-portrait {
    width: 100% !important;
  }

  .aa-request-portrait img {
    height: auto !important;
    max-height: 430px;
    object-fit: cover;
    border-radius: 15px !important;
  }

  .aa-request-form-section {
    padding: 58px var(--mobile-gutter) 64px !important;
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  .aa-request-form-heading h2 {
    font-size: 32px !important;
    line-height: 1.1 !important;
  }

  .aa-request-form-heading > p:not(.aa-kicker) {
    font-size: 15.5px !important;
    line-height: 1.65;
  }

  .aa-request-form-wrap {
    padding: 24px 17px !important;
    border-radius: 15px !important;
  }

  .aa-request-form {
    gap: 22px !important;
  }

  .aa-form-row {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  .aa-form-field > span {
    font-size: 14px !important;
  }

  .aa-form-field input,
  .aa-form-field select,
  .aa-form-field textarea,
  .aa-seminar-form input,
  .aa-seminar-form select,
  .aa-seminar-form textarea {
    min-height: 52px;
    padding: 14px 13px !important;
    border-radius: 10px !important;
    font-size: 16px !important;
  }

  .aa-form-field textarea,
  .aa-seminar-form textarea {
    min-height: 120px;
  }

  .aa-form-field small {
    font-size: 12px !important;
  }

  .aa-form-consent {
    min-height: 48px;
    align-items: flex-start !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  .aa-form-consent input,
  .aa-seminar-form input[type="checkbox"] {
    width: 22px !important;
    min-width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    margin-top: 1px;
  }

  .aa-request-submit {
    min-height: 54px !important;
    font-size: 14px !important;
  }

  .aa-request-page .aa-contact-place,
  .aa-request-page .aa-contact-boundary {
    width: calc(100% - 36px) !important;
  }

  .aa-request-page .aa-contact-place {
    padding: 32px 0 !important;
  }

  .aa-contact-place h2 {
    font-size: 29px !important;
    line-height: 1.12;
  }

  .aa-contact-place p {
    font-size: 15px !important;
    line-height: 1.65;
  }

  .aa-contact-place a {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
  }

  /* Seminars */
  .aa-seminar-page {
    padding: 38px var(--mobile-gutter) 76px !important;
  }

  .aa-seminar-hero h1 {
    font-size: clamp(38px, 10.5vw, 46px) !important;
    line-height: 1.04 !important;
  }

  .aa-seminar-hero > p:last-child,
  .aa-seminar-card,
  .aa-seminar-card li {
    font-size: 15.5px !important;
    line-height: 1.65 !important;
  }

  .aa-seminar-grid {
    margin-top: 42px !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .aa-seminar-card {
    padding: 23px 18px !important;
    border-radius: 14px;
  }

  .aa-seminar-card h2 {
    font-size: 27px !important;
    line-height: 1.16;
  }

  .aa-seminar-form label {
    font-size: 14px;
  }

  .aa-seminar-form button {
    min-height: 54px;
  }

  /* Footer */
  .aa-brand-footer,
  .aa-inner-footer {
    padding: 34px var(--mobile-gutter) 108px !important;
    align-items: flex-start !important;
    gap: 25px !important;
  }

  .aa-brand-footer nav,
  .aa-inner-footer nav {
    width: 100%;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  .aa-brand-footer nav a,
  .aa-inner-footer nav a {
    min-height: 46px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--mobile-line);
    font-size: 13px !important;
  }

  .aa-cookie {
    right: 10px !important;
    bottom: calc(82px + env(safe-area-inset-bottom)) !important;
    left: 10px !important;
    width: auto !important;
    padding: 16px !important;
    border-radius: 14px !important;
  }
}

@media (max-width: 370px) {
  :root {
    --mobile-gutter: 15px;
  }

  .aa-nav-logo small,
  .aa-global-logo small {
    display: none !important;
  }

  .aa-finished-site .aa-calm-hero h1,
  .aa-library-hero h1,
  .aa-request-intro h1,
  .aa-bl-title,
  .aa-cl-title,
  .aa-art-title,
  .aa-lg-title,
  .aa-seminar-hero h1 {
    font-size: 36px !important;
  }

  .aa-finished-site .aa-calm-price-grid {
    grid-template-columns: 1fr !important;
  }

  .aa-finished-site .aa-calm-price-grid article:last-child {
    grid-column: auto;
  }
}
