/* Shared long-form guide system based on the current Velta SG stage articles. */

.varticle {
	--va-ink: #111311;
	--va-muted: #5f6663;
	--va-line: rgba(17, 19, 17, 0.2);
	overflow-x: clip;
	background: #f6f4ee;
	color: var(--va-ink);
}

.varticle-shell,
.varticle-cover,
.varticle-layout {
	width: min(100% - 96px, 1344px);
	margin-right: auto;
	margin-left: auto;
}

.varticle-eye {
	margin: 0;
	color: #626966;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
}

.varticle-hero {
	border-bottom: 1px solid var(--va-line);
}

.varticle-hero .varticle-shell {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	gap: 42px;
	padding-top: 86px;
	padding-bottom: 80px;
}

.varticle-back {
	align-self: start;
	color: #59615d;
	font-size: 10px;
	letter-spacing: 0.2em;
	text-decoration: none;
	text-transform: uppercase;
}

.varticle-hero-main {
	max-width: 1050px;
}

.varticle-hero h1 {
	max-width: 1040px;
	margin: 40px 0 0;
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(4rem, 6.25vw, 6rem);
	font-weight: 700;
	line-height: 0.93;
	letter-spacing: -0.06em;
}

.varticle-deck {
	max-width: 930px;
	margin: 36px 0 0;
	color: var(--va-muted);
	font-size: 18px;
	line-height: 1.75;
}

.varticle-meta {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin: 40px 0 0;
	border: 1px solid var(--va-line);
}

.varticle-meta div {
	min-height: 94px;
	border-left: 1px solid var(--va-line);
	padding: 20px;
}

.varticle-meta div:first-child {
	border-left: 0;
}

.varticle-meta dt {
	color: #69706c;
	font-size: 9px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.varticle-meta dd {
	margin: 15px 0 0;
	font-size: 13px;
	line-height: 1.45;
}

.varticle-meta a {
	color: inherit;
}

.varticle-cover {
	height: min(57vw, 790px);
	margin-top: 58px;
	overflow: hidden;
}

/* Video-led classroom articles should reveal their lesson without a long scroll. */
.varticle:has(.varticle-video-fallback) .varticle-hero .varticle-shell {
	padding-top: 52px;
	padding-bottom: 46px;
}

.varticle:has(.varticle-video-fallback) .varticle-hero h1 {
	margin-top: 24px;
	font-size: clamp(3.4rem, 5vw, 4.8rem);
}

.varticle:has(.varticle-video-fallback) .varticle-deck {
	margin-top: 22px;
}

.varticle:has(.varticle-video-fallback) .varticle-meta {
	margin-top: 26px;
}

.varticle:has(.varticle-video-fallback) .varticle-cover {
	margin-top: 30px;
}

.varticle-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 56%;
}

.varticle-library-nav {
	border-top: 1px solid var(--va-line);
	border-bottom: 1px solid var(--va-line);
	background: #e8ece9;
}

.varticle-library-nav .varticle-shell {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.varticle-library-nav a {
	display: grid;
	min-height: 150px;
	grid-template-columns: 36px 1fr;
	align-content: center;
	border-left: 1px solid var(--va-line);
	padding: 24px;
	color: #161817;
	text-decoration: none;
	transition: background-color 180ms ease, color 180ms ease;
}

.varticle-library-nav a:last-child {
	border-right: 1px solid var(--va-line);
}

.varticle-library-nav a:hover,
.varticle-library-nav a:focus-visible {
	background: #1426b5;
	color: #fff;
}

.varticle-library-nav span {
	grid-row: span 2;
	color: #69706c;
	font-size: 10px;
}

.varticle-library-nav strong {
	font-size: 15px;
}

.varticle-library-nav small {
	margin-top: 9px;
	color: #626865;
	font-size: 11px;
}

.varticle-library-nav a:hover span,
.varticle-library-nav a:focus-visible span,
.varticle-library-nav a:hover small,
.varticle-library-nav a:focus-visible small {
	color: rgba(255, 255, 255, 0.66);
}

.varticle-illustrated-library {
	padding: 92px 0;
	background: #fff;
}

.varticle-illustrated-heading {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(300px, 0.8fr);
	gap: 70px;
	align-items: end;
}

.varticle-illustrated-heading h2 {
	max-width: 800px;
	margin: 24px 0 0;
	color: var(--va-ink);
	font-size: clamp(3rem, 5.4vw, 5rem);
	font-weight: 700;
	line-height: 0.94;
	letter-spacing: -0.055em;
}

.varticle-illustrated-heading > p {
	margin: 0;
	color: var(--va-muted);
	font-size: 15px;
	line-height: 1.75;
}

.varticle-illustrated-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
	margin-top: 54px;
}

