/* stp:base */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Manrope:wght@400;600;700&display=swap');

:root {
  --bg1: #c0d4f3;
  --bg2: #16275e;
  --bg: #c0d4f3;
  --text-black: #010101;
  --text-white: #ffffff;
  --bg-white: #ffffff;
  --accent: #3d6df2;
  --border-card: #e5e7eb;
  --font-head: 'Manrope', sans-serif;
  --font-body: 'Inter', sans-serif;
  --header-h: 12.8rem;
}

html { font-size: calc(100vw / 1440 * 10); overflow-x: hidden; overflow-y: scroll; }
@media (max-width: 1024px) { html { font-size: calc(100vw / 1024 * 10); } }
@media (max-width: 640px) { html { font-size: calc(100vw / 375 * 10); } }

*, *::before, *::after { box-sizing: border-box; }
html.menu-lock, html.menu-lock body { overflow: hidden; }
body { margin: 0; background: var(--bg1); color: var(--text-black); font-family: var(--font-body); font-size: 2rem; line-height: 1.2; overflow-x: hidden; }
h1, h2, h3, p, ul { margin: 0; padding: 0; }
ul { list-style: none; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; transition: color 0.3s, opacity 0.3s, background-color 0.3s, transform 0.3s, box-shadow 0.3s; }
button { font: inherit; cursor: pointer; }
main { padding-top: var(--header-h); }

#preloader { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; background: var(--bg); }
#preloader img { width: 8rem; height: 8rem; }

.btn { display: inline-flex; align-items: center; justify-content: center; height: 4rem; padding: 1rem 2.4rem; border-radius: 2.4rem; background: var(--bg2); color: var(--text-white); font-family: var(--font-body); font-weight: 500; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 2rem; text-align: center; }
.btn:hover { background: #2a4296; transform: translateY(-0.2rem); box-shadow: 0 0.4rem 1.2rem rgba(22, 39, 94, 0.35); }

.burger-btn { display: none; position: relative; z-index: 120; width: 3.1rem; height: 3.1rem; padding: 0; background: transparent; border: 0; flex-direction: column; align-items: center; justify-content: center; gap: 0.5rem; }
.burger-btn span { display: block; width: 2.3rem; height: 0.2rem; background: var(--text-black); border-radius: 0.1rem; transition: transform 0.3s, opacity 0.3s; }
.burger-btn.act span:nth-child(1) { transform: translateY(0.7rem) rotate(45deg); }
.burger-btn.act span:nth-child(3) { transform: translateY(-0.7rem) rotate(-45deg); }
.burger-btn.act span:nth-child(2) { opacity: 0; }

#mobile-menu { position: fixed; inset: 0; z-index: 90; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding-top: 20.9rem; background: var(--bg1); opacity: 0; pointer-events: none; transition: opacity 0.3s; }
#mobile-menu.opened { opacity: 1; pointer-events: auto; }
.menu__nav { display: flex; flex-direction: column; align-items: center; gap: 5rem; }
.menu__nav .nav-link { font-family: var(--font-head); font-weight: 400; font-size: clamp(14px, 1.8rem, 1.8rem); line-height: 2.4rem; color: var(--text-black); }
.menu__nav .nav-link:hover { color: var(--accent); }
.menu__btn { width: 28.8rem; margin-top: 4.8rem; }

@keyframes store-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-1rem); } }

@media (max-width: 1024px) {
  .burger-btn { display: flex; }
}
@media (max-width: 640px) {
  :root { --header-h: 9.2rem; }
  body { font-size: 1.4rem; }
  .btn { height: 4rem; }
  #mobile-menu { padding-top: 20.9rem; }
  .menu__btn { width: 28.8rem; }
}
/* /stp:base */
/* stp:header */
.header { position: fixed; top: 0; left: 0; width: 100%; z-index: 100; height: 12.8rem; padding: 0 6.4rem; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; background: var(--bg1); transition: box-shadow 0.3s; }
.header.scrolled { box-shadow: 0 0.2rem 1.2rem rgba(0, 0, 0, 0.15); }
.logo { display: flex; flex-direction: column; align-items: center; gap: 0.4rem; width: 13.3rem; }
.logo:hover { opacity: 0.75; }
.logo__img { width: 6rem; height: 6rem; }
.logo__text { font-family: var(--font-head); font-size: clamp(14px, 1.8rem, 1.8rem); line-height: 2.4rem; text-align: center; color: var(--text-black); }
.nav { display: flex; align-items: center; gap: 5rem; }
.nav-link:not(.btn) { font-family: var(--font-head); font-weight: 400; font-size: clamp(14px, 1.8rem, 1.8rem); line-height: 2.4rem; color: var(--text-black); }
.nav-link:not(.btn):hover { color: var(--accent); }
.header__btn { justify-self: end; width: 28.8rem; }

