:root {
	--isc-paper: var(--wp--preset--color--paper, #f5f2ec);
	--isc-paper-light: var(--wp--preset--color--paper-light, #fcfbf8);
	--isc-paper-dark: var(--wp--preset--color--paper-dark, #e9e4da);
	--isc-photo: var(--wp--preset--color--photo, #dcd7cf);
	--isc-ink: var(--wp--preset--color--ink, #16131a);
	--isc-ink-soft: var(--wp--preset--color--ink-soft, #29252d);
	--isc-muted: var(--wp--preset--color--muted, #5e5952);
	--isc-accent: var(--wp--preset--color--accent, #4f7a12);
	--isc-highlight: var(--wp--preset--color--highlight, #e5efd2);
	--isc-accent-bright: #a3cf4e;
	--isc-display: var(--wp--preset--font-family--display, "Reggae One", "Yu Gothic", sans-serif);
	--isc-body: var(--wp--preset--font-family--body, "Zen Kaku Gothic New", "Segoe UI", sans-serif);
	--isc-gutter: var(--wp--custom--gutter, clamp(1rem, 3vw, 2.5rem));
	--isc-ink-rgb: 22 19 26;
	--isc-shade: rgb(22 19 26 / .3);
	--isc-line: 1.5px solid var(--isc-ink);
	--isc-hairline: 1px solid rgb(var(--isc-ink-rgb) / .14);
	--isc-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%2316131a' stroke-width='2.4'/%3E%3C/svg%3E");
	--isc-plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' fill='none' stroke='%2316131a' stroke-width='2.4'/%3E%3C/svg%3E");
	--isc-star: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 1.5l2.6 5.6 6 .7-4.5 4.1 1.2 6-5.3-3-5.3 3 1.2-6L1.4 7.8l6-.7z' fill='none' stroke='%2316131a' stroke-width='1.6'/%3E%3C/svg%3E");
	--isc-star-full: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 1.5l2.6 5.6 6 .7-4.5 4.1 1.2 6-5.3-3-5.3 3 1.2-6L1.4 7.8l6-.7z' fill='%234f7a12' stroke='%2316131a' stroke-width='1.6'/%3E%3C/svg%3E");
	--isc-radius: var(--wp--custom--radius--large, 18px);
	--isc-radius-sm: var(--wp--custom--radius--small, 10px);
	--isc-ease: cubic-bezier(.2, .8, .2, 1);
	--isc-wide: 1360px;
	--isc-brush: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 40' preserveAspectRatio='none'%3E%3Cpath d='M4 25C48 16 120 12 205 13S352 12 397 8l1 9c-40 7-118 11-196 12S62 33 8 36c-5 0-8-9-4-11z'/%3E%3Cpath d='M40 33c70-5 170-7 300-12l-1 4C220 30 120 33 41 36z' opacity='.7'/%3E%3C/svg%3E");
}

/* Shared pieces */

[hidden] {
	display: none !important;
}

.isc-wrap {
	box-sizing: border-box;
	width: 100%;
	max-width: calc(var(--isc-wide) + 2 * var(--isc-gutter));
	margin-inline: auto;
	padding-inline: var(--isc-gutter);
}

.isc-wrap--narrow {
	max-width: calc(900px + 2 * var(--isc-gutter));
}

.isc-section {
	position: relative;
	padding-block: clamp(4rem, 8vw, 7.5rem);
}

.isc-section--ink {
	background: var(--isc-ink);
	color: var(--isc-paper);
}

.isc-section > .isc-wrap {
	position: relative;
}

.isc-section__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1.25rem 3rem;
	margin-bottom: clamp(1.75rem, 3.5vw, 2.75rem);
}

.isc-section__title {
	margin: 0;
	font-family: var(--isc-display);
	font-weight: 400;
	font-size: clamp(2.125rem, 4.2vw, 3.5rem);
	line-height: 1.12;
	letter-spacing: -.01em;
	text-wrap: balance;
}

.isc-section__aside {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 1rem 3rem;
}

.isc-section__aside--end {
	flex-direction: column;
	align-items: flex-end;
}

.isc-section__aside p,
.isc-section__lead {
	max-width: 440px;
	margin: 0;
	font-size: 1.0625rem;
	line-height: 1.6;
	color: var(--isc-muted);
}

.isc-section--ink .isc-section__lead {
	color: rgb(245 242 236 / .78);
}

.isc-brush {
	position: relative;
	z-index: 0;
	white-space: nowrap;
}

.isc-brush::after,
.isc-cat-hero__title::after {
	content: "";
	position: absolute;
	left: -.06em;
	right: -.1em;
	bottom: .04em;
	z-index: -1;
	height: .3em;
	background: var(--isc-brush-color, var(--isc-accent));
	mask: var(--isc-brush) no-repeat center / 100% 100%;
	animation: isc-brush .7s var(--isc-ease) var(--isc-brush-delay, .5s) both;
}

/* Comic rays that turn slowly and fade out towards the centre and the edge */
.isc-rays {
	position: absolute;
	top: 50%;
	left: 50%;
	width: var(--isc-rays-size, 420px);
	aspect-ratio: 1;
	border-radius: 50%;
	background: repeating-conic-gradient(from 0deg, var(--isc-ray, var(--isc-accent)) 0deg 1.3deg, transparent 1.3deg 6.5deg);
	-webkit-mask-image: radial-gradient(closest-side, transparent 28%, #000 48%, #000 66%, transparent 96%);
	mask-image: radial-gradient(closest-side, transparent 28%, #000 48%, #000 66%, transparent 96%);
	opacity: .55;
	translate: -50% -50%;
	pointer-events: none;
	animation: isc-rays 80s linear infinite;
}

@keyframes isc-rays {
	to { transform: rotate(360deg); }
}

/* Comic starburst sticker */
.isc-burst {
	display: grid;
	place-content: center;
	width: var(--isc-burst-size, 96px);
	aspect-ratio: 1;
	box-sizing: border-box;
	background: var(--isc-accent);
	color: var(--isc-paper-light);
	text-align: center;
	clip-path: polygon(50% 0%, 59% 12%, 73% 5%, 75% 20%, 90% 18%, 85% 32%, 100% 38%, 90% 50%, 100% 62%, 85% 68%, 90% 82%, 75% 80%, 73% 95%, 59% 88%, 50% 100%, 41% 88%, 27% 95%, 25% 80%, 10% 82%, 15% 68%, 0% 62%, 10% 50%, 0% 38%, 15% 32%, 10% 18%, 25% 20%, 27% 5%, 41% 12%);
}

.isc-tag {
	display: inline-flex;
	align-items: center;
	padding: .3rem .8rem .35rem;
	border-radius: 999px;
	background: var(--isc-ink);
	color: var(--isc-paper);
	font-family: var(--isc-body);
	font-size: .8125rem;
	font-weight: 700;
	line-height: 1.2;
}

.isc-bubble {
	position: relative;
	display: inline-flex;
	align-items: center;
	padding: .25rem .75rem .3rem;
	border: var(--isc-line);
	border-radius: 999px;
	background: var(--isc-paper-light);
	color: var(--isc-ink);
	font-size: .8125rem;
	font-weight: 700;
	line-height: 1.2;
}

.isc-bubble::after {
	content: "";
	position: absolute;
	left: .9rem;
	bottom: -5px;
	width: 8px;
	height: 8px;
	border-right: var(--isc-line);
	border-bottom: var(--isc-line);
	background: inherit;
	transform: rotate(45deg);
}

.isc-emblem {
	display: inline-block;
	flex: none;
	width: 1em;
	height: 1em;
	background: currentColor;
	-webkit-mask: var(--isc-emblem) no-repeat center / contain;
	mask: var(--isc-emblem) no-repeat center / contain;
}

.isc-emblem--hacker {
	background: #ff2e88;
	filter: drop-shadow(2px 0 0 #00e5ff);
}

.isc-icon {
	flex-shrink: 0;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.isc-icon .isc-fill {
	fill: currentColor;
	stroke: none;
}

.isc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	box-sizing: border-box;
	min-height: 56px;
	padding: 0 1.6rem;
	border: 0;
	border-radius: 999px;
	background: var(--isc-accent);
	color: var(--isc-paper-light);
	font-family: var(--isc-body);
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .2s, color .2s, transform .1s;
}

.isc-btn:hover,
.isc-btn:focus-visible {
	background: var(--isc-ink);
	color: var(--isc-paper-light);
}

.isc-btn:active {
	transform: translateY(1px);
}

.isc-btn .isc-icon,
.isc-link .isc-icon,
.isc-narration .isc-icon {
	transition: transform .25s var(--isc-ease);
}

.isc-btn:hover .isc-icon,
a:hover > .isc-narration .isc-icon,
a.isc-narration:hover .isc-icon {
	transform: translateX(5px);
}

.isc-link {
	color: inherit;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 5px;
	white-space: nowrap;
}

.isc-link:hover {
	color: var(--isc-accent);
}

.isc-section--ink .isc-link:hover {
	color: var(--isc-highlight);
}

.isc-link-btn {
	min-height: 44px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--isc-ink);
	font: 700 1rem var(--isc-body);
	text-decoration: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 5px;
	cursor: pointer;
}

.isc-link-btn:hover {
	color: var(--isc-accent);
}

.isc-narration {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	padding: .55rem 1rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius-sm);
	background: var(--isc-paper-light);
	color: var(--isc-ink);
	font-weight: 700;
	text-decoration: none;
}

.isc-icon-btn,
.isc-round-btn {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: inherit;
	cursor: pointer;
}

.isc-round-btn {
	border: var(--isc-line);
	transition: background-color .2s, color .2s;
}

.isc-round-btn:hover {
	background: var(--isc-ink);
	color: var(--isc-paper);
}

.isc-chips {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}

.isc-chip {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	min-height: 42px;
	padding: 0 1.1rem;
	border: var(--isc-line);
	border-radius: 999px;
	background: transparent;
	color: var(--isc-ink);
	font: 700 .9375rem var(--isc-body);
	text-decoration: none;
	cursor: pointer;
	transition: background-color .2s, color .2s;
}

.isc-chip:hover {
	background: var(--isc-paper-dark);
	color: var(--isc-ink);
}

.isc-chip[aria-selected="true"],
.isc-chip[aria-current="page"] {
	background: var(--isc-ink);
	color: var(--isc-paper);
}

.isc-chip__count {
	font-size: .8125rem;
	font-weight: 700;
	opacity: .65;
}

.isc-crumbs {
	display: flex;
	flex-wrap: wrap;
	gap: .6rem;
	font-size: .875rem;
	font-weight: 700;
}

.isc-crumbs a {
	color: inherit;
	text-decoration: none;
}

.isc-crumbs a:hover {
	text-decoration: underline;
}

.isc-crumbs--muted {
	color: var(--isc-muted);
	font-weight: 500;
}

.isc-crumbs--muted [aria-current] {
	color: var(--isc-ink);
	font-weight: 700;
}

.isc-placeholder {
	padding: 2.5rem;
	border: 1.5px dashed var(--isc-ink);
	border-radius: var(--isc-radius);
	background: var(--isc-paper-light);
	font-weight: 700;
	text-align: center;
}

/* Comic panel divider and dotted sections */

/* The section after a divider slides under it and is cut along the same line, so the backgrounds meet on the line. */
.isc-cut {
	position: relative;
	z-index: 5;
	height: 56px;
	margin-block: -56px 0 !important;
	pointer-events: none;
}

.isc-cut + *,
.isc-main:has(> .isc-cut:last-child) + .isc-site-footer {
	position: relative;
	margin-top: -56px !important;
}

:where(.isc-cut + *) {
	background-color: var(--isc-paper);
}

.isc-cut--1 + *,
.isc-main:has(> .isc-cut--1:last-child) + .isc-site-footer {
	clip-path: polygon(0% 38px, 100% 18px, 100% 100%, 0 100%);
}

.isc-cut--2 + *,
.isc-main:has(> .isc-cut--2:last-child) + .isc-site-footer {
	clip-path: polygon(0% 40px, 100% 14px, 100% 100%, 0 100%);
}

.isc-cut--3 + *,
.isc-main:has(> .isc-cut--3:last-child) + .isc-site-footer {
	clip-path: polygon(0% 14px, 100% 40px, 100% 100%, 0 100%);
}

.isc-cut--4 + *,
.isc-main:has(> .isc-cut--4:last-child) + .isc-site-footer {
	clip-path: polygon(0% 36px, 100% 18px, 100% 100%, 0 100%);
}

/* The divider covers the bottom of the section above it, so that section needs extra room under its content. */
.isc-section:has(+ .isc-cut),
.isc-custom:has(+ .isc-cut) {
	padding-bottom: calc(clamp(4rem, 8vw, 7.5rem) + 2.5rem);
}

.isc-cut svg {
	display: block;
	width: 100%;
	height: 100%;
	overflow: visible;
	filter: drop-shadow(0 0 3px var(--isc-accent)) blur(.35px);
}

.isc-cut__line {
	fill: none;
	stroke: var(--isc-accent);
	stroke-width: 6;
	stroke-linecap: round;
	stroke-linejoin: round;
	vector-effect: non-scaling-stroke;
}

.isc-cut--1 .isc-cut__line {
	stroke-width: 20;
	stroke-linecap: butt;
}

/* is-style-dots is the "Fondo de puntos" block style; isc-dots the same background as a plain class. */
.isc-dots,
.is-style-dots {
	background-image: radial-gradient(rgb(var(--isc-ink-rgb) / .07) 1.2px, transparent 1.7px);
	background-size: 18px 18px;
}

.isc-section--ink:is(.isc-dots, .is-style-dots) {
	background-image: radial-gradient(rgb(245 242 236 / .07) 1.2px, transparent 1.7px);
}

@media (max-width: 760px) {
	.isc-cut {
		height: 34px;
		margin-top: -34px !important;
	}

	.isc-cut + *,
	.isc-main:has(> .isc-cut:last-child) + .isc-site-footer {
		margin-top: -34px !important;
	}

	.isc-cut--1 + *,
	.isc-main:has(> .isc-cut--1:last-child) + .isc-site-footer {
		clip-path: polygon(0% 23.1px, 100% 10.9px, 100% 100%, 0 100%);
	}

	.isc-cut--2 + *,
	.isc-main:has(> .isc-cut--2:last-child) + .isc-site-footer {
		clip-path: polygon(0% 24.3px, 100% 8.5px, 100% 100%, 0 100%);
	}

	.isc-cut--3 + *,
	.isc-main:has(> .isc-cut--3:last-child) + .isc-site-footer {
		clip-path: polygon(0% 8.5px, 100% 24.3px, 100% 100%, 0 100%);
	}

	.isc-cut--4 + *,
	.isc-main:has(> .isc-cut--4:last-child) + .isc-site-footer {
		clip-path: polygon(0% 21.9px, 100% 10.9px, 100% 100%, 0 100%);
	}

	.isc-cut__line {
		stroke-width: 4;
	}

	.isc-cut--1 .isc-cut__line {
		stroke-width: 12;
	}
}

/* Announcement bar, brand and cart button */

.isc-announce {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: 1.5rem;
	min-height: 38px;
	padding-inline: var(--isc-gutter);
	overflow: hidden;
	background: var(--isc-ink);
	color: var(--isc-paper);
	font-size: .875rem;
	font-weight: 500;
}

/* The side padding gives the sliding messages room without moving the centre */
.isc-announce__items {
	display: grid;
	grid-column: 2;
	justify-items: center;
	margin: 0 -80px;
	padding: 0 80px;
	overflow: hidden;
	list-style: none;
}

.isc-announce__items li {
	display: flex;
	grid-area: 1 / 1;
	align-items: center;
	gap: .6rem;
	font-family: var(--isc-display);
	font-size: .8125rem;
	letter-spacing: .05em;
	text-transform: uppercase;
	white-space: nowrap;
	opacity: 0;
	transform: translateX(-40px) skewX(-8deg);
	transition: opacity .45s var(--isc-ease), transform .55s var(--isc-ease);
}

.isc-announce__items li.is-active {
	opacity: 1;
	transform: translateX(0) skewX(-8deg);
}

.isc-announce__items li.is-leaving {
	opacity: 0;
	transform: translateX(70px) skewX(-8deg);
}

.isc-announce__items li::before {
	content: "";
	flex: none;
	width: 14px;
	height: 14px;
	background: #a3cf4e;
	clip-path: polygon(50% 0, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

.isc-announce__links {
	display: flex;
	grid-column: 3;
	justify-self: end;
	gap: 1.75rem;
}

.isc-announce__links a {
	color: var(--isc-paper);
	text-decoration: none;
}

.isc-announce__links a:hover {
	color: var(--isc-highlight);
}

.isc-brand {
	display: flex;
	align-items: center;
	gap: .85rem;
	color: inherit;
	text-decoration: none;
}

.isc-brand img.isc-brand__logo {
	width: auto;
	height: 52px;
}

.isc-brand--paper .isc-brand__logo[src$="logo-ink.png"],
.isc-brand--paper img.isc-brand__logo:not([src*="logo-paper"]) {
	filter: invert(1);
}

.isc-brand__words {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.isc-brand__title {
	font-family: var(--isc-display);
	font-size: 1.625rem;
	line-height: 1;
	letter-spacing: .02em;
}

.isc-brand__subtitle {
	font-family: var(--isc-display);
	font-size: .75rem;
	font-weight: 400;
	letter-spacing: .3em;
	line-height: 1;
}

.isc-brand--paper {
	color: var(--isc-paper);
}

.isc-brand--paper img.isc-brand__logo {
	height: 60px;
}

.isc-brand--paper .isc-brand__title {
	font-size: 1.875rem;
}

.isc-cart-btn {
	position: relative;
	display: flex;
	align-items: center;
	gap: .6rem;
	min-height: 44px;
	padding: 0 .5rem 0 1rem;
	border-radius: 999px;
	background: var(--isc-accent);
	color: var(--isc-paper);
	font-weight: 700;
	font-size: .9375rem;
	text-decoration: none;
	transition: background-color .2s, color .2s;
}

.isc-cart-btn:hover,
.isc-cart-btn:focus-visible {
	background: var(--isc-ink);
	color: var(--isc-paper);
}

.isc-cart-btn__count {
	display: grid;
	place-items: center;
	min-width: 28px;
	height: 28px;
	box-sizing: border-box;
	padding: 0 .4rem;
	border-radius: 999px;
	background: var(--isc-paper);
	color: var(--isc-accent);
	font-size: .8125rem;
	font-weight: 900;
	transition: background-color .2s, color .2s;
}

.isc-cart-btn:hover .isc-cart-btn__count,
.isc-cart-btn:focus-visible .isc-cart-btn__count {
	color: var(--isc-ink);
}

@media (max-width: 900px) {
	.isc-cart-btn {
		justify-content: center;
		width: 44px;
		padding: 0;
	}

	.isc-cart-btn__label {
		display: none;
	}

	.isc-cart-btn__count {
		position: absolute;
		top: -4px;
		right: -4px;
		min-width: 20px;
		height: 20px;
		padding: 0 .3rem;
		border: 2px solid var(--isc-paper);
		background: var(--isc-ink);
		color: var(--isc-paper);
		font-size: .6875rem;
	}
}

.isc-cart-btn__count.is-bumping {
	animation: isc-bump .45s var(--isc-ease);
}

/* Hero */

.isc-hero {
	padding: clamp(1.5rem, 3vw, 2.5rem) var(--isc-gutter) clamp(1rem, 3vw, 2rem);
	overflow: hidden;
}

.isc-hero__stage {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
	gap: clamp(2rem, 4vw, 4.5rem);
	align-items: center;
	max-width: var(--isc-wide);
	margin-inline: auto;
}

.isc-hero__panel--text {
	position: relative;
	z-index: 1;
	grid-area: 1 / 1;
}

.isc-hero__copy {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
	max-width: 600px;
}

.isc-hero__title {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 0;
	font-family: var(--isc-display);
	font-weight: 400;
	font-size: clamp(3rem, 5.6vw, 5.25rem);
	line-height: 1.08;
	letter-spacing: -.015em;
}

.isc-hero__plate {
	animation: isc-rise .7s var(--isc-ease) .29s both;
	--isc-brush-delay: .75s;
}

.isc-hero__text {
	max-width: 500px;
	margin: 0;
	font-size: 1.1875rem;
	font-weight: 500;
	line-height: 1.6;
}

.isc-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem 1.75rem;
	margin-top: .35rem;
}

.isc-hero__art {
	position: relative;
	grid-area: 1 / 2;
	height: clamp(500px, 43vw, 620px);
}

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

.isc-hero__box {
	position: absolute;
	z-index: 3;
	width: 250px;
	box-sizing: border-box;
	flex-direction: column;
	align-items: stretch;
	gap: .15rem;
	padding: .85rem 1.25rem 1rem;
	border-radius: 22px;
	animation: isc-pop .6s var(--isc-ease) 1s both;
}

.isc-hero__box::after {
	content: "";
	position: absolute;
	top: -8px;
	left: 2.25rem;
	width: 14px;
	height: 14px;
	border-left: var(--isc-line);
	border-top: var(--isc-line);
	background: inherit;
	transform: rotate(45deg);
}

.isc-hero__box-line {
	color: var(--isc-accent);
	font-size: .8125rem;
	font-weight: 700;
}

.isc-hero__box-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: .75rem;
}

.isc-hero__box-name {
	font-family: var(--isc-display);
	font-size: 1.75rem;
	font-weight: 400;
	line-height: 1.15;
}

.isc-hero__box-price {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	font-size: .9375rem;
	white-space: nowrap;
}

.isc-anim-rise {
	animation: isc-rise .7s var(--isc-ease) var(--isc-delay, 0s) both;
}

/* Hero: box wall, beside the title on desktop and in a band under it on phones */

.isc-hero--wall {
	position: relative;
	min-height: 800px;
	padding: 0;
	isolation: isolate;
}

.isc-wall-band,
.isc-wall-band__clip {
	display: contents;
}

.isc-wall-band__edges {
	display: none;
}

/* Until all of the wall has arrived (wall.php marks it ready) it is not drawn, so its columns do not jump while
   they fill. Only with JavaScript (the theme sets data-theme with it); without, the wall shows as it comes. */
:root[data-theme] .isc-wall-band:not(.is-ready) .isc-wall {
	visibility: hidden;
}

.isc-wall {
	position: absolute;
	top: -260px;
	right: -170px;
	z-index: 0;
	display: flex;
	gap: 18px;
	width: min(1080px, 75vw);
	height: 1500px;
	transform: rotate(-11deg);
}

.isc-wall__col {
	display: flex;
	flex: 1;
	flex-direction: column;
	animation: isc-wall-up var(--isc-wall-speed, 50s) linear infinite;
}

.isc-wall__col.is-down {
	animation-name: isc-wall-down;
}

.isc-wall:hover .isc-wall__col {
	animation-play-state: paused;
}

@keyframes isc-wall-up {
	to { transform: translateY(-50%); }
}

@keyframes isc-wall-down {
	from { transform: translateY(-50%); }
	to { transform: translateY(0); }
}

.isc-wall__tile {
	position: relative;
	flex: none;
	aspect-ratio: 4 / 5;
	margin-bottom: 18px;
	border-radius: 16px;
	background: var(--isc-photo);
	box-shadow: 0 14px 34px rgb(0 0 0 / .3);
	overflow: hidden;
}

.isc-wall__tile:hover .isc-face--back {
	opacity: 1;
}

@keyframes isc-face-swap {
	0%, 42% { opacity: 0; }
	50%, 92% { opacity: 1; }
	100% { opacity: 0; }
}

.isc-hero__edge {
	position: absolute;
	inset: 0;
	z-index: 1;
	filter: blur(1.4px);
	pointer-events: none;
}

.isc-hero__edge span,
.isc-hero__sheet {
	clip-path: polygon(0 0, 100% 0, calc(100% - 64px) 47%, calc(100% - 150px) 100%, 0 100%);
}

.isc-hero__edge span {
	position: absolute;
	inset: 0 auto 0 0;
	width: calc(51.4% + 22px);
	background: var(--isc-accent);
}

.isc-hero__sheet {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	width: 51.4%;
	min-height: 800px;
	background: var(--isc-paper);
}

.isc-hero--wall .isc-hero__copy {
	gap: 1.6rem;
	max-width: 640px;
	padding: 5rem var(--isc-gutter) 6.5rem;
}

.isc-hero--wall .isc-hero__title {
	font-size: clamp(3.25rem, 5.9vw, 5.375rem);
	line-height: .98;
	text-transform: uppercase;
}

@media (max-width: 900px) {
	/* The wall's row is kept from the start (wall.php explains why), so nothing below it moves when it arrives. */
	.isc-hero--wall {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas: "title" "band" "text" "actions";
		row-gap: 1.25rem;
		min-height: 0;
		padding: 1.75rem 0 4rem;
		overflow: hidden;
	}

	.isc-hero--wall.has-wall {
		grid-template-rows: auto 336px auto auto;
	}

	.isc-hero--wall .isc-hero__sheet,
	.isc-hero--wall .isc-hero__copy {
		display: contents;
	}

	.isc-hero__edge {
		display: none;
	}

	.isc-hero--wall .isc-hero__title,
	.isc-hero--wall .isc-hero__text,
	.isc-hero--wall .isc-hero__actions {
		margin-inline: var(--isc-gutter);
	}

	.isc-hero--wall .isc-hero__title {
		grid-area: title;
		font-size: clamp(2.6rem, 12vw, 3.25rem);
	}

	.isc-wall-band {
		position: relative;
		grid-area: band;
		display: block;
		height: 336px;
	}

	.isc-hero--wall .isc-hero__text {
		grid-area: text;
	}

	.isc-hero--wall .isc-hero__actions {
		grid-area: actions;
		justify-content: center;
	}

	.isc-wall-band__clip {
		position: absolute;
		inset: 0;
		display: block;
		overflow: hidden;
		clip-path: polygon(0 40px, 58% 16px, 100% 0, 100% calc(100% - 42px), 44% calc(100% - 18px), 0 100%);
	}

	.isc-wall {
		top: -250px;
		right: auto;
		left: -96px;
		gap: 12px;
		width: calc(100% + 200px);
		height: 880px;
	}

	.isc-wall__tile {
		margin-bottom: 12px;
		border-radius: 12px;
		box-shadow: 0 10px 24px rgb(0 0 0 / .3);
	}

	.isc-wall__col:nth-child(odd) .isc-wall__tile:nth-child(3n + 2) .isc-face--back,
	.isc-wall__col:nth-child(even) .isc-wall__tile:nth-child(3n) .isc-face--back {
		animation: isc-face-swap 9s ease-in-out infinite;
	}

	.isc-wall__col:nth-child(even) .isc-wall__tile .isc-face--back {
		animation-delay: -4.5s;
	}

	.isc-wall-band__edges {
		position: absolute;
		inset: 0;
		z-index: 1;
		display: block;
		width: 100%;
		height: 100%;
		overflow: visible;
		pointer-events: none;
		filter: drop-shadow(0 0 3px var(--isc-accent)) blur(.35px);
	}

	.isc-wall-band__edges path {
		fill: none;
		stroke: var(--isc-accent);
		stroke-width: 5;
		stroke-linecap: round;
		stroke-linejoin: round;
		vector-effect: non-scaling-stroke;
	}

	.isc-hero--wall .isc-btn {
		flex: 1 1 100%;
		justify-content: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.isc-wall__col,
	.isc-rays,
	.isc-wall__tile .isc-face--back {
		animation: none !important;
	}
}

/* Hero: manga volume cover */

.isc-cover {
	position: absolute;
	top: 50%;
	left: 42%;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	height: 94%;
	aspect-ratio: 5 / 7;
	box-sizing: border-box;
	padding: 1.1rem 4.1rem 0 1.1rem;
	border: var(--isc-line);
	border-radius: 6px 16px 16px 6px;
	background: var(--isc-paper-light);
	color: var(--isc-ink);
	text-decoration: none;
	overflow: hidden;
	box-shadow: 0 26px 40px -28px rgb(22 19 26 / .55);
	translate: -50% -50%;
	rotate: -3deg;
	transition: rotate .5s var(--isc-ease), translate .5s var(--isc-ease);
	animation: isc-cover-in .9s var(--isc-ease) .15s both;
}

.isc-cover:not(.isc-cover--back):hover {
	translate: -50% -52%;
	rotate: -1deg;
}

.isc-cover--back {
	translate: calc(-50% + 150px - var(--isc-i) * 70px) calc(-50% - 8px);
	rotate: calc(10deg - var(--isc-i) * 4.5deg);
	animation-delay: calc(var(--isc-i) * .1s);
}

.isc-cover__head {
	display: flex;
	flex-direction: column;
	gap: .1rem;
	padding: .15rem .2rem .85rem;
}

.isc-cover__series {
	color: var(--isc-accent);
	font-size: .875rem;
	font-weight: 700;
}

.isc-cover__name {
	font-family: var(--isc-display);
	font-size: clamp(2.25rem, 3.4vw, 3.25rem);
	line-height: 1.05;
}

.isc-cover__photo {
	position: relative;
	display: block;
	min-height: 0;
	border-radius: 10px;
	background: var(--isc-photo);
	overflow: hidden;
}

.isc-cover__spine {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	display: flex;
	justify-content: center;
	width: 3rem;
	padding-top: 1.1rem;
	background: var(--isc-ink);
	color: var(--isc-paper-light);
	font-family: var(--isc-display);
	font-size: 1.625rem;
	letter-spacing: .1em;
	writing-mode: vertical-rl;
}

.isc-cover__obi {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin: 1rem -4.1rem 0 -1.1rem;
	padding: 1rem 1.25rem 1.1rem;
	background: var(--isc-accent);
	color: var(--isc-paper-light);
}

.isc-cover__obi-text {
	max-width: 11em;
	font-size: .9375rem;
	font-weight: 700;
	line-height: 1.3;
}

.isc-cover__price {
	font-family: var(--isc-display);
	font-size: 1.75rem;
	white-space: nowrap;
}

/* Hero: manga page */

.isc-hero--panels .isc-hero__art {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
	grid-template-rows: minmax(0, 1fr) minmax(0, .8fr);
	gap: 12px;
}

.isc-page__panel {
	position: relative;
	display: block;
	min-height: 0;
	border: var(--isc-line);
	border-radius: 12px;
	background: var(--isc-photo);
	overflow: hidden;
	animation: isc-rise .7s var(--isc-ease) calc(.15s + var(--isc-n, 0) * .12s) both;
}

.isc-page__panel--main {
	grid-row: 1 / 3;
}

.isc-page__panel--detail {
	--isc-n: 1;
}

.isc-page__panel--sfx {
	--isc-n: 2;
	display: grid;
	place-items: center;
	align-content: center;
	gap: .4rem;
	background: var(--isc-paper-light);
}

.isc-page__sfx {
	color: var(--isc-accent);
	font-family: var(--isc-display);
	font-size: clamp(4rem, 7vw, 6.75rem);
	line-height: 1;
	rotate: -8deg;
}

.isc-page__note {
	color: var(--isc-muted);
	font-size: .875rem;
	font-weight: 700;
}

.isc-hero--panels .isc-hero__box {
	left: 1.25rem;
	bottom: 1.25rem;
}

/* Hero: hand of cards */

.isc-hand__card {
	position: absolute;
	left: 50%;
	bottom: 14%;
	width: 52%;
	aspect-ratio: 4 / 5;
	border: var(--isc-line);
	border-radius: var(--isc-radius);
	background: var(--isc-photo);
	overflow: hidden;
	box-shadow: 0 22px 36px -26px rgb(22 19 26 / .6);
	transform-origin: 50% 170%;
	translate: -50% 0;
	rotate: calc(var(--isc-i) * 12deg);
	transition: rotate .5s var(--isc-ease), scale .5s var(--isc-ease);
	animation: isc-hand-in .8s var(--isc-ease) calc(.2s + (var(--isc-i) + 1) * .12s) both;
}

.isc-hand__card.is-main {
	z-index: 2;
	scale: 1.06;
}

.isc-hero__art:hover .isc-hand__card {
	rotate: calc(var(--isc-i) * 16deg);
}

.isc-hand__card:hover {
	scale: 1.1;
}

.isc-hand__game {
	position: absolute;
	top: .75rem;
	left: .75rem;
}

.isc-hero--hand .isc-hero__box {
	left: 50%;
	bottom: 0;
	translate: -50% 0;
}

.isc-hero--hand .isc-hero__box::after {
	left: calc(50% - 7px);
}

/* Hero: poster with a red sun */

.isc-sun__disc {
	position: absolute;
	top: 3%;
	right: 6%;
	width: 76%;
	aspect-ratio: 1;
	border-radius: 50%;
	background: var(--isc-accent);
	animation: isc-sun-in 1s var(--isc-ease) .1s both;
}

.isc-sun__kana {
	position: absolute;
	top: 0;
	right: 0;
	color: var(--isc-ink);
	font-family: var(--isc-display);
	font-size: clamp(2.75rem, 4.6vw, 4.5rem);
	line-height: 1;
	letter-spacing: .06em;
	writing-mode: vertical-rl;
	animation: isc-rise .8s var(--isc-ease) .45s both;
}

.isc-sun__photo {
	position: absolute;
	left: 4%;
	bottom: 0;
	width: 52%;
	aspect-ratio: 4 / 5.4;
	border: var(--isc-line);
	border-radius: 50% 50% 18px 18px / 30% 30% 18px 18px;
	background: var(--isc-photo);
	overflow: hidden;
	animation: isc-rise .8s var(--isc-ease) .25s both;
}

.isc-hero--sun .isc-hero__box {
	right: 10%;
	bottom: 8%;
}

/* Marquee */

.isc-marquee {
	padding-block: 1.1rem;
	border-block: var(--isc-hairline);
	overflow: hidden;
}

.isc-marquee__band {
	display: flex;
	align-items: center;
	overflow: hidden;
}

.isc-marquee__track {
	display: flex;
	width: max-content;
	animation: isc-marquee var(--isc-marquee, 38s) linear infinite;
}

.isc-marquee__group {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	padding-right: 1.5rem;
}

.isc-marquee__item {
	font-family: var(--isc-display);
	font-size: 1.375rem;
	white-space: nowrap;
}

.isc-marquee__dot {
	flex-shrink: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--isc-accent);
}

/* Game strip: slanted comic panels, stacked rows on phones */

.isc-games .isc-section__title {
	text-transform: uppercase;
}

.isc-games__strip {
	display: flex;
	height: 536px;
}

.isc-game {
	position: relative;
	display: flex;
	flex: 1 1 0;
	flex-direction: column;
	align-items: center;
	gap: .75rem;
	min-width: 0;
	margin: 0 -9px;
	padding: 1.9rem 1.9rem 1.75rem;
	background-image: radial-gradient(rgb(255 255 255 / .18) 1.2px, transparent 1.7px);
	background-size: 8px 8px;
	text-align: center;
	text-decoration: none;
	clip-path: polygon(28px 0, 100% 0, calc(100% - 28px) 100%, 0 100%);
	transition: flex-grow .55s var(--isc-ease);
}

.isc-game:first-child {
	margin-left: 0;
	clip-path: polygon(0 0, 100% 0, calc(100% - 28px) 100%, 0 100%);
}

.isc-game:last-child {
	margin-right: 0;
	clip-path: polygon(28px 0, 100% 0, 100% 100%, 0 100%);
}

.isc-game:hover,
.isc-game:focus-visible {
	flex-grow: 1.55;
}

.isc-game:focus-visible {
	outline: 3px solid currentColor;
	outline-offset: -10px;
}

.isc-game__emblems {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .6rem;
	height: 62px;
}

.isc-game__emblems .isc-emblem {
	font-size: 58px;
}

.isc-game__emblems .isc-emblem.is-small {
	font-size: 38px;
	opacity: .85;
}

.isc-game__emblems:has(.isc-game__icon) {
	height: 120px;
}

.isc-game__icon {
	width: 120px;
	height: 120px;
	object-fit: contain;
	filter: drop-shadow(0 6px 10px rgb(0 0 0 / .28));
	transition: transform .3s var(--isc-ease);
}

.isc-game:hover .isc-game__icon {
	transform: scale(1.08) rotate(-4deg);
}

.isc-game__lines {
	font-family: var(--isc-display);
	font-size: clamp(1.125rem, 1.65vw, 1.75rem);
	line-height: 1;
	letter-spacing: .02em;
	text-transform: uppercase;
	white-space: nowrap;
}

.isc-game__cover {
	display: grid;
	flex: 1;
	place-items: center;
	width: 100%;
	min-height: 0;
}

.isc-game__card {
	position: relative;
	width: min(146px, 100%);
	aspect-ratio: 4 / 5;
	border-radius: 10px;
	box-shadow: 6px 6px 8px rgb(0 0 0 / .35);
	overflow: hidden;
	transform: rotate(-4deg);
	transition: transform .55s var(--isc-ease);
}

.isc-game:nth-child(even) .isc-game__card {
	transform: rotate(4deg);
}

.isc-game:hover .isc-game__card,
.isc-game:focus-visible .isc-game__card {
	transform: rotate(0) scale(1.14);
}

.isc-game:hover .isc-face--back,
.isc-game:focus-visible .isc-face--back {
	opacity: 1;
}

.isc-game__text {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .35rem;
}

.isc-game__meta {
	font-size: .8125rem;
	font-weight: 700;
	opacity: .9;
	white-space: nowrap;
}

.isc-game__cta {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	height: 38px;
	margin-top: .4rem;
	padding: 0 1rem;
	border: 2px solid currentColor;
	border-radius: 999px;
	font-size: .8125rem;
	font-weight: 700;
	white-space: nowrap;
	transition: background-color .25s, border-color .25s, color .25s;
}

.isc-game:hover .isc-game__cta {
	border-color: #fff;
	background: #fff;
	color: #16131a;
}

.isc-game__go {
	display: none;
}

@media (max-width: 900px) {
	.isc-games__strip {
		flex-direction: column;
		height: auto;
		gap: .6rem;
	}

	.isc-game,
	.isc-game:first-child,
	.isc-game:last-child {
		display: grid;
		flex: none;
		grid-template-columns: minmax(0, 1fr) auto;
		grid-template-areas: "lines go" "text go";
		align-content: center;
		align-items: center;
		gap: .3rem;
		min-height: 88px;
		margin: 0;
		padding: 0 .9rem 0 1.1rem;
		border-radius: 20px;
		text-align: left;
		clip-path: none;
	}

	.isc-game__cover,
	.isc-game__cta {
		display: none;
	}

	.isc-game__lines {
		grid-area: lines;
		font-size: 1.125rem;
	}

	.isc-game__text {
		grid-area: text;
		align-items: flex-start;
	}

	.isc-game__meta {
		font-size: .75rem;
	}

	.isc-game__emblems {
		position: absolute;
		top: 50%;
		left: 64%;
		height: auto;
		transform: translate(-50%, -50%);
	}

	.isc-game__emblems .isc-emblem {
		font-size: 42px;
	}

	.isc-game__emblems .isc-emblem.is-small {
		font-size: 30px;
	}

	.isc-game__emblems:has(.isc-game__icon) {
		height: auto;
	}

	.isc-game__icon {
		width: 84px;
		height: 84px;
	}

	.isc-game__go {
		display: grid;
		grid-area: go;
		place-items: center;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		background: rgb(255 255 255 / .18);
	}
}

/* Product cards and grids */

/* Front and back photos stacked in one frame (isc_faces) */
.isc-faces {
	position: relative;
	overflow: hidden;
}

.isc-faces .isc-face {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: opacity .3s ease;
}

.isc-faces .isc-face--back {
	opacity: 0;
}

.isc-grid {
	display: grid;
	grid-template-columns: repeat(var(--isc-cols, 4), minmax(0, 1fr));
	gap: 3rem 1.5rem;
}

/* Shop, category and search lists: five a row on wide screens (the narrower layouts below set their own). Under
   1400px a card would be too narrow for its price and add button on one line. */
.isc-grid--5 {
	--isc-cols: 5;
}

@media (max-width: 1400px) {
	.isc-grid--5 {
		--isc-cols: 4;
	}
}

.isc-catalog__heading {
	margin: 0 0 1.75rem;
	font-family: var(--isc-display);
	font-size: clamp(1.75rem, 3.2vw, 2.75rem);
	font-weight: 400;
	line-height: 1.1;
	text-transform: uppercase;
}

.isc-catalog__top {
	margin-bottom: clamp(3.5rem, 7vw, 5.5rem);
}

.isc-card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.isc-card__media {
	position: relative;
	aspect-ratio: 4 / 5;
	border-radius: 12px;
	background: var(--isc-photo);
	box-shadow: 8px 8px 7px -1px var(--isc-shade);
	overflow: hidden;
	transition: transform .5s var(--isc-ease), box-shadow .35s;
}

.isc-card:hover .isc-card__media {
	box-shadow: 12px 12px 10px -1px var(--isc-shade);
}

.isc-card__photo {
	position: absolute;
	inset: 0;
}

.isc-card.is-turned .isc-face--back {
	opacity: 1;
}

.isc-card__turn {
	position: absolute;
	right: 8%;
	bottom: 15%;
	z-index: 3;
	display: none;
	place-items: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgb(22 19 26 / .82);
	color: #fff;
	cursor: pointer;
	transition: background-color .2s, transform .3s var(--isc-ease);
}

.isc-card.is-turned .isc-card__turn {
	background: var(--isc-accent);
	color: var(--isc-paper);
	transform: rotate(-180deg);
}

@media (max-width: 900px), (hover: none) {
	.isc-card__turn {
		display: grid;
	}
}

.isc-card__foil {
	position: absolute;
	inset: 0;
	z-index: 2;
	background-image: linear-gradient(115deg, transparent 30%, rgb(255 255 255 / .34) 44%, rgb(163 207 78 / .28) 50%, rgb(140 180 255 / .24) 56%, transparent 70%);
	background-position: var(--isc-gx, 50%) 50%;
	background-size: 260% 260%;
	mix-blend-mode: screen;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s;
}

/* Holo tilt under the mouse, on every product card (store.js sets the angles). */
.isc-card__media {
	transform: perspective(900px) rotateX(var(--isc-rx, 0deg)) rotateY(var(--isc-ry, 0deg));
}

.isc-card.is-tilting .isc-card__media {
	transition: transform .1s linear, box-shadow .35s;
}

@media (hover: hover) {
	.isc-card:hover .isc-card__foil {
		opacity: .9;
	}
}

.isc-card__meta {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .6rem;
	text-align: center;
}

.isc-card__link {
	max-width: 100%;
	color: var(--isc-ink);
	text-decoration: none;
}

/* A ribbon across the photo's top-left corner: its centre sits --isc-ribbon-at in from both edges and the
   photo's rounded, clipped corner trims its ends. */
.isc-card__new {
	--isc-ribbon-at: 2.2rem;
	position: absolute;
	top: var(--isc-ribbon-at);
	left: var(--isc-ribbon-at);
	z-index: 3;
	width: 11rem;
	padding: .35rem 0;
	background: var(--isc-accent);
	box-shadow: 0 2px 6px rgb(0 0 0 / .35);
	color: var(--isc-paper);
	font-size: .8125rem;
	font-weight: 900;
	line-height: 1.2;
	letter-spacing: .1em;
	text-align: center;
	text-transform: uppercase;
	transform: translate(-50%, -50%) rotate(-45deg);
	pointer-events: none;
}

/* Whole words only: hyphenated breaks read as the " - " between line, collection and box. */
.isc-card__name {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .02em;
	text-transform: uppercase;
	overflow-wrap: break-word;
	transition: color .2s;
}

.isc-card:hover .isc-card__name {
	color: var(--isc-accent);
}

/* Price and add button share a centred row; on the narrowest phones the button drops below. */
.isc-card__buy {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: .5rem .75rem;
	max-width: 100%;
}

/* "desde" goes above the price when both don't fit on one line. */
.isc-card__price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	column-gap: .35rem;
	min-width: 0;
	white-space: nowrap;
}

.isc-card__price small {
	color: var(--isc-muted);
	font-size: .8125rem;
	font-weight: 500;
}

.isc-card__price b {
	font-family: var(--isc-display);
	font-size: 1.3125rem;
	font-weight: 400;
}

.isc-card__add {
	display: grid;
	flex: none;
	place-items: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--isc-ink);
	color: var(--isc-paper-light);
	cursor: pointer;
	transition: background-color .2s, transform .2s var(--isc-ease);
}

.isc-card__add .isc-icon {
	transition: transform .3s var(--isc-ease);
}

.isc-card__add:hover,
.isc-card__add:focus-visible {
	background: var(--isc-accent);
	transform: scale(1.06);
}

.isc-card__add:hover .isc-icon {
	transform: rotate(90deg);
}

.isc-tabs .isc-chips {
	margin-bottom: 1.75rem;
}

.isc-tabs__panel.is-entering > * {
	animation: isc-rise .6s var(--isc-ease) calc(var(--isc-i, 0) * 60ms) both;
}

/* One category's latest products on the home page (the accessories), with its # filters under the title. */
.isc-showcase__intro {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

/* The custom deckbox promo across the grid: the store's own speech bubble, drawn like the reviews' ones
   (the bubble shares .isc-quote__bubble's rules). */
.isc-promo {
	grid-column: 1 / -1;
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
	width: min(100%, 780px);
	margin-inline: auto;
	padding-block: .5rem 1rem;
	color: var(--isc-ink);
	text-decoration: none;
}

.isc-promo__bubble {
	align-items: flex-start;
	padding: clamp(1.5rem, 3vw, 2.25rem) clamp(1.5rem, 3.5vw, 2.5rem);
	transition: transform .35s var(--isc-ease);
}

.isc-promo:hover .isc-promo__bubble {
	transform: rotate(-.6deg);
}

.isc-promo__title {
	font-family: var(--isc-display);
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	line-height: 1.15;
	text-transform: uppercase;
}

.isc-promo__text {
	max-width: 560px;
	color: var(--isc-muted);
	font-size: 1.0625rem;
	line-height: 1.55;
}

.isc-promo__avatar {
	background: var(--isc-accent);
	color: var(--isc-paper-light);
}

.isc-promo__cta {
	display: inline-flex;
	align-self: flex-start;
	align-items: center;
	gap: .6rem;
	margin-top: .75rem;
	padding: .75rem 1.3rem;
	border-radius: 999px;
	background: var(--isc-accent);
	color: var(--isc-paper-light);
	font-weight: 700;
}

.isc-promo:hover .isc-promo__cta .isc-icon {
	transform: translateX(5px);
}

/* Features */

.isc-features {
	--isc-brush-color: var(--isc-accent-bright);
	overflow: clip;
}

.isc-features .isc-section__head {
	margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.isc-features__title {
	max-width: 9em;
	font-size: clamp(2.375rem, 4.8vw, 4rem);
}

.isc-features__stage {
	position: relative;
	aspect-ratio: 1360 / 610;
}

.isc-features__figure {
	position: absolute;
	top: 0;
	left: 33.09%;
	width: 33.82%;
	height: 98.36%;
}

.isc-features__rays {
	--isc-ray: var(--isc-accent-bright);
	--isc-rays-size: 210%;
	opacity: .3;
}

.isc-features__photo {
	position: absolute;
	inset: 0;
	border-radius: var(--isc-radius);
	background: var(--isc-photo);
	box-shadow: 12px 14px 26px color-mix(in srgb, var(--isc-accent-bright) 30%, transparent);
	overflow: hidden;
}

.isc-features .isc-features__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .8s var(--isc-ease);
}

.isc-features__stage:hover .isc-features__photo img {
	transform: scale(1.03);
}

.isc-features__lines {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.isc-features__lines polyline {
	fill: none;
	stroke: rgb(245 242 236 / .55);
	stroke-width: 1.5;
	stroke-dasharray: 5 6;
	vector-effect: non-scaling-stroke;
	transition: stroke .3s, opacity .3s;
}

.isc-features__dot,
.isc-feat__num {
	display: grid;
	flex: none;
	place-items: center;
	box-sizing: border-box;
	border-radius: 50%;
	background: var(--isc-accent-bright);
	color: var(--isc-ink);
	font-family: var(--isc-display);
	font-weight: 400;
	line-height: 1;
}

.isc-features__dot {
	position: absolute;
	z-index: 1;
	width: 30px;
	height: 30px;
	margin: -15px 0 0 -15px;
	border: 2.5px solid var(--isc-paper-light);
	font-size: .875rem;
	animation: isc-ping 2.4s ease-out calc(var(--isc-i) * .4s) infinite;
	transition: opacity .3s, scale .3s var(--isc-ease);
}

.isc-features__dot.is-hot {
	scale: 1.2;
}

@keyframes isc-ping {
	0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--isc-accent-bright) 70%, transparent); }
	70%, 100% { box-shadow: 0 0 0 14px transparent; }
}

.isc-features__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.isc-feat {
	position: absolute;
	top: calc(var(--isc-row) - 17px);
	width: 26.5%;
	transition: opacity .3s;
}

.isc-feat--left {
	left: 0;
	text-align: right;
}

.isc-feat--right {
	right: 0;
}

.isc-feat__title {
	display: flex;
	align-items: center;
	gap: .7rem;
	margin: 0 0 .5rem;
	color: var(--isc-paper);
	font-family: var(--isc-body);
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.25;
	transition: color .3s;
}

.isc-feat--left .isc-feat__title {
	flex-direction: row-reverse;
}

.isc-feat__num {
	width: 34px;
	height: 34px;
	font-size: 1rem;
	transition: scale .3s var(--isc-ease);
}

.isc-feat__text {
	margin: 0;
	color: rgb(245 242 236 / .75);
	font-size: 1rem;
	line-height: 1.55;
}

.isc-features__stage.has-hot .isc-feat:not(.is-hot),
.isc-features__stage.has-hot .isc-features__dot:not(.is-hot) {
	opacity: .4;
}

.isc-features__stage.has-hot polyline:not(.is-hot) {
	opacity: .25;
}

.isc-features__stage polyline.is-hot {
	stroke: var(--isc-accent-bright);
	stroke-dasharray: none;
}

.isc-feat.is-hot .isc-feat__title {
	color: var(--isc-accent-bright);
}

.isc-feat.is-hot .isc-feat__num {
	scale: 1.12;
}

/* Reviews, comic quotes, stars and paged tracks */

.isc-reviews__lead {
	margin: .6rem 0 0;
	color: var(--isc-muted);
}

.isc-reviews__note {
	display: flex;
	align-items: center;
	gap: .65rem;
	margin: 0;
	color: var(--isc-muted);
	font-size: .9375rem;
}

.isc-stars {
	display: inline-flex;
	gap: 3px;
}

.isc-stars svg {
	fill: var(--isc-accent);
}

.isc-stars .is-empty {
	fill: rgb(var(--isc-ink-rgb) / .16);
}

.isc-quote {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
	height: 100%;
	margin: 0;
}

/* The ink outline is drawn by the drop-shadows around the body (::before) and the tail (::after) together. */
.isc-quote__bubble,
.isc-promo__bubble {
	--isc-stroke: 2px;
	position: relative;
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: .85rem;
	margin: 0;
	padding: 1.4rem 1.5rem 1.5rem;
	filter:
		drop-shadow(var(--isc-stroke) 0 0 var(--isc-ink))
		drop-shadow(calc(-1 * var(--isc-stroke)) 0 0 var(--isc-ink))
		drop-shadow(0 var(--isc-stroke) 0 var(--isc-ink))
		drop-shadow(0 calc(-1 * var(--isc-stroke)) 0 var(--isc-ink))
		drop-shadow(7px 7px 6px var(--isc-shade));
}

.isc-quote__bubble::before,
.isc-quote__bubble::after,
.isc-promo__bubble::before,
.isc-promo__bubble::after {
	content: "";
	position: absolute;
	z-index: -1;
	background: var(--isc-paper-light);
}

.isc-quote__bubble::before,
.isc-promo__bubble::before {
	inset: 0;
	border-radius: 30px 30px 30px 6px;
}

.isc-quote__bubble::after,
.isc-promo__bubble::after {
	bottom: -16px;
	left: 20px;
	width: 26px;
	height: 18px;
	clip-path: polygon(0 0, 100% 0, 8% 100%);
}

.isc-quote--2 .isc-quote__bubble {
	--isc-stroke: 2.5px;
}

.isc-quote--2 .isc-quote__bubble::before {
	border-radius: 255px 22px 225px 18px / 18px 225px 22px 255px;
}

.isc-quote--2 .isc-quote__bubble::after {
	bottom: -22px;
	left: 40px;
	width: 30px;
	height: 24px;
	clip-path: path("M2 0H28C22 8 14 16 5 24C9 15 8 7 2 0Z");
}

.isc-quote--3 .isc-quote__bubble {
	padding-inline: 1.75rem;
	transform: rotate(-.6deg);
}

.isc-quote--3 .isc-quote__bubble::before {
	inset: -6px;
	clip-path: polygon(0% 0, 5.556% 9px, 11.111% 0, 16.667% 9px, 22.222% 0, 27.778% 9px, 33.333% 0, 38.889% 9px, 44.444% 0, 50% 9px, 55.556% 0, 61.111% 9px, 66.667% 0, 72.222% 9px, 77.778% 0, 83.333% 9px, 88.889% 0, 94.444% 9px, 100% 0%, calc(100% - 9px) 16.667%, 100% 33.333%, calc(100% - 9px) 50%, 100% 66.667%, calc(100% - 9px) 83.333%, 100% 100%, 94.444% calc(100% - 9px), 88.889% 100%, 83.333% calc(100% - 9px), 77.778% 100%, 72.222% calc(100% - 9px), 66.667% 100%, 61.111% calc(100% - 9px), 55.556% 100%, 50% calc(100% - 9px), 44.444% 100%, 38.889% calc(100% - 9px), 33.333% 100%, 27.778% calc(100% - 9px), 22.222% 100%, 16.667% calc(100% - 9px), 11.111% 100%, 5.556% calc(100% - 9px), 0 100%, 9px 83.333%, 0 66.667%, 9px 50%, 0 33.333%, 9px 16.667%);
}

.isc-quote--3 .isc-quote__bubble::after {
	bottom: -24px;
	left: 26px;
	width: 30px;
	height: 28px;
	clip-path: polygon(0 0, 100% 0, 58% 38%, 80% 38%, 6% 100%, 30% 50%, 8% 50%);
}

.isc-quote--4 .isc-quote__bubble::before {
	border-radius: 20px;
	box-shadow: inset 0 0 0 5px var(--isc-paper-light), inset 0 0 0 6.5px var(--isc-ink);
}

.isc-quote--4 .isc-quote__bubble::after {
	bottom: -27px;
	left: 22px;
	width: 32px;
	height: 26px;
	background:
		radial-gradient(circle at 72% 30%, var(--isc-paper-light) 7px, transparent 7.5px),
		radial-gradient(circle at 22% 82%, var(--isc-paper-light) 4px, transparent 4.5px);
	clip-path: none;
}

.isc-quote__bubble p {
	margin: 0;
	font-size: .975rem;
	line-height: 1.6;
}

.isc-quote__by {
	display: flex;
	align-items: center;
	gap: .75rem;
	padding-left: .4rem;
}

.isc-quote__avatar {
	display: grid;
	flex: none;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	font-family: var(--isc-display);
	font-size: .9375rem;
}

.isc-quote__who {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	color: var(--isc-muted);
	font-size: .8125rem;
}

.isc-quote__who b {
	color: var(--isc-ink);
	font-size: .9375rem;
}

.isc-quote__who a {
	display: inline-flex;
	align-items: center;
	gap: .3rem;
	color: inherit;
	font-weight: 700;
	text-decoration: none;
}

.isc-quote__who a:hover {
	color: var(--isc-accent);
}

.isc-quote__thumb {
	flex: none;
	width: 72px;
	aspect-ratio: 4 / 5;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 4px 5px 8px var(--isc-shade);
	transform: rotate(4deg);
	transition: transform .25s var(--isc-ease);
}

.isc-quote--2 .isc-quote__thumb,
.isc-quote--4 .isc-quote__thumb {
	transform: rotate(-3deg);
}

.isc-quote .isc-quote__thumb:hover {
	transform: rotate(0) scale(1.08);
}

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

/* In carousels a long review shows a few lines until "Leer más" opens it. */
.isc-track .isc-quote__text {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	line-clamp: 5;
}

.isc-track .isc-quote.is-open .isc-quote__text {
	display: block;
	overflow: visible;
}

.isc-quote__more {
	align-self: flex-start;
	margin-top: -.4rem;
	padding: 0;
	border: 0;
	background: none;
	color: var(--isc-accent);
	font: 700 .875rem var(--isc-body);
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}

.isc-quote .isc-review-photos {
	margin: 0;
}

.isc-quote .isc-review-photos img {
	width: 64px;
	height: 64px;
}

.isc-quote__bubble .isc-quote__reply {
	padding-left: .85rem;
	border-left: 3px solid var(--isc-accent);
	color: var(--isc-muted);
	font-size: .9rem;
}

.isc-quote__reply b {
	color: var(--isc-ink);
}

.isc-quote__verified {
	display: inline-flex;
	align-items: center;
	gap: .25rem;
	color: var(--isc-accent);
	font-weight: 700;
}

/* How reviews are verified: the full text on Opiniones, a line with its link under other review lists. */

.isc-review-policy {
	max-width: 68ch;
	margin: 3rem 0 0;
	color: var(--isc-muted);
}

.isc-review-policy__title {
	margin: 0 0 .75rem;
	color: var(--isc-ink);
	font: 400 1.5rem/1.2 var(--isc-display);
}

.isc-review-policy p {
	margin: 0 0 .75rem;
}

.isc-review-policy-note {
	margin: 1.25rem 0 0;
	color: var(--isc-muted);
	font-size: .9375rem;
}

.isc-review-policy-note a {
	color: inherit;
	font-weight: 700;
	text-underline-offset: 4px;
}

/* Average stars and count next to a reviews heading. */
.isc-reviews__score {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4rem .65rem;
	margin: 0;
	color: var(--isc-muted);
}

.isc-reviews__score b {
	color: var(--isc-ink);
}

.isc-reviews__lead.isc-reviews__score {
	margin-top: .6rem;
}

.isc-reviews__line {
	margin: .4rem 0 0;
	color: var(--isc-muted);
	font-size: .9375rem;
}

/* Every review: columns that fill top to bottom, so long and short bubbles pack without gaps. */
.isc-review-wall__grid {
	column-width: 320px;
	column-gap: clamp(1.5rem, 3vw, 2.5rem);
}

.isc-review-wall__grid > .isc-quote {
	height: auto;
	margin-bottom: clamp(2.5rem, 4vw, 3.25rem);
	break-inside: avoid;
}

/*
 * The padding leaves room for the outlines and shadows of the visible items (about 10px before an item
 * and 24px after it), and the gap is wider than that padding so the shadows of the items on the other
 * pages stay out of sight. scroll-padding keeps the snapped item inside the padding. The items are sized
 * from the viewport (cqi) so the list can be exactly as wide as its items and the last page snaps too.
 */
.isc-track__viewport {
	--isc-track-start: 12px;
	container-type: inline-size;
	--isc-track-end: min(26px, var(--isc-gutter));
	margin: -12px calc(-1 * var(--isc-track-end)) -28px calc(-1 * var(--isc-track-start));
	padding: 12px var(--isc-track-end) 28px var(--isc-track-start);
	overflow-x: auto;
	scroll-padding-inline: var(--isc-track-start) var(--isc-track-end);
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.isc-track__viewport::-webkit-scrollbar {
	display: none;
}

.isc-track__viewport:focus-visible {
	outline-offset: -4px;
}

.isc-track__list {
	display: grid;
	grid-auto-columns: calc((100cqi - 2 * 2.5rem) / 3);
	grid-auto-flow: column;
	gap: 2.5rem;
	width: max-content;
	margin: 0;
	padding: 0;
	list-style: none;
}

.isc-track__item {
	scroll-snap-align: start;
}

.isc-track__controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: .75rem;
	margin-top: 1.75rem;
}

.isc-track__counter {
	min-width: 3.5em;
	font-weight: 700;
	text-align: center;
}

.isc-track__controls .isc-round-btn:disabled {
	opacity: .35;
	pointer-events: none;
}

@media (max-width: 900px) {
	.isc-track__list {
		grid-auto-columns: calc((100cqi - 2rem) / 2);
		gap: 2rem;
	}
}

@media (max-width: 600px) {
	.isc-track__list {
		grid-auto-columns: 88cqi;
	}
}

/* Category header */

.isc-cat-hero,
.isc-catalog--pattern,
.isc-cut--game,
.isc-product,
.isc-showcase {
	--isc-game-lift: var(--isc-game);
}

:root[data-theme="dark"] :is(.isc-cat-hero, .isc-catalog--pattern, .isc-cut--game, .isc-product, .isc-showcase) {
	--isc-game-lift: color-mix(in oklab, var(--isc-game) 60%, #fff);
}

/* Clipped sideways only, so the fanned cards can't widen the page while the tag menus open below the hero. */
.isc-cat-hero {
	position: relative;
	overflow-x: clip;
}

.isc-cat-hero:has(+ .isc-cut) .isc-cat-hero__inner {
	padding-bottom: 5.5rem;
}

.isc-cat-hero__inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	min-height: 340px;
	padding-block: 2rem 3rem;
}

.isc-cat-hero__copy {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 1.25rem;
	min-width: 0;
	max-width: 760px;
}

.isc-cat-hero .isc-crumbs {
	color: var(--isc-muted);
	font-weight: 500;
}

.isc-cat-hero .isc-crumbs [aria-current] {
	color: var(--isc-ink);
	font-weight: 700;
}

.isc-cat-hero__title {
	position: relative;
	z-index: 0;
	align-self: flex-start;
	margin: 0;
	font-family: var(--isc-display);
	font-size: clamp(1.75rem, min(14vw, calc(min(100vw - 2 * var(--isc-gutter), 760px) / (var(--isc-len, 8) * .86))), 6rem);
	font-weight: 400;
	line-height: 1.08;
	letter-spacing: -.01em;
	animation: isc-rise .7s var(--isc-ease) both;
	--isc-brush-color: var(--isc-game-lift, var(--isc-accent));
	--isc-brush-delay: .35s;
}

.isc-cat-hero__kicker {
	align-self: flex-start;
	margin: .5rem 0 -.5rem;
	padding: .45rem .9rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius-sm);
	background: var(--isc-paper-light);
	box-shadow: 4px 4px 0 var(--isc-game-lift);
	font-family: var(--isc-display);
	font-size: 1.0625rem;
	line-height: 1;
	letter-spacing: .04em;
	text-transform: uppercase;
	transform: rotate(-2deg);
	animation: isc-rise .7s var(--isc-ease) both;
}

.isc-cat-hero__legal {
	display: flex;
	align-items: flex-start;
	gap: .5rem;
	margin: -.25rem 0 0;
	color: var(--isc-muted);
	font-size: .875rem;
	font-weight: 500;
	line-height: 1.45;
}

.isc-cat-hero__legal .isc-icon {
	flex: none;
	margin-top: .1em;
	stroke-width: 1.8;
}

/* A category's # filters: one dropdown per group (season, collection) with its tags in a panel. */
.isc-tags {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: .6rem;
	margin-top: .25rem;
}

.isc-tags__group {
	position: relative;
	display: flex;
	align-items: center;
	gap: .4rem;
}

.isc-tags__toggle {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	min-height: 44px;
	padding: 0 .9rem 0 1.1rem;
	border: 1.5px solid rgb(var(--isc-ink-rgb) / .14);
	border-radius: 999px;
	background: var(--isc-paper-light);
	color: var(--isc-ink);
	font: 700 .9375rem var(--isc-body);
	cursor: pointer;
	transition: border-color .2s;
}

.isc-tags__toggle:hover,
.isc-tags__toggle[aria-expanded="true"],
.isc-tags__toggle.is-active {
	border-color: var(--isc-game-lift, var(--isc-accent));
}

.isc-tags__toggle .isc-icon {
	color: var(--isc-muted);
	transition: transform .25s var(--isc-ease);
}

.isc-tags__toggle[aria-expanded="true"] .isc-icon {
	transform: rotate(180deg);
}

.isc-tags__label {
	color: var(--isc-muted);
	font-size: .75rem;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.isc-tags__group--collection :is(.isc-tags__value, .isc-tags__option) {
	font-size: .8125rem;
	letter-spacing: .03em;
	text-transform: uppercase;
}

.isc-tags__hash {
	margin-right: .15rem;
	color: var(--isc-game-lift, var(--isc-accent));
	font-family: var(--isc-display);
}

.isc-tags__clear {
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--isc-game);
	color: var(--isc-game-ink);
	transition: transform .2s var(--isc-ease);
}

.isc-tags__clear:hover {
	transform: scale(1.08);
}

.isc-tags__panel {
	position: absolute;
	top: calc(100% + .5rem);
	left: 0;
	z-index: 20;
	width: max-content;
	min-width: 15rem;
	max-width: calc(100vw - 2 * var(--isc-gutter));
	max-height: min(28rem, 70vh);
	padding: .4rem;
	border: 1.5px solid rgb(var(--isc-ink-rgb) / .14);
	border-radius: 16px;
	background: var(--isc-paper-light);
	box-shadow: 0 14px 34px rgb(0 0 0 / .16);
	overflow-y: auto;
	overscroll-behavior: contain;
}

.isc-tags__panel--wide {
	width: 32rem;
}

.isc-tags__list {
	display: grid;
	gap: 2px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.isc-tags__panel--wide .isc-tags__list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.isc-tags__option {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	gap: .2rem;
	min-height: 40px;
	padding: .4rem .75rem;
	border-radius: 10px;
	color: var(--isc-ink);
	font-size: .875rem;
	font-weight: 700;
	text-decoration: none;
}

.isc-tags__option:hover,
.isc-tags__option:focus-visible {
	background: rgb(var(--isc-ink-rgb) / .07);
}

.isc-tags__option[aria-current] {
	background: var(--isc-game);
	color: var(--isc-game-ink);
}

.isc-tags__option[aria-current] .isc-tags__hash {
	color: inherit;
}

.isc-tags__count {
	margin-left: auto;
	padding-left: .75rem;
	color: var(--isc-muted);
	font-size: .75rem;
	letter-spacing: 0;
}

.isc-tags__option[aria-current] .isc-tags__count {
	color: inherit;
}

.isc-tag-chip {
	display: inline-flex;
	flex: none;
	align-items: center;
	gap: .35rem;
	min-height: 38px;
	padding: 0 .95rem 0 .75rem;
	border: 1.5px solid rgb(var(--isc-ink-rgb) / .14);
	border-radius: 999px;
	background: var(--isc-paper-light);
	color: var(--isc-ink);
	font: 700 .875rem var(--isc-body);
	text-decoration: none;
	transition: border-color .2s, background-color .2s, color .2s;
}

.isc-tag-chip:hover {
	border-color: var(--isc-game-lift, var(--isc-accent));
	color: var(--isc-ink);
}

.isc-tag-chip--collection {
	font-size: .8125rem;
	letter-spacing: .03em;
	text-transform: uppercase;
}

.isc-tag-chip__hash {
	color: var(--isc-game-lift, var(--isc-accent));
	font-family: var(--isc-display);
	font-size: .9375rem;
}

.isc-tag-chip__count {
	color: var(--isc-muted);
	font-size: .75rem;
}

.isc-tag-chip[aria-current] {
	border-color: var(--isc-game);
	background: var(--isc-game);
	color: var(--isc-game-ink);
}

.isc-tag-chip[aria-current] :is(.isc-tag-chip__hash, .isc-tag-chip__count) {
	color: inherit;
}

.isc-cat-hero__text {
	max-width: 560px;
	margin: 0;
	color: var(--isc-muted);
	font-size: 1.1875rem;
	font-weight: 500;
	line-height: 1.6;
	animation: isc-rise .7s var(--isc-ease) .2s both;
}

.isc-cat-hero__cards {
	position: relative;
	flex-shrink: 0;
	width: 430px;
	height: 290px;
}

.isc-cat-hero__card {
	position: absolute;
	top: calc(var(--isc-i) * 10px + 14px);
	left: calc(var(--isc-i) * 128px);
	width: 172px;
	height: 215px;
	border-radius: var(--isc-radius-sm);
	box-shadow: 0 0 0 5px var(--isc-paper);
	background: var(--isc-photo);
	overflow: hidden;
	transform: rotate(calc(-5deg + var(--isc-i) * 5deg));
	animation: isc-deal .7s var(--isc-ease) calc(.15s + var(--isc-i) * .15s) both;
}

.isc-cat-hero .isc-cat-hero__card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Catalogue */

.isc-catalog {
	padding-top: 1.75rem;
}

.isc-cut + .isc-catalog {
	padding-top: 6rem;
}

.isc-catalog--pattern {
	isolation: isolate;
	background-color: color-mix(in oklab, var(--isc-game) 5%, var(--isc-paper));
}

.isc-catalog--pattern::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: color-mix(in oklab, color-mix(in oklab, var(--isc-game) 80%, #16131a) 12%, var(--isc-paper));
	-webkit-mask: var(--isc-pattern) repeat;
	mask: var(--isc-pattern) repeat;
	pointer-events: none;
}

:root[data-theme="dark"] .isc-catalog--pattern {
	background-color: color-mix(in oklab, var(--isc-game) 8%, var(--isc-paper));
}

:root[data-theme="dark"] .isc-catalog--pattern::before {
	background: color-mix(in oklab, color-mix(in oklab, var(--isc-game) 60%, #fff) 13%, var(--isc-paper));
}

.isc-cut--game svg {
	filter: drop-shadow(0 0 3px var(--isc-game-lift)) blur(.35px);
}

.isc-cut--game .isc-cut__line {
	stroke: var(--isc-game-lift);
}

.isc-catalog__bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 1.5rem;
	margin-bottom: 2.25rem;
}

.isc-catalog__tools {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem 1.5rem;
	margin-left: auto;
}

.isc-catalog__count {
	margin: 0;
	font-weight: 700;
}

.isc-catalog .woocommerce-ordering {
	margin: 0;
}

.isc-catalog .woocommerce-ordering select {
	min-height: 46px;
	min-width: 240px;
	padding: 0 2.5rem 0 1.1rem;
	border: var(--isc-line);
	border-radius: 999px;
	background: var(--isc-paper) var(--isc-chevron) no-repeat right .7rem center / 18px;
	color: var(--isc-ink);
	font: 700 .9375rem var(--isc-body);
	appearance: none;
	cursor: pointer;
}

.isc-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .5rem;
	margin-top: 4rem;
}

.isc-pagination .page-numbers {
	display: grid;
	place-items: center;
	min-width: 48px;
	height: 48px;
	padding: 0 .5rem;
	box-sizing: border-box;
	border: var(--isc-line);
	border-radius: 999px;
	color: var(--isc-ink);
	font-weight: 700;
	text-decoration: none;
}

.isc-pagination .page-numbers.current,
.isc-pagination a.page-numbers:hover {
	background: var(--isc-ink);
	color: var(--isc-paper);
}

.isc-pagination .dots {
	border-color: transparent;
}

.isc-empty {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.5rem;
	padding: 3rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius);
	background: var(--isc-paper-light);
}

.isc-empty p {
	margin: 0;
	font-size: 1.125rem;
}

/* Single product */

.isc-product {
	padding-block: 1.4rem 6.5rem;
}

.isc-product .isc-crumbs {
	margin-bottom: 1.25rem;
}

.isc-product__layout {
	display: grid;
	grid-template-columns: minmax(0, 752px) minmax(0, 1fr);
	gap: clamp(2rem, 4.5vw, 4rem);
	align-items: start;
}

.isc-gallery {
	position: sticky;
	top: 7.5rem;
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	gap: 1rem;
	align-items: start;
}

.isc-gallery__thumbs {
	display: flex;
	flex-direction: column;
	gap: .75rem;
	height: 0;
	min-height: 100%;
	overflow: hidden auto;
	scrollbar-gutter: stable;
	scrollbar-width: thin;
}

.isc-gallery__main:only-child {
	grid-column: 1 / -1;
}

.isc-gallery__thumb {
	flex-shrink: 0;
	width: calc(100% - 4px);
	aspect-ratio: 4 / 5;
	padding: 0;
	box-sizing: border-box;
	border: var(--isc-line);
	border-color: transparent;
	border-radius: var(--isc-radius-sm);
	background: var(--isc-photo);
	opacity: .75;
	overflow: hidden;
	cursor: pointer;
	transition: opacity .2s, transform .2s, border-color .2s;
}

.isc-gallery .isc-gallery__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.isc-gallery__thumb:hover {
	opacity: 1;
	transform: translateX(3px);
}

.isc-gallery__thumb[aria-pressed="true"] {
	border-color: var(--isc-ink);
	opacity: 1;
}

.isc-gallery__main {
	position: relative;
	aspect-ratio: 4 / 5;
	border-radius: var(--isc-radius);
	background: var(--isc-photo);
	overflow: hidden;
}

.isc-gallery .isc-gallery__main img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.isc-gallery__tag {
	position: absolute;
	bottom: 15%;
	left: .9rem;
}

.isc-gallery__counter {
	position: absolute;
	right: .75rem;
	bottom: 15%;
	padding: .25rem .7rem;
	border-radius: 999px;
	background: var(--isc-ink);
	color: var(--isc-paper);
	font-size: .8125rem;
	font-weight: 700;
}

.isc-buy {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.isc-buy__title {
	container-type: inline-size;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: .9rem;
	margin: 0;
	font-weight: 400;
}

.isc-buy__line {
	font-family: var(--isc-body);
}

/*
 * Lines break only between words. --isc-word is the longest word's length: the name is sized so that word fits
 * the column (100cqi) at about .8em a letter (Reggae One's capitals average .75em), and assets/js/store.js
 * shrinks it further if a word with wide letters still does not fit.
 */
.isc-buy__name {
	--isc-fit: calc(100cqi / (var(--isc-word, 6) * .8));
	display: block;
	max-width: 100%;
	font-family: var(--isc-display);
	font-size: clamp(1rem, min(5.5vw, var(--isc-fit)), 5.5rem);
	line-height: 1.06;
	letter-spacing: -.01em;
	overflow-wrap: normal;
	hyphens: manual;
	text-wrap: balance;
}

@media (max-width: 1100px) {
	.isc-buy__name {
		font-size: clamp(1rem, min(14vw, var(--isc-fit)), 6rem);
	}
}

.isc-buy__tags {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: -.5rem 0 0;
}

.isc-buy__rating {
	align-self: flex-start;
	font-size: .9375rem;
}

.isc-buy__price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: .5rem 1rem;
	margin: 0;
}

.isc-buy__amount {
	font-family: var(--isc-display);
	font-size: clamp(2.25rem, 3.5vw, 2.875rem);
	line-height: 1;
}

.isc-buy__amount .isc-from {
	font-family: var(--isc-body);
	font-size: 1rem;
	font-weight: 700;
	color: var(--isc-muted);
}

.isc-buy__amount del {
	color: var(--isc-muted);
	font-size: .6em;
}

.isc-buy__tax {
	color: var(--isc-muted);
	font-size: .9375rem;
}

.isc-buy__excerpt p {
	max-width: 560px;
	margin: 0;
	font-size: 1.125rem;
	line-height: 1.6;
}

.isc-buy__form {
	padding-top: 1.5rem;
	border-top: var(--isc-hairline);
}

.isc-buy__form form.cart {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 0;
}

.isc-buy__form table.variations,
.isc-buy__form table.variations tbody,
.isc-buy__form table.variations tr,
.isc-buy__form table.variations th,
.isc-buy__form table.variations td {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	text-align: left;
}

.isc-buy__form table.variations tr + tr {
	margin-top: 1.25rem;
}

.isc-buy__form table.variations th label {
	display: block;
	margin-bottom: .75rem;
	font-size: .9375rem;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.isc-buy__form .isc-has-options select {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.isc-buy__form .reset_variations {
	display: none !important;
}

.isc-buy__form select {
	min-height: 52px;
	width: 100%;
	padding: 0 .9rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius-sm);
	background: var(--isc-paper-light);
	font: 700 1rem var(--isc-body);
}

.isc-options {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: .6rem;
}

.isc-option {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: .5rem;
	min-height: 84px;
	box-sizing: border-box;
	padding: .85rem 1rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius-sm);
	background: transparent;
	color: var(--isc-ink);
	font-family: var(--isc-body);
	text-align: left;
	cursor: pointer;
	transition: background-color .2s, color .2s, border-color .2s;
}

.isc-option:hover {
	border-color: var(--isc-accent);
}

.isc-option[aria-pressed="true"] {
	background: var(--isc-ink);
	color: var(--isc-paper);
}

.isc-option:disabled {
	opacity: .4;
	cursor: not-allowed;
}

.isc-option__label {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.25;
}

.isc-option__price {
	font-size: .9375rem;
	font-weight: 700;
	opacity: .85;
}

.isc-option__check {
	display: none;
	position: absolute;
	top: -9px;
	right: -9px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--isc-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7' fill='none' stroke='%23f3efe6' stroke-width='3'/%3E%3C/svg%3E") no-repeat center / 16px;
}

.isc-option[aria-pressed="true"] .isc-option__check {
	display: block;
	animation: isc-pop-small .35s var(--isc-ease) both;
}

/* Colours: round swatches in the value's own colour, a ring around the chosen one and its name by the label. */
.isc-options--swatches {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
}

.isc-options--swatches .isc-option--swatch {
	--isc-swatch: #8C8C8C;
	flex: none;
	width: 44px;
	min-height: 0;
	height: 44px;
	padding: 0;
	border: 1px solid rgb(var(--isc-ink-rgb) / .25);
	border-radius: 50%;
	background: var(--isc-swatch);
	transition: transform .2s var(--isc-ease), box-shadow .2s;
}

/* A soft highlight so flat colours read as a material (and silver and gold as metal). */
.isc-option--swatch::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: radial-gradient(circle at 32% 28%, rgb(255 255 255 / .45), transparent 58%);
}

.isc-option--swatch .isc-option__label,
.isc-option--swatch .isc-option__price {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
}

.isc-option--swatch:hover {
	border-color: rgb(var(--isc-ink-rgb) / .25);
	transform: scale(1.1);
}

.isc-option--swatch[aria-pressed="true"] {
	background: var(--isc-swatch);
	box-shadow: 0 0 0 2px var(--isc-paper), 0 0 0 4px var(--isc-ink);
}

.isc-option--swatch .isc-option__check {
	top: -7px;
	right: -7px;
	width: 20px;
	height: 20px;
	background-size: 13px;
}

.isc-options__chosen {
	margin-left: .5rem;
	font-weight: 400;
	color: var(--isc-muted);
}

.isc-options__chosen:not(:empty)::before {
	content: "· ";
}

.isc-buy__form .woocommerce-variation-price,
.isc-buy__form .woocommerce-variation-availability:empty,
.isc-buy__form .stock.in-stock {
	display: none;
}

.isc-buy__form .woocommerce-variation-description:not(:empty) {
	padding: .8rem 1rem;
	border-radius: var(--isc-radius-sm);
	background: rgb(var(--isc-ink-rgb) / .06);
	font-size: .9375rem;
	line-height: 1.45;
}

.isc-buy__form .woocommerce-variation-description p {
	margin: 0;
}

.isc-buy__form .variations_form .woocommerce-variation-add-to-cart {
	margin-top: 1.5rem;
	padding-top: 1.5rem;
	border-top: var(--isc-hairline);
}

.isc-express {
	display: flex;
	flex-direction: column;
	gap: .75rem;
	margin-top: 1.5rem;
}

.isc-express:not(:has(.StripeElement, paypal-button)) {
	display: none;
}

.isc-express__title {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin: 0 0 .25rem;
	color: var(--isc-muted);
	font-size: .8125rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	white-space: nowrap;
}

.isc-express__title::before,
.isc-express__title::after {
	content: "";
	flex: 1;
	border-top: var(--isc-hairline);
}

.isc-express wc-order-attribution-inputs {
	display: none;
}

.isc-express #wc-stripe-express-checkout-element {
	gap: .75rem;
	margin: 0 !important;
	transition: opacity .2s;
}

/* Stripe hides its buttons while it reprices a newly chosen option; once shown they stay put, dimmed. */
.isc-express #wc-stripe-express-checkout-element.is-shown[style*="display: none"] {
	display: flex !important;
	opacity: .6;
	pointer-events: none;
}

.isc-express #wc-stripe-express-checkout-element:has(.blockOverlay) {
	opacity: .6;
}

.isc-express .blockUI.blockOverlay {
	background: none !important;
}

paypal-button {
	--paypal-button-border-radius: 24px !important;
}

.isc-express .ppcp-messages {
	order: 1;
	text-align: center;
}

.isc-buy__form .woocommerce-variation-add-to-cart,
.isc-buy__form form.cart:not(.variations_form) {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: .75rem;
	align-items: stretch;
}

.isc-buy__form form.cart:not(.variations_form) > .isc-custom-form {
	flex-basis: 100%;
}

.isc-buy__form .quantity {
	display: flex;
}

.isc-stepper {
	display: flex;
	align-items: stretch;
	height: 56px;
	box-sizing: border-box;
	border: var(--isc-line);
	border-radius: 999px;
	overflow: hidden;
}

.isc-stepper button {
	width: 52px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--isc-ink);
	font: 700 1.375rem var(--isc-body);
	cursor: pointer;
}

.isc-stepper button:hover {
	background: var(--isc-paper-dark);
}

.isc-stepper input.qty {
	width: 44px;
	padding: 0;
	border: 0;
	background: transparent;
	font: 700 1.125rem var(--isc-body);
	text-align: center;
	appearance: textfield;
	-moz-appearance: textfield;
}

.isc-stepper input.qty::-webkit-inner-spin-button,
.isc-stepper input.qty::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.isc-stepper--sm {
	height: 38px;
}

.isc-stepper--sm button {
	width: 38px;
	font-size: 1.125rem;
}

.isc-stepper--sm span {
	display: grid;
	place-items: center;
	min-width: 28px;
	font-weight: 700;
}

.isc-buy__form .single_add_to_cart_button {
	flex: 1 1 260px;
	min-height: 56px;
}

.isc-buy__form .single_add_to_cart_button.disabled,
.isc-buy__form .single_add_to_cart_button:disabled {
	opacity: .55;
	cursor: not-allowed;
}

.isc-buy__form .single_add_to_cart_button.is-loading {
	opacity: .7;
	pointer-events: none;
}

.isc-btn__total {
	font-family: var(--isc-display);
	font-size: 1.25rem;
	font-weight: 400;
	letter-spacing: 0;
	white-space: nowrap;
}

.isc-buy__form .single_add_to_cart_button .isc-btn__text {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.isc-buy__form .quantity input.qty {
	width: 44px;
}

.isc-buy__info {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 0;
	padding: 1.25rem 0 0;
	border-top: var(--isc-hairline);
	list-style: none;
}

.isc-buy__info li {
	display: flex;
	gap: .9rem;
	align-items: flex-start;
	line-height: 1.5;
}

.isc-buy__info strong {
	font-weight: 700;
}

.isc-accordion {
	border-top: var(--isc-hairline);
}

.isc-acc {
	border-bottom: var(--isc-hairline);
}

.isc-acc summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 60px;
	font-size: 1.125rem;
	font-weight: 700;
	list-style: none;
	cursor: pointer;
}

.isc-acc summary::-webkit-details-marker {
	display: none;
}

.isc-acc summary::after {
	content: "";
	width: 22px;
	height: 22px;
	background: var(--isc-plus) no-repeat center / contain;
	transition: transform .25s var(--isc-ease);
}

.isc-acc[open] summary::after {
	transform: rotate(45deg);
}

.isc-acc[open] .isc-acc__body {
	animation: isc-rise .4s var(--isc-ease) both;
}

.isc-acc__body {
	padding-bottom: 1.4rem;
	line-height: 1.6;
}

.isc-acc__body p {
	margin: 0 0 .75rem;
}

.isc-acc__body ul {
	display: flex;
	flex-direction: column;
	gap: .6rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.isc-acc__body li {
	position: relative;
	padding-left: 1.2rem;
}

.isc-acc__body li::before {
	content: "";
	position: absolute;
	top: .6em;
	left: 0;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--isc-accent);
}

/* Custom deckbox form */

.isc-custom-form {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
	min-width: 0;
	margin: 0 0 .5rem;
	padding: 1.5rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius);
	background: var(--isc-paper-light);
}

.isc-custom-form__legend {
	padding: 0;
	font-family: var(--isc-display);
	font-size: 1.375rem;
	line-height: 1.2;
}

.isc-field {
	display: flex;
	flex-direction: column;
	gap: .45rem;
}

.isc-field__label {
	font-size: .9375rem;
	font-weight: 700;
}

.isc-field__help,
.isc-custom-form__note {
	margin: 0;
	color: var(--isc-muted);
	font-size: .875rem;
	line-height: 1.5;
}

.isc-input {
	width: 100%;
	min-height: 50px;
	box-sizing: border-box;
	padding: .75rem .9rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius-sm);
	background: var(--isc-paper-light);
	color: var(--isc-ink);
	font: 500 1rem var(--isc-body);
}

