/* ribbon */
/* 
@keyframes ribbon-drop {
	0% {
		transform: translateY(-100%);
	}

	to {
		transform: translateY(0);
	}
}
	*/

.ribbon {
	overflow: hidden;
	--ribbon-background-color: #f5f5f7;
	--ribbon-text-color: #1d1d1f;
	--ribbon-link-color: #0066cc;
	--ribbon-focus-color: rgba(0, 125, 250, 0.6);
}

.ribbon-content-wrapper {
	text-align: center;
}

.ribbon-content {
	margin-left: auto;
	margin-right: auto;
	width: 980px;
}

@media only screen and (min-width: 1441px) {
	.ribbon-content {
		margin-left: auto;
		margin-right: auto;
		width: 980px;
	}
}

@media only screen and (max-width: 1068px) {
	.ribbon-content {
		margin-left: auto;
		margin-right: auto;
		width: 692px;
	}
}

@media only screen and (max-width: 734px) {
	.ribbon-content {
		margin-left: auto;
		margin-right: auto;
		width: 87.5%;
	}
}

.ribbon-link {
	white-space: nowrap;
}

.ribbon-link:focus {
	text-decoration: underline;
}

.ribbon .ribbon-content-wrapper {
	padding-top: 13px;
	padding-bottom: 13px;
}

.ribbon .ribbon-content {
	font-size: 14px;
	line-height: 1.4285914286;
	font-weight: 400;
	letter-spacing: -0.016em;
	font-family:
		SF Pro Text,
		SF Pro Icons,
		Helvetica Neue,
		Helvetica,
		Arial,
		sans-serif;
}

.ribbon .ribbon-content:lang(ja) {
	letter-spacing: 0em;
	font-family:
		SF Pro JP,
		SF Pro Text,
		SF Pro Icons,
		Hiragino Kaku Gothic Pro,
		ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3,
		ãƒ¡ã‚¤ãƒªã‚ª,
		Meiryo,
		ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯,
		Helvetica Neue,
		Helvetica,
		Arial,
		sans-serif;
}

.ribbon .ribbon-content-wrapper {
	background-color: #ffffff;
}

.ribbon .ribbon-content {
	color: var(--ribbon-text-color);
}

.ribbon .ribbon-link:focus {
	outline-color: var(--ribbon-focus-color);
}

.ribbon .ribbon-link {
	color: var(--ribbon-link-color);
}

.ribbon-elevated .ribbon-content-wrapper {
	padding-top: 1.4117647059em;
	padding-bottom: 1.4117647059em;
}

.ribbon-elevated .ribbon-content {
	font-size: 17px;
	line-height: 1.4705882353;
	font-weight: 400;
	letter-spacing: -0.022em;
	font-family:
		SF Pro Text,
		SF Pro Icons,
		Helvetica Neue,
		Helvetica,
		Arial,
		sans-serif;
}

.ribbon-elevated .ribbon-content:lang(ja) {
	letter-spacing: 0em;
	font-family:
		SF Pro JP,
		SF Pro Text,
		SF Pro Icons,
		Hiragino Kaku Gothic Pro,
		ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3,
		ãƒ¡ã‚¤ãƒªã‚ª,
		Meiryo,
		ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯,
		Helvetica Neue,
		Helvetica,
		Arial,
		sans-serif;
}

.ribbon-blue {
	--ribbon-background-color: #0071e3;
	--ribbon-text-color: white;
	--ribbon-link-color: white;
	--ribbon-focus-color: rgba(255, 255, 255, 0.6);
}

.ribbon-blue .ribbon-content-wrapper {
	background-color: var(--ribbon-background-color);
}

.ribbon-blue .ribbon-content {
	color: var(--ribbon-text-color);
}

.ribbon-blue .ribbon-link:focus {
	outline-color: var(--ribbon-focus-color);
}

.ribbon-blue .ribbon-link {
	color: var(--ribbon-link-color);
}

.ribbon-blue-to-default {
	--ribbon-background-color: #f5f5f7;
	--ribbon-background-color-initial: #0071e3;
	--ribbon-text-color: #1d1d1f;
	--ribbon-text-color-initial: white;
	--ribbon-link-color: #0066cc;
	--ribbon-focus-color: rgba(0, 125, 250, 0.6);
	--ribbon-link-color-initial: white;
}

