@import "https://cdn.jsdelivr.net/npm/@fontsource/fira-code@latest/400.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/fira-code@latest/700.css";

* {
  box-sizing: border-box
}

html {
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 16px;
  line-height: 1.5
}

body {
  margin: 0
}

.sitehdr {
  background: linear-gradient(160deg, #F9F2F8 0%, #fff 55%, #F9F2F8 100%);
  border-bottom: 2px solid #C396BF;
  box-shadow: 0 3px 2px 1px #a5488b12 0 5px 25px 1px #a5488b17;
  padding: 0;
  position: relative;
  overflow: hidden
}

.sitehdr::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #A5488B 0%, #C396BF 50%, #A5488B 100%);
  pointer-events: none
}

.hdr-top {
  max-width: 1100px;
  margin: 0 auto;
  padding: 16px 24px 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px
}

.hdr-accent {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0
}

.hdr-accent-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #A5488B;
  box-shadow: 0 0 0 3px #a5488b2e
}

.hdr-accent-line {
  width: 48px;
  height: 2px;
  background: linear-gradient(90deg, #A5488B, #C396BF);
  border-radius: 4px
}

.hdr-tagline {
  font-size: 16px;
  color: #A5488B;
  letter-spacing: .12em;
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap
}

.logobox {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 36px;
  background: #fff;
  box-shadow: 0 0 0 2px #C396BF, 0 0 0 4px #a5488b2e 0 3px 2px 1px #a5488b12 0 5px 25px 1px #a5488b17;
  transition: box-shadow .15s ease-out
}

.logobox:hover {
  box-shadow: 0 0 0 2px #A5488B, 0 0 0 5px #a5488b47 0 5px 25px 1px #a5488b21 0 12px 40px 1px #a5488b1c
}

.logobox img {
  width: 72px;
  height: 72px;
  object-fit: contain;
  display: block
}

.hdr-nav-row {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex-wrap: wrap
}

.navlink {
  display: inline-flex;
  align-items: center;
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 16px;
  font-weight: 700;
  color: #2d1a28;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 7px;
  border: 1.5px solid transparent;
  letter-spacing: .04em;
  min-height: 44px;
  transition: background .12s ease-out, border-color .12s ease-out, color .15s ease;
  white-space: nowrap
}

.navlink:hover {
  background: #F9F2F8;
  border-color: #C396BF;
  color: #A5488B
}

.navlink:focus {
  outline: 2px solid #A5488B;
  outline-offset: 2px
}

.navlink.active {
  background: #A5488B;
  color: #fff;
  border-color: #A5488B;
  box-shadow: inset 0 2px 6px #a5488b38
}

.navlink.active:hover {
  background: #8e3a78;
  color: #fff
}

.navsep {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #C396BF;
  flex-shrink: 0;
  margin: 0 4px
}

.siteftr {
  background: linear-gradient(175deg, #2d1a28 0%, #1e0f1b 100%);
  color: #F9F2F8;
  padding: 48px 0 0;
  box-shadow: 0 -3px 2px 1px #a5488b12 0 -5px 25px 1px #a5488b17
}

.ftr-main {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px 48px;
  display: grid;
  grid-template-columns: 1fr 1px 1fr 1px 1fr;
  gap: 0 24px;
  align-items: start
}

.ftr-divider {
  background: #c396bf40;
  align-self: stretch;
  min-height: 80px
}

.ftr-col {
  padding: 0 8px
}

.ftr-col-brand {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.ftr-logobox {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  border-radius: 22px;
  background: #ffffff0f;
  box-shadow: 0 0 0 1px #c396bf59 0 3px 2px 1px #a5488b12;
  width: fit-content
}

.ftr-logobox img {
  width: 65px;
  height: 65px;
  object-fit: contain;
  display: block
}

.ftr-brand-name {
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  line-height: 1.1;
  letter-spacing: .06em
}

.ftr-brand-desc {
  font-size: 16px;
  color: #C396BF;
  line-height: 1.5
}

.ftr-col-label {
  font-size: 16px;
  font-weight: 700;
  color: #C396BF;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: block
}

.ftr-nav {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px
}

.ftr-nav li {
  margin: 0;
  padding: 0
}

.ftr-nav a {
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 16px;
  color: #F9F2F8;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 0;
  border-radius: 4px;
  transition: color .12s ease-out;
  line-height: 1.5
}

.ftr-nav a::before {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #A5488B;
  flex-shrink: 0
}

.ftr-nav a:hover {
  color: #C396BF
}

.ftr-nav a:focus {
  outline: 2px solid #C396BF;
  outline-offset: 2px
}

.ftr-contact-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 16px
}

.ftr-contact-label {
  font-size: 16px;
  color: #C396BF;
  font-weight: 700;
  letter-spacing: .06em
}

.ftr-contact-val {
  font-size: 16px;
  color: #F9F2F8;
  word-break: break-all
}

.ftr-contact-val a {
  color: #F9F2F8;
  text-decoration: none;
  transition: color .12s ease-out
}

.ftr-contact-val a:hover {
  color: #C396BF
}

.ftr-contact-val a:focus {
  outline: 2px solid #C396BF;
  outline-offset: 2px
}

.ftr-bottom {
  border-top: 1px solid #c396bf2e;
  background: #0000002e
}

.ftr-bottom-inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 16px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px
}

.ftr-copy {
  font-size: 16px;
  color: #f9f2f88c;
  line-height: 1.5
}

.ftr-legal {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap
}

.ftr-legal a {
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 16px;
  color: #f9f2f88c;
  text-decoration: none;
  transition: color .12s ease-out
}

.ftr-legal a:hover {
  color: #C396BF
}

.ftr-legal a:focus {
  outline: 2px solid #C396BF;
  outline-offset: 2px
}

.ftr-legal-sep {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #c396bf66
}

.ckpopup {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 1000;
  background: #fff;
  border: 2px solid #C396BF;
  border-radius: 13px;
  box-shadow: 0 5px 25px 1px #a5488b17 0 12px 40px 1px #a5488b1c;
  padding: 24px;
  max-width: 380px;
  width: calc(100vw - 48px)
}

.ckpopup-desc {
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 16px;
  color: #2d1a28;
  line-height: 1.5;
  margin-bottom: 8px
}

.ckpopup-head {
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 18px;
  font-weight: 700;
  color: #2d1a28;
  line-height: 1.1;
  margin-bottom: 16px;
  display: block
}

.ckpopup-policy {
  display: block;
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 16px;
  color: #A5488B;
  text-decoration: underline;
  margin-bottom: 16px
}

.ckpopup-policy:hover {
  color: #8e3a78
}

.ckpopup-policy:focus {
  outline: 2px solid #A5488B;
  outline-offset: 2px
}

.ckoptrow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 16px;
  padding: 8px;
  background: #F9F2F8;
  border-radius: 7px
}

.ckoptlabel {
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 16px;
  color: #2d1a28;
  line-height: 1.5
}

.cktoggle {
  position: relative;
  width: 40px;
  height: 22px;
  flex-shrink: 0
}

.cktoggle input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute
}

.cktoggle-track {
  position: absolute;
  inset: 0;
  background: #C396BF;
  border-radius: 22px;
  cursor: pointer;
  transition: background .15s ease-out
}

.cktoggle input:checked+.cktoggle-track {
  background: #A5488B
}

.cktoggle-track::after {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  transition: transform .15s ease-out
}

.cktoggle input:checked+.cktoggle-track::after {
  transform: translateX(18px)
}

.cktoggle input:focus+.cktoggle-track {
  outline: 2px solid #A5488B;
  outline-offset: 2px
}

.cktoggle-disabled .cktoggle-track {
  background: #A5488B;
  cursor: not-allowed;
  opacity: .7
}

.ckbtnrow {
  display: flex;
  gap: 8px;
  margin-top: 8px
}

.ckbtn {
  flex: 1;
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 16px;
  font-weight: 700;
  border: 2px solid #A5488B;
  border-radius: 7px;
  padding: 8px 16px;
  min-height: 44px;
  cursor: pointer;
  transition: background .12s ease-out, color .12s ease-out;
  letter-spacing: .04em
}

.ckbtn.accept {
  background: #A5488B;
  color: #fff
}

.ckbtn.accept:hover {
  background: #8e3a78;
  border-color: #8e3a78
}

.ckbtn.accept:focus {
  outline: 2px solid #2d1a28;
  outline-offset: 2px
}

