/*
 * Download the app (#299), on the Radio pages' styles (pages-radio.css) and tokens.css.
 * Board: DownloadApp-Round2 (Kai, 27 Oct; no stars). Hero (Dark Red), four reasons, Beyond your
 * phone (Yellow, three items with a picture slot each) and Rate us. Text colours follow the band:
 * white and Yellow on Dark Red, Dark Red on Yellow (4.5:1 or better); nothing is set inline.
 */

.skdr-radio .skdr-app-kick {
	margin: 0;
	color: var(--skdr-red);
	font-size: 13px;
	line-height: 20px;
	font-weight: var(--skdr-fw-bold);
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.skdr-radio .skdr-band--darkred .skdr-app-kick {
	color: var(--skdr-yel);
}

.skdr-radio .skdr-band--yellow .skdr-app-kick {
	color: var(--skdr-on-yel);
}

.skdr-radio .skdr-app-sec .skdr-radio-head {
	margin: 10px 0 0;
}

.skdr-radio .skdr-app-sec .skdr-radio-h {
	font-size: 40px;
	line-height: 48px;
	letter-spacing: -0.01em;
}

/* Hero: Dark Red, the app image sits on the band's bottom edge */
.skdr-radio .skdr-radio-sec--app_hero {
	padding: 56px 0 0;
	overflow: hidden;
}

.skdr-radio .skdr-app-hero {
	display: grid;
	grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	gap: 48px;
	align-items: end;
}

.skdr-radio .skdr-app-hero--solo {
	grid-template-columns: minmax(0, 1fr);
}

.skdr-radio .skdr-app-hero__tx {
	padding-bottom: 56px;
}

.skdr-radio .skdr-app-hero__h {
	margin: 10px 0 0;
	color: var(--skdr-white);
	font-size: 60px;
	line-height: 66px;
	font-weight: var(--skdr-fw-bold);
	letter-spacing: -0.02em;
}

.skdr-radio .skdr-app-hero__l {
	max-width: 520px;
	margin: 16px 0 0;
	color: var(--skdr-white);
	font-size: 20px;
	line-height: 32px;
}

.skdr-radio .skdr-app-hero__badges {
	margin-top: 32px;
}

.skdr-radio .skdr-app-qr {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 28px;
}

.skdr-radio .skdr-app-qr__img {
	display: block;
	flex: none;
	box-sizing: border-box;
	width: 104px;
	height: 104px;
	padding: 8px;
	border-radius: var(--skdr-r-card);
	background: var(--skdr-white);
}

.skdr-radio .skdr-app-qr__img svg {
	display: block;
	width: 88px;
	height: 88px;
}

.skdr-radio .skdr-app-qr__t {
	margin: 0;
	color: var(--skdr-white);
	font-size: var(--skdr-fs-small);
	line-height: 22px;
}

.skdr-radio .skdr-app-qr__t b {
	display: block;
	font-weight: var(--skdr-fw-semibold);
}

.skdr-radio .skdr-app-hero__ph {
	display: flex;
	justify-content: center;
}

/*
 * The image is shown as it is, with no drawn phone round it: the uploads are device mockups, one
 * phone or a fan (#338). It scales to the column (a tall phone is held by its height, a wide fan by
 * the column's width) and rises out of the band's bottom edge: whatever its shape, it sits 18% of
 * its own height below the edge, which crops it (Kai, 31 Oct: the phone fan pops up from the bottom).
 */
.skdr-radio .skdr-app-frame {
	display: flex;
	justify-content: center;
	width: 100%;
	overflow: hidden;
	line-height: 0;
}

.skdr-radio .skdr-app-frame img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 600px;
	transform: translateY(18%);
}

.skdr-radio .skdr-app-hero a:focus-visible,
.skdr-radio .skdr-app-rate a:focus-visible {
	outline: 3px solid var(--skdr-white);
	outline-offset: 3px;
	box-shadow: 0 0 0 6px var(--skdr-dark);
}

/* Why you'll love it */
.skdr-radio .skdr-radio-sec--app_reasons {
	padding: 72px 0 64px;
}

