:root{
  --aal-fluid-0: clamp(1rem, 0.97rem + 0.2vw, 1.0625rem);
  --aal-fluid-1: clamp(1.08rem, 1rem + 0.4vw, 1.28rem);
  --aal-fluid-2: clamp(1.28rem, 1.08rem + 0.95vw, 1.8rem);
  --aal-fluid-3: clamp(1.65rem, 1.18rem + 2vw, 2.9rem);
  --aal-fluid-4: clamp(2.1rem, 1.3rem + 3.5vw, 4.8rem);
  --aal-space-1: clamp(0.75rem, 0.62rem + 0.45vw, 1rem);
  --aal-space-2: clamp(1rem, 0.82rem + 0.7vw, 1.35rem);
  --aal-space-3: clamp(1.4rem, 1.05rem + 1.2vw, 2rem);
  --aal-space-4: clamp(2rem, 1.3rem + 2vw, 3rem);
}

html{
  font-size:100%;
  -webkit-text-size-adjust:100%;
}

body{
  font-size:var(--aal-fluid-0);
}

:where(.wp-site-blocks, .aal-main-shell, .aal-hero-shell, .aal-logo-panel, .wp-block-group.is-style-aal-card,
.aal-header-shell > .wp-block-group, .aal-footer-shell > .wp-block-group,
body .um .um-form, body .um .um-postmessage, body .um .um-locked-content,
body .um .um-search-area, body .um .um-member-directory-header, body .um .um-directory-body,
body .um .um-directory-foot, body .um .um-profile-body, body .um .um-profile-nav,
body .um .um-profile-navbar, body .um .um-account-side, body .um .um-account-main,
body .um .um-account-meta, body .um .um-member, body .um .um-members-intro,
body .um .um-members-pagi, body .um .um-members-pagidrop){
  container-type:inline-size;
}

:where(.wp-block-group, .wp-block-column, .wp-block-columns, .wp-block-cover, .wp-block-media-text,
.wp-block-query, .wp-block-post-content, .wp-block-navigation, .wp-block-buttons, .wp-block-button,
.um, .um * ){
  min-width:0;
  box-sizing:border-box;
}

:where(p, li, dd, dt, blockquote, figcaption, a, span, h1, h2, h3, h4, h5, h6,
.wp-block-button__link, .wp-element-button, .um .um-button, .um a.um-button, .um a.um-alt){
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}

:where(img, svg, video, canvas, iframe){
  max-inline-size:100%;
  block-size:auto;
}

:where(table){
  display:block;
  max-inline-size:100%;
  overflow-x:auto;
}

:where(.wp-block-post-content, .wp-block-post-excerpt, .wp-block-query, .um .um-form,
.um .um-account-main, .um .um-profile-body, .um .um-directory-body, .um .um-member-directory-header){
  font-size:var(--aal-fluid-0);
}

:where(.wp-block-post-content h1, .aal-main-shell h1, .um h1){
  font-size:clamp(2rem, 1.2rem + 3vw, 3.4rem);
  text-wrap:balance;
}

:where(.wp-block-post-content h2, .aal-main-shell h2, .um h2){
  font-size:clamp(1.6rem, 1.12rem + 1.9vw, 2.6rem);
  text-wrap:balance;
}

:where(.wp-block-post-content h3, .aal-main-shell h3, .um h3){
  font-size:clamp(1.3rem, 1.04rem + 1.15vw, 1.95rem);
  text-wrap:balance;
}

:where(.wp-block-post-content p, .wp-block-post-content li, .um .um-form p, .um .um-account p){
  max-inline-size:70ch;
}

:where(.aal-main-shell .wp-block-post-content, .aal-main-shell .wp-block-query, .aal-main-shell .wp-block-group,
.aal-hero-shell, .wp-block-group.is-style-aal-card){
  inline-size:100%;
}

:where(.wp-block-button .wp-element-button, .wp-block-search__button,
.um .um-button, .um input[type="submit"].um-button, .um input[type="button"].um-button,
.um input[type="button"].um-alt, .um a.um-button, .um a.um-alt, .um .um-member-directory-header input.um-do-search){
  inline-size:auto;
  max-inline-size:100%;
  min-block-size:clamp(2.7rem, 2.45rem + 0.7vw, 3.15rem);
  padding-inline:clamp(1rem, 0.82rem + 0.65vw, 1.3rem);
  white-space:normal;
  text-wrap:balance;
}

:where(.wp-block-buttons){
  row-gap:var(--aal-space-1);
}

:where(.aal-header-shell .wp-block-site-logo img, .aal-header-shell .custom-logo){
  inline-size:auto;
  max-inline-size:100%;
  block-size:auto;
}

:where(.aal-header-shell .wp-block-site-logo){
  flex:0 0 auto;
}

:where(.aal-header-shell .wp-block-site-logo a){
  display:inline-flex;
  align-items:center;
}

:where(.aal-header-shell .wp-block-site-title){
  font-size:clamp(1.1rem, 0.9rem + 0.75vw, 1.55rem);
}