.ribbon-blue-to-default .ribbon-content-wrapper {
	background-color: var(--ribbon-background-color-initial);
	animation: animate-background-0071e3-f5f5f7 1s ease-in-out 1.8s forwards;
}

@media (prefers-reduced-motion) {
	.ribbon-blue-to-default .ribbon-content-wrapper {
		background-color: var(--ribbon-background-color);
		animation: none;
	}
}

.ribbon-blue-to-default .ribbon-content {
	color: var(--ribbon-text-color-initial);
	animation: animate-color-white-1d1d1f 1s ease-in-out 1.8s forwards;
}

@media (prefers-reduced-motion) {
	.ribbon-blue-to-default .ribbon-content {
		color: var(--ribbon-text-color);
		animation: none;
	}
}

.ribbon-blue-to-default .ribbon-link:focus {
	outline-color: var(--ribbon-focus-color);
}

.ribbon-blue-to-default .ribbon-link {
	color: var(--ribbon-link-color-initial);
	animation: animate-color-white-0066cc 1s ease-in-out 1.8s forwards;
}

@media (prefers-reduced-motion) {
	.ribbon-blue-to-default .ribbon-link {
		color: var(--ribbon-link-color);
		animation: none;
	}
}

.ribbon-drop-wrapper {
	animation: ribbon-drop 0.8s ease-in-out forwards;
}

@media (prefers-reduced-motion) {
	.ribbon-drop-wrapper {
		animation: none;
	}
}

.theme-dark.ribbon, .theme-dark .ribbon {
	--ribbon-background-color: #1d1d1f;
	--ribbon-text-color: #f5f5f7;
	--ribbon-link-color: #2997ff;
	--ribbon-focus-color: rgba(0, 125, 250, 0.6);
}

.theme-dark.ribbon .ribbon-content-wrapper, .theme-dark .ribbon .ribbon-content-wrapper {
	background-color: var(--ribbon-background-color);
}

.theme-dark.ribbon .ribbon-content, .theme-dark .ribbon .ribbon-content {
	color: var(--ribbon-text-color);
}

.theme-dark.ribbon .ribbon-link:focus, .theme-dark .ribbon .ribbon-link:focus {
	outline-color: var(--ribbon-focus-color);
}

.theme-dark.ribbon .ribbon-link, .theme-dark .ribbon .ribbon-link {
	color: var(--ribbon-link-color);
}

.theme-dark.ribbon-blue, .theme-dark .ribbon-blue {
	--ribbon-background-color: #0071e3;
	--ribbon-text-color: white;
	--ribbon-link-color: white;
	--ribbon-focus-color: rgba(255, 255, 255, 0.6);
}

.theme-dark.ribbon-blue .ribbon-content-wrapper, .theme-dark .ribbon-blue .ribbon-content-wrapper {
	background-color: var(--ribbon-background-color);
}

.theme-dark.ribbon-blue .ribbon-content, .theme-dark .ribbon-blue .ribbon-content {
	color: var(--ribbon-text-color);
}

.theme-dark.ribbon-blue .ribbon-link:focus, .theme-dark .ribbon-blue .ribbon-link:focus {
	outline-color: var(--ribbon-focus-color);
}

.theme-dark.ribbon-blue .ribbon-link, .theme-dark .ribbon-blue .ribbon-link {
	color: var(--ribbon-link-color);
}

.theme-dark.ribbon-blue-to-default, .theme-dark .ribbon-blue-to-default {
	--ribbon-background-color: #1d1d1f;
	--ribbon-background-color-initial: #000;
	--ribbon-text-color: #f5f5f7;
	--ribbon-text-color-initial: #000;
	--ribbon-link-color: #2997ff;
	--ribbon-focus-color: rgba(0, 125, 250, 0.6);
	--ribbon-link-color-initial: #000;
}

@keyframes animate-background-0071e3-1d1d1f {
	0% {
		background-color: var(--ribbon-background-color-initial);
	}

	to {
		background-color: var(--ribbon-background-color);
	}
}

