@media (max-width: 1280px) {
	.hero-copy {
		max-width: 60%;
	}

	.hero-visual {
		width: clamp(340px, 44vw, 700px);
	}
}

@media (max-width: 1024px) {
	.hero-content,
	.content-block {
		border-radius: 24px;
	}

	.results-strip,
	.roadmap {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hero-content {
		grid-template-columns: 1fr;
		text-align: left;
	}

	.hero-copy {
		max-width: 58%;
	}

	.hero-visual {
		width: clamp(340px, 52vw, 660px);
	}

	.about-layout,
	.cta-layout {
		grid-template-columns: 1fr;
	}

	.advantages-layout {
		grid-template-columns: 1fr;
	}

	.adv-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.block-courses .container {
		height: 338px;
	}

	.block-courses .carousel__face {
		width: 252px;
		height: 164px;
		top: 84px;
		transform: translateX(-50%) rotateY(calc(var(--i) * var(--angle-step, 40deg))) translateZ(320px);
	}

	.block-courses .course-face-content {
		font-size: 0.9rem;
	}

	.block-courses .course-cover {
		width: 108px;
		height: 64px;
	}

	.promo-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.footer-wrapper {
		grid-template-columns: repeat(2, 1fr);
		gap: 24px;
	}
}

@media (max-width: 900px) {
	html,
	body {
		max-width: 100%;
		overflow-x: clip;
	}

	.hero-header,
	main,
	.footer-content {
		padding-left: 14px;
		padding-right: 14px;
	}

	.hero-header,
	main,
	footer,
	.footer-content,
	.header-shell,
	.hero-content,
	.content-block {
		max-width: 100%;
	}

	.header-shell,
	.hero-content,
	.content-block,
	.about-layout,
	.advantages-layout,
	.adv-grid,
	.promo-grid,
	.cta-layout,
	.roadmap,
	.footer-wrapper,
	.footer-bottom {
		min-width: 0;
	}

	.about-card,
	.feedback-card,
	.advantages-hero,
	.adv-item,
	.format-panel,
	.promo-card,
	.cta-card,
	.roadmap-step,
	.faq-item,
	.footer-section {
		min-width: 0;
	}

	.header-shell {
		position: relative;
		flex-wrap: wrap;
	}

	.mobile-menu-toggle {
		display: flex;
		margin-left: auto;
		order: 2;
	}

	.main-nav {
		display: none;
		width: 100%;
		order: 4;
	}

	.main-nav.active {
		display: block;
		margin-top: 6px;
		padding-top: 10px;
		border-top: 1px solid var(--line);
	}

	.horizontal-menu {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.header-actions {
		order: 3;
		width: 100%;
	}

	.header-btn {
		flex: 1;
		text-align: center;
		min-width: 0;
	}

	.brand img {
		max-width: 180px;
	}

	.content-block {
		padding: 22px;
	}

	.block-heading {
		margin-bottom: 16px;
	}

	.about-layout,
	.feedback-form,
	.faq-list {
		gap: 12px;
	}

	.about-card,
	.feedback-card,
	.format-panel,
	.promo-card,
	.cta-card,
	.roadmap-step {
		padding: 16px;
	}

	.block-heading h2 {
		line-height: 1.3;
	}

	h1,
	h2,
	h3,
	h4,
	p,
	li,
	a,
	button,
	span {
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.advantages-tags,
	.cta-trust,
	.promo-meta {
		gap: 6px;
	}

	.footer-content {
		padding-top: 36px;
		padding-bottom: 28px;
	}
}

@media (max-width: 768px) {
	body {
		overflow-x: hidden;
	}

	.block-courses {
		overflow: hidden;
	}

	.block-courses .container {
		height: 290px;
		perspective: 980px;
		max-width: 100%;
	}

	.footer-wrapper {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.footer-bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}

	.footer-legal-links {
		width: 100%;
	}

	.footer-corner-design {
		max-width: 200px;
		bottom: 48px;
	}

	.results-strip,
	.roadmap {
		grid-template-columns: 1fr;
	}

	.cta-layout {
		gap: 16px;
	}

	.cta-card {
		padding: 18px;
	}

	.cta-actions {
		flex-direction: column;
	}

	.adv-grid {
		grid-template-columns: 1fr;
	}

	.promo-grid {
		grid-template-columns: 1fr;
	}

	.advantages-hero {
		padding: 18px;
	}

	.adv-main-metric {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}

	.adv-motion-track {
		gap: 16px;
		animation: advTicker 34s linear infinite;
		animation-play-state: paused;
		will-change: transform;
	}

	.adv-motion-track.is-running {
		animation-play-state: running;
	}

	.block-courses .carousel {
		position: absolute;
		width: 100%;
		height: 100%;
		transform-style: preserve-3d;
		display: block;
		gap: 0;
		padding: 0;
		animation: rotate360 44s infinite linear;
		animation-play-state: paused;
		will-change: transform;
	}

	.block-courses .carousel.is-rotating {
		animation-play-state: running;
	}

	.block-courses .carousel__face {
		position: absolute;
		width: 180px;
		height: 120px;
		top: 86px;
		left: 50%;
		transform: translateX(-50%) rotateY(calc(var(--i) * var(--angle-step, 40deg))) translateZ(270px);
	}

	.block-courses .course-face-content {
		font-size: 0.68rem;
		padding: 0 8px;
		gap: 7px;
	}

	.block-courses .course-face-text {
		line-clamp: 2;
		-webkit-line-clamp: 2;
	}

	.block-courses .course-cover {
		width: 72px;
		height: 42px;
		border-radius: 8px;
	}

	.hero-content {
		padding: 22px;
	}

	.hero-copy,
	.hero-copy > p {
		max-width: 100%;
		font-size: 1rem;
	}

	.hero-visual {
		display: none;
	}

	.hero-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.cta-btn {
		text-align: center;
	}

	.about-card h3,
	.feedback-card h3,
	.advantages-hero h3,
	.cta-card h3,
	.promo-card h3 {
		font-size: 1rem;
		line-height: 1.35;
	}

	.about-card p,
	.feedback-card p,
	.advantages-hero > p,
	.promo-card p,
	.cta-card--action > p,
	.faq-a p {
		font-size: 0.95rem;
		line-height: 1.62;
	}

	.about-card ul,
	.format-panel ul,
	.cta-checklist,
	.cta-benefits {
		gap: 8px;
		padding-left: 18px;
	}

	.format-switch {
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		padding-bottom: 4px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
	}

	.format-btn {
		white-space: nowrap;
		flex: 0 0 auto;
	}

	.format-panel {
		padding: 14px;
	}

	.promo-card__image {
		height: 148px;
	}

	.roadmap {
		margin-top: 14px;
		gap: 10px;
	}

	.roadmap-step span {
		width: 24px;
		height: 24px;
		font-size: 0.82rem;
	}

	.roadmap-step p {
		font-size: 0.88rem;
		line-height: 1.55;
	}

	.footer-tagline {
		max-width: 100%;
	}

	.footer-contacts-list li,
	.footer-links li,
	.footer-legal-links a {
		min-width: 0;
	}

	.footer-legal-links {
		gap: 8px;
	}

	#cookie-consent-banner {
		padding: 20px 16px;
	}

	.cookie-consent-container {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}

	.cookie-consent-icon {
		display: none;
	}

	.cookie-consent-actions {
		width: 100%;
		flex-direction: column;
	}

	.cookie-consent-btn {
		width: 100%;
		padding: 14px;
	}
}

@media (max-width: 480px) {
	html,
	body {
		overflow-x: hidden;
	}

	.hero-header {
		padding-top: 14px;
	}

	.hero-content,
	.content-block,
	.about-card,
	.feedback-card {
		border-radius: 16px;
	}

	.footer-section h4 {
		font-size: 1rem;
	}

	.footer-social-link {
		width: 36px;
		height: 36px;
	}

	.social-icon {
		font-size: 0.7rem;
	}

	.footer-links,
	.footer-contacts-list {
		gap: 8px;
	}

	.footer-links a,
	.footer-contacts-list a {
		font-size: 0.9rem;
	}

	.footer-bottom {
		font-size: 0.85rem;
		padding: 16px 14px;
	}

	.footer-corner-design {
		max-width: 140px;
		bottom: 48px;
	}

	.hero-copy h1 {
		font-size: 1.7rem;
	}

	.block-kicker {
		font-size: 0.7rem;
	}

	.block-heading h2 {
		font-size: 1.2rem;
	}

	.about-card,
	.feedback-card,
	.advantages-hero,
	.adv-item,
	.format-panel,
	.promo-card,
	.cta-card,
	.roadmap-step {
		padding: 16px;
	}

	.feedback-form input,
	.feedback-form textarea,
	.feedback-form button {
		font-size: 0.92rem;
	}

	.adv-item h3,
	.format-panel h3,
	.promo-card h3,
	.cta-card h3,
	.faq-q {
		font-size: 0.95rem;
	}

	.advantages-tags span,
	.trust-pill,
	.promo-meta span {
		font-size: 0.74rem;
		padding: 6px 10px;
	}

	.promo-discount,
	.promo-code {
		font-size: 0.74rem;
		padding: 5px 8px;
	}

	.cta-actions {
		gap: 8px;
	}

	.cta-btn {
		font-size: 0.88rem;
		padding: 11px 14px;
	}

	.faq-q {
		padding: 12px 14px;
	}

	.faq-a p {
		padding: 0 14px 12px;
	}

	.hero-visual {
		display: none;
	}

	.block-courses .container {
		height: 250px;
		perspective: 860px;
	}

	.block-courses .carousel__face {
		width: 150px;
		height: 104px;
		top: 74px;
		transform: translateX(-50%) rotateY(calc(var(--i) * var(--angle-step, 40deg))) translateZ(220px);
	}

	.block-courses .course-face-content {
		font-size: 0.62rem;
		gap: 6px;
	}

	.block-courses .course-face-text {
		line-clamp: 2;
		-webkit-line-clamp: 2;
	}

	.block-courses .course-cover {
		width: 58px;
		height: 34px;
		border-radius: 8px;
	}

	.promo-card {
		padding: 14px;
	}

	.promo-card__image {
		height: 124px;
	}

	.promo-card__top {
		align-items: flex-start;
		flex-direction: column;
	}

	.brand span {
		font-size: 0.95rem;
	}

	.brand img {
		max-width: 148px;
	}

	.header-shell {
		padding: 10px 12px;
	}

	.footer-legal-links {
		row-gap: 6px;
	}
}

@media (max-width: 375px) {
	.hero-header,
	main,
	.footer-content {
		padding-left: 10px;
		padding-right: 10px;
	}

	.header-shell {
		padding: 12px;
		gap: 10px;
	}

	.brand img {
		max-width: 132px;
	}

	.header-actions {
		flex-direction: column;
	}

	.header-btn {
		width: 100%;
	}

	.content-block,
	.hero-content {
		padding: 16px;
	}

	.hero-copy h1 {
		font-size: 1.5rem;
	}

	.block-heading h2 {
		font-size: 1.3rem;
	}

	.block-kicker {
		font-size: 0.68rem;
	}

	.about-card,
	.feedback-card,
	.advantages-hero,
	.adv-item,
	.format-panel,
	.promo-card,
	.cta-card,
	.roadmap-step {
		padding: 14px;
	}

	.about-card h3,
	.feedback-card h3,
	.advantages-hero h3,
	.adv-item h3,
	.format-panel h3,
	.promo-card h3,
	.cta-card h3,
	.faq-q {
		font-size: 0.9rem;
	}

	.about-card p,
	.feedback-card p,
	.advantages-hero > p,
	.promo-card p,
	.cta-card--action > p,
	.faq-a p {
		font-size: 0.88rem;
	}

	.feedback-form input,
	.feedback-form textarea,
	.feedback-form button {
		padding: 10px 11px;
		font-size: 0.88rem;
	}

	.format-btn {
		padding: 8px 12px;
		font-size: 0.82rem;
	}

	.promo-card__image {
		height: 116px;
	}

	.roadmap-step h4 {
		font-size: 0.86rem;
	}

	.roadmap-step p {
		font-size: 0.82rem;
	}

	.footer-content {
		padding-top: 30px;
		padding-bottom: 22px;
	}

	.footer-wrapper {
		gap: 22px;
		margin-bottom: 24px;
	}

	.footer-tagline,
	.footer-links a,
	.footer-contacts-list li,
	.footer-contacts-list a,
	.footer-legal-links a {
		font-size: 0.82rem;
	}

	.block-courses .carousel__face {
		width: 130px;
		height: 92px;
		top: 72px;
		transform: translateX(-50%) rotateY(calc(var(--i) * var(--angle-step, 40deg))) translateZ(185px);
	}

	.block-courses .course-cover {
		width: 50px;
		height: 30px;
	}

	.cookie-consent-text p {
		font-size: 13px;
	}
}