:where(.aal-header-shell .wp-block-site-tagline){
  font-size:clamp(0.76rem, 0.72rem + 0.22vw, 0.9rem) !important;
}

:where(.aal-hero-shell, .wp-block-group.is-style-aal-card, .aal-logo-panel,
.um .um-form, .um .um-postmessage, .um .um-locked-content,
.um .um-search-area, .um .um-member-directory-header, .um .um-directory-body,
.um .um-directory-foot, .um .um-profile-body, .um .um-profile-nav, .um .um-profile-navbar,
.um .um-account-side, .um .um-account-main, .um .um-account-meta,
.um .um-member, .um .um-members-intro, .um .um-members-pagi, .um .um-members-pagidrop){
  padding:var(--aal-space-3);
}

:where(.aal-main-shell){
  padding-block:var(--aal-space-4) !important;
}

:where(.aal-footer-shell){
  padding-block:var(--aal-space-4) var(--aal-space-3) !important;
}

:where(.aal-header-shell){
  padding-block:var(--aal-space-1) !important;
}

:where(.um .um-form input[type="text"], .um .um-form input[type="email"], .um .um-form input[type="password"],
.um .um-form input[type="number"], .um .um-form input[type="search"], .um .um-form input[type="tel"],
.um .um-form input[type="url"], .um .um-form textarea, .um .um-form select,
.um .um-search-area input[type="search"], .um select.um-s2,
.um .select2-container--default .select2-selection--single,
.um .select2-container--default .select2-selection--multiple){
  inline-size:100%;
  min-block-size:clamp(44px, 42px + 0.35vw, 48px);
  padding-inline:clamp(0.85rem, 0.72rem + 0.4vw, 1rem);
  font-size:var(--aal-fluid-0);
}

:where(.um .um-form textarea){
  min-block-size:clamp(120px, 110px + 2vw, 150px);
}

:where(.um .um-member-photo, .um .um-profile-photo a, .um .um-profile-photo img){
  max-inline-size:100%;
}

:where(.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content){
  gap:var(--aal-space-2);
}

@media (max-width: 900px){
  :where(.aal-header-shell > .wp-block-group, .aal-footer-shell > .wp-block-group){
    padding-inline:var(--aal-space-2) !important;
  }

  :where(.wp-block-columns:not(.is-not-stacked-on-mobile)){
    gap:var(--aal-space-2);
  }
}

@media (max-width: 640px){
  :where(.aal-header-shell .wp-block-navigation__container){
    gap:0.75rem;
  }

  :where(.wp-block-buttons){
    flex-direction:column;
    align-items:stretch;
  }

  :where(.wp-block-button){
    inline-size:100%;
  }

  :where(.wp-block-button .wp-element-button, .wp-block-search__button){
    inline-size:100%;
    justify-content:center;
    display:flex;
  }

  :where(.um .um-col-alt .um-left, .um .um-col-alt .um-right, .um .um-col-alt .um-center){
    inline-size:100%;
  }
}

@container (max-width: 620px){
  :where(.aal-hero-shell h1, .aal-hero-shell h2, .wp-block-group.is-style-aal-card h2, .wp-block-group.is-style-aal-card h3,
  .um h1, .um h2, .um .um-account-title, .um .um-profile-name){
    font-size:clamp(1.2rem, 6cqi, 2rem) !important;
    line-height:1.1;
    text-wrap:balance;
  }

  :where(.aal-hero-shell p, .wp-block-group.is-style-aal-card p, .um p, .um li){
    font-size:clamp(0.94rem, 3.1cqi, 1rem);
  }

  :where(.aal-hero-shell, .wp-block-group.is-style-aal-card, .aal-logo-panel,
  .um .um-form, .um .um-postmessage, .um .um-locked-content, .um .um-search-area,
  .um .um-member-directory-header, .um .um-directory-body, .um .um-directory-foot,
  .um .um-profile-body, .um .um-profile-nav, .um .um-profile-navbar,
  .um .um-account-side, .um .um-account-main, .um .um-account-meta,
  .um .um-member, .um .um-members-intro, .um .um-members-pagi, .um .um-members-pagidrop){
    padding:var(--aal-space-2) !important;
  }

  :where(.aal-hero-shell .wp-block-buttons, .wp-block-group.is-style-aal-card .wp-block-buttons){
    flex-direction:column;
    align-items:stretch;
  }

  :where(.aal-hero-shell .wp-block-button, .wp-block-group.is-style-aal-card .wp-block-button){
    inline-size:100%;
  }

  :where(.aal-hero-shell .wp-block-button .wp-element-button, .wp-block-group.is-style-aal-card .wp-block-button .wp-element-button){
    inline-size:100%;
    justify-content:center;
    display:flex;
  }
}

@container (max-width: 460px){
  :where(.aal-header-shell .wp-block-group.alignwide){
    text-align:center;
  }

  :where(.aal-header-shell .wp-block-navigation){
    inline-size:100%;
  }

  :where(.aal-footer-shell .wp-block-columns){
    gap:var(--aal-space-2);
  }

  :where(.um .um-member-card, .um .um-member, .um .um-members-grid, .um .um-members-list){
    inline-size:100%;
  }
}
