/* assets/public-mobile-dock-v22748.css */
/* Audio Motion Music 2.27.48 | Public mobile navigation ONLY.
   The approved client player/permissions have their own dedicated routes and styles.
   Overrides prior public dock rules intentionally, without modifying the client player. */
/* The legacy homepage playlist belonged to the former public catalogue. */
body .top-actions #headerPitch{display:none!important}
@media(max-width:760px){
  body:has(.amm-public-dock){padding-bottom:calc(95px + env(safe-area-inset-bottom))!important}
  html:has(.amm-public-dock){scroll-padding-bottom:calc(108px + env(safe-area-inset-bottom))}
  body .mobile-dock.amm-public-dock{
    position:fixed!important;
    z-index:75;
    bottom:calc(9px + env(safe-area-inset-bottom))!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-width:530px;
    margin:0 auto;
    min-height:0!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:stretch;
    column-gap:2px;
    padding:7px!important;
    border:1px solid rgba(171,198,243,.22)!important;
    border-radius:23px!important;
    background:linear-gradient(130deg,rgba(19,26,43,.97),rgba(7,16,28,.98))!important;
    box-shadow:0 12px 45px rgba(0,0,0,.46),0 0 0 1px rgba(255,255,255,.025) inset!important;
    -webkit-backdrop-filter:blur(18px)!important;
    backdrop-filter:blur(18px)!important;
    transform:translateZ(0);
  }
  body .amm-public-dock .amm-public-dock-link{
    position:relative;
    display:flex!important;
    min-width:0;
    min-height:51px!important;
    gap:3px!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:5px 2px!important;
    border:1px solid transparent!important;
    border-radius:16px;
    background:transparent!important;
    color:#aebed1!important;
    font-family:inherit;
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:0!important;
    line-height:1.1;
    text-align:center;
    text-decoration:none;
    -webkit-tap-highlight-color:transparent;
    transition:background .2s ease,color .2s ease,transform .2s ease;
  }
  body .amm-public-dock .amm-public-dock-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    height:23px;
    width:23px;
    color:inherit;
    line-height:1!important;
  }
  body .amm-public-dock .amm-public-dock-icon svg{
    display:block;width:21px;height:21px;flex:none;
    stroke:currentColor;
  }
  body .amm-public-dock .amm-public-dock-label{
    display:block;
    overflow:hidden;
    max-width:100%;
    text-overflow:ellipsis;
    font-size:10px!important;
    line-height:1.2;
    font-weight:750;
    color:inherit;
  }
  body .amm-public-dock a.is-active,
  body .amm-public-dock a[aria-current="location"]{
    color:#e9e0ff!important;
    background:linear-gradient(155deg,rgba(140,102,237,.25),rgba(108,81,177,.13))!important;
    border-color:rgba(185,151,247,.24)!important;
    box-shadow:inset 0 1px rgba(255,255,255,.06);
  }
  body .amm-public-dock a.is-active:after,
  body .amm-public-dock a[aria-current="location"]:after{display:none!important}
  body .amm-public-dock a:hover{background:rgba(157,153,237,.11)!important;color:#fff!important}
  body .amm-public-dock a:active{transform:scale(.96)}
  body .amm-public-dock a:focus-visible{
    outline:2px solid #b9a7fa!important;outline-offset:1px;
    color:#fff!important;
  }
  body:has(.amm-public-dock) .back-to-top{bottom:calc(108px + env(safe-area-inset-bottom))}
  /* If legacy player state exists, it must not cover the public dock. */
  body:has(.amm-public-dock) .mini-player{bottom:calc(100px + env(safe-area-inset-bottom))}
}
@media(max-width:360px){
  body .mobile-dock.amm-public-dock{left:6px!important;right:6px!important;padding:5px!important;column-gap:0}
  body .amm-public-dock .amm-public-dock-label{font-size:9px!important}
}
@media(min-width:761px){body .mobile-dock.amm-public-dock{display:none!important}}
@media(prefers-reduced-motion:reduce){body .amm-public-dock .amm-public-dock-link{transition:none!important}}

/* assets/public-sculpted-v22750.css */
/* AMM 2.27.50 · sculpted public experience; scope to PUBLIC homepage only.
   Client, admin, Worker, catalogue security and playback are untouched. */