.isc-input:focus {
	outline: none;
	border-color: var(--isc-accent);
	box-shadow: 0 0 0 3px var(--isc-highlight);
}

.isc-input--file {
	padding: .6rem;
}

.isc-field__choices {
	display: flex;
	gap: .6rem;
}

.isc-choice {
	display: flex;
	align-items: center;
	gap: .5rem;
	min-height: 48px;
	padding: 0 1.1rem;
	border: var(--isc-line);
	border-radius: 999px;
	font-weight: 700;
	cursor: pointer;
}

.isc-choice input {
	width: 20px;
	height: 20px;
	margin: 0;
	accent-color: var(--isc-ink);
}

/* Angles */

.isc-angles {
	padding-top: 0;
}

.isc-angles .isc-section__title {
	margin-bottom: 2.5rem;
}

.isc-angles__stage {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.isc-angles__panel {
	position: relative;
	aspect-ratio: 4 / 5;
	margin: 0;
	border-radius: var(--isc-radius);
	background: var(--isc-photo);
	overflow: hidden;
}

.isc-angles .isc-angles__panel img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .8s var(--isc-ease);
}

.isc-angles__panel:hover img {
	transform: scale(1.04);
}

.isc-angles__panel figcaption {
	position: absolute;
	top: 1rem;
	left: 1rem;
	padding: .45rem .85rem;
	font-size: .9375rem;
}