@media (max-width: 1024px) {
  .header { display: flex; justify-content: space-between; padding: 0 3.2rem; }
  .nav, .header__btn { display: none; }
  .logo { width: auto; }
  .logo__text { white-space: nowrap; line-height: 1.3; }
}
@media (max-width: 640px) {
  .header { height: 9.2rem; padding: 0 4.4rem 0 2.4rem; }
  .logo { width: 7.6rem; gap: 0.2rem; }
  .logo__img { width: 3.2rem; height: 3.2rem; }
  .logo__text { white-space: normal; font-size: clamp(10px, 1rem, 1rem); line-height: 1.3rem; }
}
/* /stp:header */
/* stp:hero */
.hero { padding: 6.4rem; background: url(../img/hero.webp) center / cover no-repeat; color: var(--text-white); }
.hero__inner { display: flex; align-items: center; gap: 6.4rem; }
.hero__text { flex: 0 0 89.2rem; display: flex; flex-direction: column; gap: 4rem; }
.hero__title { font-family: var(--font-head); font-weight: 700; font-size: 6rem; line-height: 7.5rem; }
.hero__lead { font-weight: 500; font-size: 3.2rem; line-height: 4.2rem; }
.hero__phone { flex: 0 0 auto; width: 35.6rem; height: 63.6rem; border-radius: 2.4rem; object-fit: cover; }

@media (max-width: 1024px) {
  .hero { padding: 4.8rem 3.2rem; }
  .hero__inner { gap: 3.2rem; }
  .hero__text { flex: 1 1 auto; gap: 2.4rem; }
  .hero__title { font-size: 4.4rem; line-height: 5.4rem; }
  .hero__lead { font-size: 2.4rem; line-height: 3.2rem; transition: padding 0.35s ease; }
  .hero__phone { width: 28rem; height: auto; }
}
@media (max-width: 640px) {
  .hero { padding: 4rem 2.4rem; background-image: url(../img/hero-m.webp); }
  .hero__inner { flex-direction: column; gap: 2rem; }
  .hero__text { flex: 0 0 auto; width: 100%; gap: 2rem; }
  .hero__title { font-size: 3rem; line-height: 4rem; }
  .hero__lead { font-weight: 600; font-size: 2rem; line-height: 3rem; }
  .hero__phone { width: 19rem; height: 33.9rem; }
}
/* /stp:hero */
/* stp:archives */
.container { width: 100%; max-width: 131.2rem; margin: 0 auto; }
.title { font-family: var(--font-head); font-weight: 600; font-size: 5rem; line-height: 6.5rem; text-align: center; color: var(--text-black); }
.t-m { display: none; }
main > section + section { margin-top: 10rem; }
main > #contact { margin-top: 0; }

.archives { padding: 0 6.4rem; }
.archives .title { margin-bottom: 1rem; }
.archives__row { display: flex; align-items: center; justify-content: center; gap: 6.4rem; }
.archives__col { flex: 0 0 39.3rem; display: flex; flex-direction: column; gap: 2rem; font-size: clamp(14px, 2rem, 2rem); line-height: 2.4rem; }
.archives__img { flex: 0 0 auto; width: 39.8rem; height: 36.2rem; object-fit: cover; }
.list { list-style: disc; padding-left: 3rem; }