:root{--amm-sculpt-blue:#91d6ff;--amm-sculpt-lilac:#c1a5ff}
#home .amm-sculpt-nav{
  --gap:12px;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:var(--gap)!important;margin:27px 0 0!important;max-width:760px!important;
  align-items:stretch!important;isolation:isolate;
}
#home .amm-sculpt-nav .amm-sculpt-card{
  --glow:rgba(117,206,255,.17);--accent:#9edbff;
  display:flex!important;flex-direction:column!important;justify-content:space-between!important;
  position:relative!important;min-width:0!important;min-height:204px!important;
  border:1px solid rgba(147,204,245,.25)!important;
  padding:18px!important;overflow:hidden!important;text-decoration:none!important;
  color:#f5f5ff!important;text-align:left!important;
  background:radial-gradient(ellipse at 90% -18%,var(--glow),transparent 62%),linear-gradient(141deg,rgba(27,36,59,.96),rgba(9,16,31,.98))!important;
  box-shadow:0 13px 30px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.1),inset 0 -1px 0 rgba(0,0,0,.35)!important;
  transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s ease,border-color .25s ease,filter .25s ease!important;
  transform:translateZ(0);contain:paint;
}
#home .amm-sculpt-nav .amm-sculpt-card::before{
  content:"";position:absolute;inset:-30% -130% auto -30%;height:70%;z-index:0;pointer-events:none;
  background:linear-gradient(115deg,transparent 18%,rgba(255,255,255,.13) 47%,rgba(255,255,255,.025) 50%,transparent 75%);
  transform:rotate(-11deg) translateX(-40%);opacity:.38;
  transition:transform .75s cubic-bezier(.25,.6,.2,1),opacity .3s;
}
#home .amm-sculpt-nav .amm-sculpt-card::after{
  content:"";position:absolute;z-index:0;pointer-events:none;top:auto;left:auto;right:-48px;bottom:-74px;
  width:173px;height:173px;border:1px solid rgba(255,255,255,.11);border-radius:37% 63% 42% 58%;
  transform:rotate(35deg);background:radial-gradient(circle at 36% 32%,var(--glow),transparent 62%);opacity:.85;
}
#home .amm-sculpt-nav .amm-sculpt-card:hover,
#home .amm-sculpt-nav .amm-sculpt-card:focus-visible{
  transform:translateY(-4px)!important;filter:brightness(1.065);
  border-color:rgba(192,179,255,.6)!important;
  box-shadow:0 22px 40px rgba(0,0,0,.4),0 0 26px var(--glow),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