/* Product reviews: the bubbles, then WooCommerce's review form */

.isc-product-reviews {
	border-top: var(--isc-line);
}

.isc-product-reviews__form {
	max-width: 720px;
	margin-top: clamp(3rem, 6vw, 4.5rem);
}

.isc-product-reviews #respond {
	padding: 1.75rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius);
	background: var(--isc-paper-light);
}

.isc-product-reviews #reply-title {
	display: block;
	margin: 0 0 1rem;
	font-family: var(--isc-display);
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	font-weight: 400;
	line-height: 1.15;
}

.isc-product-reviews .comment-notes {
	margin: 0;
	color: var(--isc-muted);
	font-size: .9375rem;
}

.isc-product-reviews .comment-form label {
	display: block;
	margin-bottom: .4rem;
	font-weight: 700;
}

.isc-product-reviews .comment-form p {
	margin: 0;
}

/* WooCommerce turns the rating <select> into five links, each one star wider than the last. */
.isc-product-reviews p.stars span {
	display: flex;
	gap: .25rem;
}

.isc-product-reviews p.stars a {
	display: block;
	width: 28px;
	height: 28px;
	overflow: hidden;
	background: var(--isc-star) no-repeat center / 26px;
	text-indent: -999em;
	transition: transform .15s var(--isc-ease);
}

