/* =====================================================================
   Vertevance · mobile-first layer (v127)
   Desktop (≥1024px) is untouched: every rule here sits inside a
   phone (≤600px) or tablet (601–1023px) media query.
   Principles: one idea per screen, swipe instead of scroll for
   collections, a thumb-reach action dock, nothing hidden that matters.
   ===================================================================== */

/* ---------- shared: phone + tablet ---------- */
@media (max-width:1023px){
  /* 'hidden' turns <body> into its own scroller and silently breaks every sticky element; 'clip' trims overflow without that */
  html,body{overflow-x:clip!important}

  /* the professional-area strip duplicates the HCP button in the header */
  .util{display:none!important}

  /* section jump becomes a sticky, swipeable chip bar under the header */
  .phero-jump{position:sticky!important;top:var(--m-head,68px);z-index:40;
    margin:0 -16px!important;padding:10px 16px!important;
    background:linear-gradient(180deg,rgba(14,8,40,.92),rgba(14,8,40,.78));
    -webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);
    border-bottom:1px solid rgba(255,255,255,.07);
    flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;gap:10px!important;align-items:center!important}
  .phero-jump::-webkit-scrollbar{display:none}
  .phero-jump .pj-label{display:none!important}
  .phero-jump ol{display:flex!important;flex-wrap:nowrap!important;gap:8px!important;margin:0!important;padding:0!important}
  .phero-jump li{flex:0 0 auto}
  .phero-jump a{white-space:nowrap;min-height:40px;padding:8px 14px!important;border-radius:999px!important;font-size:13.5px!important}
  .phero-jump a.is-current{background:rgba(255,255,255,.14)!important;border-color:rgba(190,198,255,.5)!important;color:#fff!important}
  .phero-jump .pj-n{display:none!important}

  /* sections anchor below the sticky header + chip bar */
  main section[id]{scroll-margin-top:calc(var(--m-head,68px) + 70px)}

  /* bottom action dock (injected by mobile.js) */
  .m-dock{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;
    display:flex;gap:8px;padding:8px;border-radius:20px;
    background:rgba(20,12,52,.78);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);
    border:1px solid rgba(170,178,255,.22);box-shadow:0 18px 40px -16px rgba(4,0,20,.9),inset 0 1px 0 rgba(255,255,255,.1);
    transform:translateY(140%);opacity:0;transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .4s ease}
  .m-dock.is-on{transform:none;opacity:1}
  .m-dock a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:14px;
    font-size:15px;font-weight:500;color:#fff;text-decoration:none}
  .m-dock .md-main{flex:1;background:linear-gradient(100deg,#3b46f5 0%,#5b3df2 45%,#8e33fb 100%);
    box-shadow:0 8px 20px -10px rgba(90,70,255,.9),inset 0 1px 0 rgba(255,255,255,.22)}
  .m-dock .md-icon{flex:0 0 48px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
  .m-dock svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  body.has-dock footer{padding-bottom:96px}
  @media (prefers-reduced-motion:reduce){ .m-dock{transition:none} }

  /* swipe rails: progress line under each rail (injected by mobile.js) */
  .m-rail-meta{display:flex;align-items:center;gap:12px;margin:12px 0 0}
  .m-rail-bar{position:relative;flex:1;height:2px;border-radius:2px;background:rgba(255,255,255,.12);overflow:hidden}
  .m-rail-bar i{position:absolute;inset:0 auto 0 0;width:20%;border-radius:2px;background:linear-gradient(90deg,#4f5bff,#2fd4c4);transition:transform .2s linear}
  .m-rail-count{font-size:12.5px;letter-spacing:.04em;color:#b9aee3;font-variant-numeric:tabular-nums;min-width:44px;text-align:right}

  /* specification tables fold into a tap-to-open panel */
  details.m-fold{margin:14px 0;border-radius:16px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);overflow:hidden}
  details.m-fold > summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;
    min-height:54px;padding:14px 18px;font-size:15px;font-weight:500;color:#fff}
  details.m-fold > summary::-webkit-details-marker{display:none}
  details.m-fold > summary::after{content:"";flex:0 0 10px;height:10px;border-right:1.6px solid #aab4ff;border-bottom:1.6px solid #aab4ff;transform:rotate(45deg) translateY(-3px);transition:transform .35s cubic-bezier(.16,1,.3,1)}
  details.m-fold[open] > summary::after{transform:rotate(-135deg) translateY(-2px)}
  details.m-fold > .spec{margin:0!important;border:0!important;border-radius:0!important}
  details.m-fold > .spec caption{display:none}
}

/* ---------- phone ---------- */
@media (max-width:600px){
  :root{--m-head:68px}
  html{-webkit-text-size-adjust:100%}

  /* calmer vertical rhythm: less padding, tighter heads */
  main > section:not(.phero){padding-top:56px!important;padding-bottom:56px!important}
  .sec-head{margin-bottom:22px!important;gap:10px!important}
  .sec-head h2{font-size:clamp(28px,8.2vw,34px)!important;line-height:1.08!important}
  .sec-head .sec-note,.sec-note{font-size:15.5px!important;line-height:1.55!important;padding-left:14px!important}

  /* page heroes: one screen, not two */
  .phero{padding-bottom:18px!important}
  .phero-card{padding:22px 20px!important;border-radius:20px!important}
  .phero-card h1{font-size:clamp(32px,9.4vw,40px)!important;line-height:1.04!important}
  .phero-card .lede,.phero-card p{font-size:15.5px!important;line-height:1.55!important}

  /* collections become horizontal swipe rails with a peek of the next card */
  .range-grid,.standard-cards,.values,.role-cards,.relay,.supply-grid,.card-grid,.mat-grid,.sessions,.prodband,.stage-detail{
    display:flex!important;flex-wrap:nowrap!important;grid-template-columns:none!important;
    overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;
    gap:12px!important;margin-left:-16px!important;margin-right:-16px!important;padding:4px 16px 6px!important;scroll-padding-inline:16px}
  .range-grid::-webkit-scrollbar,.standard-cards::-webkit-scrollbar,.values::-webkit-scrollbar,.role-cards::-webkit-scrollbar,.relay::-webkit-scrollbar,
  .supply-grid::-webkit-scrollbar,.card-grid::-webkit-scrollbar,.mat-grid::-webkit-scrollbar,.sessions::-webkit-scrollbar,.prodband::-webkit-scrollbar,.stage-detail::-webkit-scrollbar{display:none}
  .range-grid > *,.standard-cards > *,.values > *,.role-cards > *,.relay > *,.supply-grid > *,.card-grid > *,.mat-grid > *,.sessions > *,.prodband > *,.stage-detail > *{
    flex:0 0 84%!important;max-width:84%!important;min-width:0;scroll-snap-align:start;grid-column:auto!important;grid-row:auto!important;margin:0!important}

  /* product tiles: one big product per swipe */
  .range-grid > .rtile{flex-basis:78%!important;max-width:78%!important}
  .range-grid > .rtile .rt-stage,.range-grid > .rtile--hero .rt-stage,.range-grid > .rtile--wide .rt-stage{aspect-ratio:1/1!important;min-height:0!important;flex:none!important;--pad:8%}
  .rt-cap{padding:12px 14px 14px!important}
  .rt-cap b{font-size:15px!important}
  .rg-head{margin-bottom:14px!important}
  .rg-head h3{font-size:22px!important}
  .rg-head p{font-size:14.5px!important;line-height:1.55!important}
  .range-group + .range-group{margin-top:44px!important}
  /* no hover choreography on touch */
  .rtile,.rtile:hover{transform:none!important}

  /* tall photo cards: cinematic but shorter */
  .cf-stage:not(.cf-stage--sm),.sd-stage,.stage,.about-split .stage-detail img{max-height:none}
  figure.photo-card,.photo-card{aspect-ratio:4/3}

  /* HCP gateway: nine pathway links as compact rows */
  .path-hub{gap:10px!important}
  .path-hub > a{min-height:0!important;padding:14px 16px!important}

  /* forms: big targets, no zoom on focus */
  input,select,textarea{font-size:16px!important}
  .btn,button,.chip{min-height:46px}

  /* footer: one tidy column, brand first, quick links in two columns */
  .foot-nav{grid-template-columns:1fr 1fr!important;gap:22px 16px!important}
  .fnav-brand,.fnav-contact{grid-column:1/-1!important}
  .fnav-brand p{display:none}
}

/* ---------- tablet ---------- */
@media (min-width:601px) and (max-width:1023px){
  :root{--m-head:74px}
  main > section:not(.phero){padding-top:72px!important;padding-bottom:72px!important}

  /* product range: three across, the lead product spans two */
  .range-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
  .rtile--hero{grid-column:span 2!important;grid-row:span 2!important}
  .rtile--wide{grid-column:span 2!important}

  /* card collections: tidy two-up grids */
  .standard-cards,.values,.role-cards,.supply-grid,.card-grid,.mat-grid,.sessions{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .standard-cards > :last-child:nth-child(odd),.values > :last-child:nth-child(odd),.role-cards > :last-child:nth-child(odd),
  .mat-grid > :last-child:nth-child(odd),.sessions > :last-child:nth-child(odd){grid-column:1/-1}

  /* three pathway cards on the home page swipe on portrait tablets */
  .prodband{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:14px!important;margin:0 -24px!important;padding:4px 24px 6px!important}
  .prodband::-webkit-scrollbar{display:none}
  .prodband > *{flex:0 0 58%!important;scroll-snap-align:start}
}
@media (min-width:901px) and (max-width:1023px){
  .m-dock{left:auto;right:20px;width:380px}
}
@media (min-width:601px) and (max-width:1023px){
  .m-dock{left:0;right:0;margin:0 auto;max-width:560px}
}

/* phone · HCP gateway: nine pathways as compact tap rows (icon · title · line · chevron) */
@media (max-width:600px){
  .path-hub{display:flex!important;flex-direction:column!important;gap:8px!important}
  .path-hub > a,html body .path-hub > a{display:grid!important;text-align:left!important;justify-items:start;grid-template-columns:44px 1fr 18px!important;grid-template-rows:auto auto;column-gap:14px!important;row-gap:2px!important;
    align-items:center!important;padding:14px 16px!important;min-height:76px!important;border-radius:16px!important}
  .path-hub > a .ph-icon{grid-row:1/3;grid-column:1;width:44px!important;height:44px!important;margin:0!important}
  .path-hub > a .ph-tag{display:none!important}
  .path-hub > a h3{grid-column:2;grid-row:1;margin:0!important;font-size:17px!important;line-height:1.2!important}
  .path-hub > a p{grid-column:2;grid-row:2;margin:0!important;font-size:13.5px!important;line-height:1.4!important;color:#b9aee3!important;
    display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
  .path-hub > a .go{grid-column:3;grid-row:1/3;font-size:0!important;margin:0!important;justify-self:end;background:none!important}
  .path-hub > a .go .arw{margin:0!important}
}

@media (max-width:600px){
  html body .path-hub > a::before,html body .path-hub > a::after{display:none!important}
  .phero-notice{display:none!important}
  .phero-card .eyebrow{letter-spacing:.14em!important;font-size:11px!important}
  .phero-card .lede{margin-bottom:0!important}
}

/* chip bar lifted out of the hero (mobile.js) */
@media (max-width:1023px){
  .m-jump-holder{position:sticky;top:var(--m-head,68px);z-index:40;padding:0 16px!important;margin:0 auto}
  .m-jump-holder .phero-jump{position:relative!important;top:auto!important;margin:0 -16px!important}
}
@media (min-width:601px) and (max-width:1023px){
  .m-jump-holder{padding:0 24px!important}
  .m-jump-holder .phero-jump{margin:0 -24px!important;padding:10px 24px!important}
  .role-cards{grid-template-columns:1fr!important}
  .prodband > *{flex-basis:47%!important}
}

/* =====================================================================
   v128 · next-level mobile: smart header, product viewer, richer menu,
   tactile feedback, rails that arrive and invite a swipe
   ===================================================================== */
@media (max-width:1023px){
  a,button,.rtile,summary,label{-webkit-tap-highlight-color:transparent}

  /* smart header: steps aside on the way down, back on the way up */
  .masthead{transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .3s ease!important;will-change:transform}
  .m-head-off .masthead{transform:translateY(-100%)}
  .m-jump-holder{transition:transform .45s cubic-bezier(.16,1,.3,1)}
  .m-head-off .m-jump-holder{transform:translateY(calc(-1 * var(--m-head,68px)))}
  .m-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;transform-origin:0 50%;transform:scaleX(0);
    background:linear-gradient(90deg,#4f5bff,#8e33fb 60%,#2fd4c4);pointer-events:none;z-index:2}

  /* tactile press feedback */
  .rtile,.path-hub > a,.btn,.chip,.m-dock a,.mnav-list a,details.m-fold > summary,.fc-line,.m-paths a,.standard-cards > *,.card-grid > a,.relay > a{
    transition:transform .25s cubic-bezier(.16,1,.3,1),background-color .2s ease,filter .2s ease}
  .rtile:active,.path-hub > a:active,.card-grid > a:active,.relay > a:active,.fc-line:active,.m-paths a:active{transform:scale(.975)!important}
  .btn:active,.m-dock a:active,.chip:active{transform:scale(.96)!important;filter:brightness(1.12)}
  details.m-fold > summary:active{background:rgba(255,255,255,.05)}

  /* product tiles announce they open: a small expand badge */
  .rtile{cursor:zoom-in;position:relative}
  .rtile::after{content:"";position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:50%;z-index:3;pointer-events:none;
    background:rgba(16,10,44,.55) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dfe3ff' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M14 4h6v6M10 20H4v-6M20 4l-7 7M4 20l7-7'/%3E%3C/svg%3E") center/14px no-repeat;
    border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}

  /* rails: arrive with a short glide, and the first one nudges once */
  .m-wait > *{opacity:0;transform:translateX(36px)}
  .m-arrive > *{animation:mArrive .8s cubic-bezier(.16,1,.3,1) both}
  .m-arrive > :nth-child(2){animation-delay:.08s}
  .m-arrive > :nth-child(3){animation-delay:.16s}
  @keyframes mArrive{from{opacity:0;transform:translateX(36px)}to{opacity:1;transform:none}}
  .m-nudge > *{animation:mNudge 1.1s cubic-bezier(.45,0,.2,1) both!important}
  @keyframes mNudge{0%,100%{transform:none}40%{transform:translateX(-44px)}70%{transform:translateX(6px)}}

  /* feature lists inside swipe cards: three, then 'Show all' */
  ul.m-clip:not(.is-open) > li:nth-child(n+4){display:none}
  .m-more{margin:10px 0 0;padding:8px 14px;min-height:38px;border-radius:999px;border:1px solid rgba(170,178,255,.28);
    background:rgba(255,255,255,.05);color:#dfe3ff;font:500 13px/1 inherit;font-family:inherit;cursor:pointer}

  /* menu: pathway shortcuts + direct line */
  .mnav-panel{overflow-y:auto;overscroll-behavior:contain}
  .m-paths{margin:18px 0 18px}
  .m-paths-k{display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#9d92c9;margin-bottom:10px;font-family:var(--mono,ui-monospace,monospace)}
  .m-paths-row{display:flex;flex-wrap:wrap;gap:8px}
  .m-paths a{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border-radius:999px;font-size:14px;color:#fff;text-decoration:none;
    background:rgba(255,255,255,.06);border:1px solid rgba(170,178,255,.2)}
  .mnav-foot{display:flex;flex-direction:column;align-items:center;gap:8px}
  .mnav-foot .m-call{display:inline-flex;align-items:center;gap:8px;color:#dfe3ff;text-decoration:none;font-size:14px;letter-spacing:.02em;text-transform:none;min-height:40px}
  .mnav-foot .m-call svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}
  @media (max-height:760px){ .mnav-list a{padding:13px 4px!important} }

  @media (prefers-reduced-motion:reduce){
    .pv-sheet,.m-pv,.masthead,.m-jump-holder{transition:none!important}
    .m-wait > *{opacity:1;transform:none}
  }
}

/* =====================================================================
   v129 · research pass: Material 3 size classes, WCAG 2.2 fixes,
   lighter glass on phones, short-landscape mode, HCP fast lookup
   ===================================================================== */
@media (max-width:1023px){
  /* nothing sticky may cover what has focus or where an anchor lands (WCAG 2.2 · 2.4.11) */
  html{scroll-padding-top:calc(var(--m-head,68px) + 64px);scroll-padding-bottom:96px}

  /* cross-page transitions: the header stays, the page dissolves (Chrome 126+, Safari 18.2+; others just navigate) */
  @media (prefers-reduced-motion:no-preference){
    @view-transition{navigation:auto}
    .masthead{view-transition-name:masthead}
    ::view-transition-old(root),::view-transition-new(root){animation-duration:.28s}
  }

  /* reading progress runs on the compositor where supported */
  @supports (animation-timeline: scroll()){
    .m-progress{animation:mProg linear both;animation-timeline:scroll(root)}
    @keyframes mProg{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  }

  /* rail controls: previous / next buttons either side of the progress line */
  .m-rail-meta{gap:10px}
  .m-rail-btn{flex:0 0 40px;width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;
    border:1px solid rgba(170,178,255,.22);background:rgba(255,255,255,.05);color:#dfe3ff;transition:opacity .2s,transform .2s cubic-bezier(.16,1,.3,1)}
  .m-rail-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .m-rail-btn:active{transform:scale(.9)}
  .m-rail-btn[disabled]{opacity:.28;cursor:default}
  .m-rail-meta .m-rail-count{order:3;min-width:40px}
  .m-rail-meta .m-rail-btn[data-d="1"]{order:4}
  [role=region][aria-roledescription=carousel]:focus-visible{outline:2px solid #9fb0ff;outline-offset:4px;border-radius:14px}

  /* dock: menu button only where the header button is out of thumb reach (phones) */
  .m-dock .md-menu{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08);color:#fff;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;border-radius:14px;min-height:48px}
  .m-dock svg{pointer-events:none}

  /* HCP fast lookup under every product range */
  .m-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
  .m-quick a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px 8px 12px;border-radius:999px;font-size:14px;font-weight:500;color:#fff;text-decoration:none;
    background:rgba(255,255,255,.06);border:1px solid rgba(170,178,255,.24);transition:transform .2s cubic-bezier(.16,1,.3,1),background .2s}
  .m-quick a:first-child{background:linear-gradient(100deg,rgba(59,70,245,.35),rgba(142,51,251,.28));border-color:rgba(170,178,255,.4)}
  .m-quick a:active{transform:scale(.96)}
  .m-quick svg{width:18px;height:18px;fill:none;stroke:#aab4ff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

  /* forms: a quiet tick when a field is right, a copy fallback after the email hand-off */
  .field.is-ok:not(.has-error) input,.field.is-ok:not(.has-error) textarea{border-color:rgba(47,212,196,.45)!important}
  .m-copy{display:inline-flex;align-items:center;margin-top:10px;min-height:44px;padding:8px 16px;border-radius:12px;cursor:pointer;
    border:1px solid rgba(170,178,255,.3);background:rgba(255,255,255,.06);color:#fff;font:500 14px/1.3 inherit;font-family:inherit;text-align:left}

  /* reduced transparency / more contrast: solid surfaces instead of glass */
  @media (prefers-reduced-transparency:reduce),(prefers-contrast:more){
    .m-dock,.phero-jump,.mnav-panel,.masthead{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#120a36!important}
  }
}

/* ---------- compact (phones): one blurred surface at a time ----------
   backdrop-filter re-samples the page on every scrolled frame; on budget Android it costs smooth
   scrolling. Only the header keeps a light blur; every other glass panel becomes a solid tint. */
@media (max-width:600px){
  body *:not(.masthead):not(.mnav):not(.mnav-panel):not(.mnav-backdrop){-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .masthead{-webkit-backdrop-filter:blur(10px) saturate(1.2)!important;backdrop-filter:blur(10px) saturate(1.2)!important}
  .m-dock{background:rgba(22,13,58,.96)!important}
  .phero-jump{background:linear-gradient(180deg,rgba(16,9,44,.98),rgba(16,9,44,.94))!important}
  .rtile::after{background-color:rgba(16,10,44,.82)}
}
@media (min-width:601px){ .m-dock .md-menu{display:none!important} }

/* ---------- medium (601–839: iPad mini/Air portrait, unfolded foldables): single pane, two-up ---------- */
@media (min-width:601px) and (max-width:839px){
  .range-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .rtile--hero{grid-column:1/-1!important;grid-row:auto!important}
  .rtile--hero .rt-stage{aspect-ratio:16/10!important}
  .rtile--wide{grid-column:1/-1!important}
  .rtile--wide .rt-stage{aspect-ratio:16/8!important}
}
/* ---------- expanded (840–1023: iPad Pro portrait, large foldables): three-up, hero spans 2×2 ---------- */
@media (min-width:840px) and (max-width:1023px){
  .range-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .values,.supply-grid,.card-grid,.mat-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .values > :last-child:nth-child(odd),.mat-grid > :last-child:nth-child(odd){grid-column:auto}
  .prodband{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;overflow:visible!important;margin:0!important;padding:0!important}
  .prodband > *{flex:none!important}
}

/* ---------- short landscape (phones on their side): free the screen ---------- */
@media (max-height:480px) and (orientation:landscape) and (max-width:1023px){
  .m-jump-holder{display:none!important}
  html{scroll-padding-top:calc(var(--m-head,60px) + 8px)}
  .m-dock{left:auto!important;right:calc(10px + env(safe-area-inset-right))!important;bottom:10px!important;width:auto!important;max-width:none!important;margin:0!important;padding:6px!important;gap:6px!important;border-radius:16px!important}
  .m-dock a,.m-dock button{min-height:44px!important}
  .m-dock .md-main{flex:none!important;padding:0 16px;font-size:14px!important}
  .m-dock .md-icon{flex-basis:44px!important;width:44px}
  .m-dock .md-menu{display:none!important}
  main > section:not(.phero){padding-top:44px!important;padding-bottom:44px!important}
  .rtile .rt-stage{aspect-ratio:4/3!important}
}

/* v129 · every tap target at least 24px (WCAG 2.2 · 2.5.8), primary ones 44px */
@media (max-width:1023px){
  .path-cta,.back-to-top{display:inline-flex!important;align-items:center;min-height:44px}
  .foot-legal{row-gap:0!important}
  .foot-legal a{display:inline-flex;align-items:center;min-height:44px}
  .crumbs a,.breadcrumb a,nav[aria-label="Breadcrumb"] a{display:inline-flex;align-items:center;min-height:32px}
  main details > summary{min-height:44px;display:flex;align-items:center}
}
