/* ==========================================================================
   Signal: The B2B Finance Report (fortispay.com/signal/)
   Standalone microsite styles. The theme's style.css, Bootstrap and nav CSS
   are dequeued on this template (inc/signal.php), so nothing here needs to
   fight theme !important rules.
   Source of truth: Figma "Fortis Signal LP" (frames "Signal LP", "Signal Modal").
   ========================================================================== */

@font-face {
	font-family: "Signal Inter"; /* own name: the sitewide chat widget loads Google's "Inter" into this page too */
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("../fonts/inter-latin-wght-normal.woff2") format("woff2-variations"), url("../fonts/inter-latin-wght-normal.woff2") format("woff2");
}
@font-face {
	font-family: "IBM Plex Mono";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../fonts/ibm-plex-mono-latin-700-normal.woff2") format("woff2");
}
@font-face {
	font-family: "Archivo Black";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/archivo-black-quotes.woff2") format("woff2");
	unicode-range: U+201C, U+201D;
}

:root {
	--sig-navy: #011526;
	--sig-paper: #f3f6f8;
	--sig-white: #fff;
	--sig-ink: #0a1522;
	--sig-ink-soft: #48586a;
	--sig-gold: #fde725;
	--sig-gold-hover: #f2db0c;
	--sig-gold-ink: #1a1000;
	--sig-teal: #1f8f85;
	--sig-blue: #31688e;
	--sig-purple: #440154;
	--sig-line: rgba(10, 21, 34, 0.12);
	--sig-line-dark: rgba(255, 255, 255, 0.14);
	--sig-on-dark: rgba(255, 255, 255, 0.72);
	--sig-on-dark-soft: rgba(255, 255, 255, 0.6);
	--sig-field-border: #b1b1b1;
	--sig-field-text: #626262;
	--sig-error: #b42318;
	--sig-font: "Signal Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	--sig-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	--sig-nav-h: 106px;
	--sig-gutter: 24px;
	--sig-focus: 0 0 0 3px #fff, 0 0 0 5px var(--sig-teal);
}

/* ---------- base ---------- */
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--sig-nav-h) + 16px); }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body.sig-template {
	margin: 0;
	background: var(--sig-white);
	color: var(--sig-ink);
	font-family: var(--sig-font);
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	overflow-x: hidden;
}
/* Resets use :where() so they carry zero specificity and never beat component rules. */
:where(.sig-template) *, :where(.sig-template) *::before, :where(.sig-template) *::after { box-sizing: border-box; }
:where(.sig-template) :where(img) { max-width: none; }
:where(.sig-template) :where(h1, h2, h3, p, figure, blockquote, ul) { margin: 0; padding: 0; }
:where(.sig-template) :where(ul) { list-style: none; }
:where(.sig-template) :where(a) { color: inherit; }
:where(.sig-template) :where(button) { font: inherit; color: inherit; }

.sig-skip {
	position: absolute; left: 16px; top: -100px; z-index: 1000;
	background: var(--sig-gold); color: var(--sig-gold-ink); font-weight: 700;
	padding: 10px 16px; border-radius: 8px; text-decoration: none;
}
.sig-skip:focus { top: 16px; }

.sig-wrap {
	position: relative;
	width: min(1140px, calc(100% - 2 * var(--sig-gutter)));
	margin: 0 auto;
}

/* ---------- logo lockup (Figma 66:6733) ---------- */
.sig-logo {
	position: relative;
	display: block;
	width: 160px;
	aspect-ratio: 160 / 63.4167;
	flex: none;
}
.sig-logo img { position: absolute; display: block; }
.sig-logo__name { left: 4%; top: 0; width: 88.635%; height: 37.409%; }
.sig-logo__bar { left: 0; top: 57.651%; width: 100%; height: 4.17%; }
.sig-logo__sub { left: 0.3875%; top: 83.243%; width: 94.279%; height: 16.757%; }