@media (max-width: 1024px) {
  .archives { padding: 0 3.2rem; }
  .archives__row { flex-direction: column; gap: 3.2rem; }
  .archives__col { flex: 0 0 auto; width: 100%; max-width: 60rem; }
  .archives__img { width: 39.8rem; max-width: 100%; height: auto; }
  .title { font-size: 4rem; line-height: 5.2rem; }
}
@media (max-width: 640px) {
  .t-d { display: none; }
  .t-m { display: inline; }
  main > section + section { margin-top: 5rem; }
  .title { font-size: 3rem; line-height: 4rem; }
  .archives { padding: 0 2.4rem; }
  .archives .title { margin-bottom: 2rem; min-height: 8rem; display: flex; align-items: center; justify-content: center; }
  .archives__row { gap: 2rem; align-items: stretch; }
  .archives__col { max-width: none; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 1.8rem; gap: 2rem; }
  .archives__img { width: 100%; height: 29.8rem; align-self: center; }
  .list { padding-left: 2rem; }
}
/* /stp:archives */
/* stp:discover */
.discover { padding: 6.4rem; background: var(--bg2); color: var(--text-white); }
.discover .title { color: var(--text-white); }
.discover__content { max-width: 131.2rem; margin: 0 auto; display: flex; flex-direction: column; align-items: center; gap: 4rem; }
.discover__text { width: 100%; text-align: center; font-size: clamp(14px, 2rem, 2rem); line-height: 2.4rem; }
.discover__elements { width: 100%; max-width: 117.6rem; display: flex; flex-direction: column; gap: 6.4rem; }
.discover__row { display: flex; align-items: center; justify-content: space-between; gap: 8.8rem; }
.discover__row--first { flex-direction: row-reverse; }
.discover__cards { flex: 0 0 58.8rem; display: flex; flex-direction: column; gap: 8rem; }
.discover__img { flex: 0 0 auto; width: 50rem; height: 89.4rem; border-radius: 2.4rem; object-fit: cover; }
.card { background: var(--bg-white); color: var(--text-black); border: 1px solid var(--border-card); border-radius: 1.6rem; padding: 2.4rem; box-shadow: 0 0.1rem 0.15rem rgba(0, 0, 0, 0.1), 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1); display: flex; flex-direction: column; gap: 1.6rem; transition: transform 0.3s, box-shadow 0.3s; }
.card:hover { transform: translateY(-0.4rem); box-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.18); }
.card__title { font-weight: 500; font-size: 3.2rem; line-height: 4.2rem; text-align: center; }
.card__text { font-size: clamp(14px, 2.4rem, 2.4rem); line-height: 3rem; }

@media (max-width: 1024px) {
  .discover { padding: 4.8rem 3.2rem; }
  .discover__row { gap: 4rem; }
  .discover__cards { flex: 1 1 auto; gap: 4rem; }
  .discover__img { width: 38rem; height: auto; }
  .card__title { font-size: 2.6rem; line-height: 3.4rem; }
  .card__text { font-size: 2rem; line-height: 2.6rem; }
}
@media (max-width: 640px) {
  .discover { padding: 4rem 2.4rem; }
  .discover__content { gap: 2rem; }
  .discover__text { font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 1.8rem; }
  .discover__elements { gap: 2rem; }
  .discover__row, .discover__row--first { display: contents; }
  .discover__cards { display: contents; }
  .discover__elements { align-items: center; }
  .discover__img { width: 30rem; height: 53.6rem; }
  .card { width: 100%; padding: 2rem; gap: 1rem; }
  .card__title { font-weight: 600; font-size: 2rem; line-height: 3rem; }
  .card__text { font-size: clamp(14px, 1.6rem, 1.6rem); line-height: 2rem; }
}
/* /stp:discover */
/* stp:explore */
.explore { padding: 0 6.4rem; }
.explore__main { display: flex; flex-direction: column; align-items: center; gap: 4rem; max-width: 131.2rem; margin: 0 auto; }
.explore__text { width: 100%; max-width: 74rem; display: flex; flex-direction: column; gap: 1.6rem; font-size: clamp(14px, 2rem, 2rem); line-height: 2.4rem; }
.explore__first { text-align: center; }

