/* =========================================================
   V19 — archive polish, extras polish, responsive hardening
   ========================================================= */

/* ---------- Extra services ---------- */
.extras-page,
.extras-page .page-hero,
.extras-intro,
.extras-grid-section,
.extras-final{background:#fff!important}

.extras-intro h2 span{display:inline}
.extras-intro h2 br{display:block}

.extras-final-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 190px!important;
  align-items:center!important;
  gap:34px!important;
  overflow:hidden!important;
  padding:40px 42px!important
}
.extras-final-card > :not(.extras-final-card__visual){position:relative;z-index:2}
.extras-final-card__visual{
  position:relative;z-index:1;
  display:grid;place-items:center;
  width:176px;height:176px;
  justify-self:end;
  color:#fff;
  opacity:.9
}
.extras-final-card__visual::before{
  content:"";position:absolute;inset:10px;border-radius:48px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);
  transform:rotate(8deg)
}
.extras-final-card__visual svg{position:relative;width:145px;height:145px;filter:drop-shadow(0 12px 26px rgba(0,0,0,.12))}

/* ---------- Archive base ---------- */
.archive-page,
.archive-page .page-hero,
.archive-history,
.archive-history--new,
.archive-history--middle,
.archive-history--ussr,
.archive-video-section{background:#fff!important;color:#111!important}
.archive-wave{display:none!important}
.archive-history--middle{padding:72px 0!important;overflow:visible!important}

.archive-era-head h2{margin-top:12px!important}
.archive-era-head__title,
.archive-era-head__dates{display:block!important}
.archive-era-head__title{
  font-size:clamp(34px,4.4vw,56px)!important;
  line-height:1.02!important;
  font-weight:900!important;
  color:#111!important;
  letter-spacing:-.025em
}
.archive-era-head__dates{
  margin-top:8px!important;
  font-size:clamp(22px,2.4vw,31px)!important;
  line-height:1.15!important;
  font-weight:800!important;
  color:#4d5dfa!important;
  letter-spacing:-.01em
}
.archive-history--middle .archive-era-head__dates{color:#29a71a!important}
.archive-history--ussr .archive-era-head__dates{color:#4d5dfa!important}
.archive-era-head p{color:#4b4b4b!important;line-height:1.55!important}

/* Modern album cards — closer to the simpler v15/v16 concept */
.album-grid--v17{gap:22px!important}
.album-card--v17{
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(25,35,83,.08)!important;
  border-radius:24px!important;
  box-shadow:0 10px 28px rgba(30,38,71,.09)!important;
  transition:transform .22s ease,box-shadow .22s ease!important
}
.album-card--v17:hover{transform:translateY(-5px)!important;box-shadow:0 18px 38px rgba(30,38,71,.15)!important}
.album-card__image{aspect-ratio:16/10!important}
.album-card__body{
  padding:18px 18px 20px!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;
  text-align:center!important
}
.album-card__body h4{
  min-height:0!important;margin:0!important;
  font-size:20px!important;line-height:1.18!important;font-weight:900!important;color:#111!important
}
.album-card__desc{
  margin:8px 0 16px!important;
  color:#646464!important;font-size:13px!important;line-height:1.4!important
}
.archive-open{
  width:auto!important;min-width:170px!important;min-height:44px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  margin-top:auto!important;padding:11px 22px!important;border-radius:14px!important;
  color:#fff!important;text-decoration:none!important;font-size:14px!important;font-weight:900!important;
  box-shadow:0 9px 20px rgba(0,0,0,.10)!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important
}
.archive-open--blue{background:#4d5dfa!important}
.archive-open--green{background:#29a71a!important}
.archive-open:hover{transform:translateY(-2px) scale(1.015)!important;box-shadow:0 13px 26px rgba(0,0,0,.16)!important;filter:brightness(.97) saturate(1.08)!important}

/* 2010–2018 block: no full-width blue rectangle, only a clean white card */
.archive-history-card{
  max-width:900px!important;
  display:grid!important;grid-template-columns:245px minmax(0,1fr)!important;align-items:center!important;
  gap:26px!important;padding:16px!important;
  background:#fff!important;color:#111!important;
  border:2px solid rgba(77,93,250,.17)!important;border-radius:26px!important;
  box-shadow:0 14px 34px rgba(25,35,83,.11)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important
}
.archive-history-card:hover{transform:translateY(-5px)!important;box-shadow:0 20px 44px rgba(25,35,83,.17)!important;border-color:rgba(41,167,26,.32)!important}
.archive-history-card img{width:245px!important;aspect-ratio:16/10!important;object-fit:cover!important;border-radius:18px!important}
.archive-history-card__content{display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important}
.archive-history-card__content strong{font-size:25px!important;line-height:1.15!important;font-weight:900!important;color:#111!important}
.archive-history-card__content small{display:block!important;margin:7px 0 16px!important;padding:0!important;background:transparent!important;color:#666!important;font-size:14px!important;font-weight:700!important}
.archive-history-card__button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:44px!important;padding:10px 20px!important;border-radius:14px!important;
  color:#fff!important;text-decoration:none!important;font-weight:900!important;
  box-shadow:0 9px 20px rgba(0,0,0,.11)!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important
}
.archive-history-card__button:hover{transform:translateY(-2px) scale(1.02)!important;box-shadow:0 13px 27px rgba(0,0,0,.16)!important;filter:saturate(1.08)!important}

/* Soviet archive cards: same interaction model as the modern archive */
.archive-legacy-grid{gap:22px!important}
.archive-legacy-card{
  overflow:hidden!important;background:#fff!important;border:1px solid rgba(25,35,83,.09)!important;border-radius:24px!important;
  box-shadow:0 10px 28px rgba(25,35,83,.09)!important;color:#111!important;
  transition:transform .22s ease,box-shadow .22s ease!important
}
.archive-legacy-card:hover{transform:translateY(-5px)!important;box-shadow:0 18px 40px rgba(25,35,83,.16)!important}
.archive-legacy-card img{display:block!important;width:100%!important;height:320px!important;object-fit:cover!important;transition:transform .32s ease!important}
.archive-legacy-card:hover img{transform:scale(1.025)!important}
.archive-legacy-card__content{display:flex!important;flex-direction:column!important;align-items:center!important;padding:20px!important;text-align:center!important}
.archive-legacy-card__content strong{font-size:25px!important;font-weight:900!important;line-height:1.15!important;color:#111!important}
.archive-legacy-card__content p{margin:7px 0 16px!important;color:#666!important;font-size:14px!important}
.archive-legacy-card__button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:170px!important;min-height:44px!important;padding:11px 22px!important;border-radius:14px!important;
  color:#fff!important;text-decoration:none!important;font-weight:900!important;
  box-shadow:0 9px 20px rgba(0,0,0,.11)!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important
}
.archive-legacy-card__button:hover{transform:translateY(-2px) scale(1.02)!important;box-shadow:0 13px 27px rgba(0,0,0,.17)!important;filter:brightness(.97) saturate(1.08)!important}

/* Video: large, explicit VK Video action */
.archive-video-section{padding:30px 0 76px!important}
.archive-video-card{
  background:#fff!important;border:2px solid rgba(77,93,250,.13)!important;
  box-shadow:0 12px 32px rgba(25,35,83,.09)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important
}
.archive-video-card:hover{transform:translateY(-4px)!important;box-shadow:0 18px 40px rgba(25,35,83,.15)!important;border-color:rgba(41,167,26,.27)!important}
.archive-video-card p{color:#555!important;line-height:1.55!important}
.archive-video-button--v19{
  flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:11px!important;
  min-height:58px!important;padding:8px 24px 8px 10px!important;border-radius:18px!important;
  background:#4d5dfa!important;color:#fff!important;text-decoration:none!important;font-size:16px!important;font-weight:900!important;
  box-shadow:0 12px 28px rgba(77,93,250,.26)!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important
}
.archive-video-button--v19:hover{transform:translateY(-2px) scale(1.015)!important;box-shadow:0 16px 34px rgba(77,93,250,.33)!important;background:#3e4fe7!important}
.vk-video-badge{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;border-radius:50%!important;background:#fff!important;flex:0 0 42px!important}
.vk-video-badge img{display:block!important;width:25px!important;height:25px!important;object-fit:contain!important}

/* Avoid accidental link-blue/green text in archive cards */
.archive-history-card a:not(.archive-history-card__button),
.archive-legacy-card a:not(.archive-legacy-card__button){color:inherit!important;text-decoration:none!important}
.archive-history-card__content strong,
.archive-legacy-card__content strong{color:#111!important}

/* ---------- Mobile hero: restore the stable clipped composition ---------- */
@media (max-width:780px){
  .ref-hero{overflow:hidden!important;height:auto!important;min-height:0!important}
  .ref-hero__inner{
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;
    width:min(calc(100% - 32px),520px)!important;height:auto!important;min-height:0!important;
    padding:106px 0 0!important
  }
  .ref-hero__copy{position:relative!important;z-index:7!important;width:100%!important;max-width:500px!important;text-align:center!important;margin:0 auto!important;padding:0!important}
  .ref-hero h1,.ref-hero p{text-align:center!important;margin-inline:auto!important}
  .ref-actions{justify-content:center!important;margin-top:14px!important;margin-bottom:0!important}
  .hero-people{
    position:relative!important;inset:auto!important;width:min(390px,92vw)!important;height:225px!important;min-height:0!important;
    margin:-52px auto 0!important;overflow:hidden!important;z-index:5!important
  }
  .hero-people__stage{position:absolute!important;inset:0!important;overflow:hidden!important}
  .hero-people__halo{left:50%!important;right:auto!important;bottom:-78px!important;width:330px!important;transform:translateX(-50%)!important}
  .hero-person--one{--person-width:286px!important;--person-right:calc(50% - 143px)!important;--person-bottom:-58px!important}
  .hero-person--two{--person-width:294px!important;--person-right:calc(50% - 147px)!important;--person-bottom:-60px!important}
  .hero-person--three{--person-width:206px!important;--person-right:calc(50% - 103px)!important;--person-bottom:-61px!important}
  .hero-person--four{--person-width:254px!important;--person-right:calc(50% - 127px)!important;--person-bottom:-60px!important}
  .ref-hero::after{
    content:""!important;position:absolute!important;left:50%!important;right:auto!important;bottom:-36px!important;
    width:136%!important;height:72px!important;transform:translateX(-50%)!important;background:#fff!important;
    border-radius:50% 50% 0 0 / 100% 100% 0 0!important;z-index:8!important;pointer-events:none!important
  }
}
@media (max-width:390px){
  .ref-hero__inner{padding-top:100px!important;width:calc(100% - 24px)!important}
  .hero-people{width:min(360px,94vw)!important;height:215px!important;margin-top:-48px!important}
  .hero-person--one{--person-width:270px!important;--person-right:calc(50% - 135px)!important}
  .hero-person--two{--person-width:278px!important;--person-right:calc(50% - 139px)!important}
  .hero-person--three{--person-width:195px!important;--person-right:calc(50% - 97.5px)!important}
  .hero-person--four{--person-width:240px!important;--person-right:calc(50% - 120px)!important}
}

/* ---------- Responsive archive/services ---------- */
@media (max-width:900px){
  .extras-final-card{grid-template-columns:1fr 130px!important;gap:18px!important;padding:32px 28px!important}
  .extras-final-card__visual{width:120px;height:120px}.extras-final-card__visual svg{width:105px;height:105px}
  .archive-history-card{grid-template-columns:150px minmax(0,1fr)!important;gap:16px!important}
  .archive-history-card img{width:150px!important}
  .archive-legacy-card img{height:260px!important}
}
@media (max-width:600px){
  .extras-intro h2{font-size:34px!important;line-height:1.02!important}
  .extras-final-card{display:block!important;text-align:center!important;padding:30px 20px!important}
  .extras-final-card__visual{width:96px!important;height:96px!important;margin:20px auto 0!important;justify-self:center!important;opacity:.82!important}
  .extras-final-card__visual svg{width:82px!important;height:82px!important}
  .archive-era-head__title{font-size:34px!important}
  .archive-era-head__dates{margin-top:7px!important;font-size:22px!important}
  .album-grid--v17{grid-template-columns:1fr!important;gap:16px!important}
  .album-card__body h4{font-size:20px!important}
  .album-card__desc{font-size:13px!important}
  .archive-open{width:100%!important;min-width:0!important;min-height:46px!important}
  .archive-history-card{grid-template-columns:1fr!important;text-align:center!important;padding:14px!important}
  .archive-history-card img{width:100%!important;aspect-ratio:16/9!important}
  .archive-history-card__content{align-items:center!important;padding:5px 6px 10px!important}
  .archive-history-card__content strong{font-size:21px!important}
  .archive-history-card__button{width:100%!important}
  .archive-legacy-card img{height:220px!important}
  .archive-legacy-card__button{width:100%!important;min-width:0!important}
  .archive-video-card{display:block!important;text-align:center!important;padding:26px 18px!important}
  .archive-video-card p{margin:0 auto 18px!important}
  .archive-video-button--v19{width:100%!important;min-height:58px!important}
}
.archive-history--middle .archive-era-kicker--light{background:#4d5dfa!important;color:#fff!important}
