@font-face {
	font-family: 'Anantason';
	src: url('../_fonts/bookstore/anantason-regular.woff2') format('woff2');
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}
@font-face {
	font-family: 'Anantason';
	src: url('../_fonts/bookstore/anantason-medium.woff2') format('woff2');
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}
@font-face {
	font-family: 'Anantason';
	src: url('../_fonts/bookstore/anantason-bold.woff2') format('woff2');
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}
@font-face {
	font-family: 'Anantason';
	src: url('../_fonts/bookstore/anantason-extrabold.woff2') format('woff2');
	font-style: normal;
	font-weight: 800;
	font-display: swap;
}

:root {
	--bookstore-blue: #2365f0;
	--bookstore-blue-dark: #214fda;
	--bookstore-blue-light: #4380f7;
	--bookstore-orange: #f77910;
	--bookstore-yellow: #ffd83d;
	--bookstore-ink: #111111;
	--bookstore-soft: #f5f7fb;
}

html {
	scroll-behavior: smooth;
}

.bookstore-campaign,
.bookstore-campaign * {
	box-sizing: border-box;
}

.bookstore-campaign {
	background: #fefefe;
	color: var(--bookstore-ink);
	font-family: 'Anantason', sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.45;
	overflow: hidden;
	margin-top: -64px;
}

.bookstore-campaign h1,
.bookstore-campaign h2,
.bookstore-campaign h3,
.bookstore-campaign h4,
.bookstore-campaign p {
	font-family: inherit;
	margin: 0;
}

.bookstore-campaign h1,
.bookstore-campaign h2,
.bookstore-campaign h3,
.bookstore-campaign h4 {
	font-weight: 800;
	letter-spacing: -0.025em;
}

.bookstore-campaign a {
	text-decoration: none;
}

.bookstore-wrap {
	margin: 0 auto;
	max-width: 1240px;
	padding-left: 32px;
	padding-right: 32px;
	position: relative;
	width: 100%;
}