.varticle-illustrated-grid > a {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid #d6d8d4;
	background: #fff;
	color: inherit;
	text-decoration: none;
	transition: border-color 180ms ease, transform 180ms ease;
}

.varticle-illustrated-grid figure {
	order: 3;
	display: flex;
	height: 300px;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	margin: 24px 0 0;
}

.varticle-illustrated-grid figure img {
	width: 88%;
	height: 88%;
	object-fit: contain;
	transition: transform 240ms ease;
}

.varticle-illustrated-grid .tone-product img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.varticle-illustrated-grid > a:hover img,
.varticle-illustrated-grid > a:focus-visible img {
	transform: scale(1.025);
}

.varticle-illustrated-grid > a:hover,
.varticle-illustrated-grid > a:focus-visible {
	border-color: #1726a9;
	transform: translateY(-2px);
}

.varticle-illustrated-grid .tone-blue {
	background: #dce8f0;
}

.varticle-illustrated-grid .tone-product {
	background: #e4e2dc;
}

.varticle-illustrated-grid .tone-lilac {
	background: #e9e2e9;
}

.varticle-illustrated-grid .tone-green {
	background: #e3ebe4;
}

.varticle-illustrated-grid span {
	order: 1;
	padding: 24px 24px 0;
	color: #68706c;
	font-size: 9px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.varticle-illustrated-grid h3 {
	order: 2;
	margin: 16px 24px 0;
	color: var(--va-ink);
	font-size: 1.65rem;
	font-weight: 650;
	line-height: 1.05;
	letter-spacing: -0.035em;
}

.varticle-illustrated-grid p {
	order: 4;
	margin: 0;
	padding: 20px 24px 26px;
	color: var(--va-muted);
	font-size: 13px;
	line-height: 1.65;
}

.varticle-layout {
	display: grid;
	grid-template-columns: 190px minmax(0, 900px);
	justify-content: space-between;
	gap: 70px;
	padding-top: 72px;
	padding-bottom: 90px;
}

.varticle-aside {
	align-self: start;
	position: sticky;
	top: 110px;
	border-top: 1px solid var(--va-line);
	padding-top: 24px;
}

.varticle-aside ul {
	margin: 30px 0 0;
	padding: 0;
	list-style: none;
}

.varticle-aside li {
	margin-top: 20px;
	color: #69706c;
	font-size: 12px;
	line-height: 1.65;
}

.vfaq-aside nav {
	display: grid;
	gap: 8px;
	margin-top: 24px;
}

.vfaq-aside nav a {
	display: grid;
	grid-template-columns: 32px 1fr;
	gap: 6px;
	border: 1px solid var(--va-line);
	padding: 14px;
	color: #161817;
	font-size: 12px;
	line-height: 1.4;
	text-decoration: none;
}

.vfaq-aside nav span {
	color: #777e7a;
	font-size: 9px;
}

.vfaq-help {
	margin-top: 34px;
	padding: 22px;
	background: #e8ece9;
}

.vfaq-help strong {
	font-size: 14px;
}

.vfaq-help p {
	margin: 12px 0 0;
	color: #5f6663;
	font-size: 12px;
	line-height: 1.65;
}

.vfaq-help a {
	display: inline-block;
	margin-top: 18px;
	border-bottom: 1px solid currentColor;
	color: #161817;
	font-size: 11px;
	text-decoration: none;
}

.varticle-copy {
	min-width: 0;
	color: #535c58;
	font-size: 17px;
	line-height: 1.82;
}

.varticle-copy > p,
.varticle-copy section > p {
	margin: 25px 0 0;
}

.varticle-copy > p:first-child {
	margin-top: 0;
}

.varticle-copy .varticle-intro {
	color: #414945;
	font-size: 19px;
}

.varticle-copy section {
	scroll-margin-top: 110px;
	margin-top: 66px;
}

.varticle-copy h2 {
	margin: 0;
	color: var(--va-ink);
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(2.2rem, 3.3vw, 3.25rem);
	font-weight: 650;
	line-height: 1;
	letter-spacing: -0.045em;
}

.varticle-copy section > h3 {
	margin: 34px 0 0;
	color: var(--va-ink);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.45rem;
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.025em;
}

.varticle-copy ul {
	margin: 24px 0 0;
	padding-left: 22px;
}

.varticle-copy li {
	margin-top: 10px;
	padding-left: 6px;
}

.varticle-copy strong {
	color: #303733;
}

.varticle-callout {
	margin-top: 32px;
	border: 1px solid var(--va-line);
	padding: 24px;
	background: #eef0eb;
}

.varticle-callout > p:not(.varticle-eye) {
	margin: 18px 0 0;
	font-size: 14px;
	line-height: 1.7;
}

.vro-superiority {
	margin-top: 64px;
	border: 1px solid #101412;
	padding: clamp(28px, 5vw, 58px);
	background: #101412;
	color: #fff;
}

.varticle-copy .vro-superiority h2,
.varticle-copy .vro-superiority h3,
.varticle-copy .vro-superiority strong {
	color: #fff;
}

.varticle-copy .vro-superiority > p:not(.varticle-eye) {
	max-width: 760px;
	color: rgba(255, 255, 255, 0.72);
}

.vro-superiority-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 38px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	border-left: 1px solid rgba(255, 255, 255, 0.2);
}