.isc-product-reviews p.stars:is(:hover, .selected) a {
	background-image: var(--isc-star-full);
}

.isc-product-reviews p.stars:hover a:hover ~ a,
.isc-product-reviews p.stars.selected:not(:hover) a.active ~ a {
	background-image: var(--isc-star);
}

.isc-product-reviews p.stars a:hover {
	transform: scale(1.12);
}

.isc-product-reviews p.stars a:focus-visible {
	border-radius: 6px;
	outline: 2px solid var(--isc-accent);
	outline-offset: 2px;
}

.isc-product-reviews .comment-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.isc-product-reviews .comment-form input[type="text"],
.isc-product-reviews .comment-form input[type="email"],
.isc-product-reviews .comment-form textarea,
.isc-product-reviews .comment-form select {
	width: 100%;
	box-sizing: border-box;
	padding: .75rem .9rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius-sm);
	background: var(--isc-paper-light);
	font: 500 1rem var(--isc-body);
}

.isc-product-reviews .form-submit input {
	min-height: 56px;
	padding: 0 1.75rem;
	border: 0;
	border-radius: 999px;
	background: var(--isc-accent);
	color: var(--isc-paper-light);
	font: 700 1rem var(--isc-body);
	cursor: pointer;
}

.isc-product-reviews .woocommerce-noreviews,
.isc-product-reviews .woocommerce-verification-required {
	padding: 1.25rem 1.5rem;
	border: var(--isc-hairline);
	border-radius: var(--isc-radius);
	background: var(--isc-paper-light);
}