@media (max-width: 1024px) {
  .explore { padding: 0 3.2rem; }
}
@media (max-width: 640px) {
  .explore { padding: 0 2.4rem; }
  .explore__main { gap: 2rem; }
  .explore .title { min-height: 8rem; }
  .explore__text { max-width: none; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 1.8rem; }
}
/* /stp:explore */
/* stp:database */
.database { padding: 0 6.4rem; }
.database__main { display: flex; flex-direction: column; align-items: center; gap: 4rem; max-width: 131.2rem; margin: 0 auto; }
.database__text { width: 100%; display: flex; flex-direction: column; gap: 1.6rem; text-align: center; font-size: clamp(14px, 2rem, 2rem); line-height: 2.4rem; }
.database__cards { width: 100%; display: flex; align-items: center; gap: 4.6rem; }
.database__cards .card { flex: 1 1 0; min-width: 0; }
.database__head { min-height: 8.4rem; display: flex; align-items: center; justify-content: center; }
.list--card { padding-left: 3.6rem; font-size: clamp(14px, 2.4rem, 2.4rem); line-height: 3rem; }
.database__note { width: 100%; text-align: center; font-size: clamp(14px, 2rem, 2rem); line-height: 2.4rem; }

@media (max-width: 1024px) {
  .database { padding: 0 3.2rem; }
  .database__cards { flex-direction: column; align-items: stretch; gap: 3.2rem; }
  .database__head { min-height: 0; }
}
@media (max-width: 640px) {
  .database { padding: 0 2.4rem; }
  .database__main { gap: 2rem; }
  .database .title { min-height: 8rem; display: flex; align-items: center; justify-content: center; }
  .database__text { text-align: left; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 1.8rem; }
  .database__cards { gap: 1.6rem; }
  .database__head { min-height: 0; padding-bottom: 0; }
  .list--card { padding-left: 2.8rem; font-size: clamp(14px, 1.6rem, 1.6rem); line-height: 2rem; }
  .database__note { text-align: left; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 1.8rem; }
}
/* /stp:database */
/* stp:faq */
.faq { padding: 6.4rem; background: var(--bg2); color: var(--text-white); }
.faq .title { color: var(--text-white); }
.faq__main { max-width: 131.2rem; margin: 0 auto; display: flex; flex-direction: column; gap: 4rem; }
.faq__list { display: flex; flex-direction: column; gap: 1.6rem; }
.faq__item { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 1.6rem; transition: background-color 0.3s; }
.faq__item:hover { background: rgba(255, 255, 255, 0.16); }
.faq__q { display: flex; align-items: center; justify-content: space-between; gap: 3.2rem; padding: 2.05rem 3.2rem; list-style: none; cursor: pointer; font-weight: 600; font-size: clamp(14px, 2rem, 2rem); line-height: 3.2rem; transition: padding 0.35s ease; }
.faq__q::-webkit-details-marker { display: none; }
.faq__icon { flex: 0 0 auto; width: 2.4rem; height: 2.4rem; transition: transform 0.35s ease; }
.faq__item.is-open .faq__q { padding: 2.4rem 3.2rem; }
.faq__item.is-open .faq__icon { transform: rotate(180deg); }
.faq__a { padding: 0 3.2rem 2.4rem; max-width: 99.2rem; font-size: clamp(14px, 2rem, 2rem); line-height: 2.4rem; }