.theme-dark.ribbon-blue-to-default .ribbon-content-wrapper, .theme-dark .ribbon-blue-to-default .ribbon-content-wrapper {
	background-color: var(--ribbon-background-color-initial);
	animation: animate-background-0071e3-1d1d1f 1s ease-in-out 1.8s forwards;
}

@media (prefers-reduced-motion) {
	.theme-dark.ribbon-blue-to-default .ribbon-content-wrapper, .theme-dark .ribbon-blue-to-default .ribbon-content-wrapper {
		background-color: var(--ribbon-background-color);
		animation: none;
	}
}

@keyframes animate-color-white-f5f5f7 {
	0% {
		color: var(--ribbon-text-color-initial);
	}

	to {
		color: var(--ribbon-text-color);
	}
}

.theme-dark.ribbon-blue-to-default .ribbon-content, .theme-dark .ribbon-blue-to-default .ribbon-content {
	color: var(--ribbon-text-color-initial);
	animation: animate-color-white-f5f5f7 1s ease-in-out 1.8s forwards;
}

@media (prefers-reduced-motion) {
	.theme-dark.ribbon-blue-to-default .ribbon-content, .theme-dark .ribbon-blue-to-default .ribbon-content {
		color: var(--ribbon-text-color);
		animation: none;
	}
}

.theme-dark.ribbon-blue-to-default .ribbon-link:focus, .theme-dark .ribbon-blue-to-default .ribbon-link:focus {
	outline-color: var(--ribbon-focus-color);
}

@keyframes animate-color-white-2997ff {
	0% {
		color: var(--ribbon-link-color-initial);
	}

	to {
		color: var(--ribbon-link-color);
	}
}

.theme-dark.ribbon-blue-to-default .ribbon-link, .theme-dark .ribbon-blue-to-default .ribbon-link {
	color: #000;
	animation: animate-color-white-2997ff 1s ease-in-out 1.8s forwards;
}

@media (prefers-reduced-motion) {
	.theme-dark.ribbon-blue-to-default .ribbon-link, .theme-dark .ribbon-blue-to-default .ribbon-link {
		color: var(--ribbon-link-color);
		animation: none;
	}
}

.theme-light.ribbon, .theme-light .ribbon {
	--ribbon-background-color: #f5f5f7;
	--ribbon-text-color: #1d1d1f;
	--ribbon-link-color: #0066cc;
	--ribbon-focus-color: rgba(0, 125, 250, 0.6);
}

.theme-light.ribbon .ribbon-content-wrapper, .theme-light .ribbon .ribbon-content-wrapper {
	background-color: var(--ribbon-background-color);
}

.theme-light.ribbon .ribbon-content, .theme-light .ribbon .ribbon-content {
	color: var(--ribbon-text-color);
}

.theme-light.ribbon .ribbon-link:focus, .theme-light .ribbon .ribbon-link:focus {
	outline-color: var(--ribbon-focus-color);
}

.theme-light.ribbon .ribbon-link, .theme-light .ribbon .ribbon-link {
	color: var(--ribbon-link-color);
}

.theme-light.ribbon-blue, .theme-light .ribbon-blue {
	--ribbon-background-color: #0071e3;
	--ribbon-text-color: white;
	--ribbon-link-color: white;
	--ribbon-focus-color: rgba(255, 255, 255, 0.6);
}

.theme-light.ribbon-blue .ribbon-content-wrapper, .theme-light .ribbon-blue .ribbon-content-wrapper {
	background-color: var(--ribbon-background-color);
}

.theme-light.ribbon-blue .ribbon-content, .theme-light .ribbon-blue .ribbon-content {
	color: var(--ribbon-text-color);
}

.theme-light.ribbon-blue .ribbon-link:focus, .theme-light .ribbon-blue .ribbon-link:focus {
	outline-color: var(--ribbon-focus-color);
}

.theme-light.ribbon-blue .ribbon-link, .theme-light .ribbon-blue .ribbon-link {
	color: var(--ribbon-link-color);
}

