/* ISHAWS - scheda dell'iscrizione e pagina Iscrizioni.
   Colori e caratteri del sito: blu notte #1C244B, blu #467FF7,
   titoli #07346F, testo #324A6D, Poppins. */

.ish-sheet,
.ish-sheet-list-wrap,
.ish-list-hero,
.ish-list-section,
.ish-list-guide {
	--s-ok: #1e6b3a;
	--s-field: #c8d5dc;
	--s-navy: #1c244b;
	--s-blue: #467ff7;
	--s-blue-txt: #2f63d6;
	--s-title: #07346f;
	--s-text: #324a6d;
	--s-muted: #5b6b82;
	--s-line: #e3e9ef;
	--s-soft: #f3f5f8;
	--s-tint: #f9fafd;
	--s-outline: #0b3c6d;
	box-sizing: border-box;
	font-family: Poppins, sans-serif;
	color: var(--s-text);
}

.ish-sheet *,
.ish-sheet-list-wrap *,
.ish-list-hero *,
.ish-list-section *,
.ish-list-guide * {
	box-sizing: border-box;
}

.ish-sheet {
	max-width: 1180px;
	margin: 0 auto;
	padding: 20px 16px 64px;
}

/* Il tema (Hello Elementor) stringe il contenuto a 600-800 px fra
   768 e 1199 px: la scheda usa tutta la larghezza e si impagina da sola. */
html body.ish-sheet-page .site-main,
html body.ish-sheet-page main#content,
html body.ish-sheet-page .page-content,
html body.ish-list-page .site-main,
html body.ish-list-page main#content,
html body.ish-list-page .page-content {
	width: 100%;
	max-width: 100%;
	padding-right: 0;
	padding-left: 0;
}

.ish-sheet-icon {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ish-sheet-eyebrow {
	display: block;
	margin-bottom: 6px;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 5px;
	text-transform: uppercase;
	color: var(--s-blue-txt);
}

.ish-sheet-h2 {
	margin: 0 0 22px;
	font-family: Poppins, sans-serif;
	font-size: clamp(22px, 3vw, 26px);
	font-weight: 700;
	line-height: 1.3;
	color: var(--s-title);
}

/* Briciole */
.ish-sheet-crumbs {
	margin-bottom: 24px;
	font-size: 13px;
	color: var(--s-muted);
}

.ish-sheet-crumbs a {
	color: var(--s-outline);
}

/* Apertura: prima colonna, accanto al riquadro dell'iscrizione */
.ish-sheet-hero {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.ish-sheet-hero-text {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.ish-sheet-title {
	margin: 0;
	font-family: Poppins, sans-serif;
	font-size: clamp(32px, 5vw, 46px);
	font-weight: 800;
	line-height: 1.1;
	color: var(--s-title);
}

.ish-sheet-subtitle {
	margin: 0;
	font-size: 18px;
	font-weight: 500;
	color: var(--s-navy);
}

.ish-sheet-intro {
	margin: 0;
	max-width: 680px;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.65;
}

.ish-sheet-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 6px 0 0;
	padding: 0;
	list-style: none;
}

.ish-sheet-chips li {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 8px 14px;
	border: 1px solid var(--s-line);
	border-radius: 999px;
	background: #fff;
	font-size: 13px;
	color: var(--s-navy);
}

.ish-sheet-chips .ish-sheet-icon {
	width: 16px;
	height: 16px;
	color: var(--s-blue-txt);
}

.ish-sheet-media img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 380px;
	object-fit: cover;
	border-radius: 16px;
}

/* Corpo: contenuti a sinistra, riquadro dell'iscrizione a destra,
   allineato all'apertura e fermo mentre si scorre. */
.ish-sheet-body {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 48px;
	align-items: start;
}

.ish-sheet-main {
	display: flex;
	flex-direction: column;
	gap: 56px;
	min-width: 0;
}

.ish-sheet-tiles {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr));
	gap: 16px;
}

.ish-sheet-tile {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 22px;
	border: 1px solid var(--s-line);
	border-radius: 12px;
	background: #fff;
}

