:root{
  --aw-access-scale: 1;
  --aw-access-text-scale: 1;
  --aw-access-letter-space: 0em;
  --aw-access-line-height: 1;
  --aw-access-contrast-filter: none;
  --aw-access-saturation-filter: none;
  --aw-access-panel-width: 392px;
  --aw-access-radius: 18px;
  --aw-access-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --aw-access-blue: #1167ff;
  --aw-access-ink: #111827;
  --aw-access-muted: #667085;
  --aw-access-border: #e5eaf2;
  --aw-access-surface: #ffffff;
  --aw-access-soft: #f6f8fb;
}

body.aw-access-widget-large{
  --aw-access-scale: 1.12;
  --aw-access-panel-width: 440px;
}

body.aw-access-text-1{ --aw-access-text-scale: 1.08; }
body.aw-access-text-2{ --aw-access-text-scale: 1.16; }
body.aw-access-text-3{ --aw-access-text-scale: 1.26; }
body.aw-access-text-4{ --aw-access-text-scale: 1.38; }
body.aw-access-spacing-1{ --aw-access-letter-space: .035em; }
body.aw-access-spacing-2{ --aw-access-letter-space: .06em; }
body.aw-access-spacing-3{ --aw-access-letter-space: .085em; }
body.aw-access-spacing-4{ --aw-access-letter-space: .11em; }
body.aw-access-line-1{ --aw-access-line-height: 1.18; }
body.aw-access-line-2{ --aw-access-line-height: 1.35; }
body.aw-access-line-3{ --aw-access-line-height: 1.55; }
body.aw-access-line-4{ --aw-access-line-height: 1.75; }

body[class*="aw-access-contrast-"] .scene,
body[class*="aw-access-saturation-"] .scene,
body.aw-access-colorblind .scene,
body.aw-access-visual-profile .scene{
  filter: var(--aw-access-contrast-filter) var(--aw-access-saturation-filter);
}

body[class*="aw-access-text-"] :where(p,a,li,button,input,textarea,label,span,h1,h2,h3,h4,h5,h6):not(.aw-access-root *){
  font-size: calc(1em * var(--aw-access-text-scale)) !important;
}

body[class*="aw-access-spacing-"] :where(p,a,li,button,label,h1,h2,h3,h4,h5,h6):not(.aw-access-root *){
  letter-spacing: var(--aw-access-letter-space) !important;
}

body[class*="aw-access-line-"] :where(p,li,h1,h2,h3,h4,h5,h6):not(.aw-access-root *){
  line-height: var(--aw-access-line-height) !important;
}

body.aw-access-align-left :where(p,h1,h2,h3,h4,h5,h6,li):not(.aw-access-root *){ text-align: left !important; }
body.aw-access-align-center :where(p,h1,h2,h3,h4,h5,h6,li):not(.aw-access-root *){ text-align: center !important; }
body.aw-access-align-justify :where(p,li):not(.aw-access-root *){ text-align: justify !important; }
body.aw-access-align-right :where(p,h1,h2,h3,h4,h5,h6,li):not(.aw-access-root *){ text-align: right !important; }

body.aw-access-readable-font :where(*):not(.aw-access-root *){
  font-family: Arial, Helvetica, sans-serif !important;
}

body.aw-access-highlight-links :where(a):not(.aw-access-root *){
  color: #003cff !important;
  background: #fff59d !important;
  text-decoration: underline !important;
  text-decoration-thickness: .14em !important;
  text-underline-offset: .18em !important;
}