.ckbtn.decline {
  background: #fff;
  color: #A5488B
}

.ckbtn.decline:hover {
  background: #F9F2F8
}

.ckbtn.decline:focus {
  outline: 2px solid #A5488B;
  outline-offset: 2px
}

@media (max-width: 900px) {
  .ftr-main {
    grid-template-columns: 1fr;
    gap: 24px 0
  }

  .ftr-divider {
    display: none
  }

  .ftr-col {
    padding: 0
  }
}

@media (max-width: 600px) {
  .hdr-top {
    flex-direction: column;
    align-items: center;
    padding: 16px 16px 8px;
    gap: 16px
  }

  .hdr-accent {
    order: -1
  }

  .hdr-nav-row {
    padding: 0 16px 16px;
    gap: 4px
  }

  .navlink {
    font-size: 16px;
    padding: 8px 12px
  }

  .navsep {
    display: none
  }

  .ftr-bottom-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px
  }

  .ckpopup {
    bottom: 16px;
    left: 16px;
    width: calc(100vw - 32px)
  }
}

.legal-info {
  max-width: 1100px;
  margin: 0 auto;
  padding: 48px 24px
}

.legal-info p {
  font-size: 18px;
  line-height: 1.9;
  color: #2a1f28;
  margin-bottom: 24px
}

.legal-info ul,
.legal-info ol {
  margin: 0 0 24px;
  padding-left: 24px
}

.legal-info li {
  font-size: 18px;
  line-height: 1.9;
  color: #2a1f28;
  margin-bottom: 8px
}

.legal-info ul li {
  list-style-type: disc
}

.legal-info ol li {
  list-style-type: decimal
}

.legal-info ul ul,
.legal-info ol ol,
.legal-info ul ol,
.legal-info ol ul {
  margin-top: 8px;
  margin-bottom: 8px
}

.legal-info strong,
.legal-info b {
  font-weight: 700;
  color: #1e1520
}

.legal-info a {
  color: #A5488B;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  transition: color .15s ease-out, text-decoration-color .1s ease-out
}

.legal-info a:hover {
  color: #7a3368;
  text-decoration-color: #C396BF
}

.legal-info a:focus-visible {
  outline: 2px solid #A5488B;
  outline-offset: 2px;
  border-radius: 4px
}