.ish-sheet-tile-icon {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 10px;
	background: #eaf0fe;
	color: var(--s-blue-txt);
}

.ish-sheet-tile-icon .ish-sheet-icon {
	width: 22px;
	height: 22px;
}

.ish-sheet-tile h3 {
	margin: 0 0 4px;
	font-family: Poppins, sans-serif;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--s-navy);
}

.ish-sheet-tile p {
	margin: 0;
	font-size: 13px;
	line-height: 1.55;
}

.ish-sheet-notice {
	margin: 16px 0 0;
	padding: 14px 16px;
	border: 1px solid #d6e2fb;
	border-radius: 10px;
	background: var(--s-tint);
	font-size: 14px;
	line-height: 1.55;
	color: var(--s-navy);
}

.ish-sheet-notice strong {
	font-weight: 600;
}

/* Come funziona */
.ish-sheet-steps {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr));
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: ish-step;
}

.ish-sheet-steps li {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
	counter-increment: ish-step;
}

.ish-sheet-steps li::before {
	content: counter(ish-step);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	margin-bottom: 4px;
	border-radius: 50%;
	background: var(--s-navy);
	font-size: 14px;
	font-weight: 600;
	color: #fff;
}

.ish-sheet-steps strong {
	font-size: 15px;
	font-weight: 600;
	color: var(--s-navy);
}

.ish-sheet-steps span {
	font-size: 13px;
	line-height: 1.5;
}

/* Riquadri */
.ish-sheet-boxes {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
	gap: 24px;
}

.ish-sheet-box {
	padding: 24px;
	border: 1px solid var(--s-line);
	border-radius: 12px;
	background: #fff;
}

.ish-sheet-box h2 {
	margin: 0 0 16px;
	font-family: Poppins, sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: var(--s-title);
}

.ish-sheet-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ish-sheet-list li {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
	color: var(--s-navy);
}

.ish-sheet-list .ish-sheet-icon {
	margin-top: 2px;
	color: var(--s-outline);
}

/* Domande */
.ish-sheet-faq {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.ish-sheet-faq details {
	padding: 16px 20px;
	border: 1px solid var(--s-line);
	border-radius: 10px;
	background: #fff;
}

.ish-sheet-faq summary {
	font-size: 15px;
	font-weight: 600;
	color: var(--s-navy);
	cursor: pointer;
}

.ish-sheet-faq p {
	margin: 10px 0 0;
	font-size: 14px;
	line-height: 1.6;
}

/* Riquadro dell'iscrizione */
.ish-sheet-aside {
	position: sticky;
	top: 130px;
	align-self: start;
}

body.admin-bar .ish-sheet-aside {
	top: 162px;
}

.ish-sheet-card {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 28px;
	border: 1px solid var(--s-line);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 12px 32px rgba(28, 36, 75, .08);
}

.ish-sheet-price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 8px;
	margin: 0;
}

.ish-sheet-price strong {
	font-size: 38px;
	font-weight: 800;
	line-height: 1;
	color: var(--s-navy);
}

.ish-sheet-price span {
	font-size: 14px;
	color: var(--s-muted);
}

.ish-sheet-bullets {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 0;
	padding: 16px 0 0;
	border-top: 1px solid var(--s-line);
	list-style: none;
}

.ish-sheet-bullets li {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
	color: var(--s-navy);
}

.ish-sheet-bullets .ish-sheet-icon {
	width: 18px;
	height: 18px;
	padding: 3px;
	border-radius: 50%;
	background: var(--s-blue-txt);
	stroke: #fff;
	stroke-width: 3;
}

body .ish-sheet a.ish-sheet-cta,
body .ish-sheet a.ish-sheet-cta:visited,
body .ish-sheet-list-wrap a.ish-sheet-cta,
body .ish-sheet-list-wrap a.ish-sheet-cta:visited {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 54px;
	padding: 0 20px;
	border-radius: 6px;
	background: var(--s-navy);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1.6px;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	color: #fff;
}