.vro-superiority-grid article {
	min-height: 270px;
	border-right: 1px solid rgba(255, 255, 255, 0.2);
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	padding: 28px;
}

.vro-superiority-grid span {
	color: #43b7e8;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.18em;
}

.varticle-copy .vro-superiority-grid h3 {
	margin-top: 48px;
	font-size: clamp(1.45rem, 2.4vw, 2rem);
}

.varticle-copy .vro-superiority-grid p {
	margin-top: 18px;
	color: rgba(255, 255, 255, 0.68);
	font-size: 14px;
	line-height: 1.65;
}

.vro-verdict {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	margin-top: 38px;
	padding-top: 32px;
}

.vro-verdict strong {
	max-width: 650px;
	font-size: clamp(1.25rem, 2.2vw, 1.75rem);
	line-height: 1.25;
}

.varticle-copy .vro-verdict a {
	flex: 0 0 auto;
	border: 1px solid #fff;
	padding: 15px 18px;
	color: #fff;
	font-size: 12px;
	text-decoration: none;
}

.varticle-copy a {
	color: #001ba7;
	text-underline-offset: 3px;
}

.varticle-table-wrap {
	width: 100%;
	max-width: 100%;
	margin-top: 32px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.varticle-scroll {
	margin: 0 0 12px;
	color: #69706c;
	font-size: 9px;
	letter-spacing: 0.17em;
	text-transform: uppercase;
}

.varticle-table-wrap table {
	width: 100%;
	min-width: 680px;
	border-collapse: collapse;
	color: #314052;
	font-size: 13px;
	line-height: 1.45;
}

.varticle-table-wrap th,
.varticle-table-wrap td {
	border-top: 1px solid #cfd6d7;
	padding: 12px 14px 12px 0;
	text-align: left;
	vertical-align: top;
}

.varticle-table-wrap tbody tr:last-child td {
	border-bottom: 1px solid #cfd6d7;
}

.varticle-table-wrap th {
	color: #313835;
	font-weight: 500;
}

.varticle-faq {
	border-top: 1px solid var(--va-line);
	padding-top: 34px;
}

.varticle-models {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1px;
	margin-top: 32px;
	background: var(--va-line);
}

.varticle-models article {
	display: flex;
	min-height: 310px;
	flex-direction: column;
	margin: 0;
	padding: 22px;
	background: #f6f4ee;
}

.varticle-models span {
	color: #69706c;
	font-size: 9px;
}

.varticle-models h3 {
	margin: 44px 0 0;
	color: var(--va-ink);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.5rem;
	line-height: 1.05;
}

.varticle-models p {
	margin: 18px 0 0;
	font-size: 13px;
	line-height: 1.65;
}

.varticle-models a {
	margin-top: auto;
	padding-top: 20px;
	font-size: 11px;
}

.varticle-choice-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1px;
	margin-top: 32px;
	background: var(--va-line);
}