.legal-info hr {
  border: none;
  border-top: 2px solid #F9F2F8;
  margin: 48px 0;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.legal-info div {
  margin-bottom: 24px
}

@media (max-width: 600px) {
  .legal-info {
    padding: 24px 16px
  }

  .legal-info p,
  .legal-info li {
    font-size: 16px;
    line-height: 1.9
  }

  .legal-info ul,
  .legal-info ol {
    padding-left: 16px
  }
}

@media (min-width: 601px) and (max-width: 900px) {
  .legal-info {
    padding: 48px 24px
  }
}

.bdet {
  max-width: 100%;
  overflow-x: hidden
}

.bdet .pg {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px
}

.bdet .crumb {
  background: #fff;
  border-bottom: 1px solid #C396BF;
  padding: 8px 0
}

.bdet .crumb nav {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px
}

.bdet .crumb nav a {
  font-size: 16px;
  color: #A5488B;
  text-decoration: none;
  line-height: 1.5;
  transition: color .15s ease-out
}

.bdet .crumb nav a:hover {
  color: #7a3368
}

.bdet .crumb nav span {
  font-size: 16px;
  color: #555;
  line-height: 1.5
}

.bdet .crumb nav .sep {
  color: #C396BF;
  font-size: 16px
}

.bdet .titblock {
  background: #fff;
  padding: 48px 0 24px
}

.bdet .titblock .pg {
  display: grid;
  grid-template-columns: 1fr 2fr;
  grid-template-rows: auto auto;
  gap: 24px;
  align-items: start
}

.bdet .titblock .imgcell {
  grid-column: 1;
  grid-row: 1 / 3;
  position: relative;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 5px 25px 1px #a5488b17
}

.bdet .titblock .imgcell img {
  width: 100%;
  height: 380px;
  object-fit: cover;
  border-radius: 13px;
  display: block;
  filter: blur(0px);
  transition: filter .2s ease-out
}

.bdet .titblock .imgcell::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 13px;
  background: linear-gradient(160deg, #a5488b14 0%, #f9f2f82e 100%);
  pointer-events: none
}

.bdet .titblock .shp {
  position: absolute;
  width: 120px;
  height: 120px;
  border-radius: 22px;
  border: 2px solid #c396bf4d;
  bottom: -16px;
  right: -16px;
  pointer-events: none;
  z-index: 0
}

.bdet .titblock .shp2 {
  position: absolute;
  width: 60px;
  height: 60px;
  border-radius: 36px;
  border: 2px solid #a5488b33;
  top: -8px;
  left: -8px;
  pointer-events: none;
  z-index: 0
}

.bdet .titblock .metacell {
  grid-column: 2;
  grid-row: 1;
  padding: 8px 0
}

.bdet .titblock .tagbadge {
  display: inline-block;
  background: #F9F2F8;
  color: #A5488B;
  border: 1px solid #C396BF;
  border-radius: 4px;
  font-size: 16px;
  padding: 4px 16px;
  letter-spacing: .08em;
  margin-bottom: 16px
}

.bdet .titblock .arttitle {
  font-size: 56px;
  line-height: 1.1;
  color: #1e1e1e;
  margin: 0 0 16px
}

.bdet .titblock .authline {
  font-size: 16px;
  color: #555;
  line-height: 1.5;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px
}

.bdet .titblock .authname {
  color: #A5488B;
  font-size: 16px
}

.bdet .titblock .desccell {
  grid-column: 2;
  grid-row: 2
}

.bdet .divline {
  height: 2px;
  background: linear-gradient(105deg, #A5488B 0%, #C396BF 60%, transparent 100%);
  margin: 0
}

.bdet .artbody {
  background: #F9F2F8;
  padding: 48px 0
}

.bdet .artbody .pg {
  display: grid;
  grid-template-columns: 1fr 5fr 1fr;
  gap: 24px
}

.bdet .artbody .symbg {
  grid-column: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding-top: 8px
}

.bdet .artbody .sym {
  font-size: 72px;
  line-height: 1.1;
  color: #a5488b14;
  font-style: italic;
  user-select: none;
  pointer-events: none
}

.bdet .artbody .prose {
  grid-column: 2
}

.bdet .artbody .prose p {
  font-size: 18px;
  line-height: 1.9;
  color: #2a2a2a;
  margin: 0 0 16px
}

.bdet .artbody .prose h2 {
  font-size: 28px;
  line-height: 1.1;
  color: #1e1e1e;
  margin: 24px 0 16px;
  background: linear-gradient(105deg, #F9F2F8 0%, #f0e4ef 100%);
  padding: 8px 16px;
  border-radius: 7px;
  display: inline-block
}

.bdet .artbody .prose h3 {
  font-size: 22px;
  line-height: 1.5;
  color: #A5488B;
  margin: 24px 0 8px
}

.bdet .artbody .prose em {
  color: #A5488B;
  font-style: italic
}

.bdet .artbody .prose code {
  background: #F9F2F8;
  border: 1px solid #C396BF;
  border-radius: 4px;
  padding: 4px 8px;
  font-size: 16px;
  color: #7a3368
}

.bdet .artbody .prose details {
  background: #fff;
  border: 1px solid #C396BF;
  border-radius: 7px;
  padding: 8px 16px;
  margin: 16px 0;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.bdet .artbody .prose summary {
  font-size: 18px;
  color: #A5488B;
  cursor: pointer;
  line-height: 1.5;
  font-weight: 600;
  padding: 4px 0;
  transition: color .15s ease-out
}

.bdet .artbody .prose summary:hover {
  color: #7a3368
}

.bdet .artbody .sidenote {
  grid-column: 3;
  padding-top: 8px
}

.bdet .divslant {
  height: 3px;
  background: linear-gradient(105deg, transparent 0%, #C396BF 40%, #A5488B 100%)
}

.bdet .tagstrip {
  background: #fff;
  padding: 24px 0;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.bdet .tagstrip .pg {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap
}

.bdet .tagstrip .tglabel {
  font-size: 16px;
  color: #555;
  letter-spacing: .06em;
  text-transform: uppercase
}

.bdet .tagstrip .tgpill {
  display: inline-block;
  background: #F9F2F8;
  color: #A5488B;
  border: 1px solid #C396BF;
  border-radius: 22px;
  padding: 4px 16px;
  font-size: 16px;
  text-decoration: none;
  transition: background .12s ease-out, color .12s ease-out;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.bdet .tagstrip .tgpill:hover {
  background: #A5488B;
  color: #fff
}

.bdet .cta {
  background: linear-gradient(160deg, #A5488B 0%, #7a3368 100%);
  padding: 48px 0
}

.bdet .cta .pg {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 24px
}

.bdet .cta .ctxt h2 {
  font-size: 28px;
  line-height: 1.1;
  color: #fff;
  margin: 0 0 8px
}

.bdet .cta .ctxt p {
  font-size: 18px;
  color: #f9f2f8d9;
  line-height: 1.5;
  margin: 0
}

.bdet .cta .cbtn {
  display: inline-block;
  background: #fff;
  color: #A5488B;
  border-radius: 4px;
  padding: 16px 24px;
  font-size: 18px;
  text-decoration: none;
  font-weight: 700;
  white-space: nowrap;
  box-shadow: 0 5px 25px 1px #a5488b17;
  transition: background .18s ease-out, color .18s ease-out, box-shadow .18s ease-out
}

.bdet .cta .cbtn:hover {
  background: #F9F2F8;
  color: #7a3368;
  box-shadow: 0 12px 40px 1px #a5488b1c
}

@media (max-width: 900px) {
  .bdet .titblock .pg {
    grid-template-columns: 1fr;
    grid-template-rows: auto
  }

  .bdet .titblock .imgcell {
    grid-column: 1;
    grid-row: 1
  }

  .bdet .titblock .metacell {
    grid-column: 1;
    grid-row: 2
  }

  .bdet .titblock .desccell {
    grid-column: 1;
    grid-row: 3
  }

  .bdet .titblock .arttitle {
    font-size: 28px
  }

  .bdet .artbody .pg {
    grid-template-columns: 1fr
  }

  .bdet .artbody .symbg {
    display: none
  }

  .bdet .artbody .sidenote {
    display: none
  }

  .bdet .artbody .prose {
    grid-column: 1
  }

  .bdet .cta .pg {
    flex-direction: column;
    align-items: flex-start
  }
}

@media (max-width: 600px) {
  .bdet .titblock {
    padding: 24px 0 16px
  }

  .bdet .titblock .arttitle {
    font-size: 22px
  }

  .bdet .titblock .imgcell img {
    height: 220px
  }

  .bdet .cta {
    padding: 24px 0
  }
}

@media (min-width: 1200px) {
  .bdet .artbody .pg {
    grid-template-columns: 1fr 6fr 1fr
  }
}

.bdet .reveal {
  animation: diagrev .2s ease-out both
}

.bdet .reveal2 {
  animation: diagrev .18s .05s ease-out both
}

.bdet .reveal3 {
  animation: diagrev .16s .1s ease-out both
}

@keyframes diagrev {
  from {
    opacity: 0;
    transform: translate(-12px, 8px)
  }

  to {
    opacity: 1;
    transform: translate(0, 0)
  }
}

.aauth {
  max-width: 100%;
  overflow-x: hidden;
  background: #fff
}

.aauth .constrain {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px
}

.aauth .pill {
  display: inline-block;
  background: #F9F2F8;
  color: #A5488B;
  font-size: 16px;
  letter-spacing: .08em;
  padding: 4px 16px;
  border-radius: 36px;
  font-weight: 600;
  border: 1px solid #C396BF
}

.aauth .intro {
  background: linear-gradient(135deg, #F9F2F8 0%, #fff 60%);
  padding: 48px 0 64px;
  position: relative
}

.aauth .intro-inner {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 48px
}

.aauth .intro-text {
  flex: 1 1 0;
  min-width: 0
}

.aauth .intro-text .pill {
  margin-bottom: 16px
}

.aauth .intro-h1 {
  font-size: 56px;
  line-height: 1.1;
  color: #1b1014;
  margin: 0 0 8px;
  font-weight: 800;
  letter-spacing: -.01em
}

.aauth .intro-sub {
  font-size: 22px;
  line-height: 1.5;
  color: #5a2d4e;
  margin: 0 0 24px;
  font-weight: 400
}

.aauth .intro-body {
  font-size: 18px;
  line-height: 1.9;
  color: #2e1a28;
  margin: 0 0 24px;
  max-width: 560px
}

.aauth .intro-stats {
  display: flex;
  flex-direction: row;
  gap: 24px;
  margin-top: 24px;
  flex-wrap: wrap
}

.aauth .stat-item {
  background: #fff;
  border: 1px solid #C396BF;
  border-radius: 13px;
  padding: 16px 24px;
  min-width: 110px;
  box-shadow: 0 3px 2px 1px #a5488b12;
  text-align: center
}

.aauth .stat-num {
  display: block;
  font-size: 28px;
  font-weight: 800;
  color: #A5488B;
  line-height: 1.1
}

.aauth .stat-label {
  display: block;
  font-size: 16px;
  color: #5a2d4e;
  line-height: 1.5;
  margin-top: 4px
}

.aauth .intro-card {
  flex: 0 0 320px;
  width: 320px;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 5px 25px 1px #a5488b17 0 12px 40px 1px #a5488b1c;
  position: relative;
  align-self: flex-start
}

.aauth .intro-card img {
  width: 320px;
  height: 400px;
  object-fit: cover;
  display: block
}

.aauth .intro-card-overlay {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 50% 30%, #a5488b14 0%, #a5488b52 100%);
  pointer-events: none
}

.aauth .pattern-row {
  display: flex;
  flex-direction: row;
  gap: 8px;
  margin-bottom: 24px;
  flex-wrap: wrap
}

.aauth .dot-pat {
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background: #C396BF;
  opacity: .5;
  display: inline-block
}

.aauth .dot-pat.dark {
  background: #A5488B;
  opacity: .7
}

.aauth .expertise {
  background: #2e1a28;
  padding: 48px 0;
  position: relative
}

.aauth .expertise-inner {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 48px;
  align-items: start
}

.aauth .exp-sidebar {
  position: relative
}

.aauth .exp-sidebar-img {
  width: 100%;
  height: 340px;
  object-fit: cover;
  border-radius: 13px;
  display: block;
  box-shadow: 0 5px 25px 1px #a5488b17
}

.aauth .exp-sidebar-img2 {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 13px;
  display: block;
  margin-top: 16px;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.aauth .exp-right {
  color: #f5eaf3
}

.aauth .exp-label {
  display: inline-block;
  background: #A5488B;
  color: #fff;
  font-size: 16px;
  letter-spacing: .1em;
  padding: 4px 16px;
  border-radius: 7px;
  font-weight: 600;
  margin-bottom: 16px
}

.aauth .exp-h2 {
  font-size: 28px;
  line-height: 1.1;
  color: #fff;
  margin: 0 0 24px;
  font-weight: 700
}

.aauth .exp-h2 .strip {
  background: #A5488B;
  padding: 2px 8px;
  border-radius: 4px;
  color: #fff
}

.aauth .exp-list {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px
}

.aauth .exp-list li {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  font-size: 18px;
  line-height: 1.5;
  color: #f5eaf3
}

.aauth .exp-icon {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 7px;
  background: #A5488B;
  display: flex;
  align-items: center;
  justify-content: center
}

.aauth .exp-icon svg {
  width: 18px;
  height: 18px;
  fill: #fff
}

.aauth .exp-body {
  font-size: 18px;
  line-height: 1.9;
  color: #e8d5e4;
  margin: 0 0 16px;
  max-width: 580px
}

.aauth .exp-quote {
  border-top: 2px solid #A5488B;
  padding-top: 16px;
  margin-top: 16px
}

.aauth .exp-quote-text {
  font-size: 22px;
  line-height: 1.5;
  color: #C396BF;
  font-style: italic;
  margin: 0
}

.aauth .philos {
  background: linear-gradient(100deg, #F9F2F8 0%, #fff 100%);
  padding: 48px 0 64px
}

.aauth .philos-inner {
  display: flex;
  flex-direction: column;
  gap: 48px
}

.aauth .philos-top {
  display: flex;
  flex-direction: row;
  gap: 48px;
  align-items: center
}

.aauth .philos-text {
  flex: 1 1 0;
  min-width: 0
}

.aauth .philos-label {
  display: inline-block;
  background: #C396BF;
  color: #2e1a28;
  font-size: 16px;
  letter-spacing: .08em;
  padding: 4px 16px;
  border-radius: 36px;
  font-weight: 600;
  margin-bottom: 16px
}

.aauth .philos-h2 {
  font-size: 28px;
  line-height: 1.1;
  color: #1b1014;
  margin: 0 0 16px;
  font-weight: 700
}

.aauth .philos-body {
  font-size: 18px;
  line-height: 1.9;
  color: #2e1a28;
  margin: 0 0 16px;
  max-width: 520px
}

.aauth .philos-img-wrap {
  flex: 0 0 300px;
  width: 300px;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 5px 25px 1px #a5488b17;
  position: relative
}

.aauth .philos-img-wrap img {
  width: 300px;
  height: 360px;
  object-fit: cover;
  display: block
}

.aauth .philos-img-overlay {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 50% 40%, #a5488b0d 0%, #a5488b40 100%);
  pointer-events: none
}

.aauth .seasons-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px
}

.aauth .season-card {
  background: #fff;
  border-radius: 13px;
  padding: 24px 16px;
  box-shadow: 0 3px 2px 1px #a5488b12;
  border: 1px solid #F9F2F8;
  transition: box-shadow .15s ease-out, border-color .12s ease-out;
  cursor: default
}

.aauth .season-card:hover {
  box-shadow: 0 5px 25px 1px #a5488b17;
  border-color: #C396BF
}

.aauth .season-icon {
  width: 44px;
  height: 44px;
  border-radius: 13px;
  background: #F9F2F8;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px
}

.aauth .season-icon svg {
  width: 24px;
  height: 24px
}

.aauth .season-name {
  font-size: 18px;
  font-weight: 700;
  color: #A5488B;
  margin: 0 0 8px;
  line-height: 1.1
}

.aauth .season-desc {
  font-size: 16px;
  line-height: 1.5;
  color: #2e1a28;
  margin: 0
}

.aauth .philos-imgs-row {
  display: flex;
  flex-direction: row;
  gap: 16px
}

.aauth .philos-img-sm {
  flex: 1 1 0;
  min-width: 0;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.aauth .philos-img-sm img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
  transition: transform .18s ease-out
}

.aauth .philos-img-sm:hover img {
  transform: scale(1.03)
}

.aauth .corner-tl,
.aauth .corner-br {
  position: absolute;
  pointer-events: none;
  z-index: 0
}

.aauth .corner-tl {
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 48px 48px 0 0;
  border-color: #C396BF transparent transparent;
  opacity: .3
}

.aauth .corner-br {
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 48px 48px;
  border-color: transparent transparent #A5488B;
  opacity: .2
}

.aauth .div-fade {
  height: 2px;
  background: linear-gradient(90deg, #A5488B 0%, #C396BF 40%, transparent 100%);
  border: none;
  margin: 0
}

.aauth .div-fade2 {
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, #C396BF 40%, #F9F2F8 100%);
  border: none;
  margin: 0
}

@media (max-width: 900px) {
  .aauth .intro-inner {
    flex-direction: column
  }

  .aauth .intro-card {
    flex: 0 0 auto;
    width: 100%;
    max-width: 400px;
    align-self: center
  }

  .aauth .intro-card img {
    width: 100%;
    height: 320px
  }

  .aauth .expertise-inner {
    grid-template-columns: 1fr
  }

  .aauth .exp-sidebar-img {
    height: 220px
  }

  .aauth .exp-sidebar-img2 {
    height: 140px
  }

  .aauth .philos-top {
    flex-direction: column
  }

  .aauth .philos-img-wrap {
    flex: 0 0 auto;
    width: 100%;
    max-width: 400px;
    align-self: center
  }

  .aauth .philos-img-wrap img {
    width: 100%;
    height: 260px
  }

  .aauth .seasons-row {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media (max-width: 600px) {
  .aauth .intro-h1 {
    font-size: 36px
  }

  .aauth .intro-sub {
    font-size: 18px
  }

  .aauth .intro-stats {
    gap: 8px
  }

  .aauth .stat-item {
    padding: 8px 16px;
    min-width: 80px
  }

  .aauth .stat-num {
    font-size: 22px
  }

  .aauth .seasons-row {
    grid-template-columns: 1fr 1fr;
    gap: 8px
  }

  .aauth .season-card {
    padding: 16px 8px
  }

  .aauth .philos-imgs-row {
    flex-direction: column
  }

  .aauth .exp-h2 {
    font-size: 22px
  }

  .aauth .intro {
    padding: 24px 0 48px
  }

  .aauth .expertise {
    padding: 24px 0
  }

  .aauth .philos {
    padding: 24px 0 48px
  }
}

@media (max-width: 1200px) {
  .aauth .intro-card {
    flex: 0 0 260px;
    width: 260px
  }

  .aauth .intro-card img {
    width: 260px;
    height: 340px
  }
}

.wbn {
  max-width: 100%;
  overflow-x: hidden
}

.wbn .inner-cap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px
}

.wbn .eyebrow {
  display: inline-block;
  font-size: 16px;
  letter-spacing: .12em;
  color: #A5488B;
  background: #F9F2F8;
  padding: 4px 16px;
  border-radius: 4px;
  margin-bottom: 16px;
  text-transform: uppercase
}

.wbn .strip-head {
  display: inline;
  background: #A5488B;
  color: #fff;
  padding: 4px 8px;
  border-radius: 4px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone
}

.wbn .strip-head-light {
  display: inline;
  background: #F9F2F8;
  color: #2a0d22;
  padding: 4px 8px;
  border-radius: 4px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone
}

.wbn .accent-word {
  color: #A5488B
}

.wbn .titleblock {
  padding: 48px 0;
  background: #fff;
  position: relative
}

.wbn .titleblock-grid {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  gap: 24px;
  align-items: center;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px
}

.wbn .titleblock-img {
  position: relative;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 5px 25px 1px #a5488b17
}

.wbn .titleblock-img img {
  width: 100%;
  height: 320px;
  object-fit: cover;
  display: block;
  filter: sepia(0.4) contrast(1.1) saturate(0.8) brightness(0.92);
  transition: filter .18s ease-out
}

.wbn .titleblock-img:hover img {
  filter: sepia(0.6) contrast(1.15) saturate(0.7) brightness(0.85)
}

.wbn .titleblock-img-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg, #a5488b2e 0%, #c396bf14 100%);
  pointer-events: none;
  border-radius: 13px
}

.wbn .dots-path {
  position: absolute;
  bottom: 16px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  pointer-events: none
}

.wbn .dots-path span {
  display: block;
  border-radius: 36px;
  background: #C396BF;
  opacity: .55
}

.wbn .dots-path span:nth-child(1) {
  width: 4px;
  height: 4px
}

.wbn .dots-path span:nth-child(2) {
  width: 6px;
  height: 6px;
  opacity: .7
}

.wbn .dots-path span:nth-child(3) {
  width: 4px;
  height: 4px
}

.wbn .dots-path span:nth-child(4) {
  width: 8px;
  height: 8px;
  opacity: .85
}

.wbn .dots-path span:nth-child(5) {
  width: 4px;
  height: 4px
}

.wbn .titleblock-text {
  text-align: center;
  padding: 24px 16px
}

.wbn .titleblock-text h1 {
  font-size: 56px;
  line-height: 1.1;
  color: #2a0d22;
  margin: 8px 0 16px;
  overflow: hidden
}

.wbn .split-word {
  display: inline-block;
  animation: splitReveal .18s ease-out both
}

.wbn .split-word.right {
  animation: splitRevealRight .18s ease-out .08s both
}

@keyframes splitReveal {
  from {
    transform: translateX(-18px);
    opacity: 0
  }

  to {
    transform: translateX(0);
    opacity: 1
  }
}

@keyframes splitRevealRight {
  from {
    transform: translateX(18px);
    opacity: 0
  }

  to {
    transform: translateX(0);
    opacity: 1
  }
}

.wbn .arrow-hint {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 24px;
  opacity: .45
}

.wbn .arrow-hint svg {
  width: 22px;
  height: 22px
}

.wbn .wlist {
  background: #F9F2F8;
  padding: 48px 0
}

.wbn .wlist-head {
  max-width: 1100px;
  margin: 0 auto 24px;
  padding: 0 24px
}

.wbn .wlist-head h2 {
  font-size: 28px;
  line-height: 1.1;
  color: #2a0d22;
  margin: 0 0 8px
}

.wbn .wlist-grid {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px
}

.wbn .wcard {
  background: #fff;
  border-radius: 13px;
  box-shadow: 0 3px 2px 1px #a5488b12;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: box-shadow .15s ease-out, transform .15s ease-out
}

.wbn .wcard:hover {
  box-shadow: 0 12px 40px 1px #a5488b1c;
  transform: translateY(-3px)
}

.wbn .wcard-img {
  position: relative;
  overflow: hidden
}

.wbn .wcard-img img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  display: block;
  filter: sepia(0.3) contrast(1.05) saturate(0.85) brightness(0.95);
  transition: transform .2s ease-out, filter .2s ease-out
}

.wbn .wcard:hover .wcard-img img {
  transform: scale(1.04);
  filter: sepia(0.5) contrast(1.1) saturate(0.75) brightness(0.6)
}

.wbn .wcard-img-dark {
  position: absolute;
  inset: 0;
  background: #2a0d2200;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .2s ease-out
}

.wbn .wcard:hover .wcard-img-dark {
  background: #2a0d228c
}

.wbn .wcard-img-text {
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
  padding: 8px 16px;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .15s ease-out, transform .15s ease-out
}

.wbn .wcard:hover .wcard-img-text {
  opacity: 1;
  transform: translateY(0)
}

.wbn .wcard-body {
  padding: 16px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px
}

.wbn .wcard-tag {
  display: inline-block;
  font-size: 16px;
  letter-spacing: .08em;
  background: #F9F2F8;
  color: #A5488B;
  border-radius: 4px;
  padding: 4px 8px;
  text-transform: uppercase
}

.wbn .wcard-title {
  font-size: 18px;
  line-height: 1.5;
  color: #2a0d22;
  margin: 0
}

.wbn .wcard-desc {
  font-size: 16px;
  line-height: 1.5;
  color: #3d1a32;
  margin: 0;
  flex: 1
}

.wbn .wcard-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 8px
}

.wbn .wcard-meta-row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  color: #5a2e4e
}

.wbn .meta-dot {
  width: 7px;
  height: 7px;
  border-radius: 36px;
  background: #C396BF;
  flex-shrink: 0
}

.wbn .wcard-btn {
  display: inline-block;
  margin-top: 8px;
  padding: 8px 16px;
  background: #A5488B;
  color: #fff;
  border-radius: 7px;
  font-size: 16px;
  text-decoration: none;
  text-align: center;
  transition: background .12s ease-out, box-shadow .12s ease-out;
  box-shadow: 0 3px 2px 1px #a5488b12;
  cursor: pointer;
  border: none;
  width: 100%
}

.wbn .wcard-btn:hover {
  background: #8a3474;
  box-shadow: 0 5px 25px 1px #a5488b17;
  color: #fff
}

.wbn .wcard-btn:focus {
  outline: 2px solid #A5488B;
  outline-offset: 2px
}

.wbn .about {
  background: #A5488B;
  padding: 48px 0;
  position: relative
}

.wbn .about-inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center
}

.wbn .about-text {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.wbn .about-text h2 {
  font-size: 28px;
  line-height: 1.1;
  margin: 0
}

.wbn .about-para {
  font-size: 18px;
  line-height: 1.9;
  color: #F9F2F8;
  margin: 0;
  padding: 0 48px
}

.wbn .about-stats {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.wbn .stat-row {
  background: #f9f2f821;
  border-radius: 13px;
  padding: 16px 24px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  box-shadow: inset 0 2px 8px 0 #c396bf2e;
  transition: background .15s ease-out
}

.wbn .stat-row:hover {
  background: #f9f2f838
}

.wbn .stat-num {
  font-size: 56px;
  line-height: 1.1;
  color: #fff;
  min-width: 80px;
  text-align: center
}

.wbn .stat-label {
  font-size: 18px;
  line-height: 1.5;
  color: #F9F2F8
}

@media (max-width: 1200px) {
  .wbn .wlist-grid {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media (max-width: 900px) {
  .wbn .titleblock-grid {
    grid-template-columns: 1fr;
    gap: 16px
  }

  .wbn .titleblock-img {
    display: none
  }

  .wbn .titleblock-text h1 {
    font-size: 56px
  }

  .wbn .about-inner {
    grid-template-columns: 1fr;
    gap: 24px
  }

  .wbn .about-para {
    padding: 0 16px
  }
}

@media (max-width: 600px) {
  .wbn .titleblock-text h1 {
    font-size: 28px
  }

  .wbn .wlist-grid {
    grid-template-columns: 1fr
  }

  .wbn .stat-num {
    font-size: 28px;
    min-width: 56px
  }

  .wbn .about-para {
    padding: 0
  }
}

.lnch {
  max-width: 100%;
  overflow-x: hidden;
  background: #fff
}

.lnch .row {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px
}

.lnch .titblk {
  padding: 48px 16px;
  background: #fff;
  position: relative;
  text-align: center
}

.lnch .titblk-circles {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden
}

.lnch .titblk-circles span {
  position: absolute;
  border-radius: 36px;
  border: 2px solid #a5488b17;
  display: block
}

.lnch .titblk-circles span:nth-child(1) {
  width: 180px;
  height: 180px;
  top: -40px;
  left: -60px
}

.lnch .titblk-circles span:nth-child(2) {
  width: 120px;
  height: 120px;
  top: 20px;
  right: 40px;
  border-radius: 50%
}

.lnch .titblk-circles span:nth-child(3) {
  width: 240px;
  height: 240px;
  bottom: -80px;
  right: -80px;
  border-radius: 50%
}

.lnch .titblk-circles span:nth-child(4) {
  width: 80px;
  height: 80px;
  bottom: 20px;
  left: 80px;
  border-radius: 50%;
  border-color: #c396bf1f
}

.lnch .titblk-img {
  width: 120px;
  height: 120px;
  margin: 0 auto 24px;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 5px 25px 1px #a5488b17;
  position: relative
}

.lnch .titblk-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  mix-blend-mode: multiply;
  filter: contrast(1.05) saturate(0.95)
}

.lnch .titblk-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #a5488b2e 0%, #f9f2f800 60%);
  border-radius: 22px
}

.lnch .titblk-eyebrow {
  font-size: 16px;
  letter-spacing: .12em;
  color: #A5488B;
  text-transform: uppercase;
  margin-bottom: 8px;
  line-height: 1.5
}

.lnch .titblk h1 {
  font-size: 56px;
  line-height: 1.1;
  color: #1b1b1b;
  margin-bottom: 16px;
  letter-spacing: -.01em
}

.lnch .titblk-link {
  display: inline-block;
  padding: 8px 24px;
  background: #1b1b1b;
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  border-radius: 7px;
  text-decoration: none;
  transition: background .15s ease-out, color .12s ease-out;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.lnch .titblk-link:hover {
  background: #A5488B;
  color: #fff
}

.lnch .titblk-link:focus {
  outline: 2px solid #A5488B;
  outline-offset: 3px
}

.lnch .divider-scallop {
  width: 100%;
  line-height: 0;
  overflow: hidden
}

.lnch .divider-scallop svg {
  display: block;
  width: 100%
}

.lnch .posts-blk {
  background: #F9F2F8;
  padding: 48px 16px
}

.lnch .posts-blk .row {
  max-width: 1100px;
  margin: 0 auto
}

.lnch .blk-heading {
  display: inline-block;
  background: #A5488B;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  padding: 4px 16px;
  border-radius: 4px;
  margin-bottom: 24px
}

.lnch .posts-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px
}

.lnch .post-card {
  background: #fff;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 3px 2px 1px #a5488b12;
  transition: box-shadow .15s ease-out, transform .12s ease-out;
  position: relative
}

.lnch .post-card:hover {
  box-shadow: 0 12px 40px 1px #a5488b1c;
  transform: translateY(-2px)
}

.lnch .post-card-img {
  width: 100%;
  height: 180px;
  overflow: hidden
}

.lnch .post-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .2s ease-out
}

.lnch .post-card:hover .post-card-img img {
  transform: scale(1.03)
}

.lnch .post-card-body {
  padding: 16px
}

.lnch .post-tag {
  display: inline-block;
  background: #F9F2F8;
  color: #A5488B;
  font-size: 16px;
  line-height: 1.5;
  padding: 4px 8px;
  border-radius: 4px;
  margin-bottom: 8px;
  letter-spacing: .06em
}

.lnch .post-card-body h4 {
  font-size: 18px;
  line-height: 1.5;
  color: #1b1b1b;
  margin-bottom: 8px
}

.lnch .post-card-body p {
  font-size: 16px;
  line-height: 1.9;
  color: #3a3a3a;
  margin-bottom: 8px
}

.lnch .post-author {
  font-size: 16px;
  color: #6a4060;
  line-height: 1.5
}

.lnch .post-readlink {
  display: inline-block;
  margin-top: 8px;
  font-size: 16px;
  color: #A5488B;
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px solid #a5488b4d;
  transition: border-color .12s ease-out, color .12s ease-out
}

.lnch .post-readlink:hover {
  color: #7a2f68;
  border-color: #7a2f68
}

.lnch .archive-blk {
  background: #fff;
  padding: 48px 16px;
  position: relative;
  overflow: hidden
}

.lnch .archive-blk-inner {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center
}

.lnch .archive-bleed {
  position: absolute;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: radial-gradient(ellipse at 80% 20%, #c396bf38 0%, #f9f2f800 70%);
  bottom: -80px;
  right: -60px;
  pointer-events: none;
  animation: bleed-corner 6s ease-in-out infinite alternate
}

@keyframes bleed-corner {
  0% {
    opacity: .3;
    transform: scale(0.85) translate(10px, 10px)
  }

  100% {
    opacity: 1;
    transform: scale(1.1) translate(-8px, -8px)
  }
}

.lnch .archive-txt h2 {
  font-size: 28px;
  line-height: 1.5;
  color: #1b1b1b;
  margin-bottom: 16px
}

.lnch .archive-txt p {
  font-size: 16px;
  line-height: 1.9;
  color: #3a3a3a;
  max-width: 460px
}

.lnch .archive-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px
}

.lnch .stat-item {
  background: #F9F2F8;
  border-radius: 13px;
  padding: 16px;
  position: relative;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.lnch .stat-num {
  font-size: 56px;
  line-height: 1.1;
  color: #A5488B;
  display: block;
  font-weight: 700
}

.lnch .stat-label {
  font-size: 16px;
  line-height: 1.5;
  color: #3a3a3a
}

.lnch .stat-corner {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 22px;
  height: 22px;
  background: #A5488B;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: #fff;
  line-height: 1.1;
  font-weight: 700
}

.lnch .divider-plain {
  height: 2px;
  background: linear-gradient(90deg, transparent, #a5488b2e, transparent);
  max-width: 1100px;
  margin: 0 auto
}

.lnch .series-blk {
  background: linear-gradient(160deg, #F9F2F8 60%, #fff 100%);
  padding: 48px 16px
}

.lnch .series-blk .row {
  max-width: 1100px;
  margin: 0 auto
}

.lnch .series-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 24px
}

.lnch .series-item {
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 16px;
  align-items: start;
  background: #fff;
  border-radius: 13px;
  padding: 16px;
  box-shadow: 0 3px 2px 1px #a5488b12;
  transition: box-shadow .15s ease-out;
  position: relative
}

.lnch .series-item::before {
  content: "";
  position: absolute;
  top: 13px;
  left: 13px;
  width: 4px;
  height: calc(100% - 26px);
  background: #a5488b1f;
  border-radius: 4px
}

.lnch .series-item:hover {
  box-shadow: 0 5px 25px 1px #a5488b17
}

.lnch .series-num {
  width: 56px;
  height: 56px;
  background: #A5488B;
  border-radius: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: #fff;
  font-weight: 700;
  line-height: 1.1;
  flex-shrink: 0
}

.lnch .series-txt h5 {
  font-size: 18px;
  line-height: 1.5;
  color: #1b1b1b;
  margin-bottom: 4px
}

.lnch .series-txt p {
  font-size: 16px;
  line-height: 1.9;
  color: #3a3a3a
}

.lnch .series-parts {
  display: inline-block;
  background: #C396BF;
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  padding: 4px 8px;
  border-radius: 4px;
  margin-top: 8px
}

.lnch .popular-blk {
  background: #1b1b1b;
  padding: 48px 16px;
  position: relative;
  overflow: hidden
}

.lnch .popular-blk-inner {
  max-width: 1100px;
  margin: 0 auto
}

.lnch .popular-blk .blk-heading {
  background: #C396BF;
  color: #1b1b1b
}

.lnch .popular-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px;
  margin-top: 24px
}

.lnch .pop-item {
  background: #f9f2f80f;
  border-radius: 13px;
  padding: 16px;
  border: 1px solid #c396bf2e;
  transition: background .15s ease-out, border-color .15s ease-out;
  position: relative
}

.lnch .pop-item:hover {
  background: #f9f2f81f;
  border-color: #c396bf61
}

.lnch .pop-rank {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 28px;
  height: 28px;
  background: #A5488B;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: #fff;
  font-weight: 700;
  line-height: 1.1
}

.lnch .pop-item-img {
  width: 100%;
  height: 110px;
  border-radius: 7px;
  overflow: hidden;
  margin-bottom: 16px
}

.lnch .pop-item-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block
}

.lnch .pop-item h5 {
  font-size: 16px;
  line-height: 1.5;
  color: #F9F2F8;
  margin-bottom: 8px
}

.lnch .pop-item p {
  font-size: 16px;
  line-height: 1.9;
  color: #c8b8c4
}

.lnch .pop-link {
  display: inline-block;
  margin-top: 8px;
  font-size: 16px;
  color: #C396BF;
  text-decoration: none;
  border-bottom: 1px solid #c396bf66;
  transition: color .12s ease-out, border-color .12s ease-out
}

.lnch .pop-link:hover {
  color: #fff;
  border-color: #fff
}

.lnch .tagmap-blk {
  background: #fff;
  padding: 48px 16px
}

.lnch .tagmap-blk .row {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 2fr 3fr;
  gap: 48px;
  align-items: start
}

.lnch .tagmap-txt h2 {
  font-size: 28px;
  line-height: 1.5;
  color: #1b1b1b;
  margin-bottom: 16px
}

.lnch .tagmap-txt p {
  font-size: 16px;
  line-height: 1.9;
  color: #3a3a3a
}

.lnch .tagmap-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: flex-start
}

.lnch .tag-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 22px;
  font-size: 16px;
  line-height: 1.5;
  color: #1b1b1b;
  background: #F9F2F8;
  border: 1px solid #a5488b26;
  text-decoration: none;
  transition: background .12s ease-out, border-color .12s ease-out, color .12s ease-out;
  cursor: default
}

.lnch .tag-chip.large {
  font-size: 18px;
  padding: 8px 24px;
  background: #a5488b1a;
  border-color: #a5488b47
}

.lnch .tag-chip.med {
  background: #F9F2F8
}

.lnch .tag-chip:hover {
  background: #A5488B;
  color: #fff;
  border-color: #A5488B
}

.lnch .tag-count {
  background: #A5488B;
  color: #fff;
  border-radius: 36px;
  font-size: 16px;
  line-height: 1.1;
  padding: 2px 8px;
  font-weight: 700
}

.lnch .tag-chip:hover .tag-count {
  background: #fff;
  color: #A5488B
}

.lnch .why-blk {
  background: linear-gradient(170deg, #1b1b1b 50%, #2d1428 100%);
  padding: 48px 16px;
  position: relative;
  overflow: hidden
}

.lnch .why-blk-deco {
  position: absolute;
  top: 0;
  right: 0;
  width: 320px;
  height: 320px;
  background: radial-gradient(ellipse at 90% 10%, #a5488b38 0%, transparent 65%);
  pointer-events: none
}

.lnch .why-blk-inner {
  max-width: 1100px;
  margin: 0 auto
}

.lnch .why-blk .blk-heading {
  background: #A5488B;
  color: #fff
}

.lnch .why-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  margin-top: 24px;
  align-items: start
}

.lnch .why-feature-list {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.lnch .why-feat {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 16px;
  align-items: start
}

.lnch .why-feat-icon {
  width: 36px;
  height: 36px;
  background: #a5488b2e;
  border-radius: 7px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center
}

.lnch .why-feat-icon svg {
  display: block
}

.lnch .why-feat-txt h5 {
  font-size: 16px;
  line-height: 1.5;
  color: #F9F2F8;
  margin-bottom: 4px
}

.lnch .why-feat-txt p {
  font-size: 16px;
  line-height: 1.9;
  color: #c8b8c4
}

.lnch .why-img-stack {
  position: relative;
  height: 320px
}

.lnch .why-img-a {
  position: absolute;
  top: 0;
  left: 0;
  width: 200px;
  height: 200px;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 12px 40px 1px #a5488b1c
}

.lnch .why-img-b {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 200px;
  height: 200px;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 5px 25px 1px #a5488b17
}

.lnch .why-img-a img,
.lnch .why-img-b img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block
}

.lnch .why-img-badge {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #A5488B;
  color: #fff;
  border-radius: 13px;
  padding: 8px 16px;
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
  box-shadow: 0 5px 25px 1px #a5488b17;
  white-space: nowrap;
  z-index: 2
}

.lnch .nextstep-blk {
  background: #F9F2F8;
  padding: 48px 16px
}

.lnch .nextstep-blk .row {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 3fr 2fr;
  gap: 48px;
  align-items: center
}

.lnch .nextstep-txt h2 {
  font-size: 28px;
  line-height: 1.5;
  color: #1b1b1b;
  margin-bottom: 16px
}

.lnch .nextstep-txt p {
  font-size: 16px;
  line-height: 1.9;
  color: #3a3a3a;
  max-width: 500px
}

.lnch .nextstep-actions {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.lnch .btn-primary {
  display: inline-block;
  padding: 16px 24px;
  background: #1b1b1b;
  color: #fff;
  font-size: 18px;
  line-height: 1.5;
  border-radius: 7px;
  text-decoration: none;
  text-align: center;
  transition: background .15s ease-out, color .12s ease-out;
  box-shadow: 0 5px 25px 1px #a5488b17
}

.lnch .btn-primary:hover {
  background: #A5488B;
  color: #fff
}

.lnch .btn-primary:focus {
  outline: 2px solid #A5488B;
  outline-offset: 3px
}

.lnch .btn-secondary {
  display: inline-block;
  padding: 16px 24px;
  background: transparent;
  color: #A5488B;
  font-size: 18px;
  line-height: 1.5;
  border-radius: 7px;
  text-decoration: none;
  text-align: center;
  border: 2px solid #A5488B;
  transition: background .15s ease-out, color .12s ease-out
}

.lnch .btn-secondary:hover {
  background: #A5488B;
  color: #fff
}

.lnch .btn-secondary:focus {
  outline: 2px solid #A5488B;
  outline-offset: 3px
}

.lnch .corner-bracket {
  position: absolute;
  width: 22px;
  height: 22px;
  pointer-events: none
}

.lnch .corner-bracket.tl {
  top: 8px;
  left: 8px;
  border-top: 2px solid #a5488b66;
  border-left: 2px solid #a5488b66;
  border-radius: 4px 0 0 0
}

.lnch .corner-bracket.tr {
  top: 8px;
  right: 8px;
  border-top: 2px solid #a5488b66;
  border-right: 2px solid #a5488b66;
  border-radius: 0 4px 0 0
}

.lnch .corner-bracket.bl {
  bottom: 8px;
  left: 8px;
  border-bottom: 2px solid #a5488b66;
  border-left: 2px solid #a5488b66;
  border-radius: 0 0 0 4px
}

.lnch .corner-bracket.br {
  bottom: 8px;
  right: 8px;
  border-bottom: 2px solid #a5488b66;
  border-right: 2px solid #a5488b66;
  border-radius: 0 0 4px 0
}

.lnch .diag-blk {
  position: relative;
  padding: 48px 16px;
  overflow: hidden
}

.lnch .diag-bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #F9F2F8 50%, #fff 50%);
  pointer-events: none
}

.lnch .diag-blk-inner {
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
  z-index: 1
}

@media (max-width: 900px) {
  .lnch .posts-grid {
    grid-template-columns: 1fr
  }

  .lnch .archive-blk-inner {
    grid-template-columns: 1fr;
    gap: 24px
  }

  .lnch .popular-grid {
    grid-template-columns: 1fr 1fr
  }

  .lnch .tagmap-blk .row {
    grid-template-columns: 1fr;
    gap: 24px
  }

  .lnch .why-cols {
    grid-template-columns: 1fr;
    gap: 24px
  }

  .lnch .why-img-stack {
    height: 200px
  }

  .lnch .why-img-a,
  .lnch .why-img-b {
    width: 140px;
    height: 140px
  }

  .lnch .nextstep-blk .row {
    grid-template-columns: 1fr;
    gap: 24px
  }

  .lnch .titblk h1 {
    font-size: 28px
  }
}

@media (max-width: 600px) {
  .lnch .popular-grid {
    grid-template-columns: 1fr
  }

  .lnch .archive-stats {
    grid-template-columns: 1fr 1fr
  }

  .lnch .titblk h1 {
    font-size: 28px
  }

  .lnch .stat-num {
    font-size: 28px
  }

  .lnch .series-item {
    grid-template-columns: 1fr
  }

  .lnch .series-item::before {
    display: none
  }
}

@media (min-width: 1200px) {
  .lnch .titblk h1 {
    font-size: 72px
  }
}

.blg {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 16px;
  overflow-x: hidden
}

.blg .pg-head {
  padding: 48px 0 24px;
  display: flex;
  flex-direction: column;
  gap: 16px
}

.blg .pg-label {
  display: inline-block;
  font-size: 16px;
  letter-spacing: .12em;
  color: #A5488B;
  background: #F9F2F8;
  padding: 4px 16px;
  border-radius: 4px;
  text-transform: uppercase;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.blg .pg-h1 {
  font-size: 56px;
  line-height: 1.1;
  color: #1b1b1b;
  margin: 0;
  max-width: 680px
}

.blg .pg-sub {
  font-size: 18px;
  line-height: 1.5;
  color: #3a3a3a;
  max-width: 560px;
  margin: 0
}

.blg .divider-top {
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, #A5488B 0%, #C396BF 60%, #F9F2F8 100%);
  border-radius: 4px;
  margin-bottom: 48px
}

.blg .cards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-bottom: 48px
}

.blg .card {
  background: #fff;
  border-radius: 13px;
  box-shadow: 0 5px 25px 1px #a5488b17;
  display: flex;
  flex-direction: column;
  transition: box-shadow .15s ease-out, transform .12s ease-out;
  position: relative;
  overflow: hidden
}

.blg .card:hover {
  box-shadow: 0 12px 40px 1px #a5488b1c;
  transform: translateY(-3px)
}

.blg .card-img-wrap {
  width: 100%;
  height: 180px;
  overflow: hidden;
  border-radius: 13px 13px 0 0;
  position: relative
}

.blg .card-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .2s ease-out
}

.blg .card:hover .card-img-wrap img {
  transform: scale(1.04)
}

.blg .card-body {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1
}

.blg .card-tag {
  display: inline-block;
  font-size: 16px;
  letter-spacing: .08em;
  color: #A5488B;
  background: #F9F2F8;
  border-radius: 4px;
  padding: 4px 8px;
  align-self: flex-start;
  box-shadow: inset 0 1px 3px #a5488b1a
}

.blg .card-title {
  font-size: 18px;
  line-height: 1.5;
  color: #1b1b1b;
  margin: 0;
  font-weight: 700
}

.blg .card-desc {
  font-size: 16px;
  line-height: 1.5;
  color: #3a3a3a;
  margin: 0;
  flex: 1
}

.blg .card-foot {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 8px
}

.blg .card-author {
  font-size: 16px;
  color: #5a5a5a;
  letter-spacing: .03em
}

.blg .card-link {
  display: inline-block;
  font-size: 16px;
  color: #fff;
  background: #A5488B;
  border-radius: 7px;
  padding: 8px 16px;
  text-decoration: none;
  font-weight: 600;
  transition: background .15s ease, box-shadow .12s ease-out;
  box-shadow: 0 3px 2px 1px #a5488b12
}

.blg .card-link:hover {
  background: #8a3573;
  box-shadow: 0 5px 25px 1px #a5488b26
}

.blg .card-link:focus {
  outline: 2px solid #A5488B;
  outline-offset: 2px
}

.blg .card.featured {
  grid-column: span 2;
  flex-direction: row
}

.blg .card.featured .card-img-wrap {
  width: 260px;
  min-width: 260px;
  height: auto;
  border-radius: 13px 0 0 13px
}

.blg .card.featured .card-body {
  padding: 24px
}

.blg .card.featured .card-title {
  font-size: 22px;
  line-height: 1.5
}

.blg .divider-mid {
  width: 60%;
  height: 1px;
  background: linear-gradient(90deg, #C396BF, transparent);
  margin: 0 auto 48px;
  border-radius: 4px
}

.blg .spotlight {
  background: #F9F2F8;
  border-radius: 22px;
  padding: 48px;
  margin-bottom: 48px;
  display: flex;
  flex-direction: row;
  gap: 48px;
  align-items: stretch;
  box-shadow: 0 5px 25px 1px #a5488b17;
  position: relative
}

.blg .spotlight-img {
  width: 340px;
  min-width: 280px;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 12px 40px 1px #a5488b1c;
  position: relative;
  flex-shrink: 0
}

.blg .spotlight-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block
}

.blg .spotlight-img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 40%;
  background: linear-gradient(to bottom, #1e0a1973, transparent);
  pointer-events: none;
  border-radius: 13px 13px 0 0
}

.blg .spotlight-text {
  display: flex;
  flex-direction: column;
  gap: 16px;
  justify-content: center;
  flex: 1
}

.blg .spotlight-kicker {
  font-size: 16px;
  letter-spacing: .12em;
  color: #A5488B;
  text-transform: uppercase
}

.blg .spotlight-h2 {
  font-size: 28px;
  line-height: 1.5;
  color: #1b1b1b;
  margin: 0;
  background: #F9F2F8;
  display: inline;
  padding: 4px 8px;
  border-radius: 4px;
  box-shadow: inset 0 1px 4px #a5488b1a
}

.blg .spotlight-p {
  font-size: 16px;
  line-height: 1.9;
  color: #2e2e2e;
  margin: 0 48px
}

.blg .spotlight-metric {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  margin-top: 8px
}

.blg .metric-num {
  font-size: 56px;
  line-height: 1.1;
  color: #A5488B;
  font-weight: 800
}

.blg .metric-arrow {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px
}

.blg .arrow-up {
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 14px solid #A5488B
}

.blg .metric-label {
  font-size: 16px;
  line-height: 1.5;
  color: #5a5a5a;
  max-width: 160px
}

.blg .divider-wave {
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, transparent, #A5488B 40%, #C396BF 70%, transparent);
  margin-bottom: 48px;
  border-radius: 4px
}

.blg .newsletter {
  background: #1b1b1b;
  border-radius: 22px;
  padding: 48px;
  margin-bottom: 48px;
  display: flex;
  flex-direction: row;
  gap: 48px;
  align-items: center;
  box-shadow: 0 12px 40px 1px #a5488b1c
}

.blg .nl-text {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px
}

.blg .nl-h2 {
  font-size: 28px;
  line-height: 1.5;
  color: #fff;
  margin: 0;
  background: #a5488b2e;
  padding: 4px 8px;
  border-radius: 4px;
  display: inline-block;
  box-shadow: inset 0 1px 4px #a5488b2e
}

.blg .nl-p {
  font-size: 16px;
  line-height: 1.9;
  color: #d0d0d0;
  margin: 0
}

.blg .nl-form {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px
}

.blg .nl-input {
  background: #ffffff12;
  border: 1.5px solid #c396bf59;
  border-radius: 7px;
  padding: 16px;
  font-size: 16px;
  color: #fff;
  outline: none;
  transition: border-color .15s ease-out
}

.blg .nl-input::placeholder {
  color: #c396bf8c
}

.blg .nl-input:focus {
  border-color: #C396BF;
  box-shadow: inset 0 2px 6px #a5488b1f
}

.blg .nl-btn {
  background: #A5488B;
  color: #fff;
  border: none;
  border-radius: 7px;
  padding: 16px 24px;
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
  transition: background .15s ease, box-shadow .12s ease-out;
  box-shadow: 0 5px 25px 1px #a5488b2e
}

.blg .nl-btn:hover {
  background: #8a3573;
  box-shadow: 0 12px 40px 1px #a5488b38
}

.blg .nl-btn:focus {
  outline: 2px solid #C396BF;
  outline-offset: 2px
}

.blg .nl-btn:active {
  background: #7a2d64
}

@keyframes blgReveal {
  from {
    opacity: 0;
    transform: rotate(-1.5deg) translateY(18px)
  }

  to {
    opacity: 1;
    transform: rotate(0deg) translateY(0)
  }
}

.blg .pg-head {
  animation: blgReveal .18s ease-out both
}

.blg .cards-grid {
  animation: blgReveal .16s .05s ease-out both
}

.blg .spotlight {
  animation: blgReveal .17s .08s ease-out both
}

.blg .newsletter {
  animation: blgReveal .16s .1s ease-out both
}

@media (max-width: 900px) {
  .blg .cards-grid {
    grid-template-columns: repeat(2, 1fr)
  }

  .blg .card.featured {
    grid-column: span 2;
    flex-direction: column
  }

  .blg .card.featured .card-img-wrap {
    width: 100%;
    min-width: unset;
    height: 200px;
    border-radius: 13px 13px 0 0
  }

  .blg .spotlight {
    flex-direction: column;
    padding: 24px;
    gap: 24px
  }

  .blg .spotlight-img {
    width: 100%;
    min-width: unset;
    height: 220px
  }

  .blg .spotlight-p {
    margin: 0 16px
  }

  .blg .newsletter {
    flex-direction: column;
    padding: 24px;
    gap: 24px
  }

  .blg .pg-h1 {
    font-size: 28px
  }
}

@media (max-width: 600px) {
  .blg .cards-grid {
    grid-template-columns: 1fr
  }

  .blg .card.featured {
    grid-column: span 1
  }

  .blg .pg-h1 {
    font-size: 22px
  }

  .blg .metric-num {
    font-size: 28px
  }

  .blg .spotlight {
    padding: 16px
  }

  .blg .newsletter {
    padding: 16px
  }

  .blg .spotlight-p {
    margin: 0
  }
}

.succ {
  min-height: 80vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px 16px;
  background: #F9F2F8
}

.succ .wrap {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px
}

.succ .icon {
  width: 72px;
  height: 72px;
  flex-shrink: 0
}

.succ .card {
  background: #fff;
  border-radius: 22px;
  box-shadow: 0 5px 25px 1px #a5488b17;
  padding: 48px;
  max-width: 560px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center
}

.succ .card .badge {
  display: inline-block;
  background: #F9F2F8;
  color: #A5488B;
  font-size: 16px;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 4px 16px;
  border-radius: 7px;
  font-weight: 600
}

.succ .card .heading {
  font-size: 28px;
  line-height: 1.1;
  color: #1b0d17;
  margin: 0;
  font-weight: 700
}

.succ .card .headingStrip {
  display: inline;
  background: linear-gradient(135deg, #a5488b21 0%, #c396bf1a 100%);
  padding: 4px 8px;
  border-radius: 4px
}

.succ .card .msg {
  font-size: 18px;
  line-height: 1.5;
  color: #2e1427;
  margin: 0;
  max-width: 420px
}

.succ .card .divLine {
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #A5488B 0%, #C396BF 100%);
  border-radius: 4px;
  flex-shrink: 0
}

.succ .card .detail {
  font-size: 16px;
  line-height: 1.5;
  color: #4a2040;
  margin: 0
}

.succ .card .detail a {
  color: #A5488B;
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color .15s ease-out, text-decoration-color .15s ease-out
}

.succ .card .detail a:hover {
  color: #7a2f67
}

.succ .card .detail a:focus-visible {
  outline: 2px solid #A5488B;
  outline-offset: 2px;
  border-radius: 4px
}

.succ .backBtn {
  display: inline-block;
  background: #A5488B;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .06em;
  padding: 16px 48px;
  border-radius: 13px;
  text-decoration: none;
  border: none;
  cursor: pointer;
  box-shadow: 0 3px 2px 1px #a5488b12;
  transition: background .18s ease-out, box-shadow .18s ease-out
}

.succ .backBtn:hover {
  background: #7a2f67;
  box-shadow: 0 12px 40px 1px #a5488b1c
}

.succ .backBtn:focus-visible {
  outline: 2px solid #A5488B;
  outline-offset: 3px;
  border-radius: 13px
}

.succ .backBtn:active {
  background: #5e2450
}

@media (max-width: 600px) {
  .succ .card {
    padding: 24px 16px
  }

  .succ .card .heading {
    font-size: 22px
  }

  .succ .card .msg {
    font-size: 16px
  }

  .succ .backBtn {
    padding: 16px 24px;
    width: 100%;
    text-align: center
  }
}