#home .amm-sculpt-nav .amm-sculpt-card:hover::before,
#home .amm-sculpt-nav .amm-sculpt-card:focus-visible::before{transform:rotate(-11deg) translateX(74%);opacity:.65}
#home .amm-sculpt-nav .amm-sculpt-card:focus-visible{outline:2px solid #b8a8ff!important;outline-offset:3px}
#home .amm-sculpt-nav .amm-sculpt-card:active{transform:scale(.975)!important;transition-duration:.08s!important}
#home .amm-sculpt-nav .amm-sculpt-card--music{
  --glow:rgba(162,115,255,.26);--accent:#d6c3ff;
  grid-column:1/-1;min-height:225px!important;padding:20px 23px!important;
  border-radius:30px 8px 30px 10px!important;
  background:radial-gradient(ellipse at 96% 13%,rgba(151,99,240,.27),transparent 53%),linear-gradient(125deg,#252344,#101e35 65%,#09121d)!important;
}
#home .amm-sculpt-nav .amm-sculpt-card--work{
  border-radius:27px 9px 24px 9px!important;--glow:rgba(95,194,255,.18);--accent:#93d7ff;
  background:linear-gradient(0deg,rgba(12,23,41,.94),rgba(12,23,41,.36)),url('/assets/credits/havoc.webp') center 18%/cover!important;
}
#home .amm-sculpt-nav .amm-sculpt-card--services{
  border-radius:9px 27px 9px 27px!important;--glow:rgba(121,197,245,.17);--accent:#d5bbff;
  background:radial-gradient(circle at 95% 19%,rgba(159,118,244,.19),transparent 52%),linear-gradient(145deg,#14273a,#101324 78%)!important;
}
#home .amm-sculpt-nav .amm-sculpt-card--services::after{border-radius:2px;transform:rotate(43deg);width:185px;height:185px;bottom:-126px;right:-80px}
#home .amm-sculpt-nav .amm-sculpt-top,#home .amm-sculpt-nav .amm-sculpt-body,#home .amm-sculpt-nav .amm-sculpt-foot,#home .amm-sculpt-nav .amm-sculpt-symbol,#home .amm-sculpt-nav .amm-sculpt-copy{position:relative;z-index:1}
#home .amm-sculpt-nav .amm-sculpt-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
#home .amm-sculpt-nav .amm-sculpt-index{color:var(--accent);font-size:9px;font-weight:850;letter-spacing:.18em;line-height:1.25}
#home .amm-sculpt-nav .amm-sculpt-marker{font-size:8px;color:#ddd3ff;font-weight:850;letter-spacing:.12em;border:1px solid #9d81eb70;background:#9776de21;border-radius:99px;padding:6px 9px;white-space:nowrap}
#home .amm-sculpt-nav .amm-sculpt-mini-dot{width:7px;height:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 14px var(--accent)}
#home .amm-sculpt-nav .amm-sculpt-body{display:flex;align-items:center;gap:18px;padding:20px 0 16px}
#home .amm-sculpt-nav .amm-sculpt-copy{display:flex;flex-direction:column;gap:6px}
#home .amm-sculpt-nav .amm-sculpt-copy b{font-size:clamp(21px,3vw,30px)!important;line-height:1.03!important;letter-spacing:-.045em!important;font-weight:850!important;padding:0!important;color:#f5f4ff!important}
#home .amm-sculpt-nav .amm-sculpt-copy small{display:block!important;font-size:12px!important;line-height:1.5!important;color:#c0cada!important;max-width:360px!important;opacity:1!important;font-weight:450}
#home .amm-sculpt-nav .amm-sculpt-symbol{height:51px;width:51px;flex:0 0 51px;display:grid;place-items:center;color:var(--accent);border:1px solid rgba(206,195,255,.22);border-radius:15px;background:linear-gradient(140deg,rgba(198,172,255,.18),rgba(75,105,173,.10));box-shadow:inset 0 1px 0 rgba(255,255,255,.13)}
#home .amm-sculpt-nav .amm-sculpt-symbol--music{width:70px;height:70px;flex-basis:70px;border-radius:22px 9px 22px 9px;box-shadow:0 13px 25px rgba(79,40,152,.25),inset 0 1px rgba(255,255,255,.17)}
#home .amm-sculpt-nav .amm-sculpt-card--work>.amm-sculpt-symbol,#home .amm-sculpt-nav .amm-sculpt-card--services>.amm-sculpt-symbol{margin:16px 0 10px;width:43px;height:43px;flex:0 0 43px}
#home .amm-sculpt-nav .amm-sculpt-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:11px;border-top:1px solid rgba(228,228,255,.14)}
#home .amm-sculpt-nav .amm-sculpt-foot>span:first-child{font-size:9px;color:#b4bfd5;font-weight:800;letter-spacing:.09em;line-height:1.3}
#home .amm-sculpt-nav .amm-sculpt-arrow{display:grid;place-items:center;width:29px;height:29px;border-radius:10px;background:rgba(218,200,255,.14);border:1px solid rgba(232,219,255,.24);color:#e6d9ff;font-size:17px;flex:none;transition:transform .23s ease,background .23s}
#home .amm-sculpt-nav .amm-sculpt-card:hover .amm-sculpt-arrow{transform:translate(2px,-2px);background:rgba(218,200,255,.25)}
/* Services: genuine selectable tabs, visually varied geometry rather than six indistinguishable rows. */
#services .services-intro{margin-bottom:25px!important}
#services .services-intro h2{font-size:clamp(39px,5.7vw,73px);line-height:.98!important;max-width:850px}
#services .service-stage{border:1px solid rgba(134,169,232,.17)!important;box-shadow:0 24px 65px rgba(0,0,0,.33),inset 0 1px rgba(255,255,255,.05)!important;background:linear-gradient(135deg,#121a2b,#050b17)!important}
#services .service-menu{gap:9px!important;background:radial-gradient(circle at 0 0,rgba(99,87,169,.10),transparent 70%),#0b111f!important}
#services .service-tab{
  position:relative;overflow:hidden;isolation:isolate;min-height:79px!important;
  border:1px solid rgba(148,179,241,.14)!important;
  background:linear-gradient(135deg,rgba(29,39,62,.80),rgba(14,22,36,.73))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.04);
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease!important;
}
#services .service-tab:nth-child(6n+1){border-radius:20px 7px 20px 7px!important}
#services .service-tab:nth-child(6n+2){border-radius:7px 20px 8px 20px!important}
#services .service-tab:nth-child(6n+3){border-radius:9px 9px 24px 9px!important}
#services .service-tab:nth-child(6n+4){border-radius:22px 9px 9px 9px!important}
#services .service-tab:nth-child(6n+5){border-radius:10px 24px 10px 24px!important}
#services .service-tab:nth-child(6n+6){border-radius:20px 9px 20px 9px!important}
#services .service-tab::before{content:"";position:absolute;z-index:-1;inset:0 auto 0 0;width:3px;background:linear-gradient(#96d6ff,#b99dff);opacity:.22;transition:opacity .2s ease,width .2s ease}
#services .service-tab.active{border-color:rgba(194,172,255,.50)!important;background:linear-gradient(130deg,rgba(99,79,155,.26),rgba(30,38,68,.80))!important;box-shadow:0 8px 20px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.11)!important}
#services .service-tab.active::before{opacity:1;width:4px}
#services .service-tab:hover{border-color:rgba(168,199,255,.40)!important;transform:translateY(-2px)}
#services .service-tab:focus-visible{outline:2px solid #bda9ff;outline-offset:2px}
#services .service-num{display:flex;flex-direction:column;gap:5px;align-items:center;font-size:10px!important;color:#96b8d9!important}
#services .service-num>span{font-size:22px;line-height:1.1;color:#b8a8ff}
#services .service-tab b{font-size:clamp(12px,1.25vw,17px)!important;line-height:1.18}
#services .service-tab small{font-size:11px!important;line-height:1.35!important;color:#9caec3!important}
#services .service-screen{background:#0a101e}
#services .service-detail{background:radial-gradient(ellipse at 94% 0,rgba(121,84,218,.14),transparent 48%),#080e1b}
#services .service-actions .primary{background:linear-gradient(120deg,#a7d8ff,#b6a6fb)!important;color:#0b1326!important}
/* Let the dock sit above content without concealing click targets. */
@media(max-width:1040px){#services .service-stage{grid-template-columns:1fr}}
@media(max-width:760px){
  #home .amm-sculpt-nav{gap:10px!important;margin-top:22px!important}
  #home .amm-sculpt-nav .amm-sculpt-card{padding:15px!important;min-height:210px!important}
  #home .amm-sculpt-nav .amm-sculpt-card--music{min-height:203px!important;padding:17px 19px!important}
  #home .amm-sculpt-nav .amm-sculpt-copy b{font-size:clamp(18px,5vw,24px)!important}
  #home .amm-sculpt-nav .amm-sculpt-card--music .amm-sculpt-copy b{font-size:clamp(24px,6vw,31px)!important}
  #home .amm-sculpt-nav .amm-sculpt-copy small{font-size:11px!important;line-height:1.4!important}
  #home .amm-sculpt-nav .amm-sculpt-card--work,#home .amm-sculpt-nav .amm-sculpt-card--services{min-height:228px!important}
  #services .service-menu{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:11px!important;gap:9px!important}
  #services .service-tab{grid-template-columns:1fr!important;grid-template-rows:auto 1fr!important;align-items:start!important;min-height:124px!important;padding:13px!important;gap:9px!important}
  #services .service-tab>span:nth-child(2){align-self:end;min-width:0}
  #services .service-tab i{display:none!important}
  #services .service-num{flex-direction:row;justify-content:space-between;align-items:center;width:100%}
  #services .service-num>span{font-size:20px}
  #services .service-tab b{font-size:clamp(13px,3.8vw,17px)!important}
  #services .service-tab small{font-size:10px!important;line-height:1.3!important}
  #services .service-visual-frame{min-height:240px}
  #services .service-detail{padding:25px 19px}
  #services .service-flow{scroll-padding:18px;scroll-snap-type:x mandatory}
  #services .service-flow span{scroll-snap-align:start}
  #services{scroll-margin-top:82px}
  #home .hero-actions .primary,#home .hero-actions .secondary{min-height:50px;align-items:center}
}
@media(max-width:390px){
  #home .amm-sculpt-nav{width:calc(100vw - 30px)!important;max-width:calc(100vw - 30px)!important;min-width:0!important}
  #home .amm-sculpt-nav .amm-sculpt-card{padding:12px!important}
  #home .amm-sculpt-nav .amm-sculpt-card--music{padding:16px!important}
  #home .amm-sculpt-nav .amm-sculpt-body{gap:13px}
  #home .amm-sculpt-nav .amm-sculpt-symbol--music{width:54px;height:54px;flex-basis:54px}
  #home .amm-sculpt-nav .amm-sculpt-copy b{font-size:18px!important}
  #home .amm-sculpt-nav .amm-sculpt-card--music .amm-sculpt-copy b{font-size:23px!important}
  #home .amm-sculpt-nav .amm-sculpt-copy small{font-size:10px!important}
  #home .amm-sculpt-nav .amm-sculpt-foot>span:first-child{font-size:8px}
  #services .service-tab{min-height:118px!important;padding:11px!important}
}
@media(prefers-reduced-motion:reduce){
  #home .amm-sculpt-nav .amm-sculpt-card,#home .amm-sculpt-nav .amm-sculpt-card::before,
  #home .amm-sculpt-nav .amm-sculpt-arrow,#services .service-tab{transition:none!important}
  #home .amm-sculpt-nav .amm-sculpt-card:hover,#services .service-tab:hover{transform:none!important}
}

/* assets/public-mobile-first-v22751.css */
/* AMM 2.27.51 - mobile-first public legibility and app installation.
   Scoped to the public homepage. Private client/worker/admin unaffected. */
#ammInstallBtn{display:inline-flex;align-items:center;justify-content:center;gap:10px;
 min-height:45px;max-width:100%;padding:11px 17px;border-radius:15px;
 border:1px solid rgba(177,166,255,.32);color:#e6dcff;
 background:linear-gradient(135deg,rgba(126,92,205,.19),rgba(48,91,130,.17));
 box-shadow:inset 0 1px rgba(255,255,255,.11),0 10px 28px rgba(0,0,0,.11);
 font-family:inherit;font-size:14px;font-weight:700;line-height:1.3;cursor:pointer;transition:transform .19s,border-color .19s,background .19s}
