.s-header{z-index:80}
.header__ny{position:relative}
.header__ny-link{display:inline-block}
.header__ny-drop{
  display:none;
  position:absolute;
  top:100%;
  left:50%;
  transform:translateX(-50%);
  min-width:280px;
  max-height:min(70vh,560px);
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  padding:12px 0 8px;
  background:#fff;
  border-radius:16px;
  box-shadow:0 16px 40px rgba(79,69,61,.18);
  z-index:400;
}
.header__ny:hover .header__ny-drop,
.header__ny:focus-within .header__ny-drop{display:flex;flex-direction:column}
.header__ny-drop a{
  display:block;
  padding:10px 18px;
  white-space:nowrap;
  color:#4f453d;
  text-decoration:none;
  font-size:16px;
  opacity:1!important;
}
.header__ny-drop a:hover{background:#fff6d6;opacity:1!important}
@media (max-width:980px){
  .header__ny-drop{left:0;transform:none}
}

.kw-ny .s-tariffs{display:none!important}
.category-novyj-god .s-header,
.kw-ny .s-header{z-index:200!important;background:#f5f5f5!important}
.category-novyj-god .header-panel,
.kw-ny .header-panel{z-index:200;background:#f5f5f5!important;background-image:none!important}
@media (max-width:1250px){
  .category-novyj-god .s-header,
  .kw-ny .s-header{background:transparent!important}
  .category-novyj-god .header-panel,
  .kw-ny .header-panel{
    background:linear-gradient(180deg,rgba(245,245,245,.5) 0%,rgba(245,245,245,.12) 100%)!important;
    background-image:none!important;
  }
}

.header-services__cat#cat-6{
  grid-template-columns:1fr!important;
  gap:10px;
  max-height:min(70vh,720px);
  overflow-y:auto;
  padding-right:4px;
}
.kw-hs-line--ny{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:var(--gap,10px);
}
.kw-hs-line--ny .header-services__link{
  min-height:78px;
  padding:14px 14px;
}
.kw-hs-line--ny .header-services__link:nth-child(5n+1){background-color:#e1e8ff}
.kw-hs-line--ny .header-services__link:nth-child(5n+2){background-color:#e5f8ee}
.kw-hs-line--ny .header-services__link:nth-child(5n+3){background-color:#f3e1ff}
.kw-hs-line--ny .header-services__link:nth-child(5n+4){background-color:#ffe8d2}
.kw-hs-line--ny .header-services__link:nth-child(5n+5){background-color:#fff0b1}

.kw-ny-mob-list{
  max-height:46vh;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}

.kw-ny-hub,
.kw-ny-page{margin:0 0 36px}
.kw-ny-lead{
  max-width:820px;
  margin:0 auto 28px;
  text-align:center;
  font-size:1.08rem;
  line-height:1.5;
  color:#4f453d;
}
.kw-ny-dirs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px 14px;
  margin:0 0 40px;
  align-items:stretch;
}
.kw-ny-dir{
  display:flex;
  flex-direction:column;
  height:100%;
  min-width:0;
  min-height:100%;
  text-decoration:none;
  color:#4f453d;
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(79,69,61,.1);
}
.kw-ny-dir__img{
  position:relative;
  flex:0 0 auto;
  width:100%;
  aspect-ratio:3/4;
  overflow:hidden;
  background:#fff6d6;
}
.kw-ny-dir__img img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:cover;
  object-position:top center;
  display:block;
}
.kw-ny-dir__title{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:1 0 auto;
  min-height:4.75rem;
  margin-top:auto;
  padding:12px 12px 16px;
  font-weight:700;
  font-size:1rem;
  line-height:1.25;
  text-align:center;
  box-sizing:border-box;
}
.kw-ny-hub__list-title{
  text-align:center;
  margin:8px 0 20px;
  font-size:clamp(1.25rem,2.4vw,1.7rem);
  color:#4f453d;
}

/* New Year programs: hide birthday-style «В программу аниматора входит». */
body.kw-ny .s-animators-incs,
.category-novyj-god .s-animators-incs{
  display:none!important;
}
.category-novyj-god .animators-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:28px 18px!important;
}
.category-novyj-god .anim-preview{min-width:0;overflow:hidden;z-index:0;isolation:isolate}
.category-novyj-god .anim-preview__stage{
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  margin-top:0!important;
  overflow:hidden!important;
  aspect-ratio:3/4!important;
  display:block!important;
  background:#fff6d6!important;
}
.category-novyj-god .anim-preview__stage picture{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
}
.category-novyj-god .anim-preview__img,
.category-novyj-god .anim-preview picture img{
  position:absolute!important;
  inset:0!important;
  top:0!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:top center!important;
  display:block!important;
  transform:none!important;
}
.category-novyj-god .catdescr{margin-top:48px}

.kw-ny-block{margin:0 0 36px}
.kw-ny-block h2{
  text-align:center;
  font-size:clamp(1.3rem,2.6vw,1.8rem);
  margin:0 0 14px;
  color:#4f453d;
}
.kw-ny-block p{
  max-width:820px;
  margin:0 auto 16px;
  line-height:1.5;
}
.kw-ny-links{text-align:center}
.kw-ny-links a{font-weight:700}
.kw-ny-cards{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px 16px;
  margin:18px 0;
}
.kw-ny-card{
  display:flex;
  flex-direction:column;
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(79,69,61,.1);
  min-width:0;
}
.kw-ny-card__photo{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  aspect-ratio:3/4;
  overflow:hidden;
  background:#fff6d6;
}
.kw-ny-card__photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:top center;
}
.kw-ny-page,
.kw-ny-hub,
.kw-ny-card,
.kw-ny-dir{
  color:#4f453d!important;
}
.kw-ny-card__body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.kw-ny-card__title{margin:0;font-size:1.15rem;line-height:1.3;color:#4f453d!important}
.kw-ny-card__title a{text-decoration:none;color:#4f453d!important}
.kw-ny-card__meta{display:flex;flex-wrap:wrap;gap:6px}
.kw-ny-card__meta span{
  background:#fff6d6;
  color:#4f453d!important;
  border-radius:999px;
  padding:3px 8px;
  font-size:.82rem;
  font-weight:700;
}
.kw-ny-card__text{margin:0;font-size:.95rem;line-height:1.4;flex:1;color:#4f453d!important}
.kw-ny-card__btn{
  align-self:stretch;
  text-align:center;
  background:#ffcf01;
  color:#4f453d;
  font-weight:700;
  text-decoration:none;
  border-radius:999px;
  padding:10px 12px;
}
.kw-ny-doors{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:18px 0 8px;
}
.kw-ny-door{
  display:flex;
  flex-direction:column;
  gap:8px;
  background:#ffcf01;
  color:#4f453d;
  text-decoration:none;
  border-radius:24px;
  padding:28px 22px;
  box-shadow:0 12px 28px rgba(79,69,61,.12);
  min-height:160px;
}
.kw-ny-door strong{font-size:1.35rem}
.kw-ny-seo{max-width:860px;margin:0 auto;line-height:1.55}
.kw-ny-seo h2{text-align:center;margin:28px 0 12px}
.kw-ny-page .kw-ny-prices,
.kw-ny .kw-ny-prices{
  display:table!important;
  width:100%!important;
  border-collapse:collapse;
  background:#fffdf6;
}
.kw-ny-page table.kw-ny-prices th,
.kw-ny-page table.kw-ny-prices td{
  padding:12px 16px;
  border-bottom:1px solid rgba(79,69,61,.08);
  color:#4f453d!important;
}
.kw-ny-page table.kw-ny-prices .kw-ny-price{font-weight:700;color:#ff8348!important}
.kw-ny-page{padding-top:8px}

@media (max-width:1100px){
  .kw-hs-line--ny,.kw-ny-dirs,.kw-ny-cards,.category-novyj-god .animators-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:760px){
  .kw-hs-line--ny{grid-template-columns:1fr}
  .kw-ny-dirs,.kw-ny-cards,.kw-ny-doors,.category-novyj-god .animators-grid{grid-template-columns:1fr!important}
  .kw-ny-lead{text-align:left}
}

/* Direction cards: equal blocks in a row, full photo without cropping heads. */
.kw-ny-dirs .kw-ny-dir__img{
  aspect-ratio:3/4!important;
  display:block!important;
}
.kw-ny-dirs .kw-ny-dir__img img{
  position:absolute!important;
  inset:0!important;
  object-fit:cover!important;
  object-position:top center!important;
}
