@media (max-width: 980px) {
  .section {
    padding: 72px 0 !important;
  }

  .landing-hero {
    align-items: flex-end;
    min-height: 100svh;
    padding: 0;
    background-position: center top;
  }

  .hero-stage {
    width: 100% !important;
    height: 100svh !important;
  }

  .hero-canvas {
    position: relative;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
  }

  .hero-content {
    left: 24px;
    right: 24px;
    top: auto;
    bottom: 52px;
    width: auto;
    align-items: flex-start;
    gap: 24px;
  }

  .hero-copy {
    align-items: flex-start;
  }

  .hero-title {
    max-width: 780px;
    font-size: clamp(34px, 7vw, 58px);
    line-height: 1.04;
    text-align: left;
  }

  .hero-title-line {
    white-space: normal;
  }

  .hero-subtitle {
    width: min(100%, 660px);
    font-size: clamp(16px, 2.4vw, 22px);
    line-height: 1.42;
    text-align: left;
  }

  .hero-actions {
    width: min(100%, 430px);
  }

  .btn-plasma-red-link,
  .btn-plasma-red {
    width: 100%;
  }

  .btn-red-inner {
    width: 100%;
  }

  .btn-red-label {
    flex: 1;
    padding: 10px 6px;
    font-size: 12px;
    text-align: center;
  }

  .hero-benefits {
    max-width: 620px;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 12px 18px;
  }

  .hero-benefits li span:last-child {
    white-space: normal;
  }

  .formation-layout {
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .formation-copy {
    max-width: 720px;
  }

  .xray-section {
    min-height: auto;
    padding: 72px 0;
  }

  .xray-sticky {
    position: relative;
    min-height: auto;
    padding: 0;
  }

  .xray-carousel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: min(100% - 28px, 1120px);
    gap: 14px;
    transform: none;
  }

  .xray-slide {
    flex-basis: auto;
    height: auto;
    min-height: 280px;
  }
}

