/* GMI ReDeploy landing page. All rules stay inside the shortcode. */
.sslf {
	--sslf-ink: #102e40;
	--sslf-muted: #577181;
	--sslf-line: #dbe7ec;
	--sslf-navy: #0b2f41;
	--sslf-blue: #156b92;
	--sslf-sky: #5ab8e4;
	max-width: 1200px;
	color: var(--sslf-ink);
	font-family: "IBM Plex Sans", Arial, sans-serif;
}

.sslf h1,
.sslf h2,
.sslf h3 {
	margin: 0;
	color: inherit;
	font-family: "Oxanium", "IBM Plex Sans", Arial, sans-serif;
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.12;
	text-transform: none;
}

.sslf p { margin: 0; }
.sslf a { text-decoration: none; }
.sslf a:focus-visible { outline: 3px solid var(--sslf-sky); outline-offset: 4px; }
.sslf-hero,
.sslf-value,
.sslf-process,
.sslf-listing-section { position: relative; }

.sslf-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(330px, 0.88fr);
	min-height: 540px;
	overflow: hidden;
	border-radius: 4px;
	background: radial-gradient(circle at 90% 9%, #20799c 0, transparent 37%), linear-gradient(127deg, #0b2f41 8%, #104b65 100%);
	color: #fff;
	isolation: isolate;
}

.sslf-hero::before {
	position: absolute;
	z-index: -1;
	inset: 0;
	background-image: linear-gradient(#ccebf51b 1px, transparent 1px), linear-gradient(90deg, #ccebf51b 1px, transparent 1px);
	background-size: 38px 38px;
	mask-image: linear-gradient(90deg, transparent 18%, #000 100%);
	content: "";
}

.sslf-hero-content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	padding: clamp(36px, 5vw, 76px) 15px clamp(38px, 5vw, 70px) clamp(32px, 5vw, 68px);
}

.sslf .sslf-eyebrow,
.sslf .sslf-kicker,
.sslf .sslf-form-tag {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.4;
	text-transform: uppercase;
}

.sslf .sslf-eyebrow {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 26px;
	color: #b8e5f5;
}

.sslf-eyebrow-mark {
	width: 20px;
	height: 2px;
	background: #69cced;
}

.sslf .sslf-hero h1 {
	max-width: 650px;
	color: #fff;
	font-size: clamp(2.75rem, 4.8vw, 4.9rem);
}

.sslf .sslf-hero-lead {
	max-width: 540px;
	margin-top: 23px;
	color: #d8eaf0;
	font-size: clamp(1rem, 1.45vw, 1.13rem);
	line-height: 1.7;
}

.sslf-hero-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 17px 28px;
	margin-top: 32px;
}

.sslf .sslf-hero-button,
.sslf .sslf-hero-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	min-height: 49px;
	font-size: 0.89rem;
	font-weight: 700;
	line-height: 1.2;
}