.varticle-choice-list article {
	min-height: 280px;
	margin: 0;
	padding: 24px;
	background: #f6f4ee;
}

.varticle-choice-list h3 {
	margin: 42px 0 0;
	color: var(--va-ink);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.55rem;
	line-height: 1.06;
}

.varticle-choice-list article > p:not(.varticle-eye) {
	margin: 19px 0 0;
	font-size: 13px;
	line-height: 1.7;
}

.varticle-steps {
	margin: 32px 0 0;
	padding: 0;
	border-top: 1px solid var(--va-line);
	list-style: none;
}

.varticle-steps li {
	display: grid;
	grid-template-columns: 60px minmax(0, 1fr);
	gap: 18px;
	margin: 0;
	border-bottom: 1px solid var(--va-line);
	padding: 20px 0;
}

.varticle-steps li > span {
	color: #69706c;
	font-size: 9px;
}

.varticle-steps strong {
	display: block;
}

.varticle-steps p {
	margin: 7px 0 0;
	font-size: 14px;
	line-height: 1.65;
}

.varticle-faq h2 {
	margin-top: 24px;
}

.varticle-faq details {
	border-bottom: 1px solid var(--va-line);
}

.varticle-faq summary {
	display: flex;
	min-height: 76px;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	color: var(--va-ink);
	cursor: pointer;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.1rem;
	font-weight: 550;
	list-style: none;
}

.varticle-faq summary::-webkit-details-marker {
	display: none;
}

.varticle-faq summary span {
	font-family: var(--wp--preset--font-family--body);
	font-size: 20px;
	font-weight: 300;
	transition: transform 180ms ease;
}

.varticle-faq details[open] summary span {
	transform: rotate(45deg);
}

.varticle-faq details p {
	margin: -3px 0 25px;
	padding-right: 45px;
	font-size: 15px;
}

.varticle-video-library {
	padding: 96px 0;
	background: #111513;
	color: #fff;
}

.varticle-video-heading {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	gap: 70px;
	align-items: end;
}

.varticle-video-heading .varticle-eye {
	color: rgba(255, 255, 255, 0.62);
}

.varticle-video-heading h2 {
	max-width: 760px;
	margin: 24px 0 0;
	color: #fff;
	font-size: clamp(3rem, 6vw, 5.4rem);
	font-weight: 700;
	line-height: 0.94;
	letter-spacing: -0.055em;
}

.varticle-video-mascot {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 180px;
	gap: 24px;
	align-items: end;
}

.varticle-video-mascot p {
	margin: 0;
	color: rgba(255, 255, 255, 0.66);
	font-size: 15px;
	line-height: 1.75;
}

.varticle-video-mascot img {
	width: 100%;
	height: auto;
	max-height: 250px;
	object-fit: contain;
}

.varticle-video-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(300px, 0.55fr);
	gap: 1px;
	margin-top: 60px;
	background: rgba(255, 255, 255, 0.2);
}

.varticle-video-feature,
.varticle-video-upcoming {
	background: #111513;
}

.varticle-video-frame {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: #050505;
}

.varticle-video-frame iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.varticle-video-feature > div:last-child {
	padding: 30px;
}

.varticle-video-feature .varticle-eye {
	color: rgba(255, 255, 255, 0.58);
}

.varticle-video-feature h3 {
	margin: 18px 0 0;
	color: #fff;
	font-size: 2.25rem;
	font-weight: 600;
}

.varticle-video-feature p:not(.varticle-eye) {
	max-width: 680px;
	margin: 16px 0 0;
	color: rgba(255, 255, 255, 0.64);
	font-size: 13px;
	line-height: 1.7;
}

.varticle-video-feature a,
.vfaq-video-link {
	display: inline-block;
	margin-top: 22px;
	border-bottom: 1px solid currentColor;
	color: inherit;
	font-size: 12px;
	text-decoration: none;
}

.varticle-video-upcoming article {
	display: grid;
	grid-template-columns: 42px 1fr;
	min-height: 33.333%;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	padding: 28px;
}

.varticle-video-upcoming article:last-child {
	border-bottom: 0;
}

.varticle-video-upcoming article.is-live .varticle-video-frame {
	grid-column: 1 / -1;
	width: 100%;
	margin-bottom: 22px;
}

