#jape-comic-dossier {
	--green: #00d084;
	--green-dark: #008f5c;
	--brown: #351e15;
	--yellow: #ffd83d;
	--paper: #fffdf7;
	--soft: #f2f7f4;
	--white: #fff;
	--line: #d8e6dd;
	--muted: #6f625c;
	--shadow: 0 18px 45px rgba(36, 72, 55, .13);
	width: 100vw;
	max-width: 100vw;
	margin: 0 calc(50% - 50vw);
	overflow: hidden;
	background: var(--paper);
	color: var(--brown);
	font: 18px/1.58 Karla, sans-serif;
}

#jape-comic-dossier *,
#jape-comic-dossier *::before,
#jape-comic-dossier *::after {
	box-sizing: border-box;
}

#jape-comic-dossier img {
	display: block;
	max-width: 100%;
}

#jape-comic-dossier a {
	color: inherit;
}

#jape-comic-dossier figure,
#jape-comic-dossier blockquote {
	margin: 0;
}

#jape-comic-dossier section {
	padding: 84px 0;
}

#jape-comic-dossier h1,
#jape-comic-dossier h2,
#jape-comic-dossier h3,
#jape-comic-dossier p {
	color: inherit;
}

#jape-comic-dossier h2 {
	margin: 0 0 18px;
	font: 800 clamp(35px, 4.7vw, 54px)/1.07 Nunito, sans-serif;
	letter-spacing: -.025em;
}

#jape-comic-dossier h3 {
	margin: 0 0 8px;
	font: 800 25px/1.16 Nunito, sans-serif;
}

.jt-wrap {
	width: min(1160px, calc(100% - 40px));
	margin: 0 auto;
}

.jt-center {
	text-align: center;
}

.jt-section-heading {
	max-width: 820px;
	margin-bottom: 42px;
}

.jt-section-heading.jt-center {
	margin-right: auto;
	margin-left: auto;
}

.jt-section-heading p {
	margin: 0;
	font-size: 20px;
}

.jt-eyebrow,
.jt-kicker,
.jt-format-label {
	display: inline-flex;
	padding: 7px 13px;
	border-radius: 999px;
	background: var(--yellow);
	color: var(--brown) !important;
	font: 800 13px/1.2 Nunito, sans-serif;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.jt-kicker {
	margin-bottom: 16px;
}

.jt-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 14px 24px;
	border: 0;
	border-radius: 999px;
	background: var(--green) !important;
	color: #fff !important;
	font: 700 13px/1 Montserrat, sans-serif;
	letter-spacing: .08em;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	cursor: pointer;
	transition: transform .2s ease, background .2s ease;
}

.jt-btn:hover,
.jt-btn:focus-visible {
	background: var(--green-dark) !important;
	color: #fff !important;
	transform: translateY(-2px);
}

.jt-btn:focus-visible,
#jape-comic-dossier a:focus-visible,
#jape-comic-dossier input:focus-visible,
#jape-comic-dossier textarea:focus-visible {
	outline: 3px solid var(--yellow);
	outline-offset: 3px;
}

.jt-btn.jt-white {
	background: #fff !important;
	color: var(--brown) !important;
}

.jt-btn.jt-white:hover,
.jt-btn.jt-white:focus-visible {
	background: var(--yellow) !important;
	color: var(--brown) !important;
}

/* Portada */
.jt-hero {
	position: relative;
	padding: 44px 0 90px !important;
	overflow: hidden;
	background: var(--green);
	color: #fff;
}

.jt-hero::after {
	position: absolute;
	right: -4%;
	bottom: -78px;
	left: -4%;
	height: 126px;
	background: var(--paper);
	content: "";
	transform: rotate(-2.5deg);
}

.jt-hero-grid {
	display: grid;
	grid-template-columns: 1.04fr .96fr;
	gap: 54px;
	align-items: center;
}

.jt-hero-copy {
	position: relative;
	z-index: 1;
}

.jt-hero h1 {
	max-width: 690px;
	margin: 20px 0 24px;
	color: #fff !important;
	font: 900 clamp(52px, 6.1vw, 78px)/.98 Nunito, sans-serif;
	letter-spacing: -.045em;
}

.jt-hero h1 span {
	display: block;
	color: var(--yellow);
}

.jt-hero-copy > p {
	max-width: 650px;
	margin: 0 0 28px;
	color: #fff !important;
	font-size: 21px;
}

.jt-hero-copy > .jt-hero-credibility {
	max-width: 650px;
	margin: 15px 0 0;
	color: #fff !important;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	opacity: .92;
}