@media (max-width: 680px) {
  .container {
    width: min(100% - 28px, 1180px);
  }

  .landing-hero {
    align-items: flex-end;
    background-position: center top;
  }

  .landing-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
      linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0.04) 38%,
        rgba(0, 0, 0, 0.58) 66%,
        rgba(0, 0, 0, 0.9) 100%
      );
  }

  .hero-stage {
    z-index: 10;
  }

  .hero-content {
    left: 16px;
    right: 16px;
    top: auto;
    bottom: 82px;
    width: auto;
    align-items: center;
    gap: 13px;
  }

  .hero-copy {
    align-items: center;
    gap: 10px;
  }

  .hero-title {
    max-width: 354px;
    background: none !important;
    -webkit-background-clip: initial;
    background-clip: initial;
    color: #f4f1eb !important;
    -webkit-text-fill-color: #f4f1eb;
    font-size: clamp(24px, 6.35vw, 25.5px);
    line-height: 1.11;
    text-align: center;
    text-transform: none;
    letter-spacing: 0;
    text-shadow: 0 2px 18px rgba(0, 0, 0, 0.48);
  }

  .hero-title-line {
    display: inline;
    white-space: normal;
  }

  .hero-subtitle {
    width: min(100%, 358px);
    background: none !important;
    -webkit-background-clip: initial;
    background-clip: initial;
    color: rgba(244, 241, 235, 0.74);
    -webkit-text-fill-color: rgba(244, 241, 235, 0.74);
    font-size: clamp(11.4px, 3.05vw, 12.2px);
    line-height: 1.4;
    text-align: center;
    text-shadow: 0 1px 12px rgba(0, 0, 0, 0.42);
  }

  .hero-actions {
    width: 100%;
    justify-content: center;
  }

  .btn-plasma-red-link {
    width: min(100%, 288px);
  }

  .btn-plasma-red {
    width: 100%;
    max-width: none;
    padding: 1px;
    border-radius: 10px;
    animation: none;
    background: linear-gradient(180deg, #ffffff 0%, #cfcfcf 58%, #767676 100%);
    box-shadow:
      0 14px 26px rgba(0, 0, 0, 0.34),
      inset 0 1px 0 rgba(255, 255, 255, 0.92);
  }

  .particles-red {
    display: none;
  }

  .btn-red-inner {
    min-height: 42px;
    padding: 0 14px;
    justify-content: center;
    gap: 8px;
    border-radius: 9px;
    border: 1px solid rgba(255, 255, 255, 0.68);
    background: linear-gradient(180deg, #fbfbfa 0%, #e2e1df 54%, #a6a6a3 100%);
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.95),
      inset 0 -10px 16px rgba(0, 0, 0, 0.16);
    backdrop-filter: none;
  }

  .btn-red-label {
    flex: 0 1 auto;
    padding: 0;
    color: #111111;
    -webkit-text-fill-color: #111111;
    font-size: 10px;
    text-align: center;
    letter-spacing: 0;
    background: none;
    box-shadow: none;
  }

  .inline-svg-red {
    width: 16px;
    flex: 0 0 16px;
    opacity: 0.9;
    filter: none;
  }

  .inline-svg-red path {
    stroke: #111111;
  }

  .hero-benefits {
    display: none;
  }

  .hero-benefits li {
    grid-column: span 2;
    min-width: 0;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 4px;
    padding: 0;
    font-size: 7.2px;
    line-height: 1.16;
    text-align: left;
  }

  .hero-benefits li:nth-child(4) {
    grid-column: 2 / span 2;
  }

  .hero-benefits li:nth-child(5) {
    grid-column: 4 / span 2;
  }

  .hero-benefits li span:last-child {
    white-space: normal;
    max-width: none;
    background: none !important;
    -webkit-background-clip: initial;
    background-clip: initial;
    color: rgba(242, 240, 234, 0.84);
    -webkit-text-fill-color: rgba(242, 240, 234, 0.84);
    overflow-wrap: anywhere;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.45);
  }

  .benefit-icon {
    width: 12px;
    height: 8px;
    margin-top: 1px;
  }

  .section {
    padding: 72px 0 !important;
  }

  .section-title {
    font-size: 38px;
  }

  .section-copy {
    font-size: 16px;
  }

  .formation-section {
    padding: 58px 0;
  }

  .formation-section::before,
  .formation-section::after {
    display: none;
  }

  .formation-kicker {
    width: 100%;
    min-width: 0;
    padding: 12px 16px;
    font-size: 14px;
  }

  .formation-title {
    font-size: 36px;
  }

  .formation-text {
    font-size: 17px;
  }

  .formation-button {
    width: 100%;
    justify-content: space-between;
  }

  .formation-list {
    gap: 13px;
  }

  .formation-item {
    min-height: 78px;
    gap: 15px;
    padding: 11px 15px;
  }

  .formation-item__icon {
    width: 44px;
    height: 44px;
  }

  .formation-item__icon svg {
    width: 23px;
    height: 23px;
  }

  .formation-item h3 {
    font-size: 18px;
  }

  .xray-section {
    min-height: auto;
    padding: 50px 0 56px;
  }

  .xray-sticky {
    padding: 0;
  }

  .xray-title {
    font-size: 34px;
    text-align: left;
  }

  .xray-header {
    justify-content: flex-start;
  }

  .xray-carousel {
    display: grid;
    grid-template-columns: 1fr;
    width: min(100% - 28px, 1120px);
    margin-top: 34px;
    gap: 14px;
    transform: none;
  }

  .xray-slide {
    height: auto;
    min-height: 300px;
    padding: 22px;
  }

  .xray-slide__meta {
    margin-bottom: 34px;
  }

  .xray-slide h3 {
    font-size: 26px;
  }

  .xray-slide p {
    margin-top: 26px;
    font-size: 16px;
    line-height: 1.52;
  }
}

@media (max-width: 980px) {
  .solution-container {
    align-items: stretch;
  }

  .solution-heading {
    justify-self: center;
    align-self: center;
    margin: 0 auto;
  }

  .solution-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 30px;
  }

  .solution-card {
    min-height: 0;
    padding: 26px;
  }

  .solution-card--square {
    aspect-ratio: auto;
    min-height: 350px;
    padding: 26px;
  }

  .solution-card--square:nth-child(3) {
    grid-column: span 2;
    min-height: 0;
  }

  .solution-card--square:nth-child(3) .solution-list {
    margin-top: 24px;
  }

  .solution-card h3 {
    font-size: 23px;
  }

  .solution-card--wide,
  .solution-card--accent {
    grid-column: span 2;
  }

  .solution-card--wide {
    min-height: 330px;
    padding-right: 26px;
  }

  .differentials-layout,
  .context-layout,
  .mentor-layout,
  .investment-layout,
  .faq-layout {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .differentials-heading,
  .context-heading,
  .faq-heading {
    position: relative;
    top: auto;
    max-width: 720px;
  }

  .differentials-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .investment-layout--offer {
    grid-template-areas:
      "copy"
      "card"
      "included";
  }

  .context-cards,
  .mentor-info-grid {
    grid-template-columns: 1fr;
  }

  .mentor-visual {
    min-height: 360px;
  }

  .offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .investment-main {
    max-width: 720px;
  }

  .investment-card {
    max-width: 620px;
  }

  .offer-included {
    max-width: 100%;
  }
}