.varticle-video-upcoming span {
	color: rgba(255, 255, 255, 0.48);
	font-size: 10px;
}

.varticle-video-upcoming strong {
	color: #fff;
	font-size: 16px;
}

.varticle-video-upcoming p {
	margin: 10px 0 0;
	color: rgba(255, 255, 255, 0.55);
	font-size: 11px;
}

.varticle-video-upcoming .varticle-upcoming-link {
	display: inline-block;
	margin-top: 14px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.55);
	color: #fff;
	font-size: 11px;
	text-decoration: none;
}

.vfaq-video .varticle-video-frame {
	margin-top: 34px;
}

.vfaq-video > p:not(.varticle-eye) {
	margin-top: 24px;
}

.varticle-copy .varticle-faq {
	margin-top: 48px;
}

.varticle-sources {
	border-top: 1px solid var(--va-line);
	padding-top: 34px;
}

.varticle-sources h2 {
	margin-top: 24px;
}

.varticle-sources ol {
	margin: 26px 0 0;
	padding-left: 20px;
}

.varticle-sources li {
	padding: 6px 0 6px 8px;
	font-size: 13px;
}

.varticle-next {
	background: #dfe7e9;
}

.varticle-next .varticle-shell {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	gap: 42px;
	padding-top: 76px;
	padding-bottom: 76px;
}

.varticle-next h2,
.varticle-related-heading h2 {
	margin: 0;
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(2.8rem, 5vw, 5rem);
	font-weight: 650;
	line-height: 0.96;
	letter-spacing: -0.055em;
}

.varticle-next div > p {
	max-width: 760px;
	margin: 24px 0 0;
	color: var(--va-muted);
	font-size: 14px;
	line-height: 1.7;
}

.varticle-next nav {
	display: flex;
	flex-wrap: wrap;
	grid-column: 2;
	gap: 12px;
	margin-top: 12px;
}

.varticle-next nav a {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	padding: 0 21px;
	border: 1px solid var(--va-ink);
	color: inherit;
	font-size: 12px;
	text-decoration: none;
}

.varticle-next nav a:first-child {
	background: var(--va-ink);
	color: #fff;
}

.varticle-related {
	background: #f6f4ee;
}

.varticle-related .varticle-shell {
	padding-top: 82px;
	padding-bottom: 82px;
}

.varticle-related-heading {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	gap: 42px;
}

.varticle-related-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	margin-top: 60px;
}

.varticle-related-grid a {
	display: flex;
	min-height: 310px;
	flex-direction: column;
	border-top: 1px solid var(--va-line);
	padding: 23px 0 0;
	color: inherit;
	text-decoration: none;
}