.jt-hero-photo {
	position: relative;
	z-index: 1;
}

.jt-hero-photo img {
	width: 100%;
	aspect-ratio: 1/1.02;
	border: 9px solid #fff;
	border-radius: 30px;
	object-fit: cover;
	box-shadow: var(--shadow);
	transform: rotate(1.5deg);
}

.jt-quick-facts {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	max-width: 720px;
	margin: 30px 0 0;
	padding: 0;
	list-style: none;
}

.jt-quick-facts li {
	padding: 13px 10px;
	border: 1px solid rgba(255, 255, 255, .36);
	border-radius: 15px;
	background: rgba(255, 255, 255, .12);
	text-align: center;
}

.jt-quick-facts strong,
.jt-quick-facts span {
	display: block;
	color: #fff;
}

.jt-quick-facts strong {
	font: 800 17px/1.15 Nunito, sans-serif;
}

.jt-quick-facts span {
	margin-top: 4px;
	font-size: 13px;
	line-height: 1.2;
}

/* Experiencia */
.jt-live {
	background: var(--paper);
}

.jt-live-layout {
	display: grid;
	grid-template-columns: 1.05fr .95fr;
	gap: 52px;
	align-items: center;
}

.jt-live-photo {
	overflow: hidden;
	border-radius: 28px;
	box-shadow: var(--shadow);
}

.jt-live-photo img {
	width: 100%;
	aspect-ratio: 1.3/1;
	object-fit: cover;
}

.jt-moments {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.jt-moments li {
	display: grid;
	grid-template-columns: 52px 1fr;
	gap: 17px;
	align-items: start;
	padding: 20px 0;
	border-bottom: 1px solid var(--line);
}

.jt-moments li:first-child {
	padding-top: 0;
}

.jt-moments li:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.jt-moments li > span {
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 15px;
	background: var(--yellow);
	font: 900 17px Nunito, sans-serif;
}

.jt-moments h3 {
	font-size: 23px !important;
}

.jt-moments p {
	margin: 0;
}

/* Resultado */
.jt-result {
	background: var(--brown);
	color: #fff;
}

.jt-result-grid {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: 55px;
	align-items: center;
}

.jt-result-copy p {
	color: #fff !important;
}

.jt-result-lead {
	margin: 0 0 18px;
	font: 700 24px/1.45 Nunito, sans-serif;
}

.jt-result-photo {
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 26px;
	box-shadow: var(--shadow);
	transform: rotate(-1deg);
}

.jt-result-photo img {
	width: 100%;
	aspect-ratio: 1.7/1;
	object-fit: cover;
}

/* Conexión previa con el alumnado */
.jt-connection {
	background: var(--yellow);
}

.jt-connection-intro {
	display: grid;
	grid-template-columns: .82fr 1.18fr;
	gap: 60px;
	align-items: start;
}

.jt-connection h2 {
	max-width: 470px;
}

.jt-connection-copy p {
	margin: 0 0 16px;
	font-size: 20px;
}

.jt-connection-copy p:last-child {
	margin-bottom: 0;
}

.jt-connection-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin-top: 36px;
}

.jt-connection-card {
	padding: 25px;
	border: 1px solid rgba(53, 30, 21, .1);
	border-radius: 21px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(53, 30, 21, .09);
}