body .ish-sheet a.ish-sheet-cta:hover,
body .ish-sheet a.ish-sheet-cta:focus,
body .ish-sheet-list-wrap a.ish-sheet-cta:hover,
body .ish-sheet-list-wrap a.ish-sheet-cta:focus {
	background: var(--s-blue-txt);
	color: #fff;
}

.ish-sheet-login,
.ish-sheet-closed {
	margin: 0;
	font-size: 13px;
	text-align: center;
	color: var(--s-muted);
}

/* Altre iscrizioni */
.ish-sheet-others {
	margin-top: 64px;
}

.ish-sheet-other-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
}

body .ish-sheet a.ish-sheet-other {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 22px;
	border: 1px solid var(--s-line);
	border-radius: 12px;
	background: #fff;
	text-decoration: none;
	color: var(--s-text);
}

a.ish-sheet-other:hover {
	border-color: var(--s-blue);
}

.ish-sheet-other strong {
	font-size: 16px;
	color: var(--s-navy);
}

.ish-sheet-other-price {
	font-size: 14px;
	font-weight: 500;
	color: var(--s-blue-txt);
}

.ish-sheet-other-more {
	margin-top: 4px;
	font-size: 13px;
	text-decoration: underline;
	color: var(--s-outline);
}

.ish-sheet-description {
	font-size: 15px;
	line-height: 1.65;
}

/* Barra in basso: solo telefono */
.ish-sheet-bar {
	display: none;
}

/* ---------------------------------------------- Pagina Iscrizioni */

.ish-sheet-list-wrap {
	margin: 0 auto;
}

.ish-sheet-cards {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr));
	gap: 20px;
}

.ish-sheet-card-item {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 24px;
	border: 1px solid var(--s-line);
	border-radius: 14px;
	background: #fff;
}

.ish-sheet-card-media img {
	display: block;
	width: 100%;
	height: 130px;
	object-fit: cover;
	border-radius: 10px;
}

.ish-sheet-card-item h3 {
	margin: 0;
	font-family: Poppins, sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
}

.ish-sheet-card-item h3 a {
	text-decoration: none;
	color: var(--s-title);
}

.ish-sheet-card-sub {
	margin: 0;
	min-height: 40px;
	font-size: 13px;
	line-height: 1.5;
}

.ish-sheet-card-item .ish-sheet-price {
	padding-top: 12px;
	border-top: 1px solid var(--s-line);
}

.ish-sheet-card-item .ish-sheet-price strong {
	font-size: 26px;
}

.ish-sheet-card-item .ish-sheet-bullets {
	flex-grow: 1;
	padding: 0;
	border: 0;
}

.ish-sheet-card-item a.ish-sheet-cta {
	min-height: 48px;
	font-size: 12px;
	letter-spacing: 1.2px;
}

.ish-sheet-more {
	font-size: 13px;
	text-align: center;
	color: var(--s-outline);
}

.ish-sheet-compare {
	margin-top: 48px;
}

.ish-sheet-table-wrap {
	overflow-x: auto;
	border: 1px solid var(--s-line);
	border-radius: 12px;
	background: #fff;
}

.ish-sheet-table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	font-size: 14px;
}

.ish-sheet-table th,
.ish-sheet-table td {
	padding: 14px 16px;
	border: 0;
	border-top: 1px solid var(--s-line);
	text-align: left;
	vertical-align: top;
	color: var(--s-navy);
	background: none;
}

.ish-sheet-table thead th,
.ish-sheet-table thead td {
	border-top: 0;
	font-size: 13px;
	font-weight: 600;
}

.ish-sheet-table tbody th {
	font-size: 13px;
	font-weight: 500;
	color: var(--s-muted);
	white-space: nowrap;
}

/* La tabella su computer, le schede su telefono. */
.ish-sheet-compare-stack {
	display: none;
}

.ish-sheet-compare-card {
	padding: 16px;
	border: 1px solid var(--s-line);
	border-radius: 12px;
	background: #fff;
}

.ish-sheet-compare-card h3 {
	margin: 0 0 6px;
	font-family: Poppins, sans-serif;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--s-title);
}

.ish-sheet-compare-card dl {
	margin: 0;
}