.varticle-related-grid span {
	color: #68706c;
	font-size: 9px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.varticle-related-grid h3 {
	margin: 62px 0 0;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.55rem;
	font-weight: 650;
	line-height: 1.08;
	letter-spacing: -0.03em;
}

.varticle-related-grid p {
	margin: 20px 0 0;
	color: var(--va-muted);
	font-size: 13px;
	line-height: 1.65;
}

.varticle-related-grid i {
	margin-top: auto;
	font-style: normal;
}

.varticle-final {
	background: #081b98;
	color: #fff;
}

.varticle-final .varticle-shell {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 50px;
	padding-top: 64px;
	padding-bottom: 64px;
}

.varticle-final .varticle-eye,
.varticle-final p {
	color: rgba(255, 255, 255, 0.65);
}

.varticle-final h2 {
	margin: 28px 0 0;
	color: #fff;
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(2.8rem, 5vw, 5rem);
	font-weight: 650;
	line-height: 0.95;
	letter-spacing: -0.05em;
}

.varticle-final div > p:not(.varticle-eye) {
	max-width: 700px;
	margin: 22px 0 0;
	font-size: 14px;
	line-height: 1.65;
}

.varticle-final > .varticle-shell > a {
	display: inline-flex;
	min-width: 260px;
	min-height: 51px;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 0 22px;
	background: #fff;
	color: #111311;
	font-size: 12px;
	text-decoration: none;
}

@media (max-width: 900px) {
	.varticle-shell,
	.varticle-cover,
	.varticle-layout {
		width: min(100% - 48px, 1344px);
	}

	.varticle-hero .varticle-shell,
	.varticle-next .varticle-shell {
		grid-template-columns: 130px minmax(0, 1fr);
	}

	.varticle-hero h1 {
		font-size: clamp(3.4rem, 8vw, 5rem);
	}

	.varticle-layout {
		grid-template-columns: 130px minmax(0, 1fr);
		gap: 45px;
	}

	.varticle-related-heading {
		grid-template-columns: 130px minmax(0, 1fr);
	}

	.varticle-library-nav .varticle-shell {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.varticle-library-nav a:nth-child(n + 3) {
		border-top: 1px solid var(--va-line);
	}

	.varticle-video-heading,
	.varticle-video-grid {
		grid-template-columns: 1fr;
	}

	.varticle-video-heading {
		gap: 30px;
	}

	.varticle-video-upcoming {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.varticle-video-upcoming article {
		min-height: 180px;
		border-right: 1px solid rgba(255, 255, 255, 0.2);
		border-bottom: 0;
	}

	.varticle-illustrated-heading {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.varticle-illustrated-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.varticle:has(.varticle-video-fallback) .varticle-hero .varticle-shell {
		gap: 24px;
		padding-top: 36px;
		padding-bottom: 34px;
	}

	.varticle:has(.varticle-video-fallback) .varticle-hero h1 {
		margin-top: 18px;
		font-size: clamp(2.75rem, 12vw, 3.7rem);
	}

	.varticle:has(.varticle-video-fallback) .varticle-deck {
		margin-top: 20px;
	}

	.varticle:has(.varticle-video-fallback) .varticle-meta {
		margin-top: 22px;
	}

	.vro-superiority {
		margin-top: 48px;
		padding: 26px 20px;
	}

	.vro-superiority-grid {
		grid-template-columns: 1fr;
	}

	.vro-superiority-grid article {
		min-height: 230px;
		padding: 24px;
	}

	.vro-verdict {
		align-items: stretch;
		flex-direction: column;
	}

	.varticle-copy .vro-verdict a {
		text-align: center;
	}

	.varticle-shell,
	.varticle-cover,
	.varticle-layout {
		width: min(100% - 36px, 1344px);
	}

	.varticle-hero .varticle-shell,
	.varticle-layout,
	.varticle-next .varticle-shell,
	.varticle-related-heading,
	.varticle-final .varticle-shell {
		grid-template-columns: 1fr;
	}

	.varticle-hero .varticle-shell {
		gap: 40px;
		padding-top: 65px;
		padding-bottom: 65px;
	}

	.varticle-hero h1 {
		margin-top: 26px;
		font-size: clamp(3.1rem, 14vw, 4.3rem);
	}

	.varticle-deck {
		margin-top: 28px;
		font-size: 16px;
	}

	.varticle-meta {
		grid-template-columns: repeat(2, 1fr);
	}

	.varticle-meta div {
		border-top: 1px solid var(--va-line);
	}

	.varticle-meta div:nth-child(odd) {
		border-left: 0;
	}

	.varticle-meta div:nth-child(-n + 2) {
		border-top: 0;
	}

	.varticle-cover {
		height: 115vw;
		margin-top: 30px;
	}

	.varticle-layout {
		gap: 34px;
		padding-top: 60px;
		padding-bottom: 70px;
	}

	.varticle-aside {
		position: static;
	}

	.varticle-aside ul {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 18px;
	}

	.varticle-aside li {
		margin: 0;
	}

	.varticle-copy {
		font-size: 16px;
		line-height: 1.78;
	}

	.varticle-copy .varticle-intro {
		font-size: 18px;
	}

	.varticle-copy section {
		margin-top: 58px;
	}

	.varticle-copy h2 {
		font-size: 2.35rem;
	}

	.varticle-models {
		grid-template-columns: 1fr;
	}

	.varticle-choice-list {
		grid-template-columns: 1fr;
	}

	.varticle-faq summary {
		min-height: 84px;
	}

	.varticle-faq details p {
		padding-right: 0;
	}

	.varticle-next .varticle-shell,
	.varticle-related .varticle-shell {
		padding-top: 65px;
		padding-bottom: 65px;
	}

	.varticle-next nav {
		display: grid;
		grid-column: 1;
		margin-top: 5px;
	}

	.varticle-next nav a {
		justify-content: center;
	}

	.varticle-related-heading {
		gap: 32px;
	}

	.varticle-related-grid {
		grid-template-columns: 1fr;
		margin-top: 46px;
	}

	.varticle-related-grid a {
		min-height: 280px;
	}

	.varticle-final .varticle-shell {
		align-items: start;
	}

	.varticle-final > .varticle-shell > a {
		width: 100%;
	}

	.varticle-library-nav .varticle-shell {
		width: 100%;
		grid-template-columns: 1fr;
	}

	.varticle-library-nav a,
	.varticle-library-nav a:nth-child(n + 3) {
		min-height: 104px;
		border-top: 0;
		border-right: 0;
		border-bottom: 1px solid var(--va-line);
		border-left: 0;
		padding: 20px 18px;
	}

	.varticle-video-library {
		padding: 70px 0;
	}

	.varticle-video-heading h2 {
		font-size: 2.8rem;
		line-height: 0.98;
	}

	.varticle-video-mascot p {
		font-size: 14px;
	}

	.varticle-video-mascot {
		grid-template-columns: minmax(0, 1fr) 150px;
	}

	.varticle-video-upcoming {
		grid-template-columns: 1fr;
	}

	.varticle-video-upcoming article {
		min-height: 130px;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	}

	.varticle-illustrated-library {
		padding: 68px 0;
	}

	.varticle-illustrated-heading h2 {
		font-size: 2.8rem;
		line-height: 0.98;
	}

	.varticle-illustrated-grid {
		grid-template-columns: 1fr;
		gap: 42px;
		margin-top: 42px;
	}

	.varticle-illustrated-grid figure {
		height: 330px;
	}
}
.varticle-mascot-note {
	display: grid;
	grid-template-columns: 180px 1fr;
	align-items: center;
	gap: 28px;
	margin: 42px 0 54px;
	padding: 24px 30px 20px;
	background: #e5ebdf;
}

.varticle-mascot-note img { width: 100%; height: 170px; object-fit: contain; }
.varticle-mascot-note figcaption { display: grid; gap: 10px; }
.varticle-mascot-note strong { font-family: var(--wp--preset--font-family--heading); font-size: 1.55rem; line-height: 1; }
.varticle-mascot-note span { color: #606963; font-size: 14px; line-height: 1.65; }

@media (max-width: 640px) {
	.varticle-mascot-note { grid-template-columns: 110px 1fr; gap: 16px; padding: 18px; }
	.varticle-mascot-note img { height: 125px; }
}

.vwater-tech-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 28px;
	border-top: 1px solid var(--va-line);
	border-left: 1px solid var(--va-line);
}

.vwater-tech-grid article {
	display: flex;
	min-height: 640px;
	flex-direction: column;
	padding: 28px;
	border-right: 1px solid var(--va-line);
	border-bottom: 1px solid var(--va-line);
	background: #fff;
}

.vwater-tech-grid article > span {
	color: #737a76;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.vwater-tech-card-image,
.vwater-tech-visual {
	height: 250px;
	margin: 24px -28px 0;
	overflow: hidden;
	background: #eceeea;
}

.vwater-tech-card-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vwater-tech-card-image.is-contain { background: #f5f5f2; }
.vwater-tech-card-image.is-contain img { padding: 20px; object-fit: contain; }

.vwater-tech-visual {
	display: grid;
	place-items: center;
	padding: 22px 28px;
	background: #f1f3ef;
}

.vwater-tech-visual svg { display: block; width: 100%; height: 100%; }
.vwater-tech-visual .tech-flow,
.vwater-tech-visual .tech-arrow,
.vwater-tech-visual .tech-vessel,
.vwater-tech-visual .tech-filter-shell,
.vwater-tech-visual .tech-mesh,
.vwater-tech-visual .tech-heat,
.vwater-tech-visual .tech-ro-layer {
	fill: none;
	stroke: #1428ad;
	stroke-width: 6;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.vwater-tech-visual .tech-water { fill: #96dbe8; opacity: .82; }
.vwater-tech-visual .tech-contaminants,
.vwater-tech-visual .tech-caught,
.vwater-tech-visual .tech-ions { fill: #d06b3f; }
.vwater-tech-visual .tech-caught { fill: #b3412f; }
.vwater-tech-visual .tech-carbon { fill: #202424; }
.vwater-tech-visual .tech-fibres { fill: #fff; stroke: #1428ad; stroke-width: 5; }
.vwater-tech-visual .tech-water-dots { fill: #55c2d4; }
.vwater-tech-grid article.is-ro .vwater-tech-visual { background: #fff; }

.vwater-tech-grid article h3 {
	margin: 30px 0 0;
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(2rem, 3vw, 2.8rem);
	line-height: 1;
	letter-spacing: -.04em;
}

.vwater-tech-scale {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 18px;
	margin-top: 20px;
	padding: 13px 0;
	border-top: 1px solid var(--va-line);
	border-bottom: 1px solid var(--va-line);
}
.vwater-tech-scale small { color: #737a76; font-size: 9px; font-weight: 650; letter-spacing: .11em; text-transform: uppercase; }
.vwater-tech-scale b { color: #1428ad; font-size: 18px; white-space: nowrap; }
.vwater-tech-grid article.is-ro .vwater-tech-scale { border-color: rgba(255,255,255,.28); }
.vwater-tech-grid article.is-ro .vwater-tech-scale small { color: rgba(255,255,255,.68); }
.vwater-tech-grid article.is-ro .vwater-tech-scale b { color: #fff; }
.vwater-tech-scale-note { margin: 16px 0 0; color: #737a76; font-size: 11px; line-height: 1.6; }

.vwater-tech-grid article p { margin: 20px 0 0; font-size: 15px; line-height: 1.65; }
.vwater-tech-grid article strong { margin-top: auto; padding-top: 24px; font-size: 12px; line-height: 1.5; }
.vwater-tech-grid article.is-ro { background: #1428ad; color: #fff; }
.vwater-tech-grid article.is-ro > span,
.vwater-tech-grid article.is-ro p { color: rgba(255, 255, 255, .72); }
.vwater-tech-grid article.is-ro h3,
.vwater-tech-grid article.is-ro strong { color: #fff; }
.vwater-tech-grid article.is-ro .vwater-tech-card-image { background: #fff; }

.vwater-ro-case {
	display: grid;
	grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
	gap: clamp(36px, 7vw, 92px);
	margin-top: 94px !important;
	padding: clamp(34px, 5vw, 62px) !important;
	background: #e3edf1;
}

.vwater-ro-case h2 { margin-top: 22px; }
.vwater-ro-case > div:last-child > p:first-child { margin-top: 0; }
.vwater-ro-case ul { margin-top: 28px; padding-left: 1.15em; }
.vwater-ro-case li { margin-top: 13px; }
.vwater-ro-case a {
	display: inline-block;
	margin-top: 28px;
	border-bottom: 1px solid currentColor;
	color: inherit;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}

.vwater-final-recommendation {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(180px, .34fr);
	align-items: end;
	gap: clamp(30px, 5vw, 76px);
	margin-top: 86px !important;
	padding: clamp(38px, 6vw, 72px) !important;
	background: #1428ad;
	color: #fff;
}

.vwater-final-recommendation .varticle-eye,
.vwater-final-recommendation p { color: rgba(255, 255, 255, .86); }
.vwater-final-recommendation h2 {
	max-width: 900px;
	margin-top: 24px;
	color: #fff;
}
.vwater-final-recommendation .vwater-final-copy > p:last-child {
	max-width: 900px;
	margin-top: 28px;
}
.vwater-final-mascot {
	align-self: end;
	margin: 0;
}
.vwater-final-mascot img {
	display: block;
	width: 100%;
	max-width: 300px;
	height: auto;
	margin: 0 auto -10px;
}

@media (max-width: 900px) {
	.vwater-ro-case { grid-template-columns: 1fr; }
	.vwater-final-recommendation {
		grid-template-columns: minmax(0, 1fr) minmax(150px, .3fr);
	}
}

@media (max-width: 680px) {
	.vwater-tech-grid { grid-template-columns: 1fr; }
	.vwater-tech-grid article { min-height: 580px; padding: 24px; }
	.vwater-tech-card-image,
	.vwater-tech-visual { height: 230px; margin-right: -24px; margin-left: -24px; }
	.vwater-ro-case,
	.vwater-final-recommendation {
		margin-right: calc(50% - 50vw) !important;
		margin-left: calc(50% - 50vw) !important;
		padding-right: 24px !important;
		padding-left: 24px !important;
	}
	.vwater-final-recommendation {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	.vwater-final-mascot img {
		max-width: 230px;
		margin-right: 0;
	}
}
