/* Follow-up to the 13 client videos. Loaded after the original partner stylesheet. */

/* IMG_6909: the highlighted menu item follows keyboard focus or pointer hover. */
body.ison-cabinet .ison-menu:has(.ison-menu__item:hover)
	.ison-menu__item.is-active:not(:hover),
body.ison-cabinet .ison-menu:has(.ison-menu__item:focus-visible)
	.ison-menu__item.is-active:not(:focus-visible) {
	background: transparent;
	border-left-color: transparent;
	color: #d7dbe3;
}

/* IMG_6911: center every benefit's text against its icon. */
body.ison-cabinet .ison-benefits__list > li {
	align-items: center;
}

/* IMG_6912 and IMG_6913: make the newly linked elements unmistakable. */
body.ison-cabinet .ison-dash-status {
	text-decoration: none;
	cursor: pointer;
}
body.ison-cabinet .ison-dash-status:focus-visible,
body.ison-cabinet .ison-dash-tables .ison-table a:focus-visible {
	outline: 2px solid #f2551b;
	outline-offset: 3px;
}
body.ison-cabinet .ison-dash-tables .ison-table__num a,
body.ison-cabinet .ison-dash-tables .ison-table__name a {
	color: #0c1560;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* IMG_6910: the four recommended items stay in one balanced row on desktop. */
@media (min-width: 1500px) {
	body.ison-cabinet .ison-recommend .ison-goods {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}
@media (min-width: 700px) and (max-width: 1499px) {
	body.ison-cabinet .ison-recommend .ison-goods {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* IMG_6914: a high-resolution background with no baked-in text or buttons. */
body.ison-cabinet .ison-promo {
	aspect-ratio: 2172 / 410;
	min-height: 160px;
	padding: 8px 1.8%;
	background-size: 100% 100%;
	background-position: center;
}
body.ison-cabinet .ison-promo__text {
	max-width: 34%;
}
body.ison-cabinet .ison-promo__title {
	font-size: clamp(17px, 1.5vw, 23px);
	line-height: 1.12;
}
body.ison-cabinet .ison-promo__lead {
	max-width: 100%;
	font-size: clamp(10px, 0.85vw, 13px);
	line-height: 1.25;
}
body.ison-cabinet .ison-promo__buttons {
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 6px;
}
body.ison-cabinet .ison-promo__buttons .ison-btn,
body.ison-cabinet .ison-promo__buttons .ison-btn--primary {
	height: 31px;
	padding: 0 9px;
	gap: 6px;
	font-size: 10px;
}
@media (max-width: 1499px) {
	body.ison-cabinet .ison-promo {
		aspect-ratio: auto;
		min-height: 165px;
		background-position: center;
	}
	body.ison-cabinet .ison-promo__text {
		max-width: 37%;
	}
	body.ison-cabinet .ison-promo__title {
		font-size: 16px;
	}
}
@media (max-width: 699px) {
	body.ison-cabinet .ison-promo__text {
		max-width: none;
	}
	body.ison-cabinet .ison-promo__title {
		font-size: 20px;
	}
	body.ison-cabinet .ison-promo__lead {
		font-size: 13px;
	}
	body.ison-cabinet .ison-promo__buttons .ison-btn,
	body.ison-cabinet .ison-promo__buttons .ison-btn--primary {
		height: 44px;
		font-size: 13px;
		padding: 0 16px;
	}
}

/* IMG_6916: a product thumbnail must be fully visible, not cropped. */
body.ison-cabinet .ison-table__goods img,
body.ison-cabinet .ison-table img.ison-thumb {
	object-fit: contain;
	background: #fff;
}

/* IMG_6917: keep the full new artwork and restore the text shown in the brief. */
body.ison-cabinet .ison-program__hero--banner {
	position: relative;
	margin-top: 0 !important;
	margin-bottom: 18px;
}
body.ison-cabinet .ison-program__banner-img {
	width: 100%;
	height: auto;
	max-height: 400px;
	object-fit: contain;
}
body.ison-cabinet .ison-program__hero-copy {
	position: absolute;
	z-index: 1;
	top: 18px;
	left: 22px;
	max-width: 50%;
}
body.ison-cabinet .ison-program__hero-copy h1 {
	margin: 0;
	color: #101875;
	font-size: clamp(22px, 2vw, 32px);
	line-height: 1.2;
}
body.ison-cabinet .ison-program__hero-copy p {
	margin: 8px 0 0;
	color: #2f3c5c;
	font-size: clamp(14px, 1.05vw, 17px);
	line-height: 1.5;
}
@media (max-width: 699px) {
	body.ison-cabinet .ison-program__hero-copy {
		position: static;
		max-width: none;
		padding: 0 0 12px;
	}
}

/* IMG_6921: remove the structural gap below short cabinet pages. */
body.ison-cabinet .site-content,
body.ison-cabinet .ison-layout {
	margin-bottom: 0;
}
body.ison-cabinet .ison-content {
	padding-bottom: 16px;
}
body.ison-cabinet .ison-menu__item {
	min-height: 40px;
	padding-top: 6px;
	padding-bottom: 6px;
}
body.ison-cabinet .ison-sidebar__promo {
	margin-top: 12px;
	margin-bottom: 10px;
}
body.ison-cabinet .ison-sidebar__support {
	padding-top: 10px;
	padding-bottom: 10px;
}
body.ison-cabinet .ison-sidebar__letter {
	margin-top: 5px;
	margin-bottom: 5px;
}

/* IMG_6922: the sample's certificate uses the same corrected blank as new PDFs. */
body.ison-cabinet .ison-cert__sample {
	position: relative;
}
body.ison-cabinet .ison-certificate .ison-cert__sample .ison-cert__sample-certificate {
	position: absolute;
	top: 0;
	left: 0;
	width: 61.6%;
	height: 100%;
	overflow: hidden;
	pointer-events: none;
}
body.ison-cabinet .ison-certificate .ison-cert__sample .ison-cert__sample-certificate img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	object-fit: fill;
}
body.ison-cabinet .ison-cert__sample-name,
body.ison-cabinet .ison-cert__sample-date {
	position: absolute;
	left: 0;
	width: 100%;
	color: #151515;
	text-align: center;
}
body.ison-cabinet .ison-cert__sample-name {
	top: 41%;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: clamp(11px, 1.5vw, 18px);
	font-style: italic;
	line-height: 1.2;
}
body.ison-cabinet .ison-cert__sample-date {
	top: 77%;
	left: 14%;
	width: 32%;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: clamp(7px, 0.75vw, 9px);
}

/* IMG_6915: keyboard users need a visible state on both login actions. */
body.ison-body--login .ison-btn:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 4px;
	box-shadow: 0 0 0 7px rgba(242, 85, 27, .55);
}