@media (max-width: 680px) {
  .solution-section {
    padding: 58px 0;
  }

  .solution-section::after {
    display: none;
  }

  .solution-heading {
    justify-items: center;
    text-align: center;
  }

  .solution-title {
    font-size: 34px;
  }

  .solution-intro {
    margin-top: 14px;
  }

  .solution-intro p {
    font-size: 16px;
    line-height: 1.42;
  }

  .solution-grid {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-top: 24px;
  }

  .solution-card,
  .solution-card--wide,
  .solution-card--accent {
    grid-column: auto;
    min-height: 0;
    padding: 24px;
  }

  .solution-card--square:nth-child(3) {
    grid-column: auto;
  }

  .solution-card--square {
    aspect-ratio: auto;
    overflow: hidden;
  }

  .solution-card--square:nth-child(3) .solution-list {
    margin-top: 20px;
  }

  .solution-card--wide {
    padding-right: 24px;
  }

  .solution-card__icon {
    width: 46px;
    height: 46px;
  }

  .solution-card__icon svg {
    width: 23px;
    height: 23px;
  }

  .solution-card h3 {
    margin-top: 22px;
    font-size: 22px;
  }

  .solution-card p {
    font-size: 15px;
  }

  .solution-list li {
    font-size: 14px;
  }

  .solution-list {
    margin-top: 20px;
  }

  .differentials-section,
  .investment-section,
  .faq-section,
  .closing-section {
    padding: 58px 0;
  }

  .section-heading {
    font-size: 31px;
    line-height: 1.04;
  }

  .section-lead {
    font-size: 16px;
    line-height: 1.42;
  }

  .differentials-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .differential-item--wide {
    grid-column: auto;
  }

  .differential-item {
    min-height: 0;
    padding: 22px;
  }

  .differential-item h3 {
    font-size: 22px;
  }

  .context-cards,
  .mentor-info-grid,
  .offer-grid {
    grid-template-columns: 1fr;
  }

  .context-section,
  .mentor-section {
    padding: 58px 0;
  }

  .context-card,
  .context-audience,
  .offer-included,
  .mentor-visual {
    padding: 22px;
  }

  .context-card {
    min-height: 0;
  }

  .context-card h3,
  .context-audience h3 {
    font-size: 22px;
  }

  .copy-check-list li,
  .offer-grid li,
  .mentor-copy > p {
    font-size: 15px;
  }

  .mentor-visual {
    min-height: 280px;
  }

  .mentor-copy {
    gap: 16px;
  }

  .mentor-scroll-frame {
    display: none;
  }

  .mentor-copy.is-scroll-framed .mentor-scroll-item,
  .mentor-copy.is-scroll-framed .mentor-scroll-item.is-mentor-active {
    opacity: 1;
    filter: none;
    transform: none;
  }

  .mentor-info-grid h3,
  .offer-included h3 {
    font-size: 22px;
  }

  .price-grid strong {
    font-size: 32px;
  }

  .investment-layout--offer {
    gap: 22px;
  }

  .context-audience .investment-button,
  .mentor-copy .investment-button {
    width: 100%;
  }

  .investment-layout,
  .faq-layout,
  .differentials-layout {
    gap: 30px;
  }

  .investment-card {
    padding: 24px;
  }

  .investment-card h3 {
    font-size: 26px;
  }

  .investment-button,
  .closing-button {
    width: 100%;
    justify-content: space-between;
    font-size: 12px;
  }

  .faq-list summary {
    min-height: 64px;
    padding: 18px;
    gap: 16px;
    font-size: 18px;
  }

  .faq-list summary::after {
    width: 30px;
    height: 30px;
    font-size: 18px;
  }

  .faq-list p {
    padding: 0 18px 20px;
    font-size: 15px;
  }

  .closing-layout {
    justify-items: stretch;
    text-align: left;
  }
}