/* ---------- partners ---------- */
.sig-partners { display: flex; align-items: center; gap: 16px; }
.sig-partners__label { font-size: 13px; line-height: 20.15px; color: var(--sig-on-dark-soft); white-space: nowrap; }
.sig-partners__logos { display: flex; align-items: center; gap: 48px; }
.sig-partner { position: relative; flex: none; overflow: hidden; }
.sig-partner img { position: absolute; display: block; }
.sig-partner--avalara { width: 76px; height: 17px; }
.sig-partner--avalara img { left: 0; top: -71.06%; width: 100%; height: 242.13%; }
.sig-partner--fortis { width: 60px; height: 17px; }
.sig-partner--traild { width: 103px; height: 26px; }
.sig-partner--fortis img, .sig-partner--traild img { inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sig-partners--footer .sig-partners__logos { gap: 32px; }
.sig-partners--modal { flex-direction: column; align-items: flex-start; gap: 4px; }

/* ---------- eyebrow ---------- */
.sig-eyebrow {
	display: flex; align-items: center; gap: 8px;
	font-family: var(--sig-mono); font-weight: 700;
	font-size: 15.5px; line-height: 24.03px; letter-spacing: 2.17px;
	text-transform: uppercase; color: var(--sig-teal);
}
.sig-eyebrow__line { display: block; width: 30px; height: 1px; flex: none; }
.sig-eyebrow--sm { font-size: 11.5px; line-height: 17.83px; letter-spacing: 1.61px; }

/* ---------- buttons ---------- */
.sig-btn {
	display: inline-flex; align-items: center; justify-content: center;
	min-height: 65px; padding: 22px 32px;
	border: 0; border-radius: 10px;
	font-family: var(--sig-font); font-weight: 600; font-size: 17px; line-height: 21px;
	text-align: center; text-decoration: none; cursor: pointer;
	transition: background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.sig-btn--gold { background: var(--sig-gold); color: #000; }
.sig-btn--gold:hover { background: var(--sig-gold-hover); box-shadow: 0 10px 24px -10px rgba(253, 231, 37, .6); color: #000; }
.sig-btn:active { transform: translateY(1px); }
.sig-btn:focus-visible { outline: none; box-shadow: var(--sig-focus); }
.sig-btn--block { width: 100%; }

/* ---------- nav (Figma 9:6360) ---------- */
.sig-nav {
	position: sticky; top: 0; z-index: 50;
	background: rgba(1, 21, 38, 0.92);
	-webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px);
	border-bottom: 1px solid var(--sig-line-dark);
}
.admin-bar .sig-nav { top: 32px; }
@media (max-width: 782px) { .admin-bar .sig-nav { top: 0; position: relative; } }
.sig-nav__row { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: calc(var(--sig-nav-h) - 1px); padding: 18px 0; }
.sig-nav__home { display: block; border-radius: 4px; }
.sig-nav__home:focus-visible { outline: 2px solid var(--sig-gold); outline-offset: 6px; }

/* ---------- hero (Figma 9:6359) ---------- */
.sig-hero {
	position: relative;
	margin-top: calc(-1 * var(--sig-nav-h));
	padding: calc(var(--sig-nav-h) + 29px) 0 53px;
	background: var(--sig-navy);
	color: var(--sig-white);
	/* clip, not hidden: an overflow:hidden box is still a scroll container, and
	   scrollIntoView()/focus() inside it scroll the hero itself (Chrome), which
	   shifts the top of the page out of reach. */
	overflow: hidden;
	overflow: clip;
	isolation: isolate;
}
.sig-hero__art { position: absolute; inset: 0; z-index: -1; pointer-events: none; overflow: hidden; overflow: clip; }
.sig-hero__circles {
	position: absolute; display: block;
	width: 1375.388px; height: 1333.24px;
	left: calc(100% - 588.83px); top: -75.53px;
	transform: rotate(-94.73deg) skewX(0.31deg);
}
.sig-hero__row { display: flex; align-items: center; gap: 58px; position: static; }
.sig-hero__copy { flex: 1 1 0; min-width: 0; padding-bottom: 80px; }
.sig-h1 {
	font-weight: 700; font-size: 46px; line-height: 51.52px; letter-spacing: -0.46px;
	color: var(--sig-white);
}
.sig-lead {
	margin-top: 16px; max-width: 613px;
	font-weight: 500; font-size: 16px; line-height: 26px; color: var(--sig-on-dark);
}
.sig-hero__dots {
	position: absolute; display: block; width: 311.197px; height: 112.55px;
	left: max(var(--sig-gutter), calc((100% - 1140px) / 2)); bottom: 68.8px;
	pointer-events: none;
}

/* form card (Figma 7:520) */
.sig-card {
	position: relative; flex: none; width: 450px;
	display: flex; flex-direction: column; gap: 15px;
	padding: 32px;
	background: var(--sig-white); color: var(--sig-ink);
	border-radius: 14px;
	filter: drop-shadow(0 20px 25px rgba(1, 21, 38, 0.35));
}
.sig-card:focus { outline: none; }
.sig-card__head { display: flex; flex-direction: column; gap: 4px; }
.sig-card__title { font-weight: 700; font-size: 22px; line-height: 26.4px; letter-spacing: -0.22px; color: var(--sig-ink); }
.sig-card__note { font-size: 11px; line-height: 12px; color: rgba(72, 88, 106, 0.6); }
.sig-notice { padding: 12px; border: 1px dashed var(--sig-error); color: var(--sig-error); font-size: 14px; }

/* ---------- Gravity Forms inside the card ---------- */
.sig-form .gform_wrapper { margin: 0 !important; }
.sig-form .gform_wrapper form { margin: 0; }
.sig-form .gform_wrapper .gform_heading { display: none; }
.sig-form .gform_wrapper .gform_fields {
	display: grid !important; grid-template-columns: 1fr; row-gap: 0 !important; column-gap: 0;
	margin: 0; padding: 0; list-style: none;
}
.sig-form .gform_wrapper .gfield { margin: 0 !important; padding: 0 !important; grid-column: 1 / -1 !important; }
.sig-form .gform_wrapper .gfield.gfield--type-hidden,
.sig-form .gform_wrapper .gform_hidden,
.sig-form .gform_wrapper .gfield_visibility_hidden { display: none !important; }
/* Spacing between visible fields only: hidden, honeypot and an invisible Turnstile add no gap. */
.sig-form .gform_wrapper .gfield--type-text ~ .gfield--type-text,
.sig-form .gform_wrapper .gfield--type-email,
.sig-form .gform_wrapper .gfield--type-select { margin-top: 16px !important; }
.sig-form .gform_wrapper .gfield--type-honeypot { display: none !important; }
.sig-form .gform_wrapper .gfield--type-turnstile { min-height: 0; }
.sig-form .gform_wrapper .gfield--type-turnstile.is-shown { margin-top: 16px !important; } /* class set by signal.js when Cloudflare shows the widget */
.sig-form .gform_wrapper .gfield_label,
.sig-form .gform_wrapper .gform-field-label--type-sub,
.sig-form .gform_wrapper .hidden_label .gfield_label {
	position: absolute !important; width: 1px !important; height: 1px !important;
	margin: -1px !important; padding: 0 !important; overflow: hidden !important;
	clip: rect(0 0 0 0) !important; white-space: nowrap !important; border: 0 !important;
}
.sig-form .gform_wrapper .ginput_container { margin: 0 !important; }
.sig-form .gform_wrapper.gform_wrapper input[type="text"],
.sig-form .gform_wrapper.gform_wrapper input[type="email"],
.sig-form .gform_wrapper.gform_wrapper select {
	display: block; width: 100% !important; height: 60px !important; margin: 0 !important;
	padding: 0 16px !important;
	background-color: var(--sig-white) !important;
	border: 1px solid var(--sig-field-border) !important; border-radius: 10px !important;
	box-shadow: none !important;
	font-family: var(--sig-font) !important; font-weight: 500 !important;
	font-size: 16px !important; line-height: 26px !important; color: var(--sig-ink) !important;
	transition: border-color .15s ease, box-shadow .15s ease;
}
.sig-form .gform_wrapper.gform_wrapper select {
	-webkit-appearance: none; -moz-appearance: none; appearance: none;
	padding-right: 44px !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23626262' d='M239 401c9.4 9.4 24.6 9.4 33.9 0L465 209c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-175 175L81 175c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9L239 401z'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important; background-position: right 17px center !important; background-size: 14px 14px !important;
	cursor: pointer;
}
.sig-form .gform_wrapper.gform_wrapper select.is-empty { color: var(--sig-field-text) !important; }
.sig-form .gform_wrapper.gform_wrapper select option { color: var(--sig-ink); }
.sig-form .gform_wrapper input::placeholder { color: var(--sig-field-text) !important; opacity: 1; }
.sig-form .gform_wrapper.gform_wrapper input[type="text"]:hover,
.sig-form .gform_wrapper.gform_wrapper input[type="email"]:hover,
.sig-form .gform_wrapper.gform_wrapper select:hover { border-color: #8a8f96 !important; }
.sig-form .gform_wrapper.gform_wrapper input[type="text"]:focus,
.sig-form .gform_wrapper.gform_wrapper input[type="email"]:focus,
.sig-form .gform_wrapper.gform_wrapper select:focus {
	outline: none !important; border-color: var(--sig-teal) !important;
	box-shadow: 0 0 0 3px rgba(31, 143, 133, 0.2) !important;
}
.sig-form .gform_wrapper .gfield_error input,
.sig-form .gform_wrapper .gfield_error select { border-color: var(--sig-error) !important; }
.sig-form .gform_wrapper .gfield_validation_message,
.sig-form .gform_wrapper .validation_message {
	margin: 6px 0 0 !important; padding: 0 !important; background: none !important; border: 0 !important;
	font-size: 13px !important; line-height: 18px !important; color: var(--sig-error) !important;
}
.sig-form .gform_wrapper .gform_validation_errors {
	margin: 0 0 16px !important; padding: 10px 12px !important;
	border: 1px solid rgba(180, 35, 24, .35) !important; border-radius: 8px !important;
	background: rgba(180, 35, 24, .06) !important; box-shadow: none !important;
}
.sig-form .gform_wrapper .gform_validation_errors > h2 {
	margin: 0 !important; font-family: var(--sig-font) !important; font-size: 13px !important; line-height: 18px !important;
	font-weight: 600 !important; color: var(--sig-error) !important;
}
.sig-form .gform_wrapper .gform_validation_errors > h2 .gform-icon { display: none; }
.sig-form .gform_wrapper .gform_footer {
	display: block !important; margin: 15px 0 0 !important; padding: 0 !important; border: 0 !important;
}
.sig-form .gform_wrapper .gform_footer .gform_button.sig-btn {
	width: 100% !important; min-height: 65px !important; margin: 0 !important; padding: 22px 32px !important;
	background: var(--sig-gold) !important; color: #000 !important; border: 0 !important; border-radius: 10px !important;
	font-family: var(--sig-font) !important; font-weight: 600 !important; font-size: 17px !important; line-height: 21px !important;
	-webkit-appearance: none; appearance: none; cursor: pointer;
}
.sig-form .gform_wrapper .gform_footer .gform_button.sig-btn:hover { background: var(--sig-gold-hover) !important; box-shadow: 0 10px 24px -10px rgba(253, 231, 37, .6) !important; }
.sig-form .gform_wrapper .gform_footer .gform_button.sig-btn:focus-visible { outline: none !important; box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--sig-teal) !important; }
.sig-form .gform_wrapper .gform_footer .gform_button.sig-btn[disabled] { opacity: .7; cursor: progress; }
.sig-form .gform_wrapper .gform_ajax_spinner,
.sig-form .gform_wrapper .gform-loader { display: block; margin: 12px auto 0 !important; }
/* confirmation: replaces the form in the card after a submit (message lives in GF form 9, set by tools/setup-signal.php) */
.sig-form .gform_confirmation_message { font-size: 16px; line-height: 26px; font-weight: 500; color: var(--sig-ink-soft); }
.sig-form .gform_confirmation_message:focus { outline: none; }
.sig-confirm { padding-top: 4px; }
.sig-confirm__title { font-weight: 700; font-size: 22px; line-height: 26.4px; letter-spacing: -0.22px; color: var(--sig-ink); margin-bottom: 8px; }
.sig-confirm .sig-btn { width: 100%; margin-top: 24px; color: #000; }

/* ---------- sections ---------- */
.sig-section { position: relative; padding: 80px 0; overflow: hidden; overflow: clip; }
.sig-section--paper { background: var(--sig-paper); }
.sig-inside { background: var(--sig-white); }
.sig-head { position: relative; display: flex; flex-direction: column; gap: 4px; margin-bottom: 44px; }
.sig-h2 { font-weight: 700; font-size: 34px; line-height: 52.7px; letter-spacing: -0.34px; color: var(--sig-ink); }
.sig-body { font-size: 15.5px; line-height: 24.03px; color: var(--sig-ink-soft); }

/* concentric rings (Figma 10:6430) */
.sig-rings { position: absolute; right: -70px; top: 28px; width: 220px; height: 220px; pointer-events: none; }
.sig-rings span { position: absolute; border: 1px solid var(--sig-line); border-radius: 50%; }
.sig-rings span:nth-child(1) { inset: 0; }
.sig-rings span:nth-child(2) { inset: 14px; }
.sig-rings span:nth-child(3) { inset: 28px; }
.sig-rings span:nth-child(4) { inset: 42px; }

/* ---------- quotes carousel (Figma 10:6412) ---------- */
.sig-carousel { position: relative; }
.sig-carousel__track { display: grid; }
.sig-quote {
	grid-area: 1 / 1;
	position: relative; overflow: hidden; overflow: clip;
	display: flex; align-items: center; gap: 48px;
	padding: 60px 84px;
	border-radius: 16px 72px 16px 72px;
	background: var(--sig-blue); color: var(--sig-white);
	opacity: 0; visibility: hidden;
	transition: opacity .45s ease, visibility 0s linear .45s;
}
.sig-quote.is-active { opacity: 1; visibility: visible; transition: opacity .45s ease, visibility 0s; }
.sig-quote--purple { background: var(--sig-purple); }
.sig-quote--yellow { background: var(--sig-gold); color: var(--sig-ink); }
.sig-quote__mark {
	position: absolute; width: 49px; height: 96px;
	font-family: "Archivo Black", var(--sig-font); font-weight: 400;
	font-size: 96px; line-height: 96px; color: #fff; opacity: .14;
	pointer-events: none; user-select: none;
}
.sig-quote--yellow .sig-quote__mark { color: var(--sig-ink); opacity: .1; }
.sig-quote__mark--open { left: 20px; top: 18px; }
.sig-quote__mark--close { right: 24px; bottom: 20.5px; transform: rotate(180deg); }
.sig-quote__body { position: relative; z-index: 1; flex: 1 1 0; min-width: 0; max-width: 900px; display: flex; flex-direction: column; gap: 16px; }
.sig-quote__text { font-size: 19px; line-height: 1.45; letter-spacing: -0.34px; font-weight: 400; }
.sig-quote__cite { display: flex; flex-wrap: wrap; gap: 0 5px; font-style: normal; font-size: 14px; line-height: 1.45; letter-spacing: -0.34px; }
.sig-quote__org { opacity: .84; }

.sig-carousel__nav { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 44px; }
.sig-carousel__arrow {
	display: inline-flex; align-items: center; justify-content: center;
	width: 38px; height: 38px; padding: 0;
	background: var(--sig-white); border: 1px solid var(--sig-line); border-radius: 50%;
	cursor: pointer; transition: border-color .15s ease, background-color .15s ease;
}
.sig-carousel__arrow img { display: block; width: 16px; height: 16px; }
.sig-carousel__arrow:hover { border-color: var(--sig-teal); }
.sig-carousel__arrow:focus-visible, .sig-carousel__dot:focus-visible { outline: none; box-shadow: 0 0 0 2px var(--sig-paper), 0 0 0 4px var(--sig-teal); }
.sig-carousel__dot {
	position: relative; width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%;
	background: var(--sig-line); cursor: pointer;
	transition: background-color .2s ease, width .2s ease, height .2s ease;
}
.sig-carousel__dot::after { content: ""; position: absolute; inset: -9px; }
.sig-carousel__dot:hover { background: rgba(10, 21, 34, 0.28); }
.sig-carousel__dot.is-active { width: 10px; height: 10px; background: var(--sig-teal); }

/* ---------- what's inside accordion (Figma 12:6503) ---------- */
.sig-acc__item { border-bottom: 1px solid var(--sig-line); }
.sig-acc__h { font-size: inherit; font-weight: inherit; }
.sig-acc__btn {
	display: flex; align-items: center; gap: 50px; width: 100%;
	padding: 24px 0; margin: 0; background: none; border: 0; text-align: left; cursor: pointer;
}
.sig-acc__btn:focus-visible { outline: 2px solid var(--sig-teal); outline-offset: 4px; border-radius: 4px; }
.sig-acc__stat { flex: none; width: 70px; font-weight: 700; font-size: 30px; line-height: 30px; color: var(--sig-teal); }
.sig-acc__title { flex: 1 1 0; min-width: 0; font-weight: 700; font-size: 16.5px; line-height: 21.45px; color: var(--sig-ink); transition: color .15s ease; }
.sig-acc__btn:hover .sig-acc__title { color: var(--sig-teal); }
.sig-acc__chev { flex: none; width: 12px; height: 12px; color: var(--sig-ink-soft); transition: transform .25s ease; }
.sig-acc__item.is-open .sig-acc__chev { transform: rotate(180deg); }
.sig-acc__panel { padding: 0 0 24px 120px; }
.sig-acc__panel[hidden] { display: none; }
.sig-acc__panel p { max-width: 900px; font-size: 14.5px; line-height: 22.48px; color: var(--sig-ink-soft); }

/* ---------- final CTA + footer (Figma 7:490) ---------- */
.sig-end { position: relative; overflow: hidden; overflow: clip; background: var(--sig-navy); color: var(--sig-white); padding: 100px 0; isolation: isolate; }
.sig-end__circles { position: absolute; z-index: -1; display: block; width: 505px; height: 505px; pointer-events: none; }
.sig-end__circles--top { left: -211px; top: -200px; }
.sig-end__circles--bottom { left: -296px; top: 355px; transform: rotate(90deg); }
.sig-cta { display: flex; align-items: center; gap: 240px; }
.sig-cta__copy { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.sig-cta__title { font-weight: 700; font-size: 32px; line-height: 49.6px; letter-spacing: -0.32px; color: var(--sig-white); }
.sig-cta__text { font-size: 15.5px; line-height: 24.03px; color: var(--sig-on-dark); }
.sig-cta__btn { flex: none; width: 300px; }
.sig-footer { margin-top: 10px; }
.sig-footer__top {
	display: flex; align-items: center; justify-content: space-between; gap: 24px;
	padding: 80px 0 10px; border-bottom: 1px solid var(--sig-line-dark);
	-webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px);
}
.sig-footer__legal {
	display: flex; justify-content: space-between; gap: 8px 24px; flex-wrap: wrap; margin-top: 10px;
	font-size: 12.5px; line-height: 19.38px; color: var(--sig-on-dark-soft);
}

/* ---------- sticky side tab (Figma 12:6564) ---------- */
.sig-sidetab {
	position: fixed; right: 0; top: 50%; z-index: 40;
	display: flex; align-items: center; justify-content: center;
	width: 37.81px; height: 103.91px;
	background: var(--sig-gold); color: var(--sig-gold-ink);
	border-radius: 8px 0 0 8px;
	filter: drop-shadow(-6px 0 10px rgba(1, 21, 38, 0.35));
	text-decoration: none;
	transform: translate(110%, -50%);
	transition: transform .35s ease, background-color .15s ease;
}
.sig-sidetab span {
	writing-mode: vertical-rl;
	font-weight: 700; font-size: 11.5px; line-height: 17.83px; letter-spacing: 0.69px; white-space: nowrap;
}
.sig-sidetab.is-visible { transform: translate(0, -50%); }
.sig-sidetab:hover { background: var(--sig-gold-hover); color: var(--sig-gold-ink); }
.sig-sidetab:focus-visible { outline: 2px solid var(--sig-ink); outline-offset: 2px; }


/* ==========================================================================
   Responsive (no tablet/mobile comps; GTU adaptation of the desktop design)
   ========================================================================== */
@media (max-width: 1199px) {
	.sig-hero__row { gap: 40px; }
	.sig-card { width: 420px; }
	.sig-cta { gap: 64px; }
	.sig-rings { right: -40px; }
}

@media (max-width: 991px) {
	:root { --sig-nav-h: 90px; }
	.sig-nav__row { padding: 14px 0; }
	.sig-nav .sig-logo { width: 140px; }
	.sig-partners--nav .sig-partners__logos { gap: 28px; }

	.sig-hero { padding: calc(var(--sig-nav-h) + 40px) 0 56px; }
	.sig-hero__row { flex-direction: column; align-items: stretch; gap: 40px; }
	.sig-hero__copy { padding-bottom: 0; }
	.sig-lead { max-width: 640px; }
	.sig-hero__dots { position: static; display: block; margin-top: 32px; width: 220px; height: auto; }
	.sig-card { width: 100%; max-width: 560px; margin: 0 auto; }
	.sig-hero__circles { left: auto; right: -760px; top: auto; bottom: -760px; }

	.sig-quote { padding: 48px 48px; gap: 32px; }
	.sig-cta { flex-direction: column; align-items: flex-start; gap: 28px; }
	.sig-sidetab { display: none; }
}

@media (max-width: 767px) {
	:root { --sig-gutter: 20px; --sig-nav-h: 78px; }
	.sig-nav__row { padding: 12px 0; }
	.sig-nav .sig-logo { width: 120px; }
	.sig-partners--nav { display: none; }

	.sig-br { display: none; }
	.sig-h1 { font-size: 34px; line-height: 40px; letter-spacing: -0.34px; }
	.sig-lead { font-size: 15.5px; line-height: 25px; }
	.sig-card { padding: 24px 20px; }

	.sig-section { padding: 56px 0; }
	.sig-head { margin-bottom: 32px; }
	.sig-eyebrow { font-size: 13px; line-height: 20px; letter-spacing: 1.8px; }
	.sig-eyebrow--sm { font-size: 11.5px; line-height: 17.83px; letter-spacing: 1.61px; }
	.sig-h2 { font-size: 27px; line-height: 34px; letter-spacing: -0.27px; margin-top: 6px; }
	.sig-rings { display: none; }

	.sig-quote { flex-direction: column; align-items: flex-start; padding: 40px 24px 48px; gap: 24px; border-radius: 12px 48px 12px 48px; }
	.sig-quote__text { font-size: 17px; }
	.sig-quote__mark { font-size: 72px; line-height: 72px; height: 72px; }
	.sig-quote__mark--open { left: auto; right: 18px; top: 14px; }
	.sig-quote__mark--close { right: 18px; bottom: 6px; display: none; }
	.sig-carousel__nav { margin-top: 28px; }

	.sig-acc__btn { gap: 16px; padding: 20px 0; }
	.sig-acc__stat { width: 64px; font-size: 26px; }
	.sig-acc__title { font-size: 15.5px; line-height: 21px; }
	.sig-acc__panel { padding: 0 0 20px 80px; }

	.sig-end { padding: 64px 0 40px; }
	.sig-end__circles--top { left: -300px; top: -330px; }
	.sig-form .gform_wrapper.gform_wrapper select { font-size: 15px !important; padding-left: 14px !important; padding-right: 38px !important; background-position: right 14px center !important; text-overflow: ellipsis; }
	.sig-cta__title { font-size: 26px; line-height: 34px; }
	.sig-cta__btn { width: 100%; }
	.sig-footer__top { flex-direction: column; align-items: flex-start; padding-top: 56px; gap: 24px; padding-bottom: 20px; }
	.sig-partners--footer { flex-direction: column; align-items: flex-start; gap: 10px; }
	.sig-partners--footer .sig-partners__logos { gap: 28px; }
	.sig-footer__legal { flex-direction: column; }

}

@media (max-width: 400px) {
	.sig-acc__panel { padding-left: 0; }
	.sig-partners__logos { gap: 22px !important; }
}

/* Chat widget off on this page (Fortis, Oct 21). inc/signal.php keeps the
   Boomtown snippet from loading; this hides it if it gets in another way. */
#messenger-container, #messenger-button, #messenger-welcome, #messenger-app { display: none !important; }