#ammInstallBtn:hover{border-color:rgba(196,175,255,.65);background:rgba(128,89,221,.25)}
#ammInstallBtn:active{transform:scale(.98)}
#ammInstallBtn:focus-visible,#ammInstallDialog button:focus-visible{outline:3px solid #a9dcff;outline-offset:3px}
#ammInstallBtn svg{width:20px;height:20px;flex:none}
.amm-install-spot{margin:15px 0 5px;display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.amm-install-spot .amm-install-note{font-size:13px;color:#9bb2c7}
#ammInstallDialog{color:#ecf1ff;width:min(520px,calc(100vw - 28px));max-height:calc(100dvh - 35px);
 padding:26px 22px;border-radius:24px;border:1px solid rgba(180,160,255,.44);
 background:radial-gradient(circle at 100% 0,rgba(106,78,197,.25),transparent 58%),#101827;
 box-shadow:0 24px 95px rgba(0,0,0,.8);overflow:auto}
#ammInstallDialog::backdrop{background:rgba(0,4,12,.83);backdrop-filter:blur(7px)}
#ammInstallDialog h2{color:#f2f3ff;font-size:clamp(26px,6vw,35px);letter-spacing:-.035em;line-height:1.1;margin:10px 0}
#ammInstallDialog p,#ammInstallDialog li{color:#d0def0;font-size:16px;line-height:1.55}
#ammInstallDialog ol{padding-left:24px;display:grid;gap:9px;margin:15px 0 21px}
#ammInstallDialog .amm-app-dialog-actions{display:flex;justify-content:flex-end}
#ammInstallDialog button{font-family:inherit;font-size:15px;font-weight:700;line-height:1.25;border-radius:12px;border:1px solid rgba(194,184,255,.5);
 padding:11px 19px;background:linear-gradient(130deg,#b3dfff,#c4afff);color:#10152a;cursor:pointer}
#ammInstallDialog .amm-install-mark{font-size:11px;letter-spacing:.17em;color:#b7a9ff;font-weight:900}
.amm-app-install-hidden{display:none!important}
@media(max-width:760px){
 html{-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
 /* The old release intentionally shrank service labels to 10px. Replace those values. */
 .topbar .brand-type strong{font-size:13px!important;letter-spacing:.105em!important}
 .topbar .brand-type small{font-size:11px!important;letter-spacing:.22em!important}
 .topbar #headerAskAmm{font-size:14px!important;min-height:45px!important;padding:10px 14px!important}
 #home .eyebrow,#services .eyebrow{font-size:13px!important;line-height:1.4!important;letter-spacing:.17em!important}
 #home .lede{font-size:clamp(17px,4.3vw,21px)!important;line-height:1.46!important}
 #home .trust-row span{font-size:12px!important;line-height:1.3!important;min-height:29px;display:inline-flex;align-items:center}
 #home .hero-actions a{font-size:15px!important;line-height:1.25!important;min-height:56px!important}
 #home .amm-sculpt-nav .amm-sculpt-card--music{min-height:235px!important;padding:20px!important}
 #home .amm-sculpt-nav .amm-sculpt-card--work,#home .amm-sculpt-nav .amm-sculpt-card--services{min-height:222px!important}
 #home .amm-sculpt-nav .amm-sculpt-index{font-size:11px!important;letter-spacing:.1em!important}
 #home .amm-sculpt-nav .amm-sculpt-marker{font-size:10px!important;white-space:normal!important;text-align:right!important}
 #home .amm-sculpt-nav .amm-sculpt-copy b{font-size:clamp(19px,5vw,25px)!important;line-height:1.08!important}
 #home .amm-sculpt-nav .amm-sculpt-card--music .amm-sculpt-copy b{font-size:clamp(26px,6.3vw,32px)!important}
 #home .amm-sculpt-nav .amm-sculpt-copy small{font-size:14px!important;line-height:1.44!important}
 #home .amm-sculpt-nav .amm-sculpt-foot>span:first-child{font-size:11px!important;letter-spacing:.055em!important}
 #home .amm-sculpt-nav .amm-sculpt-arrow{width:36px;height:36px;font-size:21px!important}
 #services .services-intro>p{font-size:16px!important;line-height:1.56!important}
 #services .service-menu{gap:10px!important;padding:13px!important}
 #services .service-tab{min-height:168px!important;padding:16px!important;gap:12px!important}
 #services .service-tab b{font-size:clamp(17px,4.25vw,21px)!important;line-height:1.25!important;overflow-wrap:break-word}
 #services .service-tab small{font-size:13px!important;line-height:1.4!important;color:#c3cbdc!important}
 #services .service-num{font-size:12px!important}
 #services .service-num>span{font-size:25px!important}
 #services .service-detail p,#services .service-screen p{font-size:16px!important;line-height:1.55!important}
 body .amm-public-dock .amm-public-dock-link{min-height:62px!important;gap:4px!important}
 body .amm-public-dock .amm-public-dock-label{font-size:12px!important;line-height:1.2!important}
 body .amm-public-dock .amm-public-dock-icon{height:27px;width:27px}
 body .amm-public-dock .amm-public-dock-icon svg{width:24px;height:24px}
 body .mobile-dock.amm-public-dock{padding:7px 6px!important;bottom:calc(11px + env(safe-area-inset-bottom))!important}
 body:has(.amm-public-dock){padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}
 #home .amm-install-spot{margin:18px 0 7px}
 #ammInstallBtn{font-size:15px;min-height:48px}
}
@media(max-width:390px){
 #services .service-tab{min-height:176px!important;padding:14px!important}
 #services .service-tab b{font-size:17px!important}
 #services .service-tab small{font-size:13px!important}
 #home .amm-sculpt-nav .amm-sculpt-copy small{font-size:14px!important}
 #home .amm-sculpt-nav .amm-sculpt-card--work,#home .amm-sculpt-nav .amm-sculpt-card--services{min-height:240px!important;padding:15px!important}
 #home .amm-sculpt-nav .amm-sculpt-card--music .amm-sculpt-copy b{font-size:27px!important}
 body .amm-public-dock .amm-public-dock-label{font-size:11px!important}
}
@media(max-width:350px){
 #services .service-menu{grid-template-columns:1fr!important}
 #services .service-tab{min-height:112px!important;grid-template-columns:1fr!important}
 #home .amm-sculpt-nav{grid-template-columns:1fr!important}
 #home .amm-sculpt-nav .amm-sculpt-card--music{grid-column:auto!important}
 #home .amm-sculpt-nav .amm-sculpt-card--work,#home .amm-sculpt-nav .amm-sculpt-card--services{min-height:175px!important}
}
@media(prefers-reduced-motion:reduce){#ammInstallBtn{transition:none!important}}

/* assets/public-mobile-legibility-v22753.css */
/* AMM v2.27.53 · legible public MOBILE display. Override the inherited
   miniature two-column card layout. Private app / client workspace untouched. */
@media(max-width:640px){
  html { -webkit-text-size-adjust:100%!important; text-size-adjust:100%!important; }
  #home.hero { padding-left:clamp(17px,4.6vw,24px)!important; padding-right:clamp(17px,4.6vw,24px)!important; }
  #home .eyebrow{font-size:13px!important;line-height:1.45!important;letter-spacing:.12em!important}
  #home .lede{font-size:clamp(18px,4.65vw,20px)!important;line-height:1.52!important}
  #home .hero-actions{grid-template-columns:1fr!important;gap:10px!important;}
  #home .hero-actions>a{font-size:17px!important;line-height:1.24!important;min-height:58px!important;
      width:100%!important;max-width:100%!important;border-radius:16px!important;padding:14px 18px!important;}
  #home .trust-row span{font-size:13px!important;letter-spacing:.02em!important;padding:8px 12px!important;min-height:34px!important}
  #home .amm-sculpt-nav{
      width:min(calc(100vw - 40px),100%)!important;max-width:calc(100vw - 40px)!important;grid-template-columns:minmax(0,1fr)!important;
      gap:13px!important;margin-top:25px!important;
  }
  #home .amm-sculpt-nav .amm-sculpt-card,
  #home .amm-sculpt-nav .amm-sculpt-card--music,
  #home .amm-sculpt-nav .amm-sculpt-card--work,
  #home .amm-sculpt-nav .amm-sculpt-card--services{
      grid-column:1!important;min-width:0!important;
      min-height:184px!important;padding:20px 21px!important;
      display:flex!important;flex-direction:column!important;justify-content:space-between!important;
  }
  #home .amm-sculpt-nav .amm-sculpt-card--music{min-height:205px!important;}
  #home .amm-sculpt-nav .amm-sculpt-card--work{background-position:center 36%!important;}
  #home .amm-sculpt-nav .amm-sculpt-top{min-height:25px!important;}
  #home .amm-sculpt-nav .amm-sculpt-index{font-size:12px!important;letter-spacing:.075em!important;}
  #home .amm-sculpt-nav .amm-sculpt-marker{font-size:11px!important;padding:6px 8px!important;
      max-width:52%;overflow-wrap:anywhere;white-space:normal!important;}
  #home .amm-sculpt-nav .amm-sculpt-body{display:flex!important;align-items:center!important;
      gap:15px!important;padding:11px 0!important;}
  #home .amm-sculpt-nav .amm-sculpt-symbol,
  #home .amm-sculpt-nav .amm-sculpt-symbol--music{
      width:56px!important;height:56px!important;flex:0 0 56px!important;min-width:56px!important;
      border-radius:17px 6px 17px 6px!important;
  }
  #home .amm-sculpt-nav .amm-sculpt-symbol svg{width:34px;height:34px}
  #home .amm-sculpt-nav .amm-sculpt-copy{min-width:0!important;gap:6px!important}
  #home .amm-sculpt-nav .amm-sculpt-copy b,
  #home .amm-sculpt-nav .amm-sculpt-card--music .amm-sculpt-copy b{
      font-size:clamp(26px,6.8vw,31px)!important;line-height:1.07!important;
      letter-spacing:-.035em!important;overflow-wrap:normal;
  }
  #home .amm-sculpt-nav .amm-sculpt-copy small{
      font-size:16px!important;line-height:1.38!important;color:#dae2f2!important;
      font-weight:480!important;opacity:1!important;
  }
  #home .amm-sculpt-nav .amm-sculpt-foot>span:first-child{
      font-size:12px!important;letter-spacing:.055em!important;line-height:1.4!important;
  }
  #home .amm-sculpt-nav .amm-sculpt-arrow{
      width:40px!important;height:40px!important;font-size:23px!important;flex:0 0 40px!important;
  }
  #services .services-intro h2{font-size:clamp(39px,10vw,52px)!important;line-height:1.02!important}
  #services .services-intro>p{font-size:17px!important;line-height:1.55!important}
  #services .service-menu{display:grid!important;grid-template-columns:minmax(0,1fr)!important;
      padding:12px!important;gap:10px!important;}
  #services .service-tab{display:grid!important;
      grid-template-columns:42px minmax(0,1fr) 22px!important;
      grid-template-rows:auto!important;min-height:105px!important;
      padding:15px!important;gap:12px!important;align-items:center!important;
  }
  #services .service-tab>span:nth-child(2){align-self:center!important}
  #services .service-num{flex-direction:column!important;align-items:flex-start!important;
      justify-content:center!important;gap:7px!important;font-size:12px!important;}
  #services .service-num>span{font-size:23px!important}
  #services .service-tab b{font-size:20px!important;line-height:1.18!important;}
  #services .service-tab small{font-size:15px!important;line-height:1.36!important;
      color:#c4d0e3!important;}
  #services .service-tab i{display:block!important;color:#bfd4ed!important;font-size:22px!important;}
  #services .service-detail p{font-size:17px!important;line-height:1.5!important;}
  /* App-like dock with text readable at iPhone width, without obscuring page controls. */
  body .mobile-dock.amm-public-dock{left:8px!important;right:8px!important;
      padding:8px 5px!important;column-gap:1px!important;border-radius:23px!important;}
  body .amm-public-dock .amm-public-dock-link{min-height:64px!important;
      padding:6px 0!important;gap:5px!important;}
  body .amm-public-dock .amm-public-dock-icon{height:28px!important;width:28px!important;}
  body .amm-public-dock .amm-public-dock-icon svg{height:26px!important;width:26px!important;}
  body .amm-public-dock .amm-public-dock-label{font-size:clamp(11px,3.13vw,13px)!important;
      line-height:1.13!important;font-weight:750!important;letter-spacing:-.01em!important;}
  body:has(.amm-public-dock){padding-bottom:calc(122px + env(safe-area-inset-bottom))!important;}
  html:has(.amm-public-dock){scroll-padding-bottom:calc(130px + env(safe-area-inset-bottom))!important;}
  .page-view-mode main>.section:not([hidden]){scroll-margin-bottom:calc(130px + env(safe-area-inset-bottom));}
}
/* Very narrow phones: maintain the single column; stop shrinking labels again. */
@media(max-width:360px){
  #home .amm-sculpt-nav{width:min(calc(100vw - 36px),100%)!important;max-width:calc(100vw - 36px)!important;}
  #home .amm-sculpt-nav .amm-sculpt-card{padding:16px!important;}
  #home .amm-sculpt-nav .amm-sculpt-copy b{font-size:25px!important;}
  #home .amm-sculpt-nav .amm-sculpt-copy small{font-size:15px!important;}
  #home .amm-sculpt-nav .amm-sculpt-symbol{width:48px!important;height:48px!important;flex-basis:48px!important;min-width:48px!important;}
  #services .service-tab b{font-size:18px!important;}
  body .amm-public-dock .amm-public-dock-label{font-size:11px!important;}
}
@media(prefers-reduced-motion:reduce){
  #home .amm-sculpt-nav .amm-sculpt-card,
  #home .amm-sculpt-nav .amm-sculpt-card::before,
  #home .amm-sculpt-nav .amm-sculpt-arrow{transition:none!important;}
}

