@media (max-width: 991px) {

	/* ?? GENERAL ?? */

	.container-fluid {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	.row {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	/* ?? SECTIONS PADDING ?? */
	.news-section,
	.leadership-section,
	.meet-spotex-section,
	.about-overview-section,
	.synthetic-section,
	.spotex-institutions {
		padding: 70px 0 !important;
	}

	.marginsection {
		margin-top: 50px !important;
		margin-bottom: 50px !important;
	}

	.box-containerwhite,
	.box-containernavyblue,
	.box-containergrey1 {
		padding: 15px 12px !important;
	}

	/* ?? GRID COLUMNS: stack all ?? */
	.col-sm-6,
	.col-sm-8,
	.col-sm-9,
	.col-sm-12,
	.col-sm-13,
	.col-sm-18 {
		width: 100% !important;
		float: none !important;
		margin-bottom: 20px !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
	}

	/* ?? NAVBAR ?? */
	#header_nav .navbar-header {
		width: 100%;
		box-sizing: border-box;
		padding: 0 10px;
	}

	#header_nav .container-fluid {
		padding-left: 0;
		padding-right: 0;
	}

	.navbar-brand {
		height: auto !important;
		padding: 8px 10px !important;
		margin-right: 0 !important;
	}

	.navbar-brand img {
		max-width: 140px !important;
		width: 140px !important;
	}

	#header_nav .navbar-brand {
		margin-left: 20px !important;
	}

	#header_nav .navbar-nav>li>a {
		margin-left: 0 !important;
		padding-left: 35px !important;
		padding-top: 12px !important;  
		padding-bottom: 12px !important;
		line-height: 1.4 !important;
	}
	#header_nav.hero-nav .navbar-nav>li>a {
	    color: #ffffff !important;
	}
	#header_nav.hero-nav .btn-primary-navyblue {
	    background: transparent !important;
	    color: #ffffff !important;
	}

	/* ?? HERO BANNER ?? */
	.hero-banner {
		height: 100vh !important;
		min-height: 560px !important;
	}

	.hero-banner img {
		object-fit: fill !important;
		object-position: center center !important;
		width: 100% !important;
		height: 100% !important;
	}

	.hero-content {
		width: 88%;
		left: 6%;
		top: 55%;
	}

	.hero-content h1 {
		font-size: 30px;
		line-height: 1.15;
		margin-bottom: 16px;
	}

	.hero-desc {
		font-size: 16px;
		line-height: 1.5;
		margin-bottom: 24px;
	}

	.hero-subtitle {
		font-size: 12px;
		letter-spacing: 1.5px;
		margin-bottom: 14px;
	}

	.hero-overview {
		margin-top: 0px;
	}

	.hero-overview-block {
		margin-bottom: 26px;
	}

	.hero-overview-heading {
		font-size: 22px;
		margin-bottom: 10px;
	}

	.hero-overview-text {
		font-size: 16px;
		line-height: 1.45;
		max-width: 100%;
	}

	/* ?? TYPOGRAPHY ?? */
	.cm-title {
		font-size: 36px !important;
		margin-bottom: 40px !important;
	}

	.cm-heading {
		font-size: 26px !important;
		text-align: start !important;
	}

	.cm-text {
		font-size: 16px !important;
		text-align: start !important;
	}

	.cm-subtitle {
		font-size: 13px !important;
	}

	.cm-content {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.mainheadingwhite {
		font-size: 24px !important;
		line-height: 1.3 !important;
	}

	.mainhomeheadingwhite {
		font-size: 28px !important;
		line-height: 1.3 !important;
	}

	.mainheadingblue,
	.mainhomeheadingblue {
		font-size: 24px !important;
		line-height: 1.3 !important;
	}

	.headingwhite {
		font-size: 20px !important;
		line-height: 1.3 !important;
		margin-top: 8px !important;
	}

	.headingblue {
		font-size: 18px !important;
		line-height: 1.4 !important;
	}

	.textlargewhite {
		font-size: 15px !important;
		line-height: 1.6 !important;
	}

	.textlargeblue {
		font-size: 15px !important;
		line-height: 1.6 !important;
	}

	.textlargenavyblue1 {
		font-size: 15px !important;
		line-height: 1.6 !important;
	}

	.headingmargin {
		margin-top: 0 !important;
		margin-bottom: 16px !important;
	}

	.margintop1 {
		margin-top: 12px !important;
	}

	.form-control {
		font-size: 14px !important;
	}

	/* ?? BROKER HERO FEATURE LIST ?? */
	.hero-feature .hero-content {
		left: 50% !important;
		padding: 0 20px !important;
	}

	.hero-feature-item {
		margin-bottom: 20px !important;
		padding-bottom: 20px !important;
	}

	.hero-feature-item h2 {
		font-size: 18px !important;
		margin-bottom: 6px !important;
	}

	.hero-feature-meta {
		font-size: 11px !important;
	}

	.hero-feature-text {
		display: none !important;
	}

	/* ?? BROKER PLATFORM SECTION ?? */
	.broker-platform-section {
		padding: 70px 0 !important;
	}

	.broker-platform-title {
		font-size: 28px !important;
		margin-bottom: 35px !important;
	}

	.broker-platform-grid {
		gap: 30px !important;
	}

	/* cm-grid already set to flex-direction:column in existing block
       broker-platform-card just needs full width */
	.broker-platform-card {
		max-width: 100% !important;
	}

	/* ?? CM SPLIT SECTIONS (Turn-Key, Modules, Asset Managers) ?? */
	.cm-split-section {
		padding: 70px 0 !important;
	}

	.cm-split-section .cm-heading {
		font-size: 28px !important;
		margin-bottom: 20px !important;
	}

	/* col-md-7 and col-md-17 use md breakpoint (992px)
       so they never stack at 767px ? force them */
	.col-md-7,
	.col-md-17 {
		width: 100% !important;
		float: none !important;
		margin-bottom: 20px !important;
	}

	/* Stack the cm-row inside split sections */
	.cm-split-section .cm-row {
		flex-direction: column !important;
	}

	/* List items inside split sections */
	.cm-split-section ul.disc {
		padding-left: 20px !important;
	}

	.cm-split-section li {
		margin-bottom: 10px !important;
		font-size: 15px !important;
	}

	.cm-split-section .col-md-7 {
		width: 100% !important;
		text-align: center !important;
		margin-bottom: 20px !important;
	}

	.cm-split-section .col-md-7 .cm-heading {
		text-align: center !important;
		margin: 0 auto 20px !important;
		width: 100%;
	}

	/* ?? MEET SPOTEX ?? */
	.meet-spotex-item {
		padding: 15px 0 30px !important;
		margin-bottom: 30px !important;
	}

	.meet-spotex-item .cm-row {
		display: flex;
		flex-direction: column !important;
	}

	.col-md-4,
	.col-md-20 {
		width: 100% !important;
		float: none !important;
	}

	/* Center image */
	.meet-spotex-item .cm-image-center {
		display: flex;
		justify-content: center !important;
		align-items: center;
		height: auto !important;
		margin-bottom: 18px !important;
	}

	.meet-spotex-image {
		display: block;
		max-width: 60px !important;
		margin: 0 auto;
	}

	/* Center heading */
	.meet-spotex-item .cm-heading {
		text-align: center !important;
		margin-bottom: 15px !important;
	}

	/* Keep content left aligned */
	.meet-spotex-item .cm-text {
		text-align: left !important;
	}

	/* ?? LEADERSHIP ?? */
	.leadership-section {
		padding: 70px 0 !important;
	}

	.leadership-item {
		padding: 0 0 30px !important;
		margin-bottom: 30px !important;
	}

	/* stack photo above bio */
	.leadership-grid {
		flex-direction: column !important;
		gap: 20px !important;
	}

	.leadership-media {
		flex: none !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.leadership-image {
		width: 100% !important;
		height: auto !important;
		object-fit: contain !important;
		border-radius: 12px !important;
		display: block;
	}

	.leadership-content {
		padding-top: 0 !important;
	}

	.leadership-top {
		margin-bottom: 16px !important;
		padding-bottom: 14px !important;
	}

	/* ?? COUNTERPARTY RISK ?? */
	.spotex-risk-section {
		min-height: auto !important;
		background-size: 200% !important;
		background-position: center top !important;
	}

	.spotex-risk-wrapper {
		flex-direction: column !important;
		padding: 50px 20px !important;
		gap: 0 !important;
	}

	.spotex-risk-visual {
		flex: none !important;
		min-height: 200px !important;
		width: 100% !important;
	}

	.spotex-risk-ring {
		width: 180px !important;
	}

	.spotex-risk-content {
		flex: none !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-top: 20px !important;
	}

	.spotex-risk-subtitle {
		font-size: 14px !important;
		letter-spacing: 5px !important;
	}

	.spotex-risk-title {
		font-size: 38px !important;
	}

	.spotex-risk-text {
		width: 100% !important;
		font-size: 17px !important;
	}

	/* ?? INSTITUTIONS CARDS ?? */

	.cm-grid {
		flex-direction: column !important;
		gap: 50px !important;
		margin-top: 40px !important;
		align-items: center !important;
	}

	.cm-card {
		flex: 0 0 100% !important;
		max-width: 90% !important;
	}

	/* Center icon */
	.spotex-inst-icon {
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
		width: 100%;
	}

	.spotex-inst-icon i {
		font-size: 44px !important;
	}

	/* Center heading */
	.cm-card .cm-heading {
		text-align: center !important;
		margin-bottom: 15px !important;
	}

	/* Keep paragraph left aligned */
	.cm-card .cm-text {
		text-align: left;
	}

	/* ?? FEATURE BANNER ?? */
	.feature-banner-bg {
		padding: 50px 0 30px !important;
	}

	.feature-banner-row {
		flex-direction: column !important;
		gap: 30px !important;
		min-height: auto !important;
	}

	.feature-banner-content {
		max-width: 100% !important;
		padding: 0 20px !important;
	}

	.feature-banner-title {
		font-size: 32px !important;
		letter-spacing: -0.5px !important;
	}

	.feature-banner-media {
		justify-content: center !important;
		padding: 0 20px !important;
	}

	.feature-banner-image {
		max-width: 100% !important;
	}

	.feature-banner-tags {
		justify-content: flex-start !important;
		gap: 12px !important;
		margin-top: 30px !important;
		padding: 20px 20px 0 !important;
	}

	.feature-banner-tag {
		font-size: 14px !important;
	}

	/* ?? SYNTHETIC PAIRS ?? */
	.synthetic-item {
		padding: 15px 0 30px !important;
		margin-bottom: 30px !important;
	}

	.synthetic-item .cm-row {
		flex-direction: column !important;
	}

	.synthetic-item .cm-image-center {
		justify-content: center !important;
		margin-bottom: 20px !important;
		height: auto !important;
	}

	.synthetic-icon {
		font-size: 48px !important;
		width: 60px !important;
		height: 60px !important;
	}

	/* ?? CONTACT FORM ?? */
	.mainhomeheadingwhite {
		font-size: 28px !important;
	}

	.box-containernavyblue .headingmargin {
		margin-top: 0 !important;
	}

	.box-containernavyblue .form-group.button {
		padding: 0 15px !important;
	}

	#code {
		width: 100% !important;
		height: auto !important;
	}

	.captcha-box canvas {
		width: 100% !important;
		height: auto !important;
	}

	.btn-primary-grey {
		width: 100% !important;
		font-size: 15px !important;
	}

	/* ?? LISTS ?? */
	.disc.textlargeblue,
	.circle.li.textlargeblue {
		padding-left: 22px !important;
	}

	.disc.textlargeblue li,
	.circle.li.textlargeblue li {
		margin-bottom: 8px !important;
	}

	/* ?? WORLD CLOCKS ?? */
	.clock .col-xs-6 {
		width: 50% !important;
		margin-bottom: 16px !important;
	}

	.clock .col-xs-6:nth-child(5) {
		width: 100% !important;
		display: flex !important;
		justify-content: center !important;
	}

	.clock .col-xs-6:nth-child(5) .clock-box {
		width: 160px !important;
	}

	/* ?? GOOGLE MAPS ?? */
	.google-maps {
		width: 100% !important;
		overflow: hidden !important;
	}

	.google-maps iframe {
		width: 100% !important;
		height: 300px !important;
	}

	.location-description {
		text-align: unset !important;
	}

	/* ?? FOOTER ?? */
	.box-containersolidgrey {
		padding: 60px 0 40px !important;
	}

	.box-containersolidgrey .row {
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.box-containersolidgrey .col-sm-10,
	.box-containersolidgrey .col-sm-5,
	.box-containersolidgrey .col-sm-4 {
		width: 100% !important;
		float: none !important;
		padding: 0 20px !important;
		margin-bottom: 36px !important;
		text-align: center !important;
	}

	.footer-logo {
		display: block;
		text-align: center;
	}

	.footer-logo img {
		display: block;
		max-width: 160px !important;
		margin: 0 auto 15px !important;
	}

	.headingwhitefooter {
		font-size: 12px !important;
		margin-bottom: 14px !important;
		text-align: center !important;
	}

	.heading3 {
		display: block;
		font-size: 15px !important;
		margin-bottom: 3px !important;
		line-height: 1.4 !important;
	}

	.heading3:last-child {
		margin-bottom: 0;
	}

	.footer-contact {
		font-size: 15px !important;
		text-align: center !important;
		line-height: 1.8;
	}

	.footer-social {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 18px;
	}

	.footer-divider {
		text-align: center;
	}

	.footer-copyright {
		text-align: center;
	}

	/* TURN-KEY */

	.cm-turnkey-section {
		padding: 70px 0 !important;
	}

	.cm-turnkey-row {
		min-height: auto !important;
		display: flex;
		flex-direction: column !important;
	}

	.cm-turnkey-row .col-md-10,
	.cm-turnkey-row .col-md-14,
	.cm-modules-section .col-md-10,
	.cm-modules-section .col-md-14,
	.cm-asset-section .col-md-10,
	.cm-asset-section .col-md-14 {
		width: 100% !important;
		float: none !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
	}

	/* -- Turn Key -- */

	.cm-turnkey-ring {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		transform: none !important;
		width: 220px !important;
		margin: 0 auto 35px !important;
	}

	.cm-turnkey-content {
		padding-left: 0 !important;
		text-align: center;
	}

	.cm-turnkey-content .cm-subtitle {
		letter-spacing: 3px;
		margin-bottom: 15px;
	}

	.cm-turnkey-content .cm-heading {
		font-size: 34px !important;
		line-height: 1.2 !important;
		margin-bottom: 20px !important;
	}

	.cm-turnkey-content .cm-text {
		max-width: 100% !important;
		font-size: 16px !important;
		line-height: 1.8 !important;
	}

	/* -- Modules -- */

	.cm-modules-section .cm-split-layout {
		display: flex;
		flex-direction: column-reverse !important;
		gap: 30px !important;
	}

	.cm-modules-section .cm-content {
		margin-top: 0 !important;
		text-align: center;
	}

	.cm-modules-section .cm-heading {
		text-align: center !important;
	}

	.cm-modules-section .cm-text {
		text-align: center !important;
	}

	.cm-modules-section .cm-split-image {
		max-width: 100% !important;
		margin: 0 auto;
	}

	/* -- Asset Managers -- */

	.cm-asset-section .cm-split-layout {
		display: flex;
		flex-direction: column !important;
		gap: 35px !important;
	}

	.cm-asset-section .cm-content {
		margin-left: 0 !important;
	}

	.cm-asset-section .cm-heading {
		text-align: center !important;
	}

	.cm-asset-section .cm-text {
		text-align: left !important;
	}

	.cm-asset-section .cm-split-image {
		max-width: 100% !important;
		margin: 0 auto;
	}

	.cm-asset-section ul.disc {
		padding-left: 20px !important;
	}

	.cm-asset-section ul.circle {
		padding-left: 20px !important;
	}
	
	/* ?? BROKEN PAGE ?? */
	.notice {
	    text-align: center !important;
	}

	.notice .cm-heading {
	    text-align: center !important;
	}

	.notice .cm-text {
	    text-align: center !important;
	}

	.broken-page-image {
	    margin: 25px 0;
	}

	.broken-page-image img {
	    width: 100% !important;
	    max-width: 700px !important;
	    height: auto !important;
	}
}