.jt-connection-label {
	display: inline-flex;
	margin-bottom: 16px;
	padding: 6px 10px;
	border-radius: 999px;
	background: var(--green);
	color: #fff;
	font: 800 12px/1.2 Nunito, sans-serif;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.jt-connection-card h3 {
	font-size: 24px !important;
}

.jt-connection-card p {
	margin: 0;
}

.jt-connection-highlight {
	margin: 22px 0 0;
	padding: 22px 28px;
	border-radius: 20px;
	background: var(--brown);
	color: #fff !important;
	font: 700 21px/1.45 Nunito, sans-serif;
	text-align: center;
}

/* Aprendizajes */
.jt-learning {
	background: var(--soft);
}

.jt-learning-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.jt-learning-grid li {
	min-height: 175px;
	padding: 24px;
	border: 1px solid var(--line);
	border-radius: 21px;
	background: #fff;
	box-shadow: 0 8px 25px rgba(36, 72, 55, .06);
}

.jt-learning-grid li > span {
	display: block;
	margin-bottom: 22px;
	color: var(--green-dark);
	font: 900 28px/1 Nunito, sans-serif;
}

.jt-learning-grid strong,
.jt-learning-grid small {
	display: block;
}

.jt-learning-grid strong {
	font: 800 20px/1.25 Nunito, sans-serif;
}

.jt-learning-grid small {
	margin-top: 7px;
	color: var(--muted);
	font-size: 15px;
}

.jt-learning-note {
	max-width: 800px;
	margin: 30px auto 0;
	font-weight: 700;
	text-align: center;
}

/* Galería */
.jt-gallery {
	background: var(--paper);
}

.jt-gallery-grid {
	display: grid;
	grid-template-columns: 1.35fr .825fr .825fr;
	gap: 18px;
}

.jt-gallery-grid figure {
	display: flex;
	overflow: hidden;
	flex-direction: column;
	border: 1px solid var(--line);
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(36, 72, 55, .08);
}

.jt-gallery-grid img {
	width: 100%;
	height: 310px;
	object-fit: cover;
}

.jt-gallery-main img {
	object-position: center;
}

.jt-gallery-grid figcaption {
	flex: 1;
	padding: 16px 19px;
	font-weight: 700;
	line-height: 1.35;
}

/* Públicos */
.jt-audiences {
	background: var(--yellow);
}

.jt-audience-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.jt-audience-list article {
	padding: 27px;
	border-radius: 22px;
	background: #fff;
}

.jt-audience-list span {
	display: block;
	margin-bottom: 10px;
	color: var(--green-dark);
	font: 900 22px/1.15 Nunito, sans-serif;
}

.jt-audience-list p {
	margin: 0;
}

.jt-audience-note {
	margin: 28px 0 0;
	font-weight: 800;
	text-align: center;
}

/* Información práctica */
.jt-practical {
	background: var(--soft);
}

.jt-format-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-bottom: 28px;
}

.jt-format-card {
	padding: 30px;
	border: 1px solid var(--line);
	border-radius: 24px;
	background: #fff;
}

.jt-format-card.jt-format-primary {
	border-color: var(--green);
	box-shadow: 0 12px 30px rgba(0, 169, 108, .1);
}

.jt-format-label {
	margin-bottom: 17px;
	padding: 6px 11px;
	font-size: 12px;
}

.jt-format-card ul {
	margin: 17px 0 0;
	padding-left: 21px;
}

.jt-format-card li {
	margin: 7px 0;
}

.jt-needs-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	padding: 32px;
	border-radius: 25px;
	background: var(--brown);
	color: #fff;
}

.jt-needs-grid h3 {
	color: var(--yellow) !important;
}

.jt-checklist {
	margin: 15px 0 0;
	padding: 0;
	list-style: none;
}

.jt-checklist li {
	position: relative;
	padding: 8px 0 8px 31px;
	color: #fff;
}

.jt-checklist li::before {
	position: absolute;
	top: 8px;
	left: 0;
	color: var(--yellow);
	font-weight: 900;
	content: "✓";
}

.jt-presential-note {
	margin: 22px 0 0;
	text-align: center;
}

/* Tarifas */
.jt-budget {
	background: var(--paper);
}

.jt-lead {
	max-width: 780px;
	margin: 0 auto 42px;
	font-size: 20px;
}

.jt-budget-box {
	max-width: 900px;
	margin: auto;
	padding: 42px;
	border-radius: 30px;
	background: #fff;
	box-shadow: var(--shadow);
	text-align: left;
}

.jt-price-choice {
	position: absolute;
	opacity: 0;
}

.jt-range-head {
	display: flex;
	gap: 20px;
	align-items: flex-end;
	justify-content: space-between;
}

.jt-dynamic-count {
	display: block;
	color: var(--green-dark);
	font: 800 28px Nunito, sans-serif;
}

.jt-price {
	color: var(--green-dark);
	font: 900 clamp(50px, 7vw, 72px)/1 Nunito, sans-serif;
}

.jt-dynamic-price i,
.jt-dynamic-count i,
.jt-dynamic-summary i {
	display: none;
	font-style: normal;
}

.jt-price-choice:nth-of-type(1):checked ~ .jt-budget-display .jt-option-1,
.jt-price-choice:nth-of-type(2):checked ~ .jt-budget-display .jt-option-2,
.jt-price-choice:nth-of-type(3):checked ~ .jt-budget-display .jt-option-3 {
	display: inline;
}

.jt-price-selector {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin: 32px 0 10px;
}

.jt-price-selector::before {
	position: absolute;
	top: 17px;
	right: 16.66%;
	left: 16.66%;
	height: 8px;
	border-radius: 99px;
	background: var(--line);
	content: "";
}