.skdr-radio .skdr-app-rsn {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 64px;
	margin: 32px 0 0;
	padding: 0;
	list-style: none;
}

.skdr-radio .skdr-app-rsn li {
	display: flex;
	gap: 20px;
	margin: 0;
	padding: 28px 0 32px;
	border-top: 1px solid var(--skdr-line);
}

.skdr-radio .skdr-app-rsn__i {
	display: flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--skdr-ph-bg, #F2E4E6);
	color: var(--skdr-dark);
}

.skdr-radio .skdr-app-rsn h3 {
	margin: 0;
	color: var(--skdr-radio-h);
	font-size: 24px;
	line-height: 32px;
	font-weight: var(--skdr-fw-bold);
}

.skdr-radio .skdr-app-rsn p {
	margin: 6px 0 0;
	font-size: 17px;
	line-height: 28px;
}

/* Beyond your phone: the Yellow band, three columns */
.skdr-radio .skdr-radio-sec--app_beyond {
	padding: 72px 0 80px;
}

.skdr-radio .skdr-app-beyond .skdr-radio-h {
	max-width: 880px;
	font-size: 48px;
	line-height: 56px;
}

.skdr-radio .skdr-band--yellow .skdr-app-beyond .skdr-radio-h,
.skdr-radio .skdr-band--yellow .skdr-app-where h3,
.skdr-radio .skdr-band--yellow .skdr-app-where b,
.skdr-radio .skdr-band--yellow .skdr-app-where p {
	color: var(--skdr-on-yel);
}

.skdr-radio .skdr-app-where {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px;
	margin: 40px 0 0;
	padding: 0;
	list-style: none;
}

.skdr-radio .skdr-app-where li {
	margin: 0;
}

/* Layout "One per line": a row per item, the picture on the left (the phone rules below take over at 390). */
.skdr-radio .skdr-app-where--list {
	grid-template-columns: minmax(0, 1fr);
	gap: 32px;
	max-width: 880px;
}

.skdr-radio .skdr-app-where--list li {
	display: grid;
	grid-template-columns: 240px minmax(0, 1fr);
	column-gap: 32px;
	align-items: start;
}

.skdr-radio .skdr-app-where--list li > * {
	grid-column: 2;
}

.skdr-radio .skdr-app-where--list li.skdr-app-where--text {
	grid-template-columns: minmax(0, 1fr);
}

.skdr-radio .skdr-app-where--list li.skdr-app-where--text > * {
	grid-column: 1;
}

.skdr-radio .skdr-app-where--list .skdr-app-where__pic {
	grid-column: 1;
	grid-row: 1 / span 5;
}

.skdr-radio .skdr-app-where--list h3,
.skdr-radio .skdr-app-where--list .skdr-app-where--text h3 {
	margin-top: 0;
}

.skdr-radio .skdr-app-where__pic {
	display: block;
	line-height: 0;
}

.skdr-radio .skdr-app-where__pic img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--skdr-r-panel);
}

.skdr-radio .skdr-app-where h3 {
	margin: 20px 0 0;
	color: var(--skdr-radio-h);
	font-size: 28px;
	line-height: 36px;
	font-weight: var(--skdr-fw-bold);
}

.skdr-radio .skdr-app-where .skdr-app-where--text h3 {
	margin-top: 0;
}