/* assets/mobile-viewport-fit-v22754.css */
/* AMM 2.27.54 · iPhone viewport/zoom tolerance
   This is NOT a zoom lock. Users retain pinch-to-zoom for accessibility.
   It fixes layout overflow and the iOS auto-focus magnification trigger. */
@media(max-width:820px){
  html{-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important;max-width:100%;}
  body{max-width:100%;overflow-x:clip!important;}
  #home.hero,#home .hero-copy,#home .hero-copy>*{box-sizing:border-box;min-width:0;max-width:100%;}
  #home.hero{width:100%!important;}
  #home .hero-copy{width:100%;}
  #home .eyebrow{overflow-wrap:anywhere;}
  #home.hero h1{font-size:clamp(42px,12vw,55px)!important;line-height:.97!important;
    letter-spacing:-.052em!important;overflow-wrap:break-word;word-break:normal;}
  #home .lede{overflow-wrap:break-word;}
  #home .hero-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    max-width:100%!important;min-width:0!important;width:100%!important;}
  #home .hero-actions>a,#home .hero-actions>button{box-sizing:border-box;max-width:100%!important;
    min-width:0!important;width:100%!important;white-space:normal!important;
    overflow-wrap:break-word!important;}
  #home .trust-row{box-sizing:border-box;max-width:100%!important;min-width:0!important;
    overflow-x:auto!important;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;}
  #home .amm-sculpt-nav{box-sizing:border-box;width:100%!important;max-width:100%!important;
    min-width:0!important;grid-template-columns:minmax(0,1fr)!important;}
  #home .amm-sculpt-nav .amm-sculpt-card{box-sizing:border-box;min-width:0!important;
    width:100%!important;max-width:100%!important;overflow:hidden;}
  #home .amm-sculpt-nav .amm-sculpt-body,#home .amm-sculpt-nav .amm-sculpt-copy{
    min-width:0!important;max-width:100%!important;}
  #home .amm-sculpt-nav .amm-sculpt-copy b,#home .amm-sculpt-nav .amm-sculpt-copy small{
    overflow-wrap:break-word!important;word-break:normal!important;}
  /* Keep the five public actions readable without overflowing the viewport. */
  body .mobile-dock.amm-public-dock{box-sizing:border-box!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;min-width:0!important;}
  body .amm-public-dock .amm-public-dock-link{min-width:0!important;overflow:hidden;}
  body .amm-public-dock .amm-public-dock-label{white-space:nowrap;
    max-width:100%!important;text-overflow:ellipsis;}
}
/* iOS Safari zooms the whole page when focusing a form control below 16px.
   Apply to all public/client input fields, not buttons, toggles or music sliders. */
@media(hover:none) and (pointer:coarse){
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  textarea,select{font-size:16px!important;}
}
@media(max-width:360px){
  #home.hero h1{font-size:clamp(39px,11.8vw,45px)!important;}
}