@media (max-width: 1024px) {
  .faq { padding: 4.8rem 3.2rem; }
  .faq__a { max-width: none; }
}
@media (max-width: 640px) {
  .faq { padding: 4rem 2.4rem; }
  .faq__main { gap: 2rem; }
  .faq__list { gap: 1rem; }
  .faq__q { gap: 1.6rem; padding: 1.9rem 2.4rem; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 1.8rem; }
  .faq__item.is-open .faq__q { padding: 2.4rem; }
  .faq__a { padding: 0 2.4rem 2.4rem; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 2rem; }
}
/* /stp:faq */
/* stp:contact */
.contact { padding: 6.4rem 27.2rem; background: var(--bg2); }
.contact__card { display: flex; flex-direction: column; align-items: center; gap: 3.2rem; padding: 6.4rem 10.5rem; background: var(--bg1); border: 1px solid var(--border-card); border-radius: 2.4rem; box-shadow: 0 2rem 1.25rem rgba(0, 0, 0, 0.1), 0 0.8rem 0.5rem rgba(0, 0, 0, 0.1); }
.contact__icon { display: flex; align-items: center; justify-content: center; width: 8rem; height: 8rem; border-radius: 50%; background: var(--bg2); }
.contact__icon img { width: 4rem; height: 4rem; }
.contact__text { width: 100%; max-width: 67.2rem; text-align: center; font-size: clamp(14px, 2rem, 2rem); line-height: 2.4rem; }
.contact__link { position: relative; display: flex; align-items: center; justify-content: center; width: 35.8rem; height: 6.8rem; border-radius: 2.4rem; background: var(--bg2); color: var(--text-white); box-shadow: 0 1rem 0.75rem rgba(0, 0, 0, 0.1), 0 0.4rem 0.3rem rgba(0, 0, 0, 0.1); }
.contact__link:hover { background: #2a4296; transform: translateY(-0.2rem); }
.contact__mail { padding-right: 2.7rem; font-family: var(--font-head); font-size: clamp(14px, 1.8rem, 1.8rem); line-height: 2.4rem; }
.contact__arrow { position: absolute; right: 4rem; font-size: clamp(14px, 1.8rem, 1.8rem); line-height: 2.8rem; transition: transform 0.3s; }
.contact__link:hover .contact__arrow { transform: translateX(0.4rem); }

@media (max-width: 1024px) {
  .contact { padding: 4.8rem 3.2rem; }
  .contact__card { padding: 4.8rem 3.2rem; }
}
@media (max-width: 640px) {
  .contact { padding: 4rem 2.4rem; }
  .contact__card { gap: 2rem; padding: 2rem 1rem; }
  .contact__icon { width: 6.4rem; height: 6.4rem; }
  .contact__icon img { width: 4rem; height: 4rem; }
  .contact__text { max-width: 29rem; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 1.8rem; }
  .contact__link { width: 100%; height: 5.4rem; border-radius: 2rem; }
  .contact__mail { padding-right: 3rem; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 2.8rem; }
  .contact__arrow { right: 4.2rem; font-size: clamp(14px, 1.8rem, 1.8rem); }
}
/* /stp:contact */
/* stp:footer */
.footer { display: flex; flex-direction: column; align-items: center; gap: 5rem; padding: 5rem 6.4rem; background: var(--bg2); color: var(--text-white); font-family: var(--font-head); font-size: clamp(14px, 1.8rem, 1.8rem); line-height: 2.4rem; text-align: center; }
.footer .nav-link { font-size: inherit; line-height: inherit; color: var(--text-white); }
.footer .nav-link:hover, .footer a:hover { color: var(--bg1); text-decoration: underline; }
.footer__row { width: 100%; display: flex; align-items: center; justify-content: center; gap: 19.2rem; padding: 0 1.8rem; }
.footer__legal { width: 35.2rem; }

@media (max-width: 1024px) {
  .footer { padding: 4rem 3.2rem; }
  .footer__row { gap: 4rem; padding: 0; flex-wrap: wrap; }
  .footer__legal { width: auto; }
}
@media (max-width: 640px) {
  .footer { gap: 4rem; padding: 3.2rem 2.4rem; font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 1.8rem; }
  .footer__nav { max-width: 25rem; }
  .footer__row { flex-direction: column-reverse; gap: 4rem; }
  .footer__copy { max-width: 25rem; }
}
/* /stp:footer */
/* stp:legal */
.legal-body { min-height: 100vh; display: flex; flex-direction: column; background: var(--bg-white); }
.legal-main { flex: 1 0 auto; }.header--legal { height: 6.4rem; padding: 0 1rem; display: flex; align-items: center; justify-content: flex-start; background: var(--bg-white); }
.legal-main { padding-top: 6.4rem; }
.legal-close { position: relative; display: block; width: 4.1rem; height: 4.1rem; }
.legal-close span { position: absolute; top: 50%; left: 50%; width: 2.8rem; height: 0.2rem; margin: -0.1rem 0 0 -1.4rem; background: var(--text-black); transition: background-color 0.3s; }
.legal-close span:nth-child(1) { transform: rotate(45deg); }
.legal-close span:nth-child(2) { transform: rotate(-45deg); }
.legal-close:hover span { background: var(--accent); }
.legal-page { padding: 0 4rem 6.4rem; }
.legal-content { max-width: 136rem; margin: 0 auto; font-family: var(--font-body); font-size: clamp(14px, 2.4rem, 2.4rem); line-height: 1.5; color: #000; }
.legal-content h1 { margin-bottom: 4rem; font-family: var(--font-head); font-weight: 600; font-size: 5rem; line-height: 6.5rem; text-align: center; color: var(--text-black); }
.legal-content h2, .legal-content h3, .legal-content h4 { margin: 3rem 0 1.5rem; font-weight: 700; line-height: 1.3; }
.legal-content h2 { font-size: 3rem; }
.legal-content h3 { font-size: 2.6rem; }
.legal-content h4 { font-size: 2.4rem; }
.legal-content p, .legal-content ul, .legal-content ol { margin: 0 0 3rem; }
.legal-content ul { list-style: disc; padding-left: 3.6rem; }
.legal-content ol { list-style: decimal; padding-left: 3.6rem; }
.legal-content li { margin-bottom: 0.8rem; }
.legal-content a { color: var(--bg2); text-decoration: underline; }
.legal-content a:hover { color: var(--accent); }
.legal-content strong, .legal-content b { font-weight: 700; }
.legal-content em, .legal-content i { font-style: italic; }
.legal-content u { text-decoration: underline; }

@media (max-width: 1024px) {
  .legal-page { padding: 0 3.2rem 4.8rem; }
  .legal-content h1 { font-size: 4rem; line-height: 5.2rem; }
}
@media (max-width: 640px) {
  .header--legal { height: 4.4rem; padding: 0 1rem; }
  .legal-main { padding-top: 4.4rem; }
  .legal-close { width: 2.4rem; height: 2.4rem; }
  .legal-close span { width: 1.7rem; margin-left: -0.85rem; }
  .legal-page { padding: 0 1.6rem 4rem; }
  .legal-content { font-size: clamp(14px, 1.4rem, 1.4rem); line-height: 1.8rem; }
  .legal-content h1 { margin-bottom: 2rem; font-size: 3rem; line-height: 4rem; }
  .legal-content h2 { font-size: 2rem; margin: 2rem 0 1rem; }
  .legal-content h3, .legal-content h4 { font-size: 1.8rem; margin: 2rem 0 1rem; }
  .legal-content p, .legal-content ul, .legal-content ol { margin-bottom: 2rem; }
  .legal-content ul, .legal-content ol { padding-left: 2.4rem; }
}
/* /stp:legal */
/* stp:title-anim */
.title-anim { opacity: 0; transform: translateY(3rem); filter: blur(6px); transition: opacity 0.8s ease, transform 0.8s cubic-bezier(0.22, 1, 0.36, 1), filter 0.8s ease; }
.title-anim.is-visible { opacity: 1; transform: none; filter: none; }
/* /stp:title-anim */
/* stp:hero-decode */
.hero-decode { position: relative; }
.hero-decode__ghost { visibility: hidden; }
.hero-decode__live { position: absolute; inset: 0; }
.hero-decode__cursor { display: inline-block; width: 0.5em; height: 0.12em; margin-left: 0.08em; background: var(--accent); box-shadow: 0 0 1rem rgba(61, 109, 242, 0.9); vertical-align: baseline; animation: hero-decode-blink 0.9s steps(1) infinite; }
.hero-decode.is-done .hero-decode__live { animation: hero-decode-glitch 0.45s steps(2) 1; }
@keyframes hero-decode-blink { 50% { opacity: 0; } }
@keyframes hero-decode-glitch {
  0% { transform: translateX(0.4rem); text-shadow: -0.3rem 0 rgba(61, 109, 242, 0.9), 0.3rem 0 rgba(255, 0, 90, 0.6); }
  50% { transform: translateX(-0.3rem); text-shadow: 0.3rem 0 rgba(61, 109, 242, 0.9), -0.3rem 0 rgba(255, 0, 90, 0.6); }
  100% { transform: none; text-shadow: none; }
}
/* section titles: same "decoded" style as the hero title */
.title.title-anim { opacity: 1; transform: none; filter: none; transition: none; clip-path: inset(0 100% 0 0); }
.title.title-anim.is-visible { animation: title-type 0.8s steps(16) forwards, hero-decode-glitch 0.45s steps(2) 0.85s 1; }
@keyframes title-type { to { clip-path: inset(0 0 0 0); } }
/* /stp:hero-decode */