.ish-sheet-compare-card dl > div {
	display: flex;
	gap: 12px;
	justify-content: space-between;
	padding: 8px 0;
	border-top: 1px solid var(--s-line);
	font-size: 13px;
	line-height: 1.45;
}

.ish-sheet-compare-card dt {
	flex-shrink: 0;
	font-weight: 400;
	color: var(--s-muted);
}

.ish-sheet-compare-card dd {
	margin: 0;
	text-align: right;
	color: var(--s-navy);
}

/* Scheda consigliata dalla guida */
.ish-sheet-reco {
	align-self: flex-start;
	padding: 5px 10px;
	border-radius: 999px;
	background: var(--s-blue-txt);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #fff;
}

.ish-sheet-reco[hidden] {
	display: none;
}

.ish-sheet-card-item {
	transition: opacity .2s, box-shadow .2s, border-color .2s;
}

.ish-sheet-cards.has-reco .ish-sheet-card-item {
	opacity: .72;
}

.ish-sheet-cards.has-reco .ish-sheet-card-item.is-reco {
	padding: 23px;
	border: 2px solid var(--s-blue);
	box-shadow: 0 16px 36px rgba(47, 99, 214, .18);
	opacity: 1;
}

/* ---------------------------------------- Parti della pagina Iscrizioni */

/* Il titolo è nell'apertura: niente secondo titolo del tema. */
body.ish-list-page .page-header {
	display: none;
}

body.ish-list-page:not(.elementor-page) .page-content {
	padding-right: 16px;
	padding-left: 16px;
}

.ish-list-hero,
.ish-list-section,
.ish-list-guide,
.page-content > .ish-sheet-list-wrap {
	max-width: 1180px;
	margin: 0 auto 64px;
	font-family: Poppins, sans-serif;
	color: var(--s-text);
}

.ish-list-section .ish-sheet-h2,
.ish-list-guide .ish-sheet-h2 {
	margin-bottom: 22px;
}

/* Apertura */
.ish-list-hero {
	position: relative;
	display: flex;
	gap: 48px;
	align-items: center;
	justify-content: space-between;
	margin-top: 24px;
	padding: 56px;
	overflow: hidden;
	border-radius: 22px;
	background: var(--s-outline);
}

.ish-list-hero::after {
	content: "";
	position: absolute;
	right: -60px;
	bottom: -80px;
	width: 280px;
	height: 280px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .06);
	pointer-events: none;
}

.ish-list-hero-text {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 16px;
	max-width: 640px;
}

.ish-list-hero-eyebrow {
	font-size: 12px;
	letter-spacing: 5px;
	text-transform: uppercase;
	color: #c9d6f5;
}

.ish-list-hero h1 {
	margin: 0;
	font-family: Poppins, sans-serif;
	font-size: clamp(32px, 4.4vw, 52px);
	font-weight: 800;
	line-height: 1.08;
	color: #fff;
}

.ish-list-hero p {
	margin: 0;
	font-size: 17px;
	font-weight: 300;
	line-height: 1.6;
	color: #e6ecf8;
}

.ish-list-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 6px;
}

body .ish-list-hero a.ish-list-btn,
body .ish-list-hero a.ish-list-btn:visited {
	display: inline-flex;
	align-items: center;
	min-height: 50px;
	padding: 0 24px;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 1.4px;
	text-decoration: none;
	text-transform: uppercase;
}

body .ish-list-hero a.ish-list-btn--light,
body .ish-list-hero a.ish-list-btn--light:visited {
	background: #fff;
	color: var(--s-navy);
}

body .ish-list-hero a.ish-list-btn--light:hover,
body .ish-list-hero a.ish-list-btn--light:focus {
	background: #e6ecf8;
	color: var(--s-navy);
}

body .ish-list-hero a.ish-list-btn--ghost,
body .ish-list-hero a.ish-list-btn--ghost:visited {
	padding: 0 20px;
	border: 1px solid rgba(255, 255, 255, .5);
	font-weight: 400;
	color: #fff;
}

body .ish-list-hero a.ish-list-btn--ghost:hover,
body .ish-list-hero a.ish-list-btn--ghost:focus {
	border-color: #fff;
	background: rgba(255, 255, 255, .08);
	color: #fff;
}