.jt-price-selector label {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 8px;
	justify-items: center;
	font-weight: 700;
	cursor: pointer;
}

.jt-price-selector b {
	width: 36px;
	height: 36px;
	border: 7px solid #fff;
	border-radius: 50%;
	background: #b9ccc1;
	box-shadow: 0 0 0 2px var(--line);
	transition: .2s;
}

.jt-price-choice:focus-visible ~ .jt-budget-display .jt-price-selector {
	border-radius: 10px;
	outline: 3px solid var(--yellow);
	outline-offset: 6px;
}

.jt-price-choice:nth-of-type(1):checked ~ .jt-budget-display .jt-price-selector label:nth-child(1) b,
.jt-price-choice:nth-of-type(2):checked ~ .jt-budget-display .jt-price-selector label:nth-child(2) b,
.jt-price-choice:nth-of-type(3):checked ~ .jt-budget-display .jt-price-selector label:nth-child(3) b {
	background: var(--green);
	box-shadow: 0 0 0 3px var(--green-dark);
	transform: scale(1.08);
}

.jt-budget-note {
	display: flex;
	gap: 25px;
	justify-content: space-between;
	margin-top: 28px;
	padding-top: 24px;
	border-top: 1px solid var(--line);
}

.jt-budget-note p {
	margin: 0;
}

.jt-special-format {
	margin: 22px 0;
	padding: 13px 16px;
	border-radius: 13px;
	background: var(--soft);
}

/* Confianza */
.jt-trust {
	background: var(--green);
	color: #fff;
}

.jt-proof-grid {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: 50px;
	align-items: center;
}

.jt-proof-photo {
	overflow: hidden;
	border: 8px solid #fff;
	border-radius: 27px;
	box-shadow: var(--shadow);
}

.jt-proof-photo img {
	width: 100%;
	aspect-ratio: 1.4/1;
	object-fit: cover;
}

.jt-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 11px;
	margin: 25px 0;
}

.jt-stat {
	padding: 18px 10px;
	border: 1px solid rgba(255, 255, 255, .3);
	border-radius: 17px;
	background: rgba(255, 255, 255, .14);
	text-align: center;
}

.jt-stat strong,
.jt-stat span {
	display: block;
}

.jt-stat strong {
	color: var(--yellow);
	font: 900 34px/1 Nunito, sans-serif;
}

.jt-stat span {
	margin-top: 5px;
	font-size: 14px;
}

.jt-source a {
	color: #fff !important;
	font-weight: 800;
	text-underline-offset: 4px;
}

.jt-about {
	display: grid;
	grid-template-columns: .65fr 1.35fr;
	gap: 45px;
	align-items: center;
	margin-top: 62px;
	padding: 36px;
	border-radius: 28px;
	background: #fff;
	color: var(--brown);
}

.jt-about img {
	width: 100%;
	border-radius: 23px;
	box-shadow: var(--shadow);
}

.jt-testimonials {
	margin-top: 68px;
}

.jt-testimonial-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.jt-testimonial {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 100%;
	padding: 27px;
	border-radius: 22px;
	background: #fff;
	color: var(--brown);
}

.jt-testimonial p {
	margin: 0 0 25px;
	font: 700 19px/1.45 Nunito, sans-serif;
}

.jt-testimonial footer {
	display: grid;
	gap: 2px;
}

.jt-testimonial footer strong {
	color: var(--green-dark);
}

.jt-testimonial footer span {
	color: var(--muted);
	font-size: 14px;
}

/* Formulario */
.jt-request {
	background: var(--paper);
}

.jt-request-box {
	max-width: 980px;
	margin: auto;
	padding: 43px;
	border: 1px solid var(--line);
	border-radius: 30px;
	background: #fff;
	box-shadow: var(--shadow);
}

.jt-request-intro {
	max-width: 760px;
	margin: 0 auto 34px;
}

.jt-request-intro p {
	margin: 0 0 8px;
	font-size: 19px;
}

.jt-no-booking {
	font-weight: 800;
}

.jt-form-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 21px;
}

.jt-field {
	display: grid;
	gap: 7px;
	text-align: left;
}

.jt-field.jt-full {
	grid-column: 1/-1;
}

.jt-field label,
.jt-field legend {
	font-weight: 800;
}