/* Legal navigation */

.isc-legal-nav {
	position: sticky;
	top: 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 2.25rem;
}

.isc-legal-nav__pages {
	display: flex;
	flex-direction: column;
	border: var(--isc-line);
	border-radius: var(--isc-radius);
	overflow: hidden;
}

.isc-legal-nav__label {
	padding: .85rem 1.1rem;
	color: var(--isc-muted);
	font-size: .875rem;
	font-weight: 700;
}

.isc-legal-nav__pages .isc-legal-nav__label {
	border-bottom: var(--isc-hairline);
}

.isc-legal-nav__pages a {
	padding: .85rem 1.1rem;
	border-bottom: var(--isc-hairline);
	color: var(--isc-ink);
	font-weight: 700;
	text-decoration: none;
	transition: background-color .2s, padding .2s;
}

.isc-legal-nav__pages a:last-child {
	border-bottom: 0;
}

.isc-legal-nav__pages a:hover {
	padding-left: 1.4rem;
}

.isc-legal-nav__pages a[aria-current="page"] {
	background: var(--isc-ink);
	color: var(--isc-paper);
	font-weight: 700;
}

.isc-legal-nav__toc {
	display: flex;
	flex-direction: column;
	gap: .7rem;
	font-size: .9375rem;
}

.isc-legal-nav__toc .isc-legal-nav__label {
	padding: 0;
}