.theme-light.ribbon-blue-to-default, .theme-light .ribbon-blue-to-default {
	--ribbon-background-color: #f5f5f7;
	--ribbon-background-color-initial: #0071e3;
	--ribbon-text-color: #1d1d1f;
	--ribbon-text-color-initial: white;
	--ribbon-link-color: #0066cc;
	--ribbon-focus-color: rgba(0, 125, 250, 0.6);
	--ribbon-link-color-initial: white;
}

@keyframes animate-background-0071e3-f5f5f7 {
	0% {
		background-color: var(--ribbon-background-color-initial);
	}

	to {
		background-color: var(--ribbon-background-color);
	}
}

.theme-light.ribbon-blue-to-default .ribbon-content-wrapper, .theme-light .ribbon-blue-to-default .ribbon-content-wrapper {
	background-color: var(--ribbon-background-color-initial);
	animation: animate-background-0071e3-f5f5f7 1s ease-in-out 1.8s forwards;
}

@media (prefers-reduced-motion) {
	.theme-light.ribbon-blue-to-default .ribbon-content-wrapper, .theme-light .ribbon-blue-to-default .ribbon-content-wrapper {
		background-color: var(--ribbon-background-color);
		animation: none;
	}
}

@keyframes animate-color-white-1d1d1f {
	0% {
		color: var(--ribbon-text-color-initial);
	}

	to {
		color: var(--ribbon-text-color);
	}
}

@media (prefers-reduced-motion) {
	.theme-light.ribbon-blue-to-default .ribbon-link, .theme-light .ribbon-blue-to-default .ribbon-link {
		color: var(--ribbon-link-color);
		animation: none;
	}
}
.ribbon .icon-after::after, .ribbon .more::after {
	position: relative;
	top: -0.075em;
}

.ribbon {
	position: relative;
	top: calc(-1 * (var(--r-localnav-height)));
	width: 100%;
	overflow: hidden;
	z-index: 4;
}

.section-welcome {
	height: calc(
		100svh - var(--global-nav-collective-height) - var(--ribbon-height, 0px)
	);
}

.ribbon + .section-welcome.section-welcome-localnav-overlap {
	--welcome-margin-top: 0px;
}

@media only screen and (max-width: 440px) {
	.ribbon .ribbon-content {
		max-width: 350px;
	}
}

.ribbon .typography-caption {
	font-size: 12px;
	line-height: 1.33337;
	font-weight: 400;
	letter-spacing: -0.01em;
	font-family:
		"SF Pro Text", "SF Pro Icons", "Helvetica Neue", "Helvetica", "Arial",
		sans-serif;
}

.section-battery .stats .stat-item:first-child {
	text-align: center;
	margin-inline-end: 0;
}
.section-battery .stat-item .call-out {
	text-align: center;
}
.section-battery .stat-item .call-out .copy {
	margin-left: auto;
	margin-right: auto;
}
.section-hearing-health
	.media-block:has(
		picture.overview-hearing-health-hearing-health-conversation-boost,
		picture.overview-hearing-health-hearing-protection-startframe
	) {
	--p-width: 620px;
}

@media (max-width: 1068px) and (max-width: 1068px) {
	.section-hearing-health
		.media-block:has(
			picture.overview-hearing-health-hearing-health-conversation-boost,
			picture.overview-hearing-health-hearing-protection-startframe
		) {
		--p-width: 462px;
	}
}

@media (max-width: 734px) and (max-width: 734px) {
	.section-hearing-health
		.media-block:has(
			picture.overview-hearing-health-hearing-health-conversation-boost,
			picture.overview-hearing-health-hearing-protection-startframe
		) {
		--p-width: 260px;
	}
}
@media (max-width: 1068px) {
	.section-battery .stats .stat .stat-caption {
		max-width: inherit;
	}
}

.section-welcome {
	position: relative;
	top: -52px;
}

.footnote-supglyph .diamond {
	text-decoration: none;
	font-size: 10px;
	position: relative;
	top: -7px;
	color: #1d1d1f;
	font-weight: bolder;
}
.footnote-supglyph .diamond:hover {
	text-decoration: none;
	color: #2997ff;
}