.jt-field input[type="text"],
.jt-field input[type="email"],
.jt-field input[type="tel"],
.jt-field input[type="date"],
.jt-field input[type="number"],
.jt-field textarea {
	width: 100%;
	padding: 14px 15px;
	border: 2px solid var(--line);
	border-radius: 13px;
	background: #fff;
	color: var(--brown);
	font: inherit;
}

.jt-field textarea {
	min-height: 140px;
	resize: vertical;
}

.jt-choice-field {
	margin: 0;
	padding: 0;
	border: 0;
}

.jt-choice-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-top: 8px;
}

.jt-choice {
	position: relative;
}

.jt-choice input {
	position: absolute;
	opacity: 0;
}

.jt-choice label {
	display: inline-flex;
	padding: 10px 14px;
	border: 2px solid var(--line);
	border-radius: 999px;
	background: #fff;
	cursor: pointer;
}

.jt-choice input:checked + label {
	border-color: var(--green-dark);
	background: #e9fff6;
	color: var(--green-dark);
}

.jt-choice input:focus-visible + label {
	outline: 3px solid var(--yellow);
	outline-offset: 2px;
}

.jt-form-help {
	color: var(--muted);
	font-size: 14px;
}

.jt-privacy {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 15px;
}

.jt-privacy input {
	margin-top: 6px;
}

.jt-privacy a {
	color: var(--green-dark) !important;
	font-weight: 800;
}

.jt-form-submit {
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: space-between;
	margin-top: 28px;
	padding-top: 25px;
	border-top: 1px solid var(--line);
}

.jt-form-submit p {
	margin: 0;
}

.jt-direct-email {
	color: var(--green-dark) !important;
	font-weight: 800;
}

.jt-form-final-note {
	margin: 18px 0 0;
	color: var(--muted);
	font-size: 14px;
	text-align: right;
}

#jape-comic-dossier .jt-honeypot {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	opacity: 0 !important;
}

.jt-form-notice {
	margin-bottom: 24px;
	padding: 16px 18px;
	border-radius: 13px;
}

.jt-form-notice strong {
	display: block;
}

.jt-success {
	border: 1px solid #00a96c;
	background: #e9fff6;
	color: #006943;
}

.jt-error {
	border: 1px solid #d44;
	background: #fff0ed;
	color: #8b1f12;
}

/* Encapsulado dentro de Astra */
.jape-taller-page .entry-header,
.jape-taller-page .entry-title {
	display: none !important;
}