body.aw-access-contrast-1{ --aw-access-contrast-filter: contrast(1.28); }
body.aw-access-contrast-2{
  --aw-access-contrast-filter: contrast(1.45);
  background: #000 !important;
  color: #fff !important;
}
body.aw-access-contrast-2 :where(.scene,main,section,article,header,footer):not(.aw-access-root *){
  background-color: #000 !important;
  color: #fff !important;
}
body.aw-access-contrast-2 :where(a,button):not(.aw-access-root *){ color: #ffdf4d !important; }
body.aw-access-contrast-3{ --aw-access-contrast-filter: invert(1) hue-rotate(180deg) contrast(1.15); }
body.aw-access-saturation-1{ --aw-access-saturation-filter: saturate(.48); }
body.aw-access-saturation-2{ --aw-access-saturation-filter: saturate(1.55); }
body.aw-access-saturation-3{ --aw-access-saturation-filter: grayscale(1); }
body.aw-access-colorblind{
  --aw-access-contrast-filter: contrast(1.12);
  --aw-access-saturation-filter: saturate(.72);
}
body.aw-access-visual-profile{
  --aw-access-text-scale: 1.18;
  --aw-access-contrast-filter: contrast(1.18);
}
body.aw-access-motor-profile :where(a,button,input,textarea,select):not(.aw-access-root *){
  min-height: 44px !important;
  outline-offset: 5px !important;
}
body.aw-access-cognitive-profile :where(.orb,.cursor-dot,.cursor-ring):not(.aw-access-root *){ display: none !important; }
body.aw-access-adhd-profile::before{
  content: "";
  position: fixed;
  inset: 0;
  z-index: 9990;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(0,0,0,.66), rgba(0,0,0,0) 36%, rgba(0,0,0,0) 64%, rgba(0,0,0,.66));
  mix-blend-mode: multiply;
}
body.aw-access-stop-motion :where(*):not(.aw-access-root *),
body.aw-access-seizure-profile :where(*):not(.aw-access-root *){
  animation: none !important;
  transition: none !important;
  scroll-behavior: auto !important;
}

body.aw-access-stop-motion :where(.site-header,.section-head,.section-head > *,.services-board,.service-card,.service-card > *,.stack-lab,.stack-lab .stack-logo,.logo-slider-card,.logo-slider-track,.process-grid,.process-step,.work-reel,.work-reel-frame,.work-horizontal,.work-track,.work-track .work-card,.faq-signal-card,.faq-item,.booking-card,.footer-cta-box,.footer-col,.footer-bottom-bar,.footer-watermark span):not(.aw-access-root *),
body.aw-access-seizure-profile :where(.site-header,.section-head,.section-head > *,.services-board,.service-card,.service-card > *,.stack-lab,.stack-lab .stack-logo,.logo-slider-card,.logo-slider-track,.process-grid,.process-step,.work-reel,.work-reel-frame,.work-horizontal,.work-track,.work-track .work-card,.faq-signal-card,.faq-item,.booking-card,.footer-cta-box,.footer-col,.footer-bottom-bar,.footer-watermark span):not(.aw-access-root *),
body.aw-access-cognitive-profile :where(.site-header,.section-head,.section-head > *,.services-board,.service-card,.service-card > *,.stack-lab,.stack-lab .stack-logo,.logo-slider-card,.logo-slider-track,.process-grid,.process-step,.work-reel,.work-reel-frame,.work-horizontal,.work-track,.work-track .work-card,.faq-signal-card,.faq-item,.booking-card,.footer-cta-box,.footer-col,.footer-bottom-bar,.footer-watermark span):not(.aw-access-root *),
body.aw-access-adhd-profile :where(.site-header,.section-head,.section-head > *,.services-board,.service-card,.service-card > *,.stack-lab,.stack-lab .stack-logo,.logo-slider-card,.logo-slider-track,.process-grid,.process-step,.work-reel,.work-reel-frame,.work-horizontal,.work-track,.work-track .work-card,.faq-signal-card,.faq-item,.booking-card,.footer-cta-box,.footer-col,.footer-bottom-bar,.footer-watermark span):not(.aw-access-root *){
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
}