.isc-legal-nav__toc a {
	color: var(--isc-ink);
	text-decoration: none;
}

.isc-legal-nav__toc a:hover,
.isc-legal-nav__toc a.is-current {
	text-decoration: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 4px;
}

/* Drawer, option picker and toast */

html.isc-locked {
	overflow: hidden;
}

.isc-drawer,
.isc-picker {
	max-width: none;
	max-height: none;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--isc-ink);
}

.isc-drawer {
	position: fixed;
	inset: 0 0 0 auto;
	width: min(480px, 100vw);
	height: 100dvh;
}

.isc-drawer::backdrop,
.isc-picker::backdrop {
	background: rgb(22 19 26 / .55);
	animation: isc-fade .3s ease-out both;
}

.isc-drawer__panel {
	display: flex;
	flex-direction: column;
	height: 100%;
	box-sizing: border-box;
	border-left: var(--isc-line);
	border-radius: var(--isc-radius) 0 0 var(--isc-radius);
	background: var(--isc-paper);
	animation: isc-slide-in .45s var(--isc-ease) both;
}

.isc-drawer.is-closing .isc-drawer__panel {
	animation: isc-slide-out .26s ease-in both;
}

.isc-drawer.is-closing::backdrop,
.isc-picker.is-closing::backdrop {
	animation: isc-fade .26s ease-in reverse both;
}