.ish-list-hero-facts {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	gap: 20px;
	margin: 0;
	padding-left: 40px;
	border-left: 1px solid rgba(255, 255, 255, .2);
}

.ish-list-hero-facts > div {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.ish-list-hero-facts dt {
	font-size: 30px;
	font-weight: 800;
	line-height: 1.2;
	color: #fff;
}

.ish-list-hero-facts dd {
	margin: 0;
	font-size: 12px;
	color: #c9d6f5;
}

/* Perché iscriversi */
.ish-list-why {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.ish-list-why-tile {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 22px;
	border: 1px solid var(--s-line);
	border-radius: 14px;
	background: #fff;
}

.ish-list-why-tile h3 {
	margin: 0;
	font-family: Poppins, sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--s-navy);
}

.ish-list-why-tile p {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
}

/* Guida */
.ish-list-guide {
	display: grid;
	grid-template-columns: 340px minmax(0, 1fr);
	gap: 48px;
	padding: 36px 40px;
	border: 1px solid var(--s-line);
	border-radius: 18px;
	background: #fff;
	scroll-margin-top: 140px;
}

.ish-list-guide-intro p {
	margin: 0;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.6;
}

.ish-list-guide-intro .ish-sheet-h2 {
	margin-bottom: 12px;
}

body .ish-list-guide button.ish-guide-reset {
	margin-top: 14px;
	padding: 0;
	border: 0;
	background: none;
	font-family: Poppins, sans-serif;
	font-size: 13px;
	color: var(--s-outline);
	text-decoration: underline;
	cursor: pointer;
}

.ish-list-guide-body {
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.ish-guide-q {
	margin: 0;
	padding: 0;
	border: 0;
	min-width: 0;
}

.ish-guide-q[hidden],
.ish-guide-result[hidden] {
	display: none;
}

.ish-guide-q legend {
	margin-bottom: 10px;
	padding: 0;
	font-size: 15px;
	font-weight: 600;
	color: var(--s-navy);
}

.ish-guide-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

body .ish-list-guide button.ish-guide-pill {
	padding: 12px 18px;
	border: 2px solid var(--s-field);
	border-radius: 999px;
	background: #fff;
	font-family: Poppins, sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
	color: var(--s-navy);
	cursor: pointer;
	transition: border-color .15s, background .15s;
}

body .ish-list-guide button.ish-guide-pill:hover,
body .ish-list-guide button.ish-guide-pill:focus-visible {
	border-color: var(--s-navy);
	background: #fff;
	color: var(--s-navy);
}

body .ish-list-guide button.ish-guide-pill[aria-pressed="true"] {
	border-color: var(--s-navy);
	background: var(--s-navy);
	color: #fff;
}

.ish-guide-result {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 18px 20px;
	border: 1px solid #b9dcc5;
	border-radius: 12px;
	background: #e7f3eb;
}

.ish-guide-result-icon {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--s-ok);
	color: #fff;
}

.ish-guide-result-icon .ish-sheet-icon {
	width: 16px;
	height: 16px;
	stroke-width: 2.6;
}

.ish-guide-result-text {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.ish-guide-result-kicker {
	font-size: 12px;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--s-ok);
}

.ish-guide-result strong {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--s-navy);
}

.ish-guide-result p {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
}

.ish-guide-result-links {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 18px;
	margin-top: 4px;
	font-size: 14px;
}

.ish-guide-result-links a {
	color: var(--s-outline);
}

#ish-iscrizioni {
	scroll-margin-top: 140px;
}

/* ------------------------------------------------------- Schermi */