.bookstore-hero {
	align-items: center;
	background: linear-gradient(110deg, var(--bookstore-blue-dark), #2078fa);
	display: flex;
	height: 768px;
	min-height: 768px;
	overflow: hidden;
	position: relative;
}

.bookstore-sunburst {
	filter: hue-rotate(170deg) saturate(1.4) brightness(1.5);
	height: 100%;
	left: 0;
	mix-blend-mode: soft-light;
	object-fit: cover;
	opacity: .24;
	position: absolute;
	top: 0;
	width: 100%;
}

.bookstore-hero-grid {
	align-items: center;
	display: grid;
	grid-template-columns: 47% 53%;
	min-height: 768px;
}

.bookstore-hero-copy {
	color: white;
	position: relative;
	z-index: 3;
}

.bookstore-pill {
	border-radius: 999px;
	display: inline-flex;
	font-size: 22px;
	font-weight: 700;
	justify-content: center;
	line-height: 1;
	padding: 18px 44px;
}

.bookstore-pill-blue {
	background: rgba(77, 137, 248, .9);
	color: white;
}

.bookstore-pill-orange {
	background: var(--bookstore-orange);
	color: white;
}

.bookstore-hero h1 {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background: linear-gradient(90deg, #ffd21f 0%, #ffe368 45%, #fff0bd 100%);
	background-clip: text;
	color: transparent;
	font-size: 59px;
	line-height: 1.35;
	margin-top: 28px;
}

.bookstore-hero h2 {
	color: white;
	font-size: 34px;
	line-height: 1.2;
	margin-top: 22px;
}

.bookstore-hero h2 em {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background: linear-gradient(90deg, #ffd21f, #fff0a5);
	background-clip: text;
	color: transparent;
	font-style: normal;
}

.bookstore-hero p {
	font-size: 18px;
	line-height: 1.55;
	margin-top: 20px;
}

.bookstore-actions {
	display: flex;
	gap: 18px;
	margin-top: 30px;
}

.bookstore-button {
	align-items: center;
	border-radius: 999px;
	box-shadow: 0 6px 12px rgba(0, 0, 0, .16);
	display: inline-flex;
	font-size: 18px;
	font-weight: 800;
	justify-content: center;
	line-height: 1;
	min-height: 49px;
	padding: 14px 30px 13px;
	transition: transform .2s ease, box-shadow .2s ease;
}

.bookstore-button:hover,
.bookstore-button:focus-visible {
	box-shadow: 0 10px 18px rgba(0, 0, 0, .2);
	transform: translateY(-2px);
}

.bookstore-button-yellow {
	background: linear-gradient(90deg, #ffca26, #ffe356);
	color: #111111 !important;
}

.bookstore-button-outline {
	border: 2px solid white;
	box-shadow: none;
	color: white;
}

.bookstore-hero-art {
	height: 100%;
	min-height: 768px;
	position: relative;
	z-index: 2;
}

.bookstore-hero-device {
	left: 0;
	max-width: none;
	position: absolute;
	top: 185px;
	width: 682px;
	z-index: 3;
}

.bookstore-hero-decor {
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 2;
}

.bookstore-hero-decor img {
	position: absolute;
}

.bookstore-hero-openbook {
	left: 25.2%;
	top: 15.5%;
	width: clamp(104px, 8.15vw, 168px);
}

.bookstore-hero-star {
	width: clamp(16px, 1.3vw, 27px);
}

.bookstore-hero-star-left {
	left: 30.5%;
	top: 14.5%;
}

.bookstore-hero-squiggle {
	width: clamp(31px, 2.45vw, 51px);
}

.bookstore-hero-squiggle-left {
	left: 2.3%;
	top: 43%;
}

.bookstore-section {
	padding: 88px 0 92px;
}

.bookstore-section-head {
	margin: 0 auto;
	max-width: 1200px;
	text-align: center;
}

.bookstore-section-head h2 {
	font-size: 59px;
	line-height: 1.18;
	margin-top: 33px;
}

.bookstore-section-head p {
	font-size: 26px;
	line-height: 1.55;
	margin-top: 36px;
}

.bookstore-section-head-light {
	color: white;
}

.bookstore-campaign .bookstore-section-head-light h2,
.bookstore-campaign .bookstore-section-head-light p {
	color: white !important;
}

.bookstore-why {
	height: 768px;
	min-height: 768px;
	padding-bottom: 35px;
}

.bookstore-benefit-grid {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-left: -10px;
	margin-right: -10px;
	margin-top: 82px;
}

.bookstore-benefit-card {
	background: linear-gradient(145deg, #f47a18, #ff8c28);
	border: 2px solid #212121;
	border-radius: 20px;
	color: white;
	height: 285px;
	overflow: hidden;
	padding: 32px 24px 24px;
	position: relative;
}

.bookstore-benefit-card img {
	height: 77px;
	object-fit: contain;
	position: absolute;
	right: 13px;
	top: 9px;
	width: 88px;
}

.bookstore-benefit-card:nth-child(2) img {
	height: 64px;
	top: 18px;
}

.bookstore-benefit-card:nth-child(3) img {
	height: 90px;
	top: 4px;
}

.bookstore-benefit-card:nth-child(4) img {
	height: 116px;
	right: 4px;
	top: 0;
	width: 70px;
}

.bookstore-benefit-card h3 {
	color: white !important;
	font-size: 27px;
	line-height: 1.17;
	margin-top: 64px;
}

.bookstore-benefit-card p {
	color: white !important;
	font-size: 15px;
	line-height: 1.42;
	margin-top: 18px;
}

.bookstore-audience,
.bookstore-shops,
.bookstore-final {
	background: linear-gradient(110deg, #2450df, #2179fa);
	position: relative;
}

.bookstore-audience {
	height: 768px;
	min-height: 768px;
	padding-bottom: 78px;
}

.bookstore-audience-grid {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-left: -10px;
	margin-right: -10px;
	margin-top: 80px;
}

.bookstore-audience-grid article {
	background: linear-gradient(145deg, rgba(255, 255, 255, .06), rgba(102, 157, 255, .2));
	border: 1px solid rgba(255, 255, 255, .45);
	border-radius: 19px;
	box-shadow: inset 0 0 25px rgba(255, 255, 255, .05);
	color: white;
	padding: 30px 24px 24px;
}

.bookstore-audience-grid article > span {
	color: var(--bookstore-yellow);
	font-size: 15px;
	font-weight: 700;
}

.bookstore-audience-grid h3 {
	color: white;
	font-size: 24px;
	line-height: 1.22;
	margin-top: 17px;
}

.bookstore-audience-grid p {
	color: white;
	font-size: 15px;
	line-height: 1.48;
	margin-top: 18px;
}

.bookstore-problems {
	background: var(--bookstore-soft);
	height: 768px;
	min-height: 768px;
	padding-bottom: 53px;
	padding-top: 114px;
}

.bookstore-problems .bookstore-section-head {
	margin-left: -32px;
	margin-right: -32px;
	max-width: none;
}

.bookstore-problem-grid {
	display: grid;
	gap: 25px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 41px auto 0;
	max-width: 1116px;
}

.bookstore-problem-card {
	border: 2px solid #111111;
	border-radius: 20px;
	color: white;
	height: 323px;
	overflow: hidden;
	padding: 28px 20px 0;
	position: relative;
	text-align: center;
}

.bookstore-problem-card h3 {
	color: white !important;
	font-size: 26px;
	line-height: 1.18;
	position: relative;
	z-index: 2;
}

.bookstore-problem-card img {
	bottom: -100px;
	height: 320px;
	left: 50%;
	object-fit: contain;
	position: absolute;
	transform: translateX(-50%);
	width: 320px;
}

.bookstore-problem-blue {
	background: #236af5;
}

.bookstore-problem-red {
	background: #f14a42;
}

.bookstore-problem-green {
	background: #84c54a;
}

.bookstore-package {
	height: 1536px;
	min-height: 1536px;
	padding-bottom: 41px;
	padding-top: 114px;
}

.bookstore-package-card {
	background: var(--bookstore-orange);
	border: 3px solid #1b1b1b;
	border-radius: 23px;
	box-shadow: 0 7px 0 rgba(0, 0, 0, .06);
	color: white;
	margin: 52px auto 0;
	max-width: 1040px;
	min-height: 980px;
	padding: 54px 72px 42px;
}

.bookstore-package-summary {
	align-items: center;
	display: grid;
	gap: 45px;
	grid-template-columns: 1fr auto;
}

.bookstore-package-summary h3 {
	color: white !important;
	font-size: 39px;
	line-height: 1.1;
}

.bookstore-package-summary p {
	color: white !important;
	font-size: 17px;
	line-height: 1.45;
	margin-top: 14px;
}

.bookstore-price {
	min-width: 260px;
	text-align: center;
}

.bookstore-price strong {
	font-size: 53px;
	line-height: 1;
}

.bookstore-price span {
	font-size: 20px;
}

.bookstore-price small {
	display: block;
	font-size: 14px;
	margin: 6px 0 13px;
}

.bookstore-price .bookstore-button {
	border: 0;
	cursor: pointer;
	font-size: 16px;
	font-family: inherit;
	min-height: 42px;
	padding: 12px 27px 11px;
}

.bookstore-feature-list {
	border-top: 2px solid rgba(0, 0, 0, .48);
	display: grid;
	gap: 29px 50px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: none;
	margin: 40px 0 0;
	padding: 42px 0 0;
}

.bookstore-feature-list li {
	display: grid;
	gap: 16px;
	grid-template-columns: 40px 1fr;
	/*min-height: 145px;*/
}

.bookstore-feature-list li > span {
	align-items: center;
	background: white;
	border-radius: 7px;
	color: var(--bookstore-orange);
	display: flex;
	font-size: 24px;
	font-weight: 800;
	height: 38px;
	justify-content: center;
	line-height: 1;
	width: 38px;
}

.bookstore-feature-list h4 {
	color: white !important;
	font-size: 21px;
	line-height: 1.2;
}

.bookstore-feature-list p {
	color: white !important;
	font-size: 14px;
	line-height: 1.42;
	margin-top: 7px;
}

.bookstore-lnwbook-note {
	align-items: center;
	background: white;
	border: 2px solid #1b1b1b;
	border-radius: 18px;
	box-shadow: 0 7px 12px rgba(0, 0, 0, .25);
	color: #111111;
	display: grid;
	gap: 24px;
	grid-template-columns: 78px 1fr;
	margin-top: 38px;
	padding: 20px 29px;
}

.bookstore-lnwbook-note img {
	width: 68px;
}

.bookstore-lnwbook-note h4 {
	font-size: 22px;
}

.bookstore-lnwbook-note p {
	font-size: 14px;
	line-height: 1.4;
	margin-top: 3px;
}

.bookstore-package-help {
	font-size: 14px;
	display: block;
	margin-top: 23px;
	text-align: center;
}

.bookstore-package-help a {
	color: #1f63ed;
	font-weight: 700;
}

.bookstore-shops {
	height: 902px;
	min-height: 902px;
	padding-bottom: 79px;
	padding-top: 89px;
}

.bookstore-shop-scroller {
	display: flex;
	gap: 28px;
	margin: 44px calc((100vw - 1176px) / -2) 0;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 5px max(32px, calc((100vw - 1176px) / 2)) 16px;
	scroll-padding-inline: max(32px, calc((100vw - 1176px) / 2));
}

.bookstore-shop-card {
	background: white;
	border-radius: 17px;
	box-shadow: 0 6px 10px rgba(1, 23, 80, .35);
	color: #111111;
	display: grid;
	flex: 0 0 570px;
	grid-template-columns: 60% 40%;
	height: 300px;
	overflow: hidden;
	padding: 0;
}

.bookstore-shop-image {
	height: 100%;
	overflow: hidden;
}

.bookstore-shop-image img {
	height: 100%;
	object-fit: contain;
	object-position: center top;
	width: 100%;
}

.bookstore-shop-content {
	align-self: center;
	min-width: 0;
	padding: 28px 25px;
}

.bookstore-shop-content .bookstore-shop-logo {
	height: 38px;
	margin-bottom: 13px;
	max-width: 125px;
	object-fit: contain;
	object-position: left center;
	width: auto;
}

.bookstore-shop-card h3 {
	color: #111111;
	font-size: 20px;
	line-height: 1.25;
}

.bookstore-shop-card p {
	color: #4b5563;
	display: -webkit-box;
	font-size: 14px;
	line-height: 1.45;
	margin-top: 9px;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}

.bookstore-shop-cta {
	display: flex;
	margin: 39px auto 0;
	width: fit-content;
}

.bookstore-lnwbook {
	height: 768px;
	min-height: 768px;
	overflow: hidden;
	padding-bottom: 0;
	padding-top: 113px;
}

.bookstore-lnwbook-laptop {
	display: block;
	margin: -97px auto 0;
	max-width: 850px;
	width: 85%;
}

.bookstore-final {
	align-items: center;
	color: white;
	display: flex;
	height: 768px;
	min-height: 768px;
	overflow: hidden;
	position: relative;
	text-align: center;
}

.bookstore-final-art {
	height: 100%;
	left: 0;
	opacity: .1;
	position: absolute;
	top: 0;
	width: 100%;
}

.bookstore-final-art img:first-child {
	left: 6%;
	position: absolute;
	top: 5%;
	width: clamp(155px, 12.1vw, 248px);
}

.bookstore-final-art img:last-child {
	position: absolute;
	right: 5%;
	top: 15%;
	transform: rotate(-9deg);
	width: clamp(470px, 37.3vw, 765px);
}

.bookstore-final-content {
	z-index: 2;
}

.bookstore-final h2 {
	color: white;
	font-size: 52px;
	line-height: 1.18;
}

.bookstore-final p {
	font-size: 19px;
	margin-top: 19px;
}

.bookstore-final p em {
	color: var(--bookstore-yellow);
	font-style: normal;
	font-weight: 800;
}

.bookstore-final .bookstore-button {
	margin-top: 35px;
}

@media (max-width: 1100px) {
	.bookstore-hero h1 {
		font-size: 49px;
	}
	.bookstore-hero-art {
		transform: scale(.85);
		transform-origin: center left;
	}
	.bookstore-benefit-grid,
	.bookstore-audience-grid {
		gap: 14px;
	}
	.bookstore-benefit-card h3 {
		font-size: 23px;
	}
	.bookstore-audience-grid h3 {
		font-size: 21px;
	}
}

@media (max-width: 767px) {
	.bookstore-campaign {
		font-size: 16px;
	}
	.bookstore-wrap {
		max-width: 430px;
		padding-left: 22px;
		padding-right: 22px;
	}
	.bookstore-hero,
	.bookstore-hero-grid {
		height: auto;
		min-height: 220px;
	}
	.bookstore-why,
	.bookstore-audience,
	.bookstore-problems,
	.bookstore-package,
	.bookstore-shops,
	.bookstore-final {
		height: auto;
	}
	.bookstore-hero-grid {
		grid-template-columns: 54% 46%;
		padding-bottom: 12px;
		padding-top: 12px;
	}
	.bookstore-hero h1 {
		font-size: 16px;
		margin-top: 6px;
	}
	.bookstore-hero h2 {
		font-size: 11px;
		margin-top: 5px;
	}
	.bookstore-hero p {
		font-size: 6px;
		line-height: 1.35;
		margin-top: 4px;
	}
	.bookstore-pill {
		font-size: 7px;
		padding: 4px 8px 3px;
	}
	.bookstore-actions {
		gap: 5px;
		margin-top: 6px;
	}
	.bookstore-button {
		font-size: 7px;
		min-height: 20px;
		padding: 6px 9px 5px;
	}
	.bookstore-button-outline {
		border-width: 1px;
	}
	.bookstore-hero-art {
		height: 190px;
		min-height: 0;
		transform: none;
	}
	.bookstore-hero-device {
		bottom: 4px;
		left: -28px;
		top: auto;
		width: 218px;
	}
	.bookstore-hero-openbook {
		left: 26%;
		top: 8%;
		width: 22px;
	}
	.bookstore-hero-star {
		width: 7px;
	}
	.bookstore-hero-star-left {
		left: 31%;
		top: 8%;
	}
	.bookstore-hero-squiggle {
		width: 12px;
	}
	.bookstore-hero-squiggle-left {
		left: 2%;
		top: 40%;
	}
	.bookstore-sunburst {
		height: 100%;
		width: 100%;
	}
	.bookstore-section {
		padding: 40px 0 44px;
	}
	.bookstore-section-head h2 {
		font-size: 27px;
		line-height: 1.2;
		margin-top: 15px;
	}
	.bookstore-section-head p {
		font-size: 14px;
		line-height: 1.45;
		margin-top: 11px;
	}
	.bookstore-section-head p br {
		display: none;
	}
	.bookstore-problems .bookstore-section-head {
		margin-left: 0;
		margin-right: 0;
	}
	.bookstore-benefit-grid,
	.bookstore-audience-grid,
	.bookstore-problem-grid {
		grid-template-columns: 1fr;
		margin-left: 0;
		margin-right: 0;
		margin-top: 26px;
	}
	.bookstore-benefit-grid,
	.bookstore-audience-grid {
		gap: 18px;
	}
	.bookstore-benefit-card {
		height: 250px;
		margin-left: auto;
		margin-right: auto;
		max-width: 310px;
		padding: 27px 23px 20px;
		width: 100%;
	}
	.bookstore-benefit-card h3 {
		font-size: 25px;
		margin-top: 49px;
	}
	.bookstore-benefit-card p {
		font-size: 14px;
		margin-top: 13px;
	}
	.bookstore-audience-grid article {
		margin-left: auto;
		margin-right: auto;
		max-width: 310px;
		width: 100%;
	}
	.bookstore-audience-grid h3 {
		font-size: 24px;
	}
	.bookstore-problem-grid {
		gap: 20px;
		max-width: 310px;
	}
	.bookstore-problem-card {
		height: 330px;
	}
	.bookstore-package {
		padding-bottom: 58px;
	}
	.bookstore-package-card {
		margin-top: 38px;
		padding: 32px 23px 25px;
	}
	.bookstore-package-summary {
		gap: 24px;
		grid-template-columns: 1fr;
		text-align: center;
	}
	.bookstore-package-summary h3 {
		font-size: 29px;
	}
	.bookstore-package-summary p {
		font-size: 14px;
	}
	.bookstore-price strong {
		font-size: 45px;
	}
	.bookstore-feature-list {
		gap: 27px;
		grid-template-columns: 1fr;
		padding-top: 32px;
		text-align: left;
	}
	.bookstore-feature-list h4 {
		font-size: 19px;
	}
	.bookstore-lnwbook-note {
		gap: 13px;
		grid-template-columns: 45px 1fr;
		padding: 17px 16px;
		text-align: left;
	}
	.bookstore-lnwbook-note img {
		width: 42px;
	}
	.bookstore-lnwbook-note h4 {
		font-size: 17px;
	}
	.bookstore-lnwbook-note p {
		font-size: 11px;
	}
	.bookstore-shops {
		min-height: 760px;
	}
	.bookstore-shop-scroller {
		gap: 16px;
		margin-left: -22px;
		margin-right: -22px;
		margin-top: 26px;
		overflow-x: auto;
		padding-left: 22px;
		padding-right: 22px;
		scroll-padding-inline: 22px;
		scroll-snap-type: x mandatory;
	}
	.bookstore-shop-card {
		flex-basis: 330px;
		grid-template-columns: 58% 42%;
		height: 190px;
		scroll-snap-align: start;
	}
	.bookstore-shop-content {
		padding: 18px 15px;
	}
	.bookstore-shop-content .bookstore-shop-logo {
		height: 26px;
		margin-bottom: 8px;
		max-width: 85px;
	}
	.bookstore-shop-card h3 {
		font-size: 15px;
	}
	.bookstore-shop-card p {
		font-size: 11px;
		line-height: 1.35;
		margin-top: 6px;
		-webkit-line-clamp: 4;
	}
	.bookstore-shop-cta {
		font-size: 13px;
		margin-top: 28px;
	}
	.bookstore-lnwbook {
		height: auto;
		min-height: 590px;
	}
	.bookstore-lnwbook-laptop {
		margin-top: 34px;
		width: 100%;
	}
	.bookstore-final {
		min-height: 570px;
	}
	.bookstore-final h2 {
		font-size: 31px;
	}
	.bookstore-final p {
		font-size: 14px;
	}
	.bookstore-final-art img:first-child {
		left: 3%;
		top: 7%;
		width: 105px;
	}
	.bookstore-final-art img:last-child {
		right: -95px;
		top: 22%;
		width: 340px;
	}
}