.isc-drawer.is-busy .isc-drawer__items {
	opacity: .55;
	pointer-events: none;
}

.isc-drawer__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 88px;
	padding: 0 1.1rem 0 1.75rem;
	border-bottom: var(--isc-hairline);
}

.isc-drawer__title,
.isc-picker__title {
	margin: 0;
	font-family: var(--isc-display);
	font-size: 1.75rem;
	font-weight: 400;
}

.isc-drawer__ship {
	display: flex;
	flex-direction: column;
	gap: .75rem;
	padding: 1.35rem 1.75rem;
	border-bottom: var(--isc-hairline);
}

.isc-drawer__ship[hidden] {
	display: none;
}

.isc-drawer__ship-msg {
	margin: 0;
	font-weight: 700;
}

.isc-bar {
	height: 8px;
	border-radius: 999px;
	background: rgb(var(--isc-ink-rgb) / .12);
	overflow: hidden;
}

.isc-bar span {
	display: block;
	width: 0;
	height: 100%;
	border-radius: 999px;
	background: var(--isc-accent);
	transition: width .6s var(--isc-ease);
}

.isc-drawer__items {
	flex: 1;
	margin: 0;
	padding: 0 1.75rem;
	overflow-y: auto;
	list-style: none;
	transition: opacity .2s;
}

.isc-line {
	display: flex;
	gap: 1rem;
	padding: 1.35rem 0;
	border-bottom: var(--isc-hairline);
	animation: isc-rise .45s var(--isc-ease) both;
}

.isc-line__media {
	flex-shrink: 0;
	width: 84px;
	aspect-ratio: 4 / 5;
	border-radius: var(--isc-radius-sm);
	background: var(--isc-photo);
	overflow: hidden;
}

.isc-drawer .isc-line__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.isc-line__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: .35rem;
	min-width: 0;
}

.isc-line__name {
	color: var(--isc-ink);
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.25;
	text-decoration: none;
}

.isc-line__details {
	margin: 0;
	color: var(--isc-muted);
	font-size: .875rem;
}

.isc-line__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	margin-top: .35rem;
}

.isc-line__total {
	font-family: var(--isc-display);
	font-size: 1.25rem;
	font-weight: 400;
}

.isc-line__remove {
	align-self: flex-start;
	min-height: 32px;
	font-size: .875rem;
}

.isc-drawer__empty {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.5rem;
	padding: 2rem 1.75rem;
}

.isc-drawer__empty[hidden],
.isc-drawer__foot[hidden] {
	display: none;
}

.isc-drawer__empty p {
	margin: 0;
	font-size: 1.125rem;
}

.isc-drawer__foot {
	display: flex;
	flex-direction: column;
	gap: .8rem;
	padding: 1.5rem 1.75rem 1.75rem;
	border-top: var(--isc-hairline);
}

.isc-drawer__total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	font-size: 1.125rem;
	font-weight: 700;
}

.isc-drawer__total strong {
	font-family: var(--isc-display);
	font-size: 1.875rem;
	font-weight: 400;
}

.isc-drawer__note {
	margin: 0;
	color: var(--isc-muted);
	font-size: .875rem;
}

.isc-drawer__min {
	margin: 0;
	padding: .75rem .9rem;
	border-radius: var(--isc-radius-sm);
	background: var(--isc-highlight);
	font-weight: 700;
	font-size: .9375rem;
}

.isc-drawer__checkout.is-disabled {
	background: #9c958b;
	cursor: not-allowed;
}

.isc-picker {
	position: fixed;
	inset: auto 0 0;
	width: min(560px, 100vw);
	margin: auto auto 0;
}

@media (min-width: 761px) {
	.isc-picker {
		inset: 0;
		margin: auto;
		height: fit-content;
	}
}

.isc-picker__panel {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	padding-bottom: 1.5rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius) var(--isc-radius) 0 0;
	background: var(--isc-paper);
	animation: isc-pop-panel .35s var(--isc-ease) both;
}

@media (min-width: 761px) {
	.isc-picker__panel {
		border-radius: var(--isc-radius);
	}
}

.isc-picker.is-closing .isc-picker__panel {
	animation: isc-fade .2s ease-in reverse both;
}

.isc-picker__panel > :not(header) {
	margin-inline: 1.75rem;
}

.isc-picker__hint {
	margin-block: 0;
	color: var(--isc-muted);
}

.isc-picker__options {
	display: grid;
	gap: .6rem;
}

.isc-picker__options .isc-option {
	flex-direction: row;
	align-items: center;
	min-height: 64px;
}

.isc-picker .isc-link-btn {
	align-self: flex-start;
	color: var(--isc-ink);
}

/* Offer of the week: a sheet from the bottom on phones, a card with the photo beside the text on wider screens */

.isc-offer {
	position: fixed;
	inset: 0;
	width: min(780px, 100vw);
	max-width: none;
	max-height: none;
	height: fit-content;
	margin: auto;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--isc-ink);
	overflow: visible;
}

.isc-offer::backdrop {
	background: rgb(22 19 26 / .55);
	animation: isc-fade .3s ease-out both;
}

.isc-offer.is-closing::backdrop {
	animation: isc-fade .26s ease-in reverse both;
}

/* The panel is a shouting comic bubble: a spiky paper shape behind the content (::before), its tail (::after)
   and the ink outline drawn by the drop shadows around both. */
.isc-offer__panel {
	--isc-stroke: 2.5px;
	position: relative;
	display: grid;
	gap: 1.25rem;
	margin: 14px 14px 36px;
	padding: 1.75rem 1.5rem 1.5rem;
	color: var(--isc-ink);
	filter:
		drop-shadow(var(--isc-stroke) 0 0 var(--isc-ink))
		drop-shadow(calc(-1 * var(--isc-stroke)) 0 0 var(--isc-ink))
		drop-shadow(0 var(--isc-stroke) 0 var(--isc-ink))
		drop-shadow(0 calc(-1 * var(--isc-stroke)) 0 var(--isc-ink))
		drop-shadow(9px 11px 10px rgb(0 0 0 / .35));
	animation: isc-pop-panel .35s var(--isc-ease) both;
}

.isc-offer__panel::before,
.isc-offer__panel::after {
	content: "";
	position: absolute;
	z-index: -1;
	background: var(--isc-paper);
}

.isc-offer__panel::before {
	inset: -12px;
	clip-path: polygon(0 0, 4.167% 11px, 8.333% 0, 12.500% 11px, 16.667% 0, 20.833% 11px, 25.000% 0, 29.167% 11px, 33.333% 0, 37.500% 11px, 41.667% 0, 45.833% 11px, 50.000% 0, 54.167% 11px, 58.333% 0, 62.500% 11px, 66.667% 0, 70.833% 11px, 75.000% 0, 79.167% 11px, 83.333% 0, 87.500% 11px, 91.667% 0, 95.833% 11px, 100% 0, calc(100% - 11px) 5.556%, 100% 11.111%, calc(100% - 11px) 16.667%, 100% 22.222%, calc(100% - 11px) 27.778%, 100% 33.333%, calc(100% - 11px) 38.889%, 100% 44.444%, calc(100% - 11px) 50.000%, 100% 55.556%, calc(100% - 11px) 61.111%, 100% 66.667%, calc(100% - 11px) 72.222%, 100% 77.778%, calc(100% - 11px) 83.333%, 100% 88.889%, calc(100% - 11px) 94.444%, 100% 100%, 95.833% calc(100% - 11px), 91.667% 100%, 87.500% calc(100% - 11px), 83.333% 100%, 79.167% calc(100% - 11px), 75.000% 100%, 70.833% calc(100% - 11px), 66.667% 100%, 62.500% calc(100% - 11px), 58.333% 100%, 54.167% calc(100% - 11px), 50.000% 100%, 45.833% calc(100% - 11px), 41.667% 100%, 37.500% calc(100% - 11px), 33.333% 100%, 29.167% calc(100% - 11px), 25.000% 100%, 20.833% calc(100% - 11px), 16.667% 100%, 12.500% calc(100% - 11px), 8.333% 100%, 4.167% calc(100% - 11px), 0 100%, 11px 94.444%, 0 88.889%, 11px 83.333%, 0 77.778%, 11px 72.222%, 0 66.667%, 11px 61.111%, 0 55.556%, 11px 50.000%, 0 44.444%, 11px 38.889%, 0 33.333%, 11px 27.778%, 0 22.222%, 11px 16.667%, 0 11.111%, 11px 5.556%);
}

.isc-offer__panel::after {
	bottom: -34px;
	left: 14%;
	width: 44px;
	height: 38px;
	clip-path: polygon(0 0, 100% 0, 58% 38%, 80% 38%, 6% 100%, 30% 50%, 8% 50%);
}

.isc-offer.is-closing .isc-offer__panel {
	animation: isc-fade .2s ease-in reverse both;
}

@media (min-width: 761px) {
	.isc-offer__panel::before {
		inset: -14px;
		clip-path: polygon(0 0, 2.500% 13px, 5.000% 0, 7.500% 13px, 10.000% 0, 12.500% 13px, 15.000% 0, 17.500% 13px, 20.000% 0, 22.500% 13px, 25.000% 0, 27.500% 13px, 30.000% 0, 32.500% 13px, 35.000% 0, 37.500% 13px, 40.000% 0, 42.500% 13px, 45.000% 0, 47.500% 13px, 50.000% 0, 52.500% 13px, 55.000% 0, 57.500% 13px, 60.000% 0, 62.500% 13px, 65.000% 0, 67.500% 13px, 70.000% 0, 72.500% 13px, 75.000% 0, 77.500% 13px, 80.000% 0, 82.500% 13px, 85.000% 0, 87.500% 13px, 90.000% 0, 92.500% 13px, 95.000% 0, 97.500% 13px, 100% 0, calc(100% - 13px) 5.556%, 100% 11.111%, calc(100% - 13px) 16.667%, 100% 22.222%, calc(100% - 13px) 27.778%, 100% 33.333%, calc(100% - 13px) 38.889%, 100% 44.444%, calc(100% - 13px) 50.000%, 100% 55.556%, calc(100% - 13px) 61.111%, 100% 66.667%, calc(100% - 13px) 72.222%, 100% 77.778%, calc(100% - 13px) 83.333%, 100% 88.889%, calc(100% - 13px) 94.444%, 100% 100%, 97.500% calc(100% - 13px), 95.000% 100%, 92.500% calc(100% - 13px), 90.000% 100%, 87.500% calc(100% - 13px), 85.000% 100%, 82.500% calc(100% - 13px), 80.000% 100%, 77.500% calc(100% - 13px), 75.000% 100%, 72.500% calc(100% - 13px), 70.000% 100%, 67.500% calc(100% - 13px), 65.000% 100%, 62.500% calc(100% - 13px), 60.000% 100%, 57.500% calc(100% - 13px), 55.000% 100%, 52.500% calc(100% - 13px), 50.000% 100%, 47.500% calc(100% - 13px), 45.000% 100%, 42.500% calc(100% - 13px), 40.000% 100%, 37.500% calc(100% - 13px), 35.000% 100%, 32.500% calc(100% - 13px), 30.000% 100%, 27.500% calc(100% - 13px), 25.000% 100%, 22.500% calc(100% - 13px), 20.000% 100%, 17.500% calc(100% - 13px), 15.000% 100%, 12.500% calc(100% - 13px), 10.000% 100%, 7.500% calc(100% - 13px), 5.000% 100%, 2.500% calc(100% - 13px), 0 100%, 13px 94.444%, 0 88.889%, 13px 83.333%, 0 77.778%, 13px 72.222%, 0 66.667%, 13px 61.111%, 0 55.556%, 13px 50.000%, 0 44.444%, 13px 38.889%, 0 33.333%, 13px 27.778%, 0 22.222%, 13px 16.667%, 0 11.111%, 13px 5.556%);
	}
}