body.aw-access-stop-motion :where(.badge,.mark,.subhead,.hero-actions,.ticker-wrap,.headline .word span,.work-section .section-head > *,.faq-section .section-head > *,#booking .section-head > *):not(.aw-access-root *),
body.aw-access-seizure-profile :where(.badge,.mark,.subhead,.hero-actions,.ticker-wrap,.headline .word span,.work-section .section-head > *,.faq-section .section-head > *,#booking .section-head > *):not(.aw-access-root *),
body.aw-access-cognitive-profile :where(.badge,.mark,.subhead,.hero-actions,.ticker-wrap,.headline .word span,.work-section .section-head > *,.faq-section .section-head > *,#booking .section-head > *):not(.aw-access-root *),
body.aw-access-adhd-profile :where(.badge,.mark,.subhead,.hero-actions,.ticker-wrap,.headline .word span,.work-section .section-head > *,.faq-section .section-head > *,#booking .section-head > *):not(.aw-access-root *){
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
}
body.aw-access-hide-images :where(img,picture):not(.aw-access-root *){ visibility: hidden !important; }
body.aw-access-hide-images :where(.work-thumb):not(.aw-access-root *){
  background: repeating-linear-gradient(135deg, #dbeafe 0 12px, #eff6ff 12px 24px) !important;
}
body.aw-access-cursor-black,
body.aw-access-cursor-black *{ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='52' height='52' viewBox='0 0 52 52'%3E%3Cpath fill='%23000' stroke='%23fff' stroke-width='2.5' d='M8 4l34 28-16 3-8 13z'/%3E%3C/svg%3E") 8 4, auto !important; }
body.aw-access-cursor-white,
body.aw-access-cursor-white *{ cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='52' height='52' viewBox='0 0 52 52'%3E%3Cpath fill='%23fff' stroke='%23000' stroke-width='2.5' d='M8 4l34 28-16 3-8 13z'/%3E%3C/svg%3E") 8 4, auto !important; }
body.aw-access-cursor-black .cursor-dot,
body.aw-access-cursor-black .cursor-ring,
body.aw-access-cursor-white .cursor-dot,
body.aw-access-cursor-white .cursor-ring{ display: none !important; }

.aw-access-root{
  position: relative;
  z-index: 100000;
  font-family: Inter, Arial, Helvetica, sans-serif;
}

.aw-access-fab{
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 100001;
  display: grid;
  place-items: center;
  width: calc(60px * var(--aw-access-scale));
  height: calc(60px * var(--aw-access-scale));
  padding: 0;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 999px;
  background: linear-gradient(145deg, #111827, #0f172a);
  color: #fff;
  box-shadow: 0 18px 45px rgba(15,23,42,.28), inset 0 1px 0 rgba(255,255,255,.14);
  cursor: pointer;
  transform: translateZ(0);
  transition: transform .22s var(--aw-access-ease), box-shadow .22s var(--aw-access-ease), background .22s var(--aw-access-ease);
  will-change: transform;
}

.aw-access-fab:hover{
  transform: translateY(-3px) scale(1.04);
  box-shadow: 0 24px 58px rgba(15,23,42,.34), 0 0 0 8px rgba(17,103,255,.10);
}

.aw-access-fab-icon{
  width: 32px;
  height: 32px;
  fill: none;
  stroke: currentColor;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.aw-access-position-left .aw-access-fab{ left: 22px; right: auto; }
body.aw-access-widget-hidden .aw-access-fab{ display: none; }

.aw-access-panel{
  position: fixed;
  top: 0;
  right: 0;
  z-index: 100002;
  width: min(calc(var(--aw-access-panel-width) * var(--aw-access-scale)), calc(100vw - 28px));
  height: 100vh;
  height: 100dvh;
  max-height: 100vh;
  max-height: 100dvh;
  overflow-y: auto;
  overscroll-behavior: contain;
  box-sizing: border-box;
  padding: 14px 14px 14px 0;
  transform: translateX(calc(100% + 24px));
  transition: transform .3s var(--aw-access-ease);
  pointer-events: none;
  will-change: transform;
  scrollbar-width: thin;
  scrollbar-color: #c8d2df transparent;
}

.aw-access-panel::-webkit-scrollbar{ width: 8px; }
.aw-access-panel::-webkit-scrollbar-track{ background: transparent; }
.aw-access-panel::-webkit-scrollbar-thumb{
  border-radius: 999px;
  background: #c8d2df;
}

body.aw-access-position-left .aw-access-panel{
  left: 0;
  right: auto;
  padding: 14px 0 14px 14px;
  transform: translateX(calc(-100% - 24px));
}

body.aw-access-panel-open .aw-access-panel{
  transform: translateX(0);
  pointer-events: auto;
}

.aw-access-panel-shell{
  min-height: 100%;
  overflow: visible;
  overscroll-behavior: contain;
  padding: calc(18px * var(--aw-access-scale));
  border: 1px solid rgba(15,23,42,.08);
  border-radius: var(--aw-access-radius);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  color: var(--aw-access-ink);
  box-shadow: 0 28px 90px rgba(15,23,42,.22);
}

.aw-access-header,
.aw-access-field,
.aw-access-section-head,
.aw-access-toggle-row,
.aw-access-level,
.aw-access-structure-head{
  display: flex;
  align-items: center;
}

.aw-access-header{
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 16px;
}

.aw-access-title-wrap{ min-width: 0; }

.aw-access-kicker{
  display: block;
  margin-bottom: 5px;
  color: var(--aw-access-blue);
  font-size: calc(11px * var(--aw-access-scale));
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.aw-access-title{
  margin: 0;
  color: var(--aw-access-ink);
  font-size: calc(22px * var(--aw-access-scale));
  line-height: 1.1;
  letter-spacing: 0;
}

.aw-access-close{
  display: grid;
  place-items: center;
  width: calc(38px * var(--aw-access-scale));
  height: calc(38px * var(--aw-access-scale));
  padding: 0;
  border: 1px solid var(--aw-access-border);
  border-radius: 999px;
  background: #fff;
  color: #344054;
  cursor: pointer;
  transition: transform .2s var(--aw-access-ease), background .2s var(--aw-access-ease), border-color .2s var(--aw-access-ease);
}

.aw-access-close:hover{
  transform: scale(1.04);
  border-color: #c7d7fe;
  background: #eff6ff;
}

.aw-access-close-mark{
  font-size: calc(24px * var(--aw-access-scale));
  line-height: 1;
}

.aw-access-section{
  display: grid;
  gap: 10px;
  padding: 16px 0;
  border-top: 1px solid var(--aw-access-border);
}

.aw-access-section-title{
  margin: 0;
  color: var(--aw-access-ink);
  font-size: calc(14px * var(--aw-access-scale));
  line-height: 1.2;
}

.aw-access-section-note{
  margin: 3px 0 0;
  color: var(--aw-access-muted);
  font-size: calc(12px * var(--aw-access-scale));
  line-height: 1.4;
}

.aw-access-field{
  justify-content: space-between;
  gap: 10px;
}

.aw-access-field-label,
.aw-access-select-label{
  color: #344054;
  font-size: calc(13px * var(--aw-access-scale));
  font-weight: 700;
}

.aw-access-select{
  width: 100%;
  min-height: calc(42px * var(--aw-access-scale));
  padding: 0 12px;
  border: 1px solid var(--aw-access-border);
  border-radius: 12px;
  background: #fff;
  color: var(--aw-access-ink);
  font: inherit;
  font-size: calc(13px * var(--aw-access-scale));
}

.aw-access-segment{
  display: flex;
  gap: 7px;
}

.aw-access-segment-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.aw-access-profile-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.aw-access-chip,
.aw-access-profile-card,
.aw-access-toggle-row,
.aw-access-level,
.aw-access-action,
.aw-access-reset{
  min-height: calc(42px * var(--aw-access-scale));
  border: 1px solid var(--aw-access-border);
  border-radius: 13px;
  background: var(--aw-access-surface);
  color: var(--aw-access-ink);
  font: inherit;
  font-size: calc(13px * var(--aw-access-scale));
  cursor: pointer;
  transition: transform .18s var(--aw-access-ease), border-color .18s var(--aw-access-ease), background .18s var(--aw-access-ease), color .18s var(--aw-access-ease), box-shadow .18s var(--aw-access-ease);
}

.aw-access-chip{
  flex: 1;
  padding: 8px 10px;
  white-space: nowrap;
}

.aw-access-profile-card{
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 8px;
  padding: 10px;
  text-align: left;
}

.aw-access-profile-icon{
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 9px;
  background: #eef4ff;
  color: var(--aw-access-blue);
  font-weight: 900;
}

.aw-access-profile-text{
  line-height: 1.2;
}

.aw-access-toggle-row,
.aw-access-level{
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 10px 12px;
  text-align: left;
}

.aw-access-level-label{
  display: inline-flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: baseline;
  font-weight: 700;
}

.aw-access-level-value{
  color: var(--aw-access-muted);
  font-size: calc(12px * var(--aw-access-scale));
  font-weight: 700;
}

.aw-access-action{
  width: 100%;
  padding: 10px 12px;
  text-align: center;
}

.aw-access-chip:hover,
.aw-access-profile-card:hover,
.aw-access-toggle-row:hover,
.aw-access-level:hover,
.aw-access-action:hover{
  transform: translateY(-1px);
  border-color: #bcd0ff;
  background: #f4f8ff;
  box-shadow: 0 8px 18px rgba(17,103,255,.08);
}

.aw-access-chip.is-active,
.aw-access-profile-card.is-active,
.aw-access-toggle-row.is-active,
.aw-access-level.is-active,
.aw-access-action.is-active{
  border-color: rgba(17,103,255,.6);
  background: #eef5ff;
  color: #0f4fd7;
}

.aw-access-switch{
  position: relative;
  flex: 0 0 auto;
  width: 38px;
  height: 22px;
  border-radius: 999px;
  background: #d6dde8;
  transition: background .2s var(--aw-access-ease);
}

.aw-access-switch::after{
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(15,23,42,.18);
  transition: transform .2s var(--aw-access-ease);
}

.aw-access-toggle-row.is-active .aw-access-switch{ background: var(--aw-access-blue); }
.aw-access-toggle-row.is-active .aw-access-switch::after{ transform: translateX(16px); }

.aw-access-dots{
  display: inline-flex;
  gap: 4px;
}

.aw-access-dot-button{
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  cursor: pointer;
}

.aw-access-dot-button:hover{
  background: rgba(17,103,255,.08);
}

.aw-access-dot-button:focus-visible{
  outline: 3px solid rgba(17,103,255,.42);
  outline-offset: 2px;
}

.aw-access-dot{
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #ccd5e2;
  pointer-events: none;
}

.aw-access-dot.is-on{ background: var(--aw-access-blue); }

.aw-access-footer{
  display: grid;
  gap: 12px;
  padding: 16px 0 2px;
}

.aw-access-reset{
  width: 100%;
  min-height: calc(48px * var(--aw-access-scale));
  background: #111827;
  color: #fff;
  font-weight: 800;
}

.aw-access-reset:hover{
  transform: translateY(-1px);
  box-shadow: 0 16px 28px rgba(15,23,42,.22);
}

.aw-access-footer-links{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
}

.aw-access-footer-link{
  color: #667085;
  font-size: 12px;
  text-decoration: none;
}

.aw-access-footer-link:hover{ color: var(--aw-access-blue); text-decoration: underline; }

.aw-access-fab:focus-visible,
.aw-access-close:focus-visible,
.aw-access-chip:focus-visible,
.aw-access-profile-card:focus-visible,
.aw-access-toggle-row:focus-visible,
.aw-access-level:focus-visible,
.aw-access-action:focus-visible,
.aw-access-reset:focus-visible,
.aw-access-select:focus-visible,
.aw-access-footer-link:focus-visible,
.aw-access-structure-link:focus-visible{
  outline: 3px solid rgba(17,103,255,.42);
  outline-offset: 3px;
}

.aw-access-reading-guide{
  position: fixed;
  left: 0;
  right: 0;
  top: -100px;
  z-index: 99999;
  height: 4px;
  display: none;
  pointer-events: none;
  background: #facc15;
  box-shadow: 0 0 0 9999px rgba(15,23,42,.07);
}

body.aw-access-reading-guide-on .aw-access-reading-guide{ display: block; }

.aw-access-text-magnifier{
  position: fixed;
  left: 18px;
  bottom: 96px;
  z-index: 100003;
  display: none;
  max-width: min(520px, calc(100vw - 36px));
  padding: 14px 16px;
  border-radius: 16px;
  background: #111827;
  color: #fff;
  font-size: 24px;
  line-height: 1.35;
  box-shadow: 0 20px 60px rgba(15,23,42,.3);
  pointer-events: none;
}

.aw-access-structure-popover{
  position: fixed;
  right: 18px;
  bottom: 96px;
  z-index: 100003;
  width: min(360px, calc(100vw - 36px));
  max-height: min(520px, calc(100dvh - 130px));
  display: flex;
  flex-direction: column;
  overflow: hidden;
  overscroll-behavior: contain;
  padding: 14px;
  border: 1px solid var(--aw-access-border);
  border-radius: 18px;
  background: #fff;
  color: var(--aw-access-ink);
  box-shadow: 0 24px 70px rgba(15,23,42,.22);
}

.aw-access-structure-popover[hidden]{
  display: none;
}

body.aw-access-position-left .aw-access-structure-popover{
  left: 18px;
  right: auto;
}

.aw-access-structure-head{
  justify-content: space-between;
  gap: 12px;
}

.aw-access-structure-title{
  color: var(--aw-access-ink);
  font-size: 14px;
}

.aw-access-structure-close{
  width: 32px;
  height: 32px;
}

.aw-access-structure-list{
  display: grid;
  gap: 6px;
  margin-top: 12px;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 4px;
  scrollbar-width: thin;
  scrollbar-color: #c8d2df transparent;
}

.aw-access-structure-list::-webkit-scrollbar{ width: 7px; }
.aw-access-structure-list::-webkit-scrollbar-track{ background: transparent; }
.aw-access-structure-list::-webkit-scrollbar-thumb{
  border-radius: 999px;
  background: #c8d2df;
}

.aw-access-structure-link{
  display: block;
  padding: 9px 10px;
  border-radius: 11px;
  background: var(--aw-access-soft);
  color: var(--aw-access-ink);
  font-size: 13px;
  line-height: 1.25;
  text-decoration: none;
}

.aw-access-structure-link:hover{
  background: #eef5ff;
  color: #0f4fd7;
}

.aw-access-structure-meta{
  color: var(--aw-access-muted);
  font-size: 11px;
  font-weight: 800;
}

.aw-access-structure-empty{
  margin: 0;
  color: var(--aw-access-muted);
  font-size: 13px;
}

@media (max-width: 640px){
  :root{
    --aw-access-scale: 1;
    --aw-access-panel-width: 100vw;
    --aw-access-radius: 20px;
  }

  body.aw-access-widget-large{
    --aw-access-scale: 1.04;
    --aw-access-panel-width: 100vw;
  }

  .aw-access-fab{
    right: max(14px, env(safe-area-inset-right));
    bottom: max(14px, env(safe-area-inset-bottom));
    width: 54px;
    height: 54px;
    box-shadow: 0 14px 34px rgba(15,23,42,.28), inset 0 1px 0 rgba(255,255,255,.14);
  }

  body.aw-access-position-left .aw-access-fab{
    left: max(14px, env(safe-area-inset-left));
    right: auto;
  }

  .aw-access-fab-icon{
    width: 29px;
    height: 29px;
  }

  .aw-access-panel{
    top: 0;
    right: 0;
    left: auto;
    width: 100vw;
    max-width: 100vw;
    padding: max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) 8px;
    transform: translateX(100%);
  }

  body.aw-access-position-left .aw-access-panel{
    left: 0;
    right: auto;
    padding: max(8px, env(safe-area-inset-top)) 8px max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));
    transform: translateX(-100%);
  }

  body.aw-access-panel-open .aw-access-panel{
    transform: translateX(0);
  }

  .aw-access-panel-shell{
    min-height: calc(100dvh - max(8px, env(safe-area-inset-top)) - max(8px, env(safe-area-inset-bottom)));
    padding: 16px;
    border-radius: 20px;
  }

  .aw-access-header{
    position: sticky;
    top: 0;
    z-index: 2;
    margin: -16px -16px 0;
    padding: 16px 16px 14px;
    border-radius: 20px 20px 0 0;
    background: rgba(255,255,255,.94);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }

  .aw-access-kicker{
    font-size: 10px;
  }

  .aw-access-title{
    font-size: 21px;
  }

  .aw-access-close{
    width: 42px;
    height: 42px;
  }

  .aw-access-section{
    gap: 9px;
    padding: 14px 0;
  }

  .aw-access-field{
    align-items: stretch;
    flex-direction: column;
  }

  .aw-access-segment,
  .aw-access-segment-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }

  .aw-access-profile-grid{
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .aw-access-chip,
  .aw-access-profile-card,
  .aw-access-toggle-row,
  .aw-access-level,
  .aw-access-action,
  .aw-access-reset{
    min-height: 46px;
    font-size: 14px;
  }

  .aw-access-profile-card{
    grid-template-columns: 32px 1fr;
    padding: 10px 11px;
  }

  .aw-access-profile-icon{
    width: 30px;
    height: 30px;
  }

  .aw-access-level{
    align-items: flex-start;
    flex-direction: column;
  }

  .aw-access-dots{
    width: 100%;
    justify-content: space-between;
    gap: 2px;
  }

  .aw-access-dot-button{
    width: 34px;
    height: 34px;
  }

  .aw-access-switch{
    width: 44px;
    height: 26px;
  }

  .aw-access-switch::after{
    width: 20px;
    height: 20px;
  }

  .aw-access-toggle-row.is-active .aw-access-switch::after{
    transform: translateX(18px);
  }

  .aw-access-footer-links{
    display: grid;
    gap: 8px;
  }

  .aw-access-text-magnifier{
    left: 12px;
    right: 12px;
    bottom: calc(78px + env(safe-area-inset-bottom));
    max-width: none;
    font-size: 18px;
    border-radius: 14px;
  }

  .aw-access-structure-popover{
    left: 10px;
    right: 10px;
    bottom: calc(78px + env(safe-area-inset-bottom));
    width: auto;
    max-height: min(58dvh, 520px);
    padding: 12px;
    border-radius: 16px;
  }

  body.aw-access-position-left .aw-access-structure-popover{
    left: 10px;
    right: 10px;
  }

  .aw-access-structure-list{
    max-height: calc(58dvh - 62px);
  }
}

@media (max-width: 380px){
  .aw-access-panel-shell{
    padding: 14px;
  }

  .aw-access-header{
    margin: -14px -14px 0;
    padding: 14px 14px 12px;
  }

  .aw-access-title{
    font-size: 19px;
  }

  .aw-access-segment,
  .aw-access-segment-grid{
    grid-template-columns: 1fr;
  }

  .aw-access-chip{
    white-space: normal;
  }

  .aw-access-toggle-row{
    gap: 9px;
  }

  .aw-access-toggle-text{
    min-width: 0;
  }
}