.skdr-radio .skdr-app-where b {
	display: block;
	margin-top: 2px;
	font-size: 14px;
	line-height: 20px;
	font-weight: var(--skdr-fw-bold);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.skdr-radio .skdr-app-where p {
	margin: 8px 0 0;
	font-size: 16px;
	line-height: 26px;
}

.skdr-radio a.skdr-app-more,
.skdr-radio a.skdr-app-more:visited {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	min-height: var(--skdr-tap);
	margin-top: 4px;
	color: var(--skdr-dark);
	font-size: 15px;
	line-height: 22px;
	font-weight: var(--skdr-fw-semibold);
	text-decoration: none;
}

.skdr-radio a.skdr-app-more:hover {
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

.skdr-radio a.skdr-app-more:focus-visible {
	outline: 3px solid var(--skdr-dark);
	outline-offset: 3px;
	box-shadow: 0 0 0 6px var(--skdr-yel);
}

/* Rate us */
.skdr-radio .skdr-radio-sec--app_rate {
	padding: 40px 0 48px;
}

.skdr-radio .skdr-app-rate {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 32px;
}

.skdr-radio .skdr-app-rate p {
	margin: 0;
	color: var(--skdr-radio-h);
	font-size: 17px;
	line-height: 28px;
}

/* The 390 phone column */
@media (max-width: 760px) {
	.skdr-radio .skdr-app-sec .skdr-radio-h {
		font-size: 28px;
		line-height: 36px;
	}

	.skdr-radio .skdr-radio-sec--app_hero {
		padding: 32px 0 0;
	}

	.skdr-radio .skdr-app-hero {
		grid-template-columns: minmax(0, 1fr);
		gap: 28px;
	}

	.skdr-radio .skdr-app-hero__tx {
		padding-bottom: 0;
	}

	.skdr-radio .skdr-app-hero__h {
		font-size: 36px;
		line-height: 42px;
	}

	.skdr-radio .skdr-app-hero__l {
		margin-top: 12px;
		font-size: var(--skdr-fs-body);
		line-height: 26px;
	}

	.skdr-radio .skdr-app-hero__badges {
		margin-top: 20px;
	}

	/* Phones get the badges, not the QR code */
	.skdr-radio .skdr-app-qr {
		display: none;
	}

	/* Stacked under the text, the shift would leave its space above the image: crop by height instead. */
	.skdr-radio .skdr-app-frame {
		display: block;
		max-height: 280px;
	}

	.skdr-radio .skdr-app-frame img {
		max-height: 360px;
		margin: 0 auto;
		transform: none;
	}

	.skdr-radio .skdr-radio-sec--app_reasons {
		padding: 40px 0 36px;
	}

	.skdr-radio .skdr-app-rsn {
		grid-template-columns: minmax(0, 1fr);
		margin-top: 20px;
	}

	.skdr-radio .skdr-app-rsn li {
		gap: 14px;
		padding: 18px 0 20px;
	}

	.skdr-radio .skdr-app-rsn__i {
		width: 44px;
		height: 44px;
	}

	.skdr-radio .skdr-app-rsn h3 {
		font-size: 19px;
		line-height: 26px;
	}

	.skdr-radio .skdr-app-rsn p {
		margin-top: 2px;
		font-size: 15px;
		line-height: 24px;
	}

	.skdr-radio .skdr-radio-sec--app_beyond {
		padding: 40px 0 44px;
	}

	.skdr-radio .skdr-app-beyond .skdr-radio-h {
		font-size: 28px;
		line-height: 36px;
	}

	.skdr-radio .skdr-app-where {
		grid-template-columns: minmax(0, 1fr);
		gap: 28px;
		margin-top: 24px;
	}

	.skdr-radio .skdr-app-where li {
		display: grid;
		grid-template-columns: 96px minmax(0, 1fr);
		column-gap: 14px;
		align-items: start;
	}

	.skdr-radio .skdr-app-where li > * {
		grid-column: 2;
	}

	.skdr-radio .skdr-app-where li.skdr-app-where--text {
		grid-template-columns: minmax(0, 1fr);
	}

	.skdr-radio .skdr-app-where li.skdr-app-where--text > * {
		grid-column: 1;
	}

	.skdr-radio .skdr-app-where .skdr-app-where__pic {
		grid-column: 1;
		grid-row: 1 / span 4;
	}

	.skdr-radio .skdr-app-where__pic img {
		aspect-ratio: 1 / 1;
		border-radius: 10px;
	}

	.skdr-radio .skdr-app-where h3,
	.skdr-radio .skdr-app-where .skdr-app-where--text h3 {
		margin-top: 0;
		font-size: 21px;
		line-height: 28px;
	}

	.skdr-radio .skdr-app-where p {
		font-size: 15px;
		line-height: 24px;
	}

	.skdr-radio .skdr-radio-sec--app_rate {
		padding: 28px 0 32px;
	}

	.skdr-radio .skdr-app-rate p {
		font-size: 15px;
		line-height: 24px;
	}
}