.isc-offer__close {
	position: absolute;
	top: .35rem;
	right: .35rem;
	z-index: 1;
	background: var(--isc-paper-light);
}

.isc-offer__photo {
	display: block;
	width: min(100%, 220px);
	margin: 0 auto;
	border-radius: var(--isc-radius-sm);
	overflow: hidden;
	box-shadow: 6px 8px 18px var(--isc-shade);
}

.isc-offer__photo img {
	display: block;
	width: 100%;
	height: auto;
}

.isc-offer__body {
	display: flex;
	flex-direction: column;
	gap: .9rem;
}

.isc-offer__kicker {
	align-self: flex-start;
}

.isc-offer__title {
	display: flex;
	flex-direction: column;
	gap: .35rem;
	margin: 0;
	font-family: var(--isc-display);
	font-size: clamp(1.75rem, 5vw, 2.5rem);
	font-weight: 400;
	line-height: 1.05;
	text-transform: uppercase;
}

.isc-offer__line {
	font-family: var(--isc-body);
	font-size: .875rem;
	font-weight: 700;
	letter-spacing: .08em;
	color: var(--isc-muted);
}

.isc-offer__price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: .5rem;
	margin: 0;
	font-family: var(--isc-display);
	font-size: 1.75rem;
}

.isc-offer__price small {
	font-family: var(--isc-body);
	font-size: .9375rem;
	color: var(--isc-muted);
}

.isc-offer__price s {
	font-size: 1.125rem;
	color: var(--isc-muted);
}

.isc-offer__saving {
	padding: .15rem .6rem;
	border-radius: 999px;
	background: var(--isc-accent);
	color: var(--isc-paper-light);
	font: 700 .875rem var(--isc-body);
}

.isc-offer__text {
	margin: 0;
	color: var(--isc-muted);
}

.isc-offer__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem 1.5rem;
	margin-top: .25rem;
}

@media (min-width: 761px) {
	.isc-offer__panel {
		grid-template-columns: 280px minmax(0, 1fr);
		gap: 2rem;
		margin: 22px 22px 44px;
		padding: 2.25rem 2.25rem 2rem;
		transform: rotate(-.8deg);
	}

	.isc-offer__panel > * {
		transform: rotate(.8deg);
	}

	.isc-offer__photo {
		width: 100%;
		margin: 0;
	}
}

/* Tracking on the order in Mi cuenta */

.isc-tracking {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: .75rem;
	margin: 2rem 0;
	padding: 1.5rem 1.75rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius);
	background: var(--isc-paper-light);
}

.isc-tracking__title {
	margin: 0;
	font-family: var(--isc-display);
	font-size: 1.5rem;
	font-weight: 400;
}

.isc-tracking p {
	margin: 0;
}

.isc-toast {
	position: fixed;
	left: 50%;
	bottom: 1.5rem;
	z-index: 100000;
	max-width: min(560px, calc(100vw - 2rem));
	padding: .85rem 1.4rem;
	border-radius: 999px;
	background: var(--isc-ink);
	color: var(--isc-paper-light);
	font-weight: 700;
	opacity: 0;
	transform: translate(-50%, 20px);
	pointer-events: none;
	transition: opacity .25s, transform .3s var(--isc-ease);
}

.isc-toast.is-visible {
	opacity: 1;
	transform: translate(-50%, 0);
}

/* Reveal on scroll */

.isc-reveal {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity .7s var(--isc-ease), transform .7s var(--isc-ease);
	transition-delay: calc(var(--isc-i, 0) % 4 * 70ms);
}

.isc-reveal.is-visible {
	opacity: 1;
	transform: none;
}

/* Keyframes */

@keyframes isc-rise {
	from { opacity: 0; transform: translateY(24px); }
	to { opacity: 1; transform: none; }
}

@keyframes isc-fade {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes isc-brush {
	from { clip-path: inset(0 100% 0 0); }
	to { clip-path: inset(0); }
}

@keyframes isc-cover-in {
	from { opacity: 0; transform: translateY(50px) rotate(4deg); }
}

@keyframes isc-hand-in {
	from { opacity: 0; transform: translateY(90px); }
}

@keyframes isc-sun-in {
	from { opacity: 0; transform: scale(.6); }
}

@keyframes isc-pop {
	0% { opacity: 0; transform: scale(.75) rotate(-4deg); }
	65% { opacity: 1; transform: scale(1.04) rotate(1deg); }
	100% { opacity: 1; transform: none; }
}

@keyframes isc-pop-small {
	0% { opacity: 0; transform: scale(.4); }
	70% { opacity: 1; transform: scale(1.15); }
	100% { opacity: 1; transform: none; }
}

@keyframes isc-pop-panel {
	from { opacity: 0; transform: translateY(24px) scale(.97); }
	to { opacity: 1; transform: none; }
}

@keyframes isc-marquee {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

@keyframes isc-bubble {
	from { opacity: 0; transform: scale(.92) rotate(-1.5deg); }
	to { opacity: 1; transform: none; }
}

@keyframes isc-fill {
	from { width: 0; }
	to { width: 100%; }
}

@keyframes isc-deal {
	from { opacity: 0; transform: translate(280px, -50px) rotate(24deg); }
}

@keyframes isc-bump {
	40% { transform: scale(1.3); }
}

@keyframes isc-slide-in {
	from { transform: translateX(100%); }
	to { transform: none; }
}

@keyframes isc-slide-out {
	to { transform: translateX(100%); }
}

/* Responsive */

@media (max-width: 1100px) {
	.isc-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.isc-features__stage {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2rem 1.5rem;
		aspect-ratio: auto;
	}

	.isc-features__figure {
		position: relative;
		inset: auto;
		grid-column: 1 / -1;
		justify-self: center;
		width: min(100%, 440px);
		height: auto;
		aspect-ratio: 4 / 5;
		margin-bottom: 1rem;
	}

	.isc-features__lines {
		display: none;
	}

	.isc-features__list {
		display: contents;
	}

	.isc-feat {
		position: static;
		width: auto;
		text-align: left;
	}

	.isc-feat--left .isc-feat__title {
		flex-direction: row;
	}

	.isc-cat-hero__cards {
		display: none;
	}

	.isc-product__layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.isc-gallery {
		position: static;
	}
}

@media (max-width: 900px) {
	.isc-hero {
		padding-top: 1rem;
	}

	.isc-hero__stage {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.5rem;
	}

	.isc-hero__art {
		grid-area: 1 / 1;
		height: min(120vw, 500px);
	}

	.isc-hero__panel--text {
		grid-area: 2 / 1;
	}

	.isc-hero__box {
		width: auto;
		min-width: 210px;
	}

	.isc-cover {
		left: 44%;
		height: 84%;
	}

	.isc-cover--back {
		translate: calc(-50% + 90px - var(--isc-i) * 40px) calc(-50% - 6px);
	}

	.isc-hand__card {
		width: 58%;
	}

	.isc-cover__obi {
		padding: .8rem 1rem .9rem;
	}

	.isc-cover__obi-text {
		font-size: .8125rem;
	}

	.isc-cover__price {
		font-size: 1.375rem;
	}

	.isc-hero--panels .isc-hero__art {
		grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
		gap: 8px;
	}

	.isc-page__sfx {
		font-size: clamp(2.5rem, 11vw, 4rem);
		white-space: nowrap;
	}

	.isc-hero--panels .isc-hero__box {
		left: .6rem;
		bottom: .6rem;
		min-width: 0;
		max-width: calc(60% - 1.2rem);
		padding: .7rem .9rem .8rem;
	}

	.isc-hero--panels .isc-hero__box-row {
		flex-wrap: wrap;
		gap: 0 .5rem;
	}

	.isc-sun__photo {
		width: 62%;
	}

	.isc-hero--sun .isc-hero__box {
		right: 0;
		bottom: 4%;
	}

	.isc-angles__stage {
		gap: .5rem;
	}

	.isc-angles__panel {
		border-radius: var(--isc-radius-sm);
	}

	.isc-angles__panel figcaption {
		top: .5rem;
		left: .5rem;
		padding: .3rem .6rem;
		font-size: .75rem;
	}
}

@media (max-width: 760px) {
	.isc-announce {
		min-height: 36px;
		font-size: .8125rem;
		font-weight: 700;
	}

	.isc-announce__items li {
		font-size: .75rem;
	}

	.isc-announce__links {
		display: none;
	}

	.isc-brand img.isc-brand__logo {
		height: 36px;
	}

	.isc-brand__title {
		font-size: 1.25rem;
	}

	.isc-brand__subtitle {
		display: none;
	}

	.isc-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2rem .75rem;
	}

	.isc-card__name {
		font-size: .9375rem;
	}

	.isc-card__buy {
		column-gap: .5rem;
	}

	.isc-card__price b {
		font-size: 1.0625rem;
	}

	.isc-card__add {
		width: 40px;
		height: 40px;
	}

	.isc-card__new {
		--isc-ribbon-at: 1.45rem;
		padding: .25rem 0;
		font-size: .6875rem;
	}

	.isc-card__media {
		box-shadow: 5px 5px 6px -1px var(--isc-shade);
	}

	.isc-marquee__item {
		font-size: 1.125rem;
	}

	.isc-chips {
		flex-wrap: nowrap;
		overflow-x: auto;
		scrollbar-width: none;
		margin-inline: calc(var(--isc-gutter) * -1);
		padding-inline: var(--isc-gutter);
	}

	.isc-chip {
		flex-shrink: 0;
	}

	.isc-features__stage {
		gap: 1.5rem 1rem;
	}

	.isc-feat__title {
		font-size: 1.0625rem;
	}

	.isc-feat__text {
		font-size: .875rem;
	}

	.isc-cat-hero__inner {
		min-height: 0;
		padding-block: 1.5rem 2.25rem;
	}

	.isc-cat-hero:has(+ .isc-cut) .isc-cat-hero__inner {
		padding-bottom: 4rem;
	}

	.isc-cat-hero__kicker {
		font-size: .875rem;
	}

	/* The panel spans the hero's width, under whichever menu opened it. */
	.isc-tags__group {
		position: static;
	}

	.isc-tags__panel,
	.isc-tags__panel--wide {
		right: 0;
		width: auto;
		min-width: 0;
		max-width: none;
	}

	.isc-cut + .isc-catalog {
		padding-top: 4rem;
	}

	.isc-catalog__tools {
		width: 100%;
		justify-content: space-between;
		margin-left: 0;
	}

	.isc-catalog .woocommerce-ordering select {
		min-width: 0;
	}

	.isc-gallery {
		grid-template-columns: minmax(0, 1fr);
		margin-inline: calc(var(--isc-gutter) * -1);
	}

	.isc-gallery__main {
		grid-row: 1;
		border-radius: 0;
	}

	.isc-gallery__thumbs {
		flex-direction: row;
		height: auto;
		min-height: 0;
		overflow: auto hidden;
		scrollbar-gutter: auto;
		scrollbar-width: none;
		padding-inline: var(--isc-gutter);
	}

	.isc-gallery__thumb {
		width: 62px;
	}

	.isc-options {
		grid-template-columns: minmax(0, 1fr);
	}

	.isc-buy__form .single_add_to_cart_button {
		flex-basis: 160px;
		gap: .5rem;
		padding-inline: 1.1rem;
		font-size: .9375rem;
	}

	.isc-stepper button {
		width: 44px;
	}

	.isc-buy__form .quantity input.qty {
		width: 36px;
	}

	.isc-option {
		flex-direction: row;
		align-items: center;
		min-height: 60px;
	}

	.isc-legal-nav {
		position: static;
	}

	.isc-drawer__head,
	.isc-drawer__ship,
	.isc-drawer__foot {
		padding-inline: 1rem;
	}

	.isc-drawer__items {
		padding-inline: 1rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
	}

	.isc-features__dot {
		animation: none !important;
	}

	.isc-rays {
		animation: none !important;
	}

	.isc-marquee__track {
		animation: none !important;
	}
}

/* Review form (the link in the review request email) and review photos */

.isc-review-form__product {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: .75rem;
	font-size: 1.125rem;
}

.isc-review-form__product img {
	width: 64px;
	height: auto;
	border-radius: var(--isc-radius-sm);
}

.isc-review-form__product p,
.isc-review-form__intro {
	margin: 0;
}

.isc-review-form__intro {
	margin-bottom: 1.5rem;
	color: var(--isc-muted);
}

.isc-rate {
	margin: 0;
	padding: 0;
	border: 0;
}

/* Inputs come 5 to 1 and show reversed, so "~" lights the stars before the checked or hovered one. */
.isc-rate__stars {
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
	gap: .25rem;
}

.isc-rate__input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.isc-rate__star {
	display: grid;
	cursor: pointer;
	fill: rgb(var(--isc-ink-rgb) / .16);
	transition: fill .15s, transform .15s var(--isc-ease);
}

.isc-rate__star:hover,
.isc-rate__star:hover ~ .isc-rate__star,
.isc-rate__input:checked ~ .isc-rate__star {
	fill: var(--isc-accent);
}

.isc-rate__star:hover {
	transform: scale(1.12);
}

.isc-rate__input:focus-visible + .isc-rate__star {
	border-radius: 6px;
	outline: 2px solid var(--isc-accent);
	outline-offset: 2px;
}

.isc-review-photos {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: .75rem 0 0;
	padding: 0;
	list-style: none;
}

.isc-review-photos a {
	display: block;
	overflow: hidden;
	border-radius: var(--isc-radius-sm);
}

.isc-review-photos img {
	display: block;
	width: 72px;
	height: 72px;
	object-fit: cover;
	transition: transform .3s var(--isc-ease);
}

.isc-review-photos a:hover img {
	transform: scale(1.06);
}

/* Withdrawal form */

.isc-review-form__form,
.isc-withdrawal__form {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
	padding: 1.75rem;
	border: var(--isc-line);
	border-radius: var(--isc-radius);
	background: var(--isc-paper-light);
}

.isc-review-form__form .isc-btn,
.isc-withdrawal__form .isc-btn {
	align-self: flex-start;
}

.isc-review-form__notice,
.isc-withdrawal__notice {
	margin: 0 0 1.5rem;
	padding: 1rem 1.25rem;
	border-radius: var(--isc-radius-sm);
	background: var(--isc-highlight);
	font-weight: 700;
}

.isc-review-form__notice--error,
.isc-withdrawal__notice--incompleto,
.isc-withdrawal__notice--espera,
.isc-withdrawal__notice--error {
	border: 1.5px solid var(--isc-accent);
	background: var(--isc-paper-light);
}

.isc-check {
	display: flex;
	align-items: flex-start;
	gap: .75rem;
	font-weight: 500;
	line-height: 1.5;
	cursor: pointer;
}

.isc-check input {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	margin: 1px 0 0;
	accent-color: var(--isc-ink);
}