.sslf .sslf-hero-button {
	padding: 0.8rem 1.15rem;
	border-radius: 3px;
	background: var(--sslf-sky);
	color: #082f45;
	box-shadow: 0 10px 24px #001d2d36;
}
.sslf .sslf-hero-button:hover { background: #82d0ee; color: #082f45; }
.sslf .sslf-hero-button span { font-size: 1.25rem; }
.sslf .sslf-hero-link { color: #fff; border-bottom: 1px solid #81cde2; }
.sslf .sslf-hero-link:hover { color: #bce9f8; }

.sslf .sslf-hero-footnote {
	margin-top: 25px;
	color: #b9d4dc;
	font-size: 0.78rem;
	line-height: 1.5;
}

.sslf-hero-art {
	position: relative;
	min-height: 440px;
	display: grid;
	place-items: center;
	overflow: hidden;
}
.sslf-orbit {
	position: absolute;
	width: 550px;
	aspect-ratio: 1;
	border: 1px solid #86cae43b;
	border-radius: 50%;
	transform: rotate(-20deg) scaleX(0.86);
}
.sslf-orbit--inner { width: 390px; border-style: dashed; border-color: #86cae453; }
.sslf-art-node {
	position: absolute;
	width: 10px;
	height: 10px;
	border: 2px solid #0f4d65;
	border-radius: 50%;
	background: #78d9eb;
	box-shadow: 0 0 0 7px #8ddff331;
}
.sslf-art-node--one { top: 15%; left: 30%; }
.sslf-art-node--two { top: 38%; right: 8%; }
.sslf-art-node--three { bottom: 14%; left: 15%; }

.sslf-art-card {
	position: relative;
	width: min(75%, 310px);
	padding: 18px;
	border: 1px solid #d1eff680;
	border-radius: 5px;
	background: linear-gradient(155deg, #f8fdff 0%, #d6eff8 100%);
	box-shadow: 20px 24px 0 #05263c88, 0 28px 65px #0017278a;
	color: #16445b;
	transform: rotate(-5deg);
}
.sslf-art-card::after {
	position: absolute;
	inset: 7px;
	border: 1px solid #94c7d8;
	border-radius: 2px;
	content: "";
	pointer-events: none;
}
.sslf-art-card-top,
.sslf-art-card-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 5px;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
.sslf-art-card-top { padding: 5px 6px 11px; border-bottom: 1px solid #9dcada; }
.sslf-art-card-top span:first-child { font-size: 1.1rem; letter-spacing: -0.04em; }
.sslf-art-instrument {
	display: grid;
	min-height: 195px;
	place-items: center;
	color: #2b86a9;
}
.sslf-art-instrument img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 190px;
	object-fit: contain;
	filter: drop-shadow(0 12px 10px #16445b24);
}
.sslf-art-card-bottom { padding: 12px 5px 5px; border-top: 1px solid #9dcada; letter-spacing: 0; }
.sslf-art-arrow { color: #218db2; font-size: 1.4rem; }
.sslf-art-label {
	position: absolute;
	color: #b3d9e6;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.17em;
}
.sslf-art-label--top { top: 14%; right: 10%; }
.sslf-art-label--bottom { bottom: 11%; left: 12%; }

.sslf-value { padding: 75px 0 78px; }
.sslf .sslf-kicker { margin-bottom: 15px; color: var(--sslf-blue); }
.sslf-section-heading { max-width: 740px; }
.sslf .sslf-section-heading h2,
.sslf .sslf-process h2,
.sslf .sslf-listing-heading h2 {
	color: var(--sslf-navy);
	font-size: clamp(2rem, 3.3vw, 3.15rem);
}
.sslf .sslf-section-heading > p:last-child {
	max-width: 650px;
	margin-top: 17px;
	color: var(--sslf-muted);
	font-size: 1.02rem;
	line-height: 1.65;
}
.sslf-value-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-top: 37px;
}
.sslf-value-card {
	min-height: 222px;
	padding: 28px 27px;
	border: 1px solid #dcebf0;
	border-top: 3px solid var(--sslf-sky);
	background: #f7fbfc;
	transition: transform 180ms ease, box-shadow 180ms ease;
}
.sslf-value-card:hover { transform: translateY(-4px); box-shadow: 0 15px 35px #13394a16; }
.sslf-value-number { color: #2086ae; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.11em; }
.sslf .sslf-value-card h3 { margin: 29px 0 9px; font-size: 1.35rem; }
.sslf .sslf-value-card p { color: var(--sslf-muted); font-size: 0.91rem; line-height: 1.6; }

.sslf-process {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: 48px;
	padding: 55px 58px;
	background: #edf6f9;
}
.sslf .sslf-process h2 { max-width: 440px; }
.sslf .sslf-process-copy a {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-top: 28px;
	border-bottom: 1px solid var(--sslf-blue);
	color: var(--sslf-blue);
	font-size: 0.93rem;
	font-weight: 700;
}
.sslf .sslf-process-copy a:hover { color: var(--sslf-navy); }
.sslf-steps { margin: 0; padding: 0; list-style: none; }
.sslf-steps li {
	display: grid;
	grid-template-columns: 44px 1fr;
	gap: 16px;
	padding: 4px 0 22px;
}
.sslf-steps li + li { padding-top: 22px; border-top: 1px solid #cddfe5; }
.sslf-step-number { color: #1880a9; font-family: "Oxanium", sans-serif; font-size: 1.1rem; font-weight: 700; }
.sslf .sslf-steps h3 { font-size: 1.17rem; }
.sslf .sslf-steps p { margin-top: 7px; color: var(--sslf-muted); font-size: 0.91rem; line-height: 1.6; }

.sslf-listing-section { padding: 85px 0 68px; scroll-margin-top: 105px; }
.sslf-process { scroll-margin-top: 105px; }
.sslf-listing-heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 34px;
}
.sslf .sslf-listing-heading > p { max-width: 340px; color: var(--sslf-muted); line-height: 1.6; }
.sslf-listing-layout {
	display: grid;
	grid-template-columns: minmax(230px, 0.72fr) minmax(0, 1.55fr);
	align-items: start;
	gap: 18px;
}
.sslf-form-aside {
	padding: 30px 29px 33px;
	border-radius: 3px;
	background: #0b2f41;
	color: #fff;
}
.sslf-aside-symbol {
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border: 1px solid #69c6e0;
	border-radius: 50%;
	color: #89d5e9;
	font-size: 1.5rem;
}
.sslf .sslf-form-aside h3 { margin-top: 24px; color: #fff; font-size: 1.58rem; }
.sslf .sslf-form-aside p { margin-top: 12px; color: #cbdee5; font-size: 0.93rem; line-height: 1.6; }
.sslf-form-aside ul { margin: 24px 0 0; padding: 0; list-style: none; }
.sslf-form-aside li { position: relative; padding: 11px 0 11px 25px; border-top: 1px solid #aecbd338; color: #e3f1f4; font-size: 0.84rem; line-height: 1.5; }
.sslf-form-aside li::before { position: absolute; left: 0; color: #66c7e5; content: "✓"; }
.sslf-aside-note { margin-top: 28px; padding: 17px; border-left: 2px solid #77d0e8; background: #ffffff12; color: #d9e8ec; font-size: 0.81rem; line-height: 1.65; }
.sslf-aside-note strong { color: #fff; }
.sslf-form-panel {
	min-width: 0;
	padding: clamp(25px, 3.5vw, 48px);
	border: 1px solid #dce8ec;
	border-radius: 3px;
	background: #fff;
	box-shadow: 0 20px 55px #11384b0d;
}
.sslf .sslf-intro { margin: 0 0 30px; padding: 0; border: 0; }
.sslf-form-brand {
	display: flex;
	align-items: center;
	gap: 14px;
	width: fit-content;
	margin-bottom: 23px;
	padding-bottom: 15px;
	border-bottom: 1px solid #dce9ee;
	color: var(--sslf-blue);
	font-family: "Oxanium", sans-serif;
	font-size: 1.18rem;
	font-weight: 700;
}
.sslf-form-brand img { width: 95px; height: auto; }
.sslf-form-brand span { padding-left: 14px; border-left: 2px solid #329d6b; }
.sslf .sslf-form-tag { display: inline-block; margin-bottom: 10px; color: var(--sslf-blue); }
.sslf .sslf-intro h3 { color: var(--sslf-navy); font-size: clamp(1.55rem, 2.4vw, 2.15rem); }
.sslf .sslf-intro p { margin-top: 7px; color: var(--sslf-muted); font-size: 0.91rem; }
.sslf .sslf-product,
.sslf .sslf-seller { margin-bottom: 30px; }
.sslf .sslf-product legend,
.sslf .sslf-seller legend { margin-bottom: 20px; padding-bottom: 10px; border-color: var(--sslf-line); color: var(--sslf-navy); font-family: "Oxanium", sans-serif; font-size: 1.17rem; text-transform: none; }
.sslf .sslf-field label { color: #18394a; font-size: 0.86rem; }
.sslf .sslf-field input:not([type="file"]),
.sslf .sslf-field select,
.sslf .sslf-field textarea { border-color: #c7d8df; border-radius: 3px; background: #fbfdfe; color: var(--sslf-ink); }
.sslf .sslf-field input[type="file"] { padding: 0.6rem; border-color: #c7d8df; }
.sslf .sslf-field input:focus,
.sslf .sslf-field select:focus,
.sslf .sslf-field textarea:focus { border-color: #278eb5; background: #fff; outline-color: #5ab8e450; }
.sslf .sslf-help,
.sslf .sslf-optional,
.sslf .sslf-required-note { color: #5a6e78; }
.sslf .sslf-section-copy { color: var(--sslf-muted); }
.sslf .sslf-submit { width: 100%; padding: 0.9rem 1rem; background: var(--sslf-blue); font-size: 0.92rem; letter-spacing: 0.05em; }
.sslf .sslf-submit:hover { background: var(--sslf-navy); }
.sslf .sslf-consent { margin-top: 23px; }
.sslf .sslf-message { margin-bottom: 25px; }
.sslf-endnote { padding: 8px 0 44px; color: var(--sslf-muted); font-family: "Oxanium", sans-serif; font-size: 1.12rem; text-align: center; }
.sslf-endnote span { margin-right: 8px; color: #2d9cc4; }

@media (max-width: 900px) {
	.sslf-hero { grid-template-columns: 1fr 0.75fr; min-height: 480px; }
	.sslf-hero-content { padding: 45px 5px 45px 40px; }
	.sslf-art-card { width: 85%; }
	.sslf-process { gap: 25px; padding: 44px 36px; }
	.sslf-listing-layout { grid-template-columns: minmax(215px, 0.68fr) minmax(0, 1.45fr); }
}
@media (max-width: 720px) {
	.sslf-hero { grid-template-columns: 1fr; }
	.sslf-hero-content { padding: 46px 34px 20px; }
	.sslf-hero-art { min-height: 260px; }
	.sslf-art-card { width: 215px; padding: 10px; transform: rotate(-5deg) scale(0.85); }
	.sslf-art-instrument { min-height: 150px; }
	.sslf-art-instrument img { max-height: 155px; }
	.sslf-art-label--bottom { bottom: 12%; }
	.sslf-value { padding: 56px 0; }
	.sslf-value-grid { grid-template-columns: 1fr; gap: 12px; margin-top: 26px; }
	.sslf-value-card { min-height: 0; padding: 21px; }
	.sslf .sslf-value-card h3 { margin-top: 14px; }
	.sslf-process { grid-template-columns: 1fr; gap: 32px; padding: 38px 28px; }
	.sslf-listing-section { padding-top: 62px; }
	.sslf-listing-heading { display: block; }
	.sslf .sslf-listing-heading > p { margin-top: 12px; }
	.sslf-listing-layout { grid-template-columns: 1fr; }
	.sslf-form-aside { padding: 25px; }
	.sslf-form-aside ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
}
@media (max-width: 480px) {
	.sslf-hero-content { padding: 38px 24px 12px; }
	.sslf .sslf-hero h1 { font-size: clamp(2.4rem, 10vw, 3.2rem); }
	.sslf .sslf-hero-footnote { font-size: 0.72rem; }
	.sslf-hero-art { min-height: 228px; }
	.sslf .sslf-hero-button { width: 100%; }
	.sslf .sslf-hero-actions { width: 100%; }
	.sslf-form-aside ul { display: block; }
	.sslf-form-panel { padding: 24px 18px; }
	.sslf .sslf-section-heading h2,
	.sslf .sslf-process h2,
	.sslf .sslf-listing-heading h2 { font-size: 2rem; }
}
@media (prefers-reduced-motion: reduce) {
	.sslf-value-card { transition: none; }
	.sslf-value-card:hover { transform: none; }
}