@media (max-width: 1100px) {
	.ish-sheet-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ish-list-why {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ish-list-guide {
		grid-template-columns: minmax(0, 1fr);
		gap: 24px;
	}

	.ish-sheet-body {
		grid-template-columns: minmax(0, 1fr) 300px;
		gap: 32px;
	}

	.ish-sheet-card {
		padding: 22px;
	}

	.ish-sheet-price strong {
		font-size: 32px;
	}
}

/* Una colonna: apertura, riquadro dell'iscrizione, poi il resto. */
@media (max-width: 900px) {
	.ish-sheet {
		padding-bottom: 104px;
	}

	.ish-sheet-body {
		grid-template-columns: minmax(0, 1fr);
		gap: 40px;
	}

	.ish-sheet-main {
		display: contents;
	}

	.ish-sheet-hero {
		order: 0;
	}

	.ish-sheet-aside,
	body.admin-bar .ish-sheet-aside {
		position: static;
		order: 1;
	}

	.ish-sheet-main > .ish-sheet-section,
	.ish-sheet-main > .ish-sheet-boxes {
		order: 2;
	}

	.ish-sheet-bar {
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 50;
		display: flex;
		gap: 12px;
		align-items: center;
		padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
		border-top: 1px solid var(--s-line);
		background: #fff;
		box-shadow: 0 -6px 18px rgba(28, 36, 75, .06);
	}

	.ish-sheet-bar span {
		display: flex;
		flex-direction: column;
		font-size: 17px;
		font-weight: 700;
		color: var(--s-navy);
		white-space: nowrap;
	}

	.ish-sheet-bar small {
		font-size: 12px;
		font-weight: 400;
		color: var(--s-muted);
	}

	body .ish-sheet .ish-sheet-bar a,
	body .ish-sheet .ish-sheet-bar a:hover,
	body .ish-sheet .ish-sheet-bar a:visited {
		display: flex;
		flex-grow: 1;
		align-items: center;
		justify-content: center;
		min-height: 50px;
		padding: 0 12px;
		border-radius: 6px;
		background: var(--s-navy);
		font-size: 13px;
		font-weight: 500;
		letter-spacing: 1.2px;
		line-height: 1.3;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		color: #fff;
	}
}

@media (max-width: 900px) {
	.ish-list-hero {
		flex-direction: column;
		gap: 28px;
		align-items: stretch;
		padding: 36px 28px;
	}

	.ish-list-hero-facts {
		flex-direction: row;
		justify-content: space-between;
		padding: 20px 0 0;
		border-top: 1px solid rgba(255, 255, 255, .2);
		border-left: 0;
	}
}

@media (max-width: 600px) {
	.ish-sheet-cards {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	.ish-list-hero,
	.ish-list-section,
	.ish-list-guide,
	.page-content > .ish-sheet-list-wrap {
		margin-bottom: 40px;
	}

	.ish-list-hero {
		margin-top: 16px;
		padding: 28px 22px;
		border-radius: 18px;
	}

	.ish-list-hero p {
		font-size: 15px;
	}

	.ish-list-hero-facts dt {
		font-size: 22px;
	}

	.ish-list-why {
		gap: 12px;
	}

	.ish-list-why-tile {
		padding: 16px;
	}

	.ish-list-why-tile h3 {
		font-size: 14px;
	}

	.ish-list-why-tile p {
		font-size: 12px;
	}

	.ish-list-guide {
		padding: 22px 18px;
		border-radius: 16px;
	}

	body .ish-list-guide button.ish-guide-pill {
		padding: 10px 14px;
		font-size: 13px;
	}

	.ish-guide-result {
		padding: 14px;
	}

	.ish-sheet-table-wrap {
		display: none;
	}

	.ish-sheet-compare-stack {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	.ish-sheet {
		padding: 16px 16px 104px;
	}

	.ish-sheet-crumbs {
		margin-bottom: 16px;
	}

	.ish-sheet-intro {
		font-size: 15px;
	}

	.ish-sheet-body {
		gap: 32px;
	}

	.ish-sheet-tile,
	.ish-sheet-box,
	.ish-sheet-card {
		padding: 18px;
	}

	.ish-sheet-steps {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}

	.ish-sheet-steps li {
		display: grid;
		grid-template-columns: 36px minmax(0, 1fr);
		column-gap: 14px;
	}

	.ish-sheet-steps li::before {
		grid-row: span 2;
	}

	.ish-sheet-table th,
	.ish-sheet-table td {
		min-width: 140px;
	}
}