.jape-taller-page .site-content > .ast-container {
	max-width: none !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.jape-taller-page .content-area,
.jape-taller-page .site-main,
.jape-taller-page article.page {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.jape-taller-page .ast-article-single {
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.jape-taller-page .entry-content {
	margin: 0 !important;
}

@media (max-width: 980px) {
	.jt-hero-grid,
	.jt-live-layout,
	.jt-result-grid,
	.jt-proof-grid,
	.jt-about {
		grid-template-columns: 1fr;
	}

	.jt-hero-photo {
		max-width: 660px;
	}

	.jt-quick-facts,
	.jt-learning-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.jt-connection-intro {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.jt-learning-grid li {
		min-height: auto;
	}

	.jt-gallery-grid {
		grid-template-columns: 1.2fr 1fr;
	}

	.jt-gallery-grid figure:last-child {
		grid-column: 1/-1;
	}

	.jt-gallery-grid figure:last-child img {
		height: 340px;
	}

	.jt-about img {
		max-width: 440px;
	}
}

@media (max-width: 760px) {
	#jape-comic-dossier {
		font-size: 17px;
	}

	#jape-comic-dossier section {
		padding: 58px 0;
	}

	.jt-wrap {
		width: min(100% - 28px, 1160px);
	}

	.jt-section-heading {
		margin-bottom: 30px;
	}

	.jt-section-heading p,
	.jt-hero-copy > p {
		font-size: 18px;
	}

	.jt-hero {
		padding: 28px 0 76px !important;
	}

	.jt-hero-grid {
		gap: 34px;
	}

	.jt-hero h1 {
		margin: 17px 0 20px;
		font-size: clamp(46px, 13vw, 61px);
	}

	.jt-hero-copy > .jt-btn {
		width: 100%;
	}

	.jt-hero-copy > .jt-hero-credibility {
		margin-top: 13px;
		font-size: 13px;
		text-align: center;
	}

	.jt-quick-facts {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 4px;
		width: 100%;
		margin-top: 22px;
	}

	.jt-quick-facts li {
		min-width: 0;
		padding: 9px 3px;
		border-radius: 11px;
	}

	.jt-quick-facts strong {
		font-size: 14px;
	}

	.jt-quick-facts span {
		margin-top: 2px;
		font-size: 10px;
		line-height: 1.1;
	}

	.jt-hero-photo {
		width: calc(100% - 6px);
	}

	.jt-live-layout,
	.jt-result-grid {
		gap: 30px;
	}

	.jt-moments li {
		grid-template-columns: 44px 1fr;
		padding: 15px 0;
	}

	#jape-comic-dossier .jt-quick-facts,
	#jape-comic-dossier .jt-moments,
	#jape-comic-dossier .jt-learning-grid {
		width: 100%;
		margin-right: 0;
		margin-left: 0;
		padding-right: 0;
		padding-left: 0;
	}

	#jape-comic-dossier .jt-moments li,
	#jape-comic-dossier .jt-learning-grid li {
		margin-right: 0;
		margin-left: 0;
	}

	.jt-moments li > span {
		width: 40px;
		height: 40px;
		border-radius: 12px;
		font-size: 14px;
	}

	.jt-result-lead {
		font-size: 21px;
	}

	.jt-connection-copy p {
		font-size: 18px;
	}

	.jt-connection-grid {
		display: flex;
		gap: 10px;
		margin-right: -14px;
		margin-top: 27px;
		padding: 0 14px 10px 0;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}

	.jt-connection-card {
		flex: 0 0 82vw;
		min-height: 265px;
		padding: 20px;
		scroll-snap-align: start;
	}

	.jt-connection-card h3 {
		font-size: 21px !important;
	}

	.jt-connection-highlight {
		margin-top: 14px;
		padding: 19px;
		font-size: 18px;
		text-align: left;
	}

	.jt-learning-grid {
		gap: 10px;
	}

	.jt-learning-grid li {
		padding: 18px;
	}

	.jt-learning-grid li > span {
		margin-bottom: 13px;
		font-size: 23px;
	}

	.jt-learning-grid strong {
		font-size: 17px;
	}

	.jt-gallery-grid {
		display: flex;
		gap: 12px;
		margin-right: -14px;
		padding: 0 14px 12px 0;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}

	.jt-gallery-grid figure,
	.jt-gallery-grid figure:last-child {
		flex: 0 0 82vw;
		grid-column: auto;
		scroll-snap-align: start;
	}

	.jt-gallery-grid img,
	.jt-gallery-grid figure:last-child img {
		height: 300px;
	}

	.jt-audience-list,
	.jt-format-grid,
	.jt-needs-grid {
		grid-template-columns: 1fr;
	}

	.jt-audience-list {
		gap: 10px;
	}

	.jt-audience-list article {
		padding: 20px;
	}

	.jt-format-card,
	.jt-needs-grid {
		padding: 23px;
	}

	.jt-budget-box,
	.jt-request-box {
		padding: 27px 20px;
	}

	.jt-range-head,
	.jt-budget-note,
	.jt-form-submit {
		align-items: stretch;
		flex-direction: column;
	}

	.jt-price {
		margin-top: 8px;
	}

	.jt-budget-display > .jt-btn,
	.jt-form-submit .jt-btn {
		width: 100%;
	}

	.jt-stats {
		gap: 8px;
	}

	.jt-stat {
		padding: 15px 6px;
	}

	.jt-stat strong {
		font-size: 28px;
	}

	.jt-stat span {
		font-size: 12px;
	}

	.jt-about {
		gap: 28px;
		margin-top: 45px;
		padding: 23px;
	}

	.jt-about img {
		max-width: 310px;
	}

	.jt-testimonials {
		margin-top: 50px;
	}

	.jt-testimonial-grid {
		display: flex;
		gap: 12px;
		margin-right: -14px;
		padding: 0 14px 12px 0;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}

	.jt-testimonial {
		flex: 0 0 82vw;
		min-height: 390px;
		padding: 23px;
		scroll-snap-align: start;
	}

	.jt-form-grid {
		grid-template-columns: 1fr;
	}

	.jt-field.jt-full {
		grid-column: auto;
	}

	.jt-form-final-note {
		text-align: left;
	}
}

@media (max-width: 420px) {
	.jt-learning-grid {
		grid-template-columns: 1fr;
	}

	.jt-learning-grid li {
		display: grid;
		grid-template-columns: 44px 1fr;
		gap: 10px;
		align-items: start;
	}

	.jt-learning-grid li > span {
		margin: 1px 0 0;
	}

	.jt-learning-grid small {
		grid-column: 2;
	}

	.jt-price-selector label span {
		font-size: 14px;
	}
}
