/* ATS Brand System — approved master-derived web assets */
:root{
  --ats-red:#ef111b;
  --ats-deep:#041627;
  --ats-silver:#f2f5f7;
}
.ats-brand-lockup{
  position:relative;
  display:flex;
  align-items:center;
  gap:11px;
  min-width:max-content;
  isolation:isolate;
}
.ats-brand-lockup > img.ats-logo-compact{
  display:block;
  content:url('/assets/at-studio-logo-header.svg?v=4');
  width:146px !important;
  height:64px !important;
  max-width:none !important;
  flex:0 0 auto;
  object-fit:contain !important;
  object-position:center;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none;
  transition:transform .22s ease,filter .22s ease;
}
.ats-brand-lockup:hover > img.ats-logo-compact{
  transform:translateY(-1px);
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.18));
}
.ats-brand-lockup > span,
.ats-brand-lockup > div,
.ats-brand-lockup .brand-copy{
  min-width:0;
}
.ats-brand-lockup > span > b:first-child,
.ats-brand-lockup > div > b:first-child,
.ats-brand-lockup .brand-copy > strong:first-child{
  display:none !important;
}
.ats-brand-lockup > span > small,
.ats-brand-lockup > div > span,
.ats-brand-lockup .brand-copy > span{
  display:block;
  margin-top:0 !important;
  color:#8ea1ad;
  font-size:7px;
  font-weight:800;
  line-height:1.35;
  letter-spacing:.16em;
  white-space:nowrap;
  opacity:.92;
}
.site-header .ats-brand-lockup{
  min-height:64px;
}
.site-header .ats-brand-lockup > img.ats-logo-compact{
  width:150px !important;
  height:66px !important;
}
.portal-brand.ats-brand-lockup > img.ats-logo-compact,
.studio-brand.ats-brand-lockup > img.ats-logo-compact,
.admin-brand.ats-brand-lockup > img.ats-logo-compact{
  width:126px !important;
  height:55px !important;
}
.portal-auth-brand.ats-brand-lockup > img.ats-logo-compact{
  width:136px !important;
  height:59px !important;
}
.ats-logo-mark{
  content:url('/assets/logo-mark-official.png?v=24');
  display:block;
  width:72px;
  height:72px;
  object-fit:contain;
  border:0 !important;
  border-radius:18px;
  background:var(--ats-deep);
  box-shadow:0 14px 34px rgba(0,0,0,.20);
}
.auth-mark .ats-logo-mark{
  width:100% !important;
  height:100% !important;
  border-radius:16px;
  box-shadow:none;
}
/* Detailed ATS mark needs more visual area than the legacy icon. */
.core-brand img[src*="at-studio-mark"]{
  width:43px !important;
  height:43px !important;
}
.team-core-mark img[src*="at-studio-mark"]{
  width:52px !important;
  height:52px !important;
}
.empty-portal .ats-logo-mark{
  width:78px !important;
  height:78px !important;
  margin:0 auto 14px;
}
@media(max-width:1180px){
  .site-header .ats-brand-lockup > img.ats-logo-compact{
    width:140px !important;
    height:61px !important;
  }
}
@media(max-width:700px){
  .ats-brand-lockup{gap:7px}
  .ats-brand-lockup > img.ats-logo-compact,
  .site-header .ats-brand-lockup > img.ats-logo-compact{
    width:116px !important;
    height:51px !important;
  }
  .portal-brand.ats-brand-lockup > img.ats-logo-compact,
  .studio-brand.ats-brand-lockup > img.ats-logo-compact,
  .admin-brand.ats-brand-lockup > img.ats-logo-compact{
    width:118px !important;
    height:51px !important;
  }
  .ats-brand-lockup > span > small,
  .ats-brand-lockup > div > span,
  .ats-brand-lockup .brand-copy > span{
    display:none !important;
  }
  .core-brand img[src*="at-studio-mark"]{
    width:30px !important;
    height:30px !important;
  }
  .team-core-mark img[src*="at-studio-mark"]{
    width:40px !important;
    height:40px !important;
  }
}
@media(prefers-reduced-motion:reduce){
  .ats-brand-lockup > img.ats-logo-compact{transition:none}
}
/* AT Studio approved master-derived identity v4 */
.at-brand-full,.at-brand-header,.at-brand-compact,.at-brand-mark{display:block;object-fit:contain;object-position:center;max-width:100%;height:auto}
.at-brand-full{content:url('/assets/at-studio-logo-full.svg?v=4')}
.at-brand-header{content:url('/assets/at-studio-logo-header.svg?v=4')}
.at-brand-compact{content:url('/assets/logo-mark-official.png?v=24')}
.at-brand-mark{content:url('/assets/logo-mark-official.png?v=24')}
.ats-brand-lockup>img.ats-logo-compact{content:url('/assets/at-studio-logo-header.svg?v=4');width:190px!important;height:64px!important;object-fit:contain!important;box-shadow:none!important;background:transparent!important}
.ats-logo-mark{content:url('/assets/logo-mark-official.png?v=24');background:transparent!important}
@media(max-width:700px){
 .ats-brand-lockup>img.ats-logo-compact,.site-header .ats-brand-lockup>img.ats-logo-compact{content:url('/assets/logo-mark-official.png?v=24');width:98px!important;height:90px!important}
 .portal-brand.ats-brand-lockup>img.ats-logo-compact,.studio-brand.ats-brand-lockup>img.ats-logo-compact,.admin-brand.ats-brand-lockup>img.ats-logo-compact{content:url('/assets/logo-mark-official.png?v=24');width:92px!important;height:84px!important}
}
/* v5: render approved master inline so browser does not block nested SVG image resources */
.ats-brand-lockup>svg.ats-logo-compact{
  display:block;
  width:190px!important;
  height:64px!important;
  max-width:none!important;
  flex:0 0 auto;
  overflow:visible;
}
svg.at-brand-header,svg.at-brand-compact,svg.at-brand-mark{display:block;max-width:100%;height:auto}
svg.ats-logo-mark{width:72px;height:72px;overflow:visible;background:transparent!important;box-shadow:none!important;border-radius:0!important}
.auth-mark svg.ats-logo-mark{width:100%!important;height:100%!important}
.empty-portal svg.ats-logo-mark{width:78px!important;height:78px!important;margin:0 auto 14px}
@media(max-width:1180px){
  .site-header .ats-brand-lockup>svg.ats-logo-compact{width:176px!important;height:59px!important}
}
@media(max-width:700px){
  .ats-brand-lockup>svg.ats-logo-compact{width:98px!important;height:90px!important}
  .site-header .ats-brand-lockup>svg.ats-logo-compact{width:112px!important;height:102px!important}
  .portal-brand.ats-brand-lockup>svg.ats-logo-compact,
  .studio-brand.ats-brand-lockup>svg.ats-logo-compact,
  .admin-brand.ats-brand-lockup>svg.ats-logo-compact{width:92px!important;height:84px!important}
}

/* Homepage approved primary AT Studio logo — sample v1 */
.site-header .ats-home-brand{
  min-height:72px;
  display:flex;
  align-items:center;
  padding:0;
}
.site-header .ats-home-logo{
  display:block;
  width:240px!important;
  height:80px!important;
  max-width:240px!important;
  object-fit:contain!important;
  object-position:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
}
@media(max-width:1180px){
  .site-header .ats-home-logo{
    width:210px!important;
    height:70px!important;
    max-width:210px!important;
  }
}
@media(max-width:700px){
  .site-header .ats-home-brand{min-height:56px}
  .site-header .ats-home-logo{
    width:156px!important;
    height:52px!important;
    max-width:156px!important;
  }
}

/* v6 homepage logo visibility lock */
.site-header .ats-home-brand{
  position:relative!important;
  z-index:120!important;
  isolation:isolate!important;
  overflow:visible!important;
}
.site-header .ats-home-logo{
  position:relative!important;
  z-index:121!important;
  opacity:1!important;
  visibility:visible!important;
  display:block!important;
}

/* v7 — hard-lock approved homepage logo above every header/background layer */
.site-header{
  z-index:1000!important;
}
.site-header .ats-home-brand{
  position:relative!important;
  z-index:1002!important;
  display:block!important;
  flex:0 0 240px!important;
  width:240px!important;
  min-width:240px!important;
  height:72px!important;
  min-height:72px!important;
  overflow:visible!important;
  isolation:isolate!important;
  background-image:url('/assets/at-studio-primary-header.webp?v=2')!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
}
.site-header .ats-home-brand .ats-home-logo{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  opacity:0!important;
  pointer-events:none!important;
}
@media(max-width:1180px){
  .site-header .ats-home-brand{
    flex-basis:210px!important;
    width:210px!important;
    min-width:210px!important;
    height:66px!important;
    min-height:66px!important;
  }
}
@media(max-width:760px){
  .site-header .ats-home-brand{
    flex-basis:150px!important;
    width:150px!important;
    min-width:150px!important;
    height:54px!important;
    min-height:54px!important;
  }
}

/* v8 — approved compact A + hoopoe + red helmet for constrained UI */
.ats-brand-lockup:not(.ats-home-brand) > img.ats-logo-compact,
.ats-logo-mark,
.at-brand-mark,
.at-brand-compact{
  content:url('/assets/logo-mark-official.png?v=24')!important;
  object-fit:contain!important;
  object-position:center!important;
  aspect-ratio:1/1!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
}
.ats-brand-lockup:not(.ats-home-brand) > img.ats-logo-compact{
  width:64px!important;
  height:64px!important;
  max-width:64px!important;
  flex:0 0 64px!important;
}
.admin-brand.ats-brand-lockup > img.ats-logo-compact,
.portal-brand.ats-brand-lockup > img.ats-logo-compact,
.portal-auth-brand.ats-brand-lockup > img.ats-logo-compact,
.studio-brand.ats-brand-lockup > img.ats-logo-compact{
  width:58px!important;
  height:58px!important;
  max-width:58px!important;
  flex-basis:58px!important;
}
.ats-logo-mark,.at-brand-mark{
  width:72px!important;
  height:72px!important;
  max-width:72px!important;
}
.at-brand-compact{
  width:64px!important;
  height:64px!important;
  max-width:64px!important;
}
.auth-mark img.ats-logo-mark{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
}
.empty-portal img.ats-logo-mark{
  width:78px!important;
  height:78px!important;
  max-width:78px!important;
  margin:0 auto 14px!important;
}
@media(max-width:700px){
  .ats-brand-lockup:not(.ats-home-brand) > img.ats-logo-compact{
    width:52px!important;
    height:52px!important;
    max-width:52px!important;
    flex-basis:52px!important;
  }
  .at-brand-compact{
    width:54px!important;
    height:54px!important;
    max-width:54px!important;
  }
}

/* v24 — canonical official A + hoopoe + helmet mark for all constrained surfaces */
.ats-brand-lockup:not(.ats-home-brand)>img.ats-logo-compact,
.ats-logo-mark,.at-brand-mark,.at-brand-compact{
  content:url('/assets/logo-mark-official.png?v=24')!important;
  object-fit:contain!important;object-position:center!important;
  background:transparent!important;border:0!important;box-shadow:none!important;filter:none!important;
  opacity:1!important;visibility:visible!important;
}