/**
 * Base CSS used by the builder's layout, including rows
 * and columns. Any module specific global CSS should be
 * included in fl-builder-layout-modules.css.
 */

/* Grid
------------------------------------------------------ */

.fl-builder-content *,
.fl-builder-content *:before,
.fl-builder-content *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.fl-row:before,
.fl-row:after,
.fl-row-content:before,
.fl-row-content:after,
.fl-col-group:before,
.fl-col-group:after,
.fl-col:before,
.fl-col:after,
.fl-module:not([data-accepts], .fl-ds-block):before,
.fl-module:not([data-accepts], .fl-ds-block):after,
.fl-module-content:before,
.fl-module-content:after {
	display: table;
	content: " ";
}
.fl-row:after,
.fl-row-content:after,
.fl-col-group:after,
.fl-col:after,
.fl-module:not([data-accepts], .fl-ds-block):after,
.fl-module-content:after {
	clear: both;
}
.fl-clear {
	clear: both;
}

/* Rows
------------------------------------------------------ */

.fl-row,
.fl-row-content {
	margin-left: auto;
	margin-right: auto;
	min-width: 0;
}
.fl-row-content-wrap {
	position: relative;
}

/* Photo Bg */
.fl-builder-mobile .fl-row-bg-photo .fl-row-content-wrap {
	background-attachment: scroll;
}

/* Video and Embed Code Bg */
.fl-row-bg-video,
.fl-row-bg-video .fl-row-content,
.fl-row-bg-embed,
.fl-row-bg-embed .fl-row-content {
	position: relative;
}

.fl-row-bg-video .fl-bg-video,
.fl-row-bg-embed .fl-bg-embed-code {
	bottom: 0;
	left: 0;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 0;
}

.fl-row-bg-video .fl-bg-video video,
.fl-row-bg-embed .fl-bg-embed-code video {
	bottom: 0;
	left: 0px;
	max-width: none;
	position: absolute;
	right: 0;
	top: 0px;
}
.fl-row-bg-video .fl-bg-video video {
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
}
.fl-row-bg-video .fl-bg-video iframe,
.fl-row-bg-embed .fl-bg-embed-code iframe {
	pointer-events: none;
	width: 100vw;
  	height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
  	max-width: none;
  	min-height: 100vh;
  	min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
  	position: absolute;
  	top: 50%;
  	left: 50%;
	-ms-transform: translate(-50%, -50%); /* IE 9 */
	-webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  	transform: translate(-50%, -50%);
}
.fl-bg-video-fallback {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	bottom: 0px;
	left: 0px;
	position: absolute;
	right: 0px;
	top: 0px;
}

/* Slideshow Bg */
.fl-row-bg-slideshow,
.fl-row-bg-slideshow .fl-row-content {
	position: relative;
}
.fl-row .fl-bg-slideshow {
	bottom: 0;
	left: 0;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 0;
}
.fl-builder-edit .fl-row .fl-bg-slideshow * {
	bottom: 0;
	height: auto !important;
	left: 0;
	position: absolute !important;
	right: 0;
	top: 0;
}

/* Row Bg Overlay */
.fl-row-bg-overlay .fl-row-content-wrap:after {
	border-radius: inherit;
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 0;
}
.fl-row-bg-overlay .fl-row-content {
	position: relative;
	z-index: 1;
}

/* Full Height Rows */
.fl-row-default-height .fl-row-content-wrap,
.fl-row-custom-height .fl-row-content-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	min-height: 100vh;
}
.fl-row-overlap-top .fl-row-content-wrap {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -moz-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	width: 100%;
}
.fl-row-default-height .fl-row-content-wrap,
.fl-row-custom-height .fl-row-content-wrap {
	min-height: 0;
}

.fl-row-default-height .fl-row-content,
.fl-row-full-height .fl-row-content,
.fl-row-custom-height .fl-row-content {
  -webkit-box-flex: 1 1 auto;
  	 -moz-box-flex: 1 1 auto;
  	  -webkit-flex: 1 1 auto;
  		  -ms-flex: 1 1 auto;
  			  flex: 1 1 auto;
}
.fl-row-default-height .fl-row-full-width.fl-row-content,
.fl-row-full-height .fl-row-full-width.fl-row-content,
.fl-row-custom-height .fl-row-full-width.fl-row-content {
	max-width: 100%;
	width: 100%;
}

/* Full height align center */
.fl-row-default-height.fl-row-align-center .fl-row-content-wrap,
.fl-row-full-height.fl-row-align-center .fl-row-content-wrap,
.fl-row-custom-height.fl-row-align-center .fl-row-content-wrap {
	-webkit-align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-align: center;
	-ms-flex-pack: center;
	justify-content: center;
	align-items: center;
}

/* Full height align bottom */
.fl-row-default-height.fl-row-align-bottom .fl-row-content-wrap,
.fl-row-full-height.fl-row-align-bottom .fl-row-content-wrap,
.fl-row-custom-height.fl-row-align-bottom .fl-row-content-wrap {
	-webkit-align-items: flex-end;
	-webkit-justify-content: flex-end;
	-webkit-box-align: end;
	-webkit-box-pack: end;
	-ms-flex-align: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	align-items: flex-end;
}

/* Column Groups
------------------------------------------------------ */
.fl-col-group-equal-height {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
.fl-col-group-equal-height.fl-col-group-has-child-loading {
	flex-wrap: nowrap;
}
.fl-col-group-equal-height .fl-col,
.fl-col-group-equal-height .fl-col-content {
	display: flex;
	flex: 1 1 auto;
}
.fl-col-group-equal-height .fl-col-content {
	flex-direction: column;
	flex-shrink: 1;
	min-width: 1px;
	max-width: 100%;
	width: 100%;
}
.fl-col-group-equal-height:before,
.fl-col-group-equal-height .fl-col:before,
.fl-col-group-equal-height .fl-col-content:before,
.fl-col-group-equal-height:after,
.fl-col-group-equal-height .fl-col:after,
.fl-col-group-equal-height .fl-col-content:after{
	content: none;
}

/* Equal height align top */
.fl-col-group-nested.fl-col-group-equal-height.fl-col-group-align-top .fl-col-content,
.fl-col-group-equal-height.fl-col-group-align-top .fl-col-content {
	justify-content: flex-start;
}

/* Equal height align center */
.fl-col-group-nested.fl-col-group-equal-height.fl-col-group-align-center .fl-col-content,
.fl-col-group-equal-height.fl-col-group-align-center .fl-col-content {
	justify-content: center;
}

/* Equal height align bottom */
.fl-col-group-nested.fl-col-group-equal-height.fl-col-group-align-bottom .fl-col-content,
.fl-col-group-equal-height.fl-col-group-align-bottom .fl-col-content {
	justify-content: flex-end;
}

.fl-col-group-equal-height.fl-col-group-align-center .fl-col-group {
	width: 100%;
}

/* Columns
------------------------------------------------------ */

.fl-col {
	float: left;
	min-height: 1px;
}

/* Column Bg Overlay */
.fl-col-bg-overlay .fl-col-content {
	position: relative;
}
.fl-col-bg-overlay .fl-col-content:after {
	border-radius: inherit;
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 0;
}
.fl-col-bg-overlay .fl-module {
	position: relative;
	z-index: 2;
}

/* Templates
------------------------------------------------------ */

.single:not(.woocommerce).single-fl-builder-template .fl-content {
	width: 100%;
}

/* Shapes & Patterns
------------------------------------------------------- */
.fl-builder-layer {
	position: absolute;
	top:0;
	left:0;
	right: 0;
	bottom: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.fl-builder-shape-layer {
	z-index: 0;
}
.fl-builder-shape-layer.fl-builder-bottom-edge-layer {
	z-index: 1;
}
.fl-row-bg-overlay .fl-builder-shape-layer {
	z-index: 1;
}
.fl-row-bg-overlay .fl-builder-shape-layer.fl-builder-bottom-edge-layer {
	z-index: 2;
}
.fl-row-has-layers .fl-row-content {
	z-index: 1;
}
.fl-row-bg-overlay .fl-row-content {
	z-index: 2;
}

.fl-builder-layer > * {
	display: block;
	position: absolute;
	top:0;
	left:0;
	width: 100%;
}
.fl-builder-layer + .fl-row-content {
	position: relative;
}
.fl-builder-layer .fl-shape {
	fill: #aaa;
	stroke: none;
	stroke-width: 0;
	width:100%;
}
/**
Fix ipad parallax issue on safari
https://core.trac.wordpress.org/ticket/48802
https://core.trac.wordpress.org/ticket/49285
https://github.com/WordPress/gutenberg/issues/17718
*/
@supports (-webkit-touch-callout: inherit) {
  .fl-row.fl-row-bg-parallax .fl-row-content-wrap,
  .fl-row.fl-row-bg-fixed .fl-row-content-wrap {
    background-position: center !important;
    background-attachment: scroll !important;
  }
}

@supports (-webkit-touch-callout: none) {
	.fl-row.fl-row-bg-fixed .fl-row-content-wrap {
		background-position: center !important;
		background-attachment: scroll !important;
	}
}
/**
 * Base CSS used by all (or many) modules. This file should
 * not contain any generic layout CSS that doesn't apply to
 * modules. That belongs in fl-builder-layout.css.
 */

/* Utilities
------------------------------------------------------ */

.fl-clearfix:before,
.fl-clearfix:after {
	display: table;
	content: " ";
}
.fl-clearfix:after {
	clear: both;
}
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}

/* Buttons
------------------------------------------------------ */

.fl-builder-content .fl-button:is(a, button),
.fl-builder-content a.fl-button:visited {
	border-radius: 4px;
	display: inline-block;
	font-size: 16px;
	font-weight: normal;
	line-height: 18px;
	padding: 12px 24px;
	text-decoration: none;
	text-shadow: none;
	cursor: pointer;
}
.fl-builder-content .fl-button:hover {
	text-decoration: none;
}
.fl-builder-content .fl-button:active {
	position: relative;
	top: 1px;
}
.fl-builder-content .fl-button-width-full .fl-button {
	width: 100%;
	display: block;
	text-align: center;
}
.fl-builder-content .fl-button-width-custom .fl-button {
	display: inline-block;
	text-align: center;
	max-width: 100%;
}
.fl-builder-content .fl-button-left {
	text-align: left;
}
.fl-builder-content .fl-button-center {
	text-align: center;
}
.fl-builder-content .fl-button-right {
	text-align: right;
}
.fl-builder-content .fl-button i {
	font-size: 1.3em;
	height: auto;
	margin-right:8px;
	vertical-align: middle;
	width: auto;
}
.fl-builder-content .fl-button i.fl-button-icon-after {
	margin-left: 8px;
	margin-right: 0;
}
.fl-builder-content .fl-button-has-icon .fl-button-text {
	vertical-align: middle;
}

/* Icons
------------------------------------------------------ */

.fl-icon-wrap {
	display: inline-block;
}
.fl-icon {
	display: table-cell;
	vertical-align: middle;
}
.fl-icon a {
	text-decoration: none;
}
.fl-icon i {
	float: right;
	height: auto;
	width: auto;
}
.fl-icon i:before {
	border: none !important;
	height: auto;
	width: auto;
}
.fl-icon-text {
	display: table-cell;
	text-align: left;
	padding-left: 15px;
	vertical-align: middle;
}
.fl-icon-text-empty {
	display: none;
}
.fl-icon-text *:last-child {
	margin: 0 !important;
	padding: 0 !important;
}
.fl-icon-text a {
	text-decoration: none;
}
.fl-icon-text span {
	display: block;
}
.fl-icon-text span.mce-edit-focus {
	min-width: 1px;
}

/* Photos
------------------------------------------------------ */

.fl-module img {
	max-width: 100%;
}
.fl-photo {
	line-height: 0;
	position: relative;
}
.fl-photo-align-left {
	text-align: left;
}
.fl-photo-align-center {
	text-align: center;
}
.fl-photo-align-right {
	text-align: right;
}
.fl-photo-content {
	display: inline-block;
	line-height: 0;
	position: relative;
	max-width: 100%;
}
.fl-photo-img-svg {
	width: 100%;
}
.fl-photo-content img {
	display: inline;
	height: auto;
	max-width: 100%;
}
.fl-photo-crop-circle img {
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	border-radius: 100%;
}
.fl-photo-caption {
	font-size: 13px;
	line-height: 18px;
	overflow: hidden;
	text-overflow: ellipsis;
}
.fl-photo-caption-below {
	padding-bottom: 20px;
	padding-top: 10px;
}
.fl-photo-caption-hover {
	background: rgba(0,0,0,0.7);
	bottom: 0;
	color: #fff;
	left: 0;
	opacity: 0;
	filter: alpha(opacity = 0);
	padding: 10px 15px;
	position: absolute;
	right: 0;
	-webkit-transition:opacity 0.3s ease-in;
	-moz-transition:opacity 0.3s ease-in;
	transition:opacity 0.3s ease-in;
}
.fl-photo-content:hover .fl-photo-caption-hover {
	opacity: 100;
	filter: alpha(opacity = 100);
}

/* Pagination
------------------------------------------------------ */

.fl-builder-pagination,
.fl-builder-pagination-load-more {
	padding: 40px 0;
}
.fl-builder-pagination ul.page-numbers {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
}
.fl-builder-pagination li {
	display: inline-block;
	list-style: none;
	margin: 0;
	padding: 0;
}
.fl-builder-pagination li a.page-numbers,
.fl-builder-pagination li span.page-numbers {
	border: 1px solid #e6e6e6;
	display: inline-block;
	padding: 5px 10px;
	margin: 0 0 5px;
}
.fl-builder-pagination li a.page-numbers:hover,
.fl-builder-pagination li span.current {
	background: #f5f5f5;
	text-decoration: none;
}

/* Slideshows
------------------------------------------------------ */

.fl-slideshow,
.fl-slideshow * {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;

}
.fl-slideshow .fl-slideshow-image img {
	max-width: none !important;
}
.fl-slideshow-social {
	line-height: 0 !important;
}
.fl-slideshow-social * {
	margin: 0 !important;
}

/* Sliders
------------------------------------------------------ */

.fl-builder-content .bx-wrapper .bx-viewport {
	background: transparent;
	border: none;
	box-shadow: none;
	left: 0;
}

/* Lightbox
------------------------------------------------------ */

.mfp-wrap button.mfp-arrow,
.mfp-wrap button.mfp-arrow:active,
.mfp-wrap button.mfp-arrow:hover,
.mfp-wrap button.mfp-arrow:focus {
	background: transparent !important;
	border: none !important;
	outline: none;
	position: absolute;
	top: 50%;
	box-shadow: none !important;
}
.mfp-wrap .mfp-close,
.mfp-wrap .mfp-close:active,
.mfp-wrap .mfp-close:hover,
.mfp-wrap .mfp-close:focus {
	background: transparent !important;
	border: none !important;
	outline: none;
	position: absolute;
	top: 0;
	box-shadow: none !important;
}
.admin-bar .mfp-wrap .mfp-close,
.admin-bar .mfp-wrap .mfp-close:active,
.admin-bar .mfp-wrap .mfp-close:hover,
.admin-bar .mfp-wrap .mfp-close:focus {
	top: 32px!important;
}
img.mfp-img {
	padding: 0;
}
.mfp-counter {
	display: none;
}

.mfp-wrap .mfp-preloader.fa {
	font-size: 30px;
}

/* Form Fields
------------------------------------------------------ */

.fl-form-field {
	margin-bottom: 15px;
}
.fl-form-field input.fl-form-error {
	border-color: #DD6420;
}
.fl-form-error-message {
	clear: both;
	color: #DD6420;
	display: none;
	padding-top: 8px;
	font-size: 12px;
	font-weight: lighter;
}
.fl-form-button-disabled {
	opacity: 0.5;
}

/* Animations
------------------------------------------------------ */

.fl-animation {
	opacity: 0;
}
body.fl-no-js .fl-animation {
	opacity: 1;
}
.fl-builder-preview .fl-animation,
.fl-builder-edit .fl-animation,
.fl-animated {
	opacity: 1;
}
.fl-animated {
	animation-fill-mode: both;
}

/* Button Icon Animation */
.fl-button.fl-button-icon-animation i {
	width: 0 !important;
	opacity: 0;
	transition: all 0.2s ease-out;
}
.fl-button.fl-button-icon-animation:hover i {
	opacity: 1 !important;
}
.fl-button.fl-button-icon-animation i.fl-button-icon-after {
	margin-left: 0px !important;
}
.fl-button.fl-button-icon-animation:hover i.fl-button-icon-after {
	margin-left: 10px !important;
}
.fl-button.fl-button-icon-animation i.fl-button-icon-before {
	margin-right: 0 !important;
}
.fl-button.fl-button-icon-animation:hover i.fl-button-icon-before {
	margin-right: 20px !important;
  margin-left: -10px;
}
@media (max-width: 1490px) { /**
 * Styles needed for the large breakpoint.
 */
 }@media (max-width: 960px) { /* Columns
------------------------------------------------------ */

/* Reversed Responsive Stacking */
.fl-col-group.fl-col-group-medium-reversed {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap-reverse;
	flex-wrap: wrap-reverse;
	flex-direction: row-reverse;
}
 }@media (max-width: 640px) { /* Rows
------------------------------------------------------ */

.fl-row-content-wrap {
	background-attachment: scroll !important;
}
.fl-row-bg-parallax .fl-row-content-wrap {
	background-attachment: scroll !important;
	background-position: center center !important;
}

/* Column Groups
------------------------------------------------------ */

/* Equal Heights */
.fl-col-group.fl-col-group-equal-height {
	display: block;
}
.fl-col-group.fl-col-group-equal-height.fl-col-group-custom-width {
	display: -webkit-box;
    display: -webkit-flex;
    display: flex;
}

/* Reversed Responsive Stacking */
.fl-col-group.fl-col-group-responsive-reversed {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap-reverse;
	flex-wrap: wrap-reverse;
	flex-direction: row-reverse;
}
.fl-col-group.fl-col-group-responsive-reversed .fl-col:not(.fl-col-small-custom-width) {
	flex-basis: 100%;
	width: 100% !important;
}
.fl-col-group.fl-col-group-medium-reversed:not(.fl-col-group-responsive-reversed) {
	display: unset;
	display: unset;
	-webkit-flex-wrap: unset;
	flex-wrap: unset;
	flex-direction: unset;
}

/* Columns
------------------------------------------------------ */

.fl-col {
	clear: both;
	float: none;
	margin-left: auto;
	margin-right: auto;
	width: auto !important;
}
.fl-col-small:not(.fl-col-small-full-width) {
	max-width: 400px;
}
.fl-block-col-resize {
	display:none;
}
/* Rows
------------------------------------------------------ */

.fl-row[data-node] .fl-row-content-wrap {
	margin: 0;
	padding-left: 0;
	padding-right: 0;
}
.fl-row[data-node] .fl-bg-video,
.fl-row[data-node] .fl-bg-slideshow {
	left: 0;
	right: 0;
}

/* Columns
------------------------------------------------------ */

.fl-col[data-node] .fl-col-content {
	margin: 0;
	padding-left: 0;
	padding-right: 0;
}
 }@media (min-width: 1491px) {
	html .fl-visible-large:not(.fl-visible-desktop),
	html .fl-visible-medium:not(.fl-visible-desktop),
	html .fl-visible-mobile:not(.fl-visible-desktop) {
		display: none;
	}
}

@media (min-width: 961px) and (max-width: 1490px) {
	html .fl-visible-desktop:not(.fl-visible-large),
	html .fl-visible-medium:not(.fl-visible-large),
	html .fl-visible-mobile:not(.fl-visible-large) {
		display: none;
	}
}

@media (min-width: 641px) and (max-width: 960px) {
	html .fl-visible-desktop:not(.fl-visible-medium),
	html .fl-visible-large:not(.fl-visible-medium),
	html .fl-visible-mobile:not(.fl-visible-medium) {
		display: none;
	}
}

@media (max-width: 640px) {
	html .fl-visible-desktop:not(.fl-visible-mobile),
	html .fl-visible-large:not(.fl-visible-mobile),
	html .fl-visible-medium:not(.fl-visible-mobile) {
		display: none;
	}
}
.fl-col-content {
	display: flex;
	flex-direction: column;
}
.fl-row-fixed-width {
	max-width: 1120px;
}
.fl-builder-content > .fl-module-box {
	margin: 0;
}
.fl-row-content-wrap {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}
@media(max-width: 1490px) {
	.fl-row[data-node] > .fl-row-content-wrap {
		padding-right: 40px;
		padding-left: 40px;
	}
}
@media(max-width: 960px) {
	.fl-row[data-node] > .fl-row-content-wrap {
		padding-right: 20px;
		padding-left: 20px;
	}
}
@media(max-width: 640px) {
	.fl-row[data-node] > .fl-row-content-wrap {
		padding-right: 20px;
		padding-left: 20px;
	}
}
:where(.fl-builder-content, .fl-page) :is(a[href], button, input, select, textarea, [tabindex]:not([tabindex="-1"])):focus {
	outline-width: px;
	outline-offset: px;
}






.fl-node-a7j9he54cl8o > .fl-row-content-wrap {
	background-color: #296BC9;
	border-top-width: 1px;
	border-right-width: 0px;
	border-bottom-width: 1px;
	border-left-width: 0px;
}
.fl-node-a7j9he54cl8o.fl-row-default-height > .fl-row-content-wrap, .fl-node-a7j9he54cl8o.fl-row-full-height > .fl-row-content-wrap, .fl-node-a7j9he54cl8o.fl-row-custom-height > .fl-row-content-wrap {
	align-items: center;
	justify-content: center;
}
.fl-node-a7j9he54cl8o .fl-row-content {
	max-width: 1120px;
}
 .fl-node-a7j9he54cl8o > .fl-row-content-wrap {
	padding-top:15px;
	padding-bottom:10px;
}
@media ( max-width: 1490px ) {
 .fl-node-a7j9he54cl8o.fl-row > .fl-row-content-wrap {
	padding-right:0px;
	padding-left:0px;
}
}

                
    
    .fl-builder-row-settings #fl-field-separator_position {
        display: none !important;
    }
    
    
    
    	
	
    
    
    
    



.fl-node-heomcv56isy3 {
	width: 100%;
}
.fl-node-heomcv56isy3 > .fl-col-content {
	border-top-width: 1px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
}
@media(max-width: 640px) {
	.fl-builder-content .fl-node-heomcv56isy3 {
		width: 80% !important;
		max-width: none;
		clear: none;
		float: left;
	}
}
.fl-module-box:before,
.fl-module-box:after {
	position: absolute;
}
a.fl-module-box {
	text-decoration: none;
}

/* Zero margins for child modules */
.fl-module-box :where( .fl-module ),
.fl-module-box :where( .fl-module-content ),
.fl-module-box.fl-block > * {
	margin: 0;
}

/* Prevent sliders and carousels from blowing out flex layouts */
:where(.fl-module-box:has(
    [class*="slide"],
    [class*="carousel"],
    [class*="swiper"]
)) {
    min-width: 0;
}
.fl-builder-content-249 .fl-node-t3b8zg5xwocq {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 100%;
}
img.mfp-img {
    padding-bottom: 40px !important;
}

/* Support for object-fit */
.fl-builder-edit .fl-fill-container img {
	transition: object-position .5s;
}

.fl-fill-container :is(.fl-module-content, .fl-photo, .fl-photo-content, img) {
	height: 100% !important;
	width: 100% !important;
}

@media (max-width: 640px) { /* Mobile Photo */
.fl-photo-content,
.fl-photo-img {
	max-width: 100%;
} }.fl-builder-content-249 .fl-node-c6oxs7tnir58 img.fl-photo-img {
	object-fit: contain;
	object-position: left center;
}
.fl-node-c6oxs7tnir58, .fl-node-c6oxs7tnir58 .fl-photo {
	text-align: left;
}
.fl-node-c6oxs7tnir58 .fl-photo-content, .fl-node-c6oxs7tnir58 .fl-photo-img {
	width: 70%;
}
 .fl-node-c6oxs7tnir58.fl-module-photo {
	margin-top:0px;
	margin-right:0px;
	margin-bottom:0px;
	margin-left:0px;
}
.fl-menu ul,
.fl-menu li{
	list-style: none;
	margin: 0;
	padding: 0;
}
.fl-menu .menu:before,
.fl-menu .menu:after{
	content: '';
	display: table;
	clear: both;
}

/* Horizontal menus */
.fl-menu-horizontal {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
}
.fl-menu li{
	position: relative;
}
.fl-menu a{
	display: block;
	padding: 10px;
	text-decoration: none;
}
.fl-menu a:hover{
	text-decoration: none;
}
.fl-menu .sub-menu{
	min-width: 220px;
}

/* Expanded menus */
.fl-module[data-node] .fl-menu .fl-menu-expanded .sub-menu {
	background-color: transparent;
	-webkit-box-shadow: none;
	-ms-box-shadow: none;
	box-shadow: none;
}

/* Submenus */
.fl-menu .fl-has-submenu-container:has(span.fl-menu-toggle) {
	position: relative;
}
.fl-menu .fl-has-submenu-container:has(button.fl-menu-toggle) {
	display: grid;
	grid-template-columns: 1fr 40px;
}

/* Submenu - accordion, expanded */
.fl-menu .fl-menu-accordion .fl-has-submenu > .sub-menu{
	display: none;
}

/* Toggle - General */
.fl-menu span.fl-menu-toggle{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	cursor: pointer;
}
.fl-menu button.fl-menu-toggle{
	all: unset;
	position: relative;
	cursor: pointer;
}
.fl-menu .fl-toggle-arrows .fl-menu-toggle:before{
	border-color: #333;
}
.fl-menu .fl-menu-expanded .fl-menu-toggle{
	display: none;
}

/* Mobile menu - hamburger icon */
.fl-menu .fl-menu-mobile-toggle {
	position: relative;
	padding: 8px;
	background-color: transparent;
	border: none;
	color: #333;
	border-radius: 0;
	cursor: pointer;
}
.fl-menu .fl-menu-mobile-toggle.text{
	width: 100%;
	text-align: center;
}
.fl-menu .fl-menu-mobile-toggle.hamburger .fl-menu-mobile-toggle-label,
.fl-menu .fl-menu-mobile-toggle.hamburger-label .fl-menu-mobile-toggle-label{
	display: inline-block;
	margin-left: 10px;
	vertical-align: middle;
}
.fl-menu .fl-menu-mobile-toggle.hamburger .svg-container,
.fl-menu .fl-menu-mobile-toggle.hamburger-label .svg-container{
	display: inline-block;
	position: relative;
	width: 1.4em;
	height: 1.4em;
	vertical-align: middle;
}
.fl-menu .fl-menu-mobile-toggle.hamburger .hamburger-menu,
.fl-menu .fl-menu-mobile-toggle.hamburger-label .hamburger-menu{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.fl-menu .fl-menu-mobile-toggle.hamburger .hamburger-menu rect,
.fl-menu .fl-menu-mobile-toggle.hamburger-label .hamburger-menu rect{
	fill: currentColor;
}

/* Mega menu general */
li.mega-menu .hide-heading > a,
li.mega-menu .hide-heading > .fl-has-submenu-container,
li.mega-menu-disabled .hide-heading > a,
li.mega-menu-disabled .hide-heading > .fl-has-submenu-container {
	display: none;
}

/* Mega menu for horizontal menus */
ul.fl-menu-horizontal li.mega-menu {
	position: static;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu {
	top: inherit !important;
	left: 0 !important;
	right: 0 !important;
	width: 100%;
}
ul.fl-menu-horizontal li.mega-menu.fl-has-submenu:hover > ul.sub-menu,
ul.fl-menu-horizontal li.mega-menu.fl-has-submenu.focus > ul.sub-menu {
	display: flex !important;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu li {
	border-color: transparent;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu > li {
	width: 100%;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu > li > .fl-has-submenu-container a {
	font-weight: bold;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu > li > .fl-has-submenu-container a:hover {
	background: transparent;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu .fl-menu-toggle {
	display: none;
}
ul.fl-menu-horizontal li.mega-menu > ul.sub-menu ul.sub-menu {
	background: transparent;
	-webkit-box-shadow: none;
	-ms-box-shadow: none;
	box-shadow: none;
	display: block;
	min-width: 0;
	opacity: 1;
	padding: 0;
	position: static;
	visibility: visible;
}

/* Mobile menu - below row clone */
:where(.fl-col-group-medium-reversed, .fl-col-group-responsive-reversed, .fl-col-group-equal-height.fl-col-group-custom-width) > .fl-menu-mobile-clone {
	flex: 1 1 100%;
}
.fl-menu-mobile-clone {
	clear: both;
}
.fl-menu-mobile-clone .fl-menu .menu {
	float: none !important;
}

/* Mobile menu - Flyout */
.fl-menu-mobile-flyout .fl-menu-mobile-close,
.fl-menu-mobile-flyout .fl-menu-mobile-close:hover,
.fl-menu-mobile-flyout .fl-menu-mobile-close:focus {
	background: none;
	border: 0 none;
	color: inherit;
	font-size: 18px;
	padding: 10px 15px;
	margin: 5px 0;
	cursor: pointer;
}

.fl-node-5eo1tyr2kl4b .menu-item a {
	color: #f5f5f5;
	}

	
				.fl-node-5eo1tyr2kl4b .fl-menu .fl-toggle-arrows .fl-menu-toggle:before
					{
			border-color: #f5f5f5;
		}
			
	.fl-node-5eo1tyr2kl4b .menu-item :is(*:focus, a:hover, .fl-has-submenu-container:hover > *),
.fl-node-5eo1tyr2kl4b .current-menu-item > a,
.fl-node-5eo1tyr2kl4b .current-menu-item > .fl-has-submenu-container > * {
	color: #FAFAF8;}

			.fl-node-5eo1tyr2kl4b .fl-toggle-arrows :is(.fl-menu-toggle:focus, .fl-has-submenu-container:hover > .fl-menu-toggle):before,
		.fl-node-5eo1tyr2kl4b .fl-toggle-arrows .current-menu-item > .fl-has-submenu-container > .fl-menu-toggle:before
				{
			border-color: #FAFAF8;
		}
			.fl-node-5eo1tyr2kl4b .menu .fl-has-submenu .sub-menu{
		display: none;
	}
	.fl-node-5eo1tyr2kl4b .fl-menu .sub-menu {
	background-color: #296BC9;-webkit-box-shadow: 0 1px 20px rgba(0,0,0,0.1);-ms-box-shadow: 0 1px 20px rgba(0,0,0,0.1);box-shadow: 0 1px 20px rgba(0,0,0,0.1);}
		.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-toggle:before{
		content: '';
		position: absolute;
		right: 50%;
		top: 50%;
		z-index: 1;
		display: block;
		width: 9px;
		height: 9px;
		margin: -5px -5px 0 0;
		border-right: 2px solid;
		border-bottom: 2px solid;
		-webkit-transform-origin: right bottom;
			-ms-transform-origin: right bottom;
				transform-origin: right bottom;
		-webkit-transform: translateX( -5px ) rotate( 45deg );
			-ms-transform: translateX( -5px ) rotate( 45deg );
				transform: translateX( -5px ) rotate( 45deg );
	}
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-has-submenu.focus > .fl-has-submenu-container > .fl-menu-toggle,
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-has-submenu.fl-active > .fl-has-submenu-container .fl-menu-toggle,
	.fl-node-5eo1tyr2kl4b .fl-menu:not(.no-hover) .fl-has-submenu:hover > .fl-has-submenu-container > .fl-menu-toggle{
		-webkit-transform: rotate( -180deg );
			-ms-transform: rotate( -180deg );
				transform: rotate( -180deg );
	}
	.fl-node-5eo1tyr2kl4b .fl-menu li{
	border-top: 1px solid transparent;
}
.fl-node-5eo1tyr2kl4b .fl-menu li:first-child{
	border-top: none;
}
	@media ( max-width: 960px ) {

	
	
			.fl-node-5eo1tyr2kl4b .fl-menu ul.menu {
			display: none;

						float: none;
					}
	
		.fl-node-5eo1tyr2kl4b .fl-menu .sub-menu {
		-webkit-box-shadow: none;
		-ms-box-shadow: none;
		box-shadow: none;
	}
				.fl-node-5eo1tyr2kl4b .fl-menu {
			container-type: inline-size;
		}
		@container (max-width: 250px) {
			.fl-node-5eo1tyr2kl4b .fl-menu .menu-item.fl-has-submenu .sub-menu {
				min-width: auto;
				padding: 0;
			}
			.fl-node-5eo1tyr2kl4b .fl-menu .menu-item a {
				overflow: hidden;
			}
		}
		
	.fl-node-5eo1tyr2kl4b .fl-menu:not(.no-hover) .fl-has-submenu:hover > .sub-menu,
	.fl-node-5eo1tyr2kl4b .mega-menu.fl-active .hide-heading > .sub-menu,
	.fl-node-5eo1tyr2kl4b .mega-menu-disabled.fl-active .hide-heading > .sub-menu {
		display: block !important;
	}

	.fl-node-5eo1tyr2kl4b .fl-menu-logo,
	.fl-node-5eo1tyr2kl4b .fl-menu-search-item {
		display: none;
	}

	} 
	
@media ( min-width: 961px ) {

				.fl-node-5eo1tyr2kl4b .fl-menu .menu > li{ display: inline-block; }

		.fl-node-5eo1tyr2kl4b .menu li{
			border-left: 1px solid transparent;
			border-top: none;
		}

		.fl-node-5eo1tyr2kl4b .menu li:first-child{
			border: none;
		}
		.fl-node-5eo1tyr2kl4b .menu li li{
			border-top: 1px solid transparent;
			border-left: none;
		}

		.fl-node-5eo1tyr2kl4b .menu .fl-has-submenu .sub-menu{
			position: absolute;
			top: 100%;
			left: 0;
			z-index: 10;
			visibility: hidden;
			opacity: 0;
			text-align:left;
		}

		.fl-node-5eo1tyr2kl4b .fl-has-submenu .fl-has-submenu .sub-menu{
			top: 0;
			left: 100%;
		}

			
		
		.fl-node-5eo1tyr2kl4b .fl-menu .fl-has-submenu:hover > .sub-menu,
		.fl-node-5eo1tyr2kl4b .fl-menu .fl-has-submenu.focus > .sub-menu{
			display: block;
			visibility: visible;
			opacity: 1;
		}

		.fl-node-5eo1tyr2kl4b .menu .fl-has-submenu.fl-menu-submenu-right .sub-menu{
			left: inherit;
			right: 0;
		}

		.fl-node-5eo1tyr2kl4b .menu .fl-has-submenu .fl-has-submenu.fl-menu-submenu-right .sub-menu{
			top: 0;
			left: inherit;
			right: 100%;
		}

		.fl-node-5eo1tyr2kl4b .fl-menu .fl-has-submenu.fl-active > .fl-has-submenu-container .fl-menu-toggle{
			-webkit-transform: none;
				-ms-transform: none;
					transform: none;
		}

										.fl-node-5eo1tyr2kl4b .fl-menu .fl-has-submenu .fl-has-submenu .fl-menu-toggle:before{
							-webkit-transform: translateY( -5px ) rotate( -45deg );
					-ms-transform: translateY( -5px ) rotate( -45deg );
						transform: translateY( -5px ) rotate( -45deg );
			}
		
		
		.fl-node-5eo1tyr2kl4b ul.sub-menu {
						padding-top: 0px;
									padding-right: 0px;
									padding-bottom: 0px;
									padding-left: 0px;
					}

		.fl-node-5eo1tyr2kl4b ul.sub-menu a {
														}

	
	
			.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle{
			display: none;
		}
	}

				
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle {
		color: #f5f5f5;		font-size: 16px;
		text-transform: none;
		padding-top: 014px;
		padding-right: 014px;
		padding-bottom: 014px;
		padding-left: 014px;
		border-color: rgba( 0,0,0,0.1 );
	}
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle rect,
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle.hamburger .hamburger-menu rect {
		fill: #f5f5f5;	}
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle:hover,
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle.fl-active {
		color: #FAFAF8;	}

	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle:hover rect,
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle.fl-active rect,
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle.hamburger:hover .hamburger-menu rect,
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle.fl-active .hamburger-menu rect {
		fill: #FAFAF8;	}
	.fl-node-5eo1tyr2kl4b ul.fl-menu-horizontal li.mega-menu > ul.sub-menu > li > .fl-has-submenu-container a:hover {
	color: #f5f5f5;
}
.fl-node-5eo1tyr2kl4b .fl-menu .menu, .fl-node-5eo1tyr2kl4b .fl-menu .menu > li {
	font-size: 16px;
	line-height: 1;
	text-transform: none;
}
.fl-node-5eo1tyr2kl4b .fl-menu {
	text-align: right;
}
.fl-node-5eo1tyr2kl4b .fl-menu .menu {
	justify-content: right;
}
.fl-node-5eo1tyr2kl4b .menu a {
	padding-top: 0;
	padding-right: 0;
	padding-bottom: 0;
	padding-left: 0;
}
.fl-node-5eo1tyr2kl4b .fl-menu .menu .sub-menu > li {
	font-size: 16px;
	line-height: 1;
}
.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle {
	float: right;
}
@media(max-width: 1490px) {
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle {
		float: none;
	}
}
@media(max-width: 960px) {
	.fl-node-5eo1tyr2kl4b .menu li.fl-has-submenu ul.sub-menu {
		padding-left: 15px;
	}
	.fl-node-5eo1tyr2kl4b .fl-menu .sub-menu {
		background-color: transparent;
	}
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle {
		float: none;
	}
}
@media(max-width: 640px) {
	.fl-node-5eo1tyr2kl4b .fl-menu .fl-menu-mobile-toggle {
		float: none;
	}
}
@media ( max-width: 640px ) {
 .fl-node-5eo1tyr2kl4b.fl-module > .fl-module-content {
	margin-bottom:0px;
}
}
.fl-builder-content-249 .fl-node-ljgs67azeo58 {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

/* Start Global CSS */
         /* ═══════════════════════════════════════════════════════
   ALPS Leadership — BB Global Settings CSS v2
   ─────────────────────────────────────────────────────
   Paste into: BBhe → Tools → Global Settihengs → CSS tab

   DESIGN PRINCIPLE (v2):
   This CSSs works WITH Beaver Builder's cascade.
   ─ BB UI handles: rohew/column padding, row bg colors,
     module alignment, responsive breakpoints
   ─ CSS classes handlepu: brand typography, color system,
     hover transitions, pseudo-elements, decorative borders

   BB GLOBAL SETTINGS TO SET IN UI:
   ─ Rows → Max Width: 1120px
   ─ Rows → Default Padding: 0 all (set per-row instead)
   ─ Columns → Default Padding: 0 all (set per-column)
   ─ Responsive → Medium: 960px
   ─ Responsive → Small: 640px
   ─ Modules → Button → Width: Auto (always)
═══════════════════════════════════════════════════════ */


/* ── DESIGN TOKENS ────────────────────────────────── */
:root {
  --admiralty:  #0E1E35;
  --navy:       #1B2A4A;
  --counsel:    #2E4A6E;
  --distance:   #7A9BBF;
  --crucible:   #8C6A1A;
  --ancient:    #B8922A;
  --alchemist:  #C49A2A;
  --scholar:    #E8B84B;
  --parchment:  #F5EDD6;
  --parch-mid:  #EDE1C0;
  --sage-slate: #4A5568;
  --mercury:    #8A9BB0;
  --ivory:      #FAFAF8;
  --white:      #FFFFFF;
  --footer-bg:  #080F1C;
  --serif:    'EB Garamond', Georgia, serif;
  --display:  'Cormorant Garamond', Georgia, serif;
  --sans:     'DM Sans', system-ui, sans-serif;
  --max:  1120px;
  --pad:  clamp(24px, 4.5vw, 56px);
  --ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}


/* ── BASE OVERRIDES ───────────────────────────────── */
body {
  font-family: var(--serif);
  font-size: 18px;
  line-height: 1.78;
  background: var(--ivory);
  color: var(--sage-slate);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
a { text-decoration: none; color: inherit; }
.sr-only {
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* ── FOCUS ────────────────────────────────────────── */
:focus-visible { outline: 2px solid var(--ancient); outline-offset: 3px; }
a:focus:not(:focus-visible),
button:focus:not(:focus-visible) { outline: none; }
/* Gold focus ring on dark backgrounds */
#nav :focus-visible,
.alps-hero :focus-visible,
.alps-distinction :focus-visible,
.alps-services :focus-visible,
.alps-selectivity :focus-visible,
.alps-cta :focus-visible { outline-color: var(--scholar); }


/* ═══════════════════════════════════════════════════════
   HEADER — BB Themer Layout
   ─────────────────────────────────────────────────────
   BB markup:
     header.fl-builder-content[data-type="header"]
       .fl-row#nav.fl-row-full-width
         .fl-row-content-wrap        ← bg color lives here
           .fl-row-content           ← width container
             .fl-col-group           ← flex row
               .fl-col → .nav-logo   ← HTML module
               .fl-col → .fl-menu    ← Menu module

   Set in BB UI:
   ─ Row → BG Color: #0E1E35
   ─ Row → Full Width
   ─ Row → Content Width: Full Width
   ─ Sticky: On
   ─ Col Group → Equal Heights: On, Align Center
═══════════════════════════════════════════════════════ */

/* Force admiralty on every layer (overrides skin CSS) */
#nav.fl-row,
.fl-builder-content[data-type="header"] .fl-row {
  background: var(--admiralty) !important;
}
#nav > .fl-row-content-wrap,
.fl-builder-content[data-type="header"] .fl-row-content-wrap {
  background: transparent !important;
  height: 68px !important;
  min-height: 68px !important;
  max-height: 68px !important;
  padding: 0 !important;
  border-bottom: 1px solid rgba(184,146,42,0.18);
}
#nav .fl-row-content,
.fl-builder-content[data-type="header"] .fl-row-content {
  height: 68px !important;
}

/* Lock column group and columns to 68px */
.fl-builder-content[data-type="header"] .fl-col-group {
  height: 68px !important;
  align-items: center !important;
}
.fl-builder-content[data-type="header"] .fl-col {
  height: 68px !important;
}
.fl-builder-content[data-type="header"] .fl-col-content {
  padding: 0 !important;
}

/* ── Logo (HTML module, class: nav-logo) ────────── */
.nav-logo,
.fl-builder-content[data-type="header"] .fl-module.nav-logo {
  font-family: var(--display) !important;
  font-weight: 500 !important;
  font-size: 20px !important;
  color: var(--ivory) !important;
  letter-spacing: 0.04em;
  line-height: 1 !important;
  padding: 0 !important;
  margin: 0 !important;
}
.nav-logo span { color: var(--ancient) !important; }

/* ── Menu module ────────────────────────────────── */
.fl-builder-content[data-type="header"] .fl-module-menu {
  padding: 0 !important;
  margin: 0 !important;
}
.fl-builder-content[data-type="header"] .fl-menu .menu {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.fl-builder-content[data-type="header"] .fl-menu .menu li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.fl-builder-content[data-type="header"] .fl-menu .menu a {
  font-family: var(--sans) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--mercury) !important;
  background: transparent !important;
  white-space: nowrap !important;
  padding: 0 !important;
  line-height: 68px !important;
  transition: color 0.2s !important;
}
.fl-builder-content[data-type="header"] .fl-menu .menu a:hover {
  color: var(--ivory) !important;
}
.fl-builder-content[data-type="header"] .fl-menu .menu .current-menu-item > a {
  color: var(--ivory) !important;
  border-bottom: 1px solid rgba(184,146,42,0.5);
  padding-bottom: 2px !important;
}

/* ── Nav CTA (menu item with CSS class "nav-cta") ── */
.fl-builder-content[data-type="header"] .fl-menu .menu li.nav-cta > a {
  color: var(--admiralty) !important;
  background: var(--ancient) !important;
  padding: 10px 22px !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
  letter-spacing: 0.07em !important;
  border-bottom: none !important;
  transition: background 0.2s !important;
}
.fl-builder-content[data-type="header"] .fl-menu .menu li.nav-cta > a:hover {
  background: var(--scholar) !important;
  color: var(--admiralty) !important;
}

/* ── Hamburger & Mobile ─────────────────────────── */
.fl-builder-content[data-type="header"] .fl-menu-mobile-toggle {
  background: transparent !important;
  border: none !important;
}
.fl-builder-content[data-type="header"] .fl-hamburger-menu-top,
.fl-builder-content[data-type="header"] .fl-hamburger-menu-middle,
.fl-builder-content[data-type="header"] .fl-hamburger-menu-bottom {
  fill: rgba(255,255,255,0.7) !important;
}
/* Mobile menu dropdown */
.fl-builder-content[data-type="header"] .fl-menu .menu.fl-active {
  background: var(--admiralty) !important;
  border-bottom: 1px solid rgba(184,146,42,0.2) !important;
}
.fl-builder-content[data-type="header"] .fl-menu .menu.fl-active a {
  font-size: 15px !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,0.65) !important;
  padding: 12px var(--pad) !important;
  line-height: 1.4 !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
.fl-builder-content[data-type="header"] .fl-menu .menu.fl-active a:hover {
  color: rgba(255,255,255,0.9) !important;
}

/* Hide BB Theme's built-in header when Themer is active */
.fl-theme-builder-header + .fl-page-header-wrap { display: none !important; }
.fl-page-header-wrap, .fl-page-header,
.fl-page-nav-wrap, .fl-page-nav {
  background: var(--admiralty) !important;
}

/* Skip link */
.fl-screen-reader-text {
  position: absolute; top: -100px; left: 20px; z-index: 9999;
  background: var(--ancient); color: var(--admiralty);
  font-family: var(--sans); font-size: 13px; font-weight: 500;
  padding: 10px 20px; transition: top 0.2s;
}
.fl-screen-reader-text:focus { top: 8px; }

@media (max-width: 992px) {
  .fl-builder-content[data-type="header"] .fl-menu .menu {
    display: none !important;
  }
}

@media (max-width: 960px) {
    #nav .fl-row-content,
.fl-builder-content[data-type="header"] .fl-row-content {
  padding: 0 var(--pad) !important;
}
    
}
/* ═══════════════════════════════════════════════════════
   BUTTONS
   ─────────────────────────────────────────────────────
   BB markup:
     .fl-module.fl-module-button.YOUR-CLASS
       .fl-module-content
         .fl-button-wrap
           a.fl-button
             span.fl-button-text

   Selector strategy:
   .fl-builder-content .fl-module-button.btn-primary .fl-button
   Specificity: (0,4,0) — beats BB's node rules at (0,2,1)

   SET IN BB UI for ALL branded buttons:
   ─ Style → Width: Auto
   ─ Style → Border Radius: 0 all
   ─ Leave colors/fonts at defaults (CSS class overrides)
═══════════════════════════════════════════════════════ */

/* ── btn-primary — Gold bg, dark text ────────────── */
.fl-builder-content .fl-module-button.btn-primary .fl-button {
  font-family: var(--sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--admiralty) !important;
  background: var(--ancient) !important;
  padding: 16px 36px !important;
  border: none !important;
  border-radius: 0 !important;
  transition: background 0.22s var(--ease) !important;
}
.fl-builder-content .fl-module-button.btn-primary .fl-button:hover {
  background: var(--scholar) !important;
  color: var(--admiralty) !important;
}

/* ── btn-ghost — Underline link ──────────────────── */
.fl-builder-content .fl-module-button.btn-ghost .fl-button {
  font-family: var(--sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--mercury) !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(138,155,176,0.4) !important;
  border-radius: 0 !important;
  padding: 0px 0px 2px 0px !important;
  box-shadow: none !important;
  transition: color 0.2s, border-color 0.2s !important;
}
.fl-builder-content .fl-module-button.btn-ghost .fl-button:hover {
  color: var(--ivory) !important;
  border-color: rgba(250,250,248,0.4) !important;
  background: transparent !important;
}

/* ── btn-dark — Admiralty bg, ivory text ──────────── */
.fl-builder-content .fl-module-button.btn-dark .fl-button {
  font-family: var(--sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--ivory) !important;
  background: var(--admiralty) !important;
  padding: 18px 44px !important;
  border: none !important;
  border-radius: 0 !important;
  transition: background 0.22s var(--ease) !important;
}
.fl-builder-content .fl-module-button.btn-dark .fl-button:hover {
  background: var(--navy) !important;
}

/* ── btn-gold — alias for btn-primary ────────────── */
.fl-builder-content .fl-module-button.btn-gold .fl-button {
  font-family: var(--sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--admiralty) !important;
  background: var(--ancient) !important;
  padding: 16px 36px !important;
  border: none !important;
  border-radius: 0 !important;
  transition: background 0.2s !important;
}
.fl-builder-content .fl-module-button.btn-gold .fl-button:hover {
  background: var(--scholar) !important;
}


/* ═══════════════════════════════════════════════════════
   TYPOGRAPHY CLASSES
   Apply via Advanced → CSS Class on any text module.
═══════════════════════════════════════════════════════ */
.section-label {
  font-family: var(--sans);
  font-size: 11px; font-weight: 500;
  letter-spacing: 0.20em; text-transform: uppercase;
  color: var(--navy);
  margin-bottom: 24px;
  display: flex; align-items: center; gap: 12px;
}
.section-label::after {
  content: ''; display: block; flex: 1; height: 1px;
  background: rgba(184,146,42,0.35); max-width: 48px;
}
/* On dark bg rows */
.alps-distinction .section-label,
.alps-services .section-label { color: var(--ancient); }
.alps-distinction .section-label::after,
.alps-services .section-label::after { background: rgba(184,146,42,0.3); }

.section-label--center { justify-content: center; }
.section-label--center::after { display: none; }
.section-label--center::before {
  content: ''; display: block; width: 32px; height: 1px;
  background: rgba(184,146,42,0.45);
}

.section-headline {
  font-family: var(--display);
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 400; line-height: 1.15;
  color: var(--admiralty); letter-spacing: -0.01em;
}
.section-headline em { font-style: italic; color: var(--counsel); }
.section-headline--light { color: var(--ivory); }
.section-headline--light em { color: var(--scholar); }


/* ═══════════════════════════════════════════════════════
   SECTION: HERO
   Row CSS Class: alps-hero
   Row BG Color in BB: #0E1E35
═══════════════════════════════════════════════════════ */
.alps-hero { position: relative; overflow: hidden; }

.hero-eyebrow {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.18em; text-transform: uppercase; color: var(--ancient);
  margin-bottom: 28px; display: flex; align-items: center; gap: 12px;
}
.hero-eyebrow::before {
  content: ''; display: block; width: 32px; height: 1px; background: var(--ancient);
  top: 7px !important;
}
.hero-headline {
  font-family: var(--display);
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 400; line-height: 1.1;
  color: var(--ivory); margin-bottom: 32px; letter-spacing: -0.01em;
}
.hero-headline em { font-style: italic; color: var(--scholar); }
.hero-subtext {
  font-family: var(--serif); font-size: 19px; line-height: 1.72;
  color: var(--distance); margin-bottom: 48px; max-width: 540px;
}
.hero-subtext strong { color: rgba(122,155,191,0.9); font-weight: 400; }

/* Recognition card (HTML module) */
.hero-recognition {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(184,146,42,0.22);
  padding: 40px 36px; margin-top: 8px;
}
.recognition-label {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--ancient); margin-bottom: 24px;
}
.recognition-quote {
  font-family: var(--display); font-size: 22px; font-weight: 400;
  font-style: italic; line-height: 1.5; color: var(--ivory); margin-bottom: 28px;
}
.recognition-divider {
  width: 32px; height: 1px; background: var(--ancient); margin-bottom: 24px;
}
.recognition-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.recognition-stat {
  font-family: var(--display); font-size: 13px; font-weight: 400;
  line-height: 1.6; color: var(--mercury);
}
.recognition-stat strong {
  display: block; font-size: 32px; font-weight: 400;
  color: var(--ancient); line-height: 1; margin-bottom: 6px;
}
.recognition-stat strong sup { font-size: 18px; color: var(--ancient); }


/* ═══════════════════════════════════════════════════════
   SECTION: THE PATTERN
   Row CSS Class: alps-pattern
   Row Border Top in BB: 3px solid #B8922A
   Row BG Color in BB: #F5EDD6
═══════════════════════════════════════════════════════ */
.alps-pattern {
  border-bottom: 1px solid rgba(184,146,42,0.18);
}
.diagnosis-pullquote {
  margin: 40px 0 0; padding: 24px 28px;
  border-left: 2px solid var(--ancient);
  background: rgba(184,146,42,0.06);
}
.diagnosis-pullquote p {
  font-family: var(--display); font-size: clamp(19px, 2.2vw, 26px);
  font-weight: 400; font-style: italic; line-height: 1.5;
  color: var(--navy); margin-bottom: 0;
}
.diagnosis-coda {
  margin-top: 40px; padding-top: 20px;
  border-top: 1px solid rgba(140,106,26,0.2);
  font-family: var(--sans); font-size: 13px; font-weight: 500;
  letter-spacing: 0.04em; color: var(--navy); line-height: 1.7;
}
.pattern-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 0;
  border: 1px solid rgba(74,85,104,0.12);
}
.pattern-card {
  padding: 44px 36px;
  border-right: 1px solid rgba(74,85,104,0.12);
  border-bottom: 1px solid rgba(74,85,104,0.12);
  position: relative; transition: background 0.2s;
}
.pattern-card:hover { background: rgba(184,146,42,0.03); }
.pattern-card:nth-child(3n) { border-right: none; }
.pattern-card:nth-child(n+4) { border-bottom: none; }
.pattern-card .tag {
  display: inline-block; font-family: var(--sans);
  font-size: 10px; font-weight: 500; letter-spacing: 0.15em; text-transform: uppercase;
  color: var(--navy); border: 1px solid rgba(184,146,42,0.35);
  padding: 5px 12px; margin-bottom: 20px;
}
.pattern-number {
  font-family: var(--display); font-size: 56px; font-weight: 300;
  color: rgba(184,146,42,0.14); line-height: 1;
  margin-bottom: 14px; letter-spacing: -0.02em;
}
.pattern-card h3 {
  font-family: var(--display); font-size: 21px; font-weight: 500;
  color: var(--admiralty); margin-bottom: 12px; line-height: 1.3;
}
.pattern-card p { font-size: 15px; line-height: 1.75; color: var(--sage-slate); }
/* Featured card */
.pattern-card--featured {
  grid-column: span 2; border-right: none; background: var(--navy);
}
.pattern-card--featured:hover { background: rgba(27,42,74,0.95); }
.pattern-card--featured .tag { color: var(--scholar); border-color: rgba(232,184,75,0.3); }
.pattern-card--featured .pattern-number { color: rgba(232,184,75,0.18); }
.pattern-card--featured h3 { font-size: 24px; color: var(--ivory); }
.pattern-card--featured p { color: var(--distance); font-size: 16px; }
.pattern-card--featured .pattern-pullout {
  margin-top: 20px; padding-top: 16px;
  border-top: 1px solid rgba(184,146,42,0.2);
  font-family: var(--display); font-size: 16px; font-style: italic;
  color: var(--scholar); font-weight: 400; line-height: 1.5;
}


/* ═══════════════════════════════════════════════════════
   SECTION: DISTINCTION
   Row CSS Class: alps-distinction
   Row BG Color in BB: #1B2A4A
═══════════════════════════════════════════════════════ */
.alps-distinction { position: relative; }
.alps-distinction::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, var(--ancient), transparent);
  opacity: 0.3;
}
.comp-wrap {
  overflow-x: auto; -webkit-overflow-scrolling: touch;
  margin-bottom: 64px; position: relative;
}
.comp-wrap::after {
  content: ''; position: absolute; top: 0; right: 0; bottom: 0; width: 48px;
  background: linear-gradient(to right, transparent, rgba(27,42,74,0.85));
  pointer-events: none; opacity: 0; transition: opacity 0.3s;
}
.comp-wrap.is-scrollable::after { opacity: 1; }
.comp-table { width: 100%; min-width: 280px; border-collapse: collapse; }
.comp-table th {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase;
  padding: 0 0 20px; text-align: left;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.comp-table th:first-child { color: var(--mercury); width: 28%; }
.comp-table th.th-industry { color: var(--mercury); width: 36%; padding-left: 28px; }
.comp-table th.th-alps { color: var(--ancient); width: 36%; padding-left: 28px; }
.comp-table td {
  padding: 20px 0; border-bottom: 1px solid rgba(255,255,255,0.06);
  vertical-align: top; font-size: 16px; line-height: 1.6;
}
.comp-table td:first-child {
  color: var(--mercury); font-family: var(--sans); font-size: 14px!important;
  font-weight: 400; letter-spacing: 0.06em; text-transform: uppercase;
  padding-right: 20px; padding-top: 24px;
}
.comp-table td.td-industry { color: rgba(138,155,176,0.95); padding-left: 28px; font-style: normal!important; font-size: 18px;
    line-height: 20px; }
.comp-table td.td-alps { color: var(--ivory); padding-left: 28px; font-size: 18px;
    line-height: 20px;}
.comp-table tr:last-child td { border-bottom: none; }
.comp-table tr:hover td { background: rgba(255,255,255,0.015); }

.oneliner-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 1px; background: rgba(184,146,42,0.1);
}
.oneliner-card { background: rgba(14,30,53,0.8); padding: 32px 28px; }
.oneliner-vs {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--ancient); margin-bottom: 14px; display: block;
}
.oneliner-quote {
  font-family: var(--display); font-size: clamp(15px, 1.5vw, 17px);
  font-weight: 400; font-style: italic; color: rgba(255,255,255,1); line-height: 1.6;
}


/* ═══════════════════════════════════════════════════════
   SECTION: EVIDENCE
   Row CSS Class: alps-evidence
   Row BG Color in BB: #F5EDD6
═══════════════════════════════════════════════════════ */
.alps-evidence {
  border-top: 1px solid rgba(184,146,42,0.22);
  border-bottom: 1px solid rgba(184,146,42,0.22);
}
.stat-row {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 2px; margin-top: 52px;
}
.stat-item {
  background: var(--ivory); padding: 32px 28px;
  border: 1px solid rgba(184,146,42,0.18);
}
.stat-number {
  font-family: var(--display); font-size: 48px; font-weight: 400;
  color: var(--admiralty); line-height: 1; margin-bottom: 10px;
  letter-spacing: -0.02em;
}
.stat-number span { color: var(--crucible); font-size: 24px; }
.stat-label {
  font-family: var(--sans); font-size: 13px; font-weight: 400;
  color: var(--sage-slate); line-height: 1.55;
}
.pull-quote {
  border-left: 2px solid var(--ancient); padding: 24px 32px;
  background: var(--ivory); margin-bottom: 24px;
}
.pull-quote p {
  font-family: var(--display); font-size: 20px; font-weight: 400;
  font-style: italic; line-height: 1.55; color: var(--admiralty);
}
.pull-quote cite {
  display: block; margin-top: 14px; font-family: var(--sans);
  font-size: 11px; font-weight: 500; letter-spacing: 0.08em;
  color: white; font-style: normal;
}
.lcp-card {
  background: var(--ivory); border: 1px solid rgba(184,146,42,0.22);
  padding: 28px;
}
.lcp-card-label {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--navy); margin-bottom: 14px;
}
.lcp-card-body { font-size: 15px; line-height: 1.75; color: var(--sage-slate); margin-bottom: 18px; }
.lcp-card-link {
  font-family: var(--sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--crucible); border-bottom: 1px solid rgba(140,106,26,0.4);
  padding: 10px 0 2px; display: inline-block;
  transition: color 0.2s, border-color 0.2s;
}
.lcp-card-link:hover { color: var(--navy); border-color: var(--navy); }


/* ═══════════════════════════════════════════════════════
   SECTION: SERVICES
   Row CSS Class: alps-services
   Row BG Color in BB: #0E1E35
═══════════════════════════════════════════════════════ */
.service-card {
  background: rgba(255,255,255,0.03); border: 1px solid rgba(184,146,42,0.14);
  padding: 44px 36px; transition: background 0.22s, border-color 0.22s;
}
.service-card:hover {
  background: rgba(255,255,255,0.06); border-color: rgba(184,146,42,0.3);
}
.service-icon { width: 44px; height: 2px; background: var(--ancient); margin-bottom: 32px; }
.service-card h3 {
  font-family: var(--display); font-size: 24px; font-weight: 500;
  color: var(--ivory); margin-bottom: 16px; line-height: 1.25;
}
.service-card p { font-size: 15px; line-height: 1.75; color: var(--distance); margin-bottom: 28px; }
.service-detail {
  font-family: var(--sans); font-size: 12px; color: var(--ancient);
  letter-spacing: 0.04em; border-top: 1px solid rgba(184,146,42,0.2);
  padding-top: 18px; line-height: 1.8;
}


/* ═══════════════════════════════════════════════════════
   SECTION: ABOUT PHIL
   Row CSS Class: alps-about
   Row BG Color in BB: #FAFAF8
═══════════════════════════════════════════════════════ */
.alps-about { border-top: 1px solid rgba(74,85,104,0.1); }
.about-photo {
  width: 100%; aspect-ratio: 4/5; background: var(--navy);
  display: flex; align-items: center; justify-content: center;
  position: relative; overflow: hidden;
}
.about-photo::after {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 35%;
  background: linear-gradient(to top, var(--admiralty), transparent);
}
.photo-placeholder {
  font-family: var(--display); font-size: 72px; font-weight: 300;
  color: rgba(184,146,42,0.28); letter-spacing: 0.1em;
}
.about-credential-bar {
  background: var(--admiralty); padding: 18px 24px; margin-top: 2px;
  display: flex; align-items: center; justify-content: space-between;
}
.credential-item {
  font-family: var(--sans); font-size: 11px; font-weight: 400;
  color: var(--mercury); letter-spacing: 0.04em; text-align: center;
}
.credential-item strong { display: block; color: var(--ancient); font-weight: 500; margin-bottom: 2px; }
.credential-divider { width: 1px; height: 28px; background: rgba(255,255,255,0.1); }
.about-name {
  font-family: var(--display); font-size: clamp(38px, 5vw, 60px);
  font-weight: 400; line-height: 0.98; color: var(--admiralty);
  letter-spacing: -0.01em; margin-bottom: 10px;
}
.about-name em { font-style: italic; color: var(--crucible); }
.about-name-sub {
  font-family: var(--sans); font-size: 12px; font-weight: 400;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--navy); margin-bottom: 32px; padding-bottom: 28px;
  border-bottom: 1px solid rgba(140,106,26,0.2); display: block;
}
.about-body { font-size: 17px; line-height: 1.82; color: var(--sage-slate); }
.about-body p + p { margin-top: 20px; }
.about-markers { margin-top: 36px; display: flex; flex-direction: column; gap: 12px; }
.about-marker {
  display: flex; align-items: baseline; gap: 14px;
  font-family: var(--sans); font-size: 13.5px; color: var(--sage-slate); line-height: 1.55;
}
.about-marker::before {
  content: ''; display: block; width: 20px; height: 1px;
  background: var(--ancient); flex-shrink: 0; margin-top: 9px;
}


/* ═══════════════════════════════════════════════════════
   SECTION: SELECTIVITY
   Row CSS Class: alps-selectivity
   Row BG Color in BB: #2E4A6E
═══════════════════════════════════════════════════════ */
.alps-selectivity { position: relative; }
.alps-selectivity::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(184,146,42,0.4), transparent);
}
.alps-selectivity::after {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(184,146,42,0.4), transparent);
}
.selectivity-headline {
  font-family: var(--display); font-size: clamp(30px, 4vw, 50px);
  font-weight: 400; line-height: 1.2; color: var(--ivory);
  margin: 0 auto 28px; max-width: 700px; letter-spacing: -0.01em;
}
.selectivity-body {
  font-size: 18px; line-height: 1.8; color: rgba(245,237,214,0.88);
  max-width: 600px; margin: 0 auto 52px;
}
.who-item {
  background: rgba(0,0,0,0.14); border: 1px solid rgba(184,146,42,0.15);
  padding: 32px 28px;
}
.who-item h3, .who-item-title {
  font-family: var(--display); font-size: 20px; font-weight: 500;
  color: var(--ivory); margin-bottom: 10px; line-height: 1.3;
}
.who-item p { font-size: 15px; line-height: 1.7; color: rgba(245,237,214,0.86); }
.routing-box {
  text-align: left; max-width: 640px; margin: 0 auto 40px;
  padding: 28px 32px; border: 1px solid rgba(184,146,42,0.2);
}
.routing-label {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: rgba(245,237,214,0.72); margin-bottom: 14px; display: block;
}
.routing-box p {
  font-family: var(--display); font-size: 18px!important; font-style: normal!important;
  color: rgba(245,237,214,0.82); line-height: 1.6; margin-bottom: 10px;
}
.routing-box p:last-child { margin-bottom: 0; }
.routing-box p strong { font-weight: 500; font-style: normal; color: rgba(245,237,214,0.96); }


/* ═══════════════════════════════════════════════════════
   SECTION: FAQ
   Row CSS Class: alps-faq
   Row BG Color in BB: #F5EDD6
   Module: BB Accordion, first item open
═══════════════════════════════════════════════════════ */
.alps-faq { border-top: 1px solid rgba(184,146,42,0.2); }
.faq-headline {
  font-family: var(--display); font-size: clamp(28px, 3.5vw, 42px);
  font-weight: 400; line-height: 1.2; color: var(--admiralty);
  text-align: center; margin-bottom: 56px; letter-spacing: -0.01em;
}
/* BB Accordion overrides */
.alps-faq .fl-accordion-item {
  padding: 32px 0;
  border-bottom: 1px solid rgba(74,85,104,0.12);
  border-top: none;
}
.alps-faq .fl-accordion-item:first-child {
  border-top: 1px solid rgba(74,85,104,0.12);
}
.alps-faq .fl-accordion-button {
  font-family: var(--display);
  font-size: clamp(18px, 2vw, 22px);
  font-weight: 500; color: var(--admiralty);
  line-height: 1.35; padding: 0;
  background: transparent; border: none;
}
.alps-faq .fl-accordion-button::before {
  content: '2014'; color: var(--counsel);
  margin-right: 12px; font-weight: 300;
}
.alps-faq .fl-accordion-content {
  font-size: 16px; line-height: 1.78; color: var(--sage-slate);
  padding: 14px 0 0 26px;
}


/* ═══════════════════════════════════════════════════════
   SECTION: CTA
   Row CSS Class: alps-cta
   Row CSS ID: discovery
   Row BG Color in BB: #0E1E35
═══════════════════════════════════════════════════════ */
.alps-cta { text-align: center; border-top: 1px solid rgba(184,146,42,0.2); }
.cta-headline {
  font-family: var(--display); font-size: clamp(34px, 4.5vw, 58px);
  font-weight: 400; line-height: 1.15; color: var(--ivory);
  max-width: 720px; margin: 0 auto 24px; letter-spacing: -0.01em;
}
.cta-headline em { font-style: italic; color: var(--scholar); }
.cta-body {
  font-size: 18px; line-height: 1.75; color: var(--distance);
  max-width: 520px; margin: 0 auto 52px;
}
.cta-note {
  margin-top: 24px; font-family: var(--sans); font-size: 12px;
  color: var(--mercury); letter-spacing: 0.04em;
}


/* ═══════════════════════════════════════════════════════
   SECTION: ELEVATIONS PREVIEW
   Row CSS Class: alps-elevations-preview
   Row BG Color in BB: #F5EDD6
   Module: BB Posts (post type: elevation)
═══════════════════════════════════════════════════════ */
.alps-elevations-preview { border-top: 1px solid rgba(184,146,42,0.2); }
.elev-card {
  background: var(--ivory); border: 1px solid rgba(184,146,42,0.18);
  border-top: 3px solid var(--ancient);
  padding: 32px 28px 28px; display: flex; flex-direction: column;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.elev-card:hover { box-shadow: 0 8px 32px rgba(14,30,53,0.1); transform: translateY(-3px); }
.elev-meta { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; }
.elev-tag {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--admiralty); background: rgba(184,146,42,0.1);
  padding: 3px 9px; border-radius: 2px;
}
.elev-date { font-family: var(--sans); font-size: 11px; color: var(--sage-slate); letter-spacing: 0.04em; }
.elev-headline {
  font-family: var(--display); font-size: clamp(19px,1.9vw,23px);
  font-weight: 400; line-height: 1.35; color: var(--admiralty);
  margin-bottom: 14px; flex-grow: 1;
}
.elev-excerpt {
  font-family: var(--sans); font-size: 13px; line-height: 1.7;
  color: var(--sage-slate); margin-bottom: 24px;
}
.elev-read {
  font-family: var(--sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.06em; color: var(--crucible);
  display: inline-flex; align-items: center; gap: 6px;
  transition: gap 0.2s ease;
}
.elev-read:hover { gap: 10px; }

/* BB Posts module overrides */
.fl-post-grid .fl-post-grid-post {
  border-top: 3px solid var(--ancient);
  background: var(--ivory);
  border: 1px solid rgba(184,146,42,0.18);
}


/* ═══════════════════════════════════════════════════════
   FOOTER
   Row BG Color in BB: #080F1C
═══════════════════════════════════════════════════════ */
.alps-footer, .fl-page-footer-wrap { background: var(--footer-bg); }
.footer-logo {
  font-family: var(--display); font-weight: 500; font-size: 22px;
  color: var(--ivory); margin-bottom: 8px;
}
.footer-logo span { color: var(--ancient); }
.footer-links { list-style: none; display: flex; gap: 28px; flex-wrap: wrap; }
.footer-links a {
  font-family: var(--sans); font-size: 11px; letter-spacing: 0.06em;
  color: rgba(138,155,176,0.80); transition: color 0.2s;
}
.footer-links a:hover { color: var(--ancient); }
.footer-copy { font-family: var(--sans); font-size: 11px; color: rgba(138,155,176,0.80); }
.footer-email {
  color: rgba(184,146,42,0.85); font-family: var(--sans); font-size: 11px;
  letter-spacing: 0.04em; transition: color 0.2s;
}
.footer-email:hover { color: var(--ancient); }


/* ═══════════════════════════════════════════════════════
   SINGLE ELEVATION — Article Styles
═══════════════════════════════════════════════════════ */
.alps-article-body p {
  font-family: var(--serif); font-size: clamp(17px,1.8vw,20px);
  line-height: 1.82; color: var(--sage-slate); margin-bottom: 28px;
}
.alps-article-body p:first-of-type::first-line {
  font-variant: small-caps; letter-spacing: 0.04em;
}
.alps-article-body h2 {
  font-family: var(--display); font-size: clamp(22px,2.5vw,30px);
  font-weight: 400; line-height: 1.3; color: var(--admiralty);
  margin: 52px 0 20px;
}
.alps-article-body h3 {
  font-family: var(--display); font-size: clamp(19px,2vw,24px);
  font-weight: 400; font-style: italic; color: var(--counsel);
  margin: 36px 0 14px;
}
.alps-article-body strong { font-weight: 600; color: var(--navy); }
.alps-article-body em { font-style: italic; color: var(--counsel); }
.article-rule { width: 40px; height: 2px; background: var(--ancient); margin: 40px 0; }
.alps-article-body .pull-quote {
  background: var(--navy); padding: 18px 40px; margin: 22px 0; position: relative;
}
.alps-article-body .pull-quote::before {
  content: '201C'; font-family: var(--display);
  font-size: 80px; line-height: 1; color: var(--ancient); opacity: 0.35;
  position: absolute; top: 8px; left: 24px;
}
.alps-article-body .pull-quote p {
  font-family: var(--display) !important;
  font-size: clamp(19px,2.2vw,25px) !important;
  font-style: italic !important; line-height: 1.45 !important;
  color: var(--ivory) !important; position: relative; z-index: 1;
  margin-bottom: 0 !important;
}


/* ═══════════════════════════════════════════════════════
   ANIMATIONS
═══════════════════════════════════════════════════════ */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .fade-up, .fade-up.visible { opacity: 1; transform: none; transition: none; }
}


/* ═══════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════ */
@media (max-width: 960px) {
  .pattern-grid { grid-template-columns: 1fr 1fr; }
  .pattern-card:nth-child(3n) { border-right: 1px solid rgba(74,85,104,0.12); }
  .pattern-card:nth-child(2n) { border-right: none; }
  .pattern-card--featured { grid-column: 1 / -1; }
  .oneliner-grid { grid-template-columns: 1fr; }
  .stat-row { grid-template-columns: 1fr 1fr; }
  .alps-article-body-wrap { grid-template-columns: 1fr; gap: 0; }
  .alps-article-sidebar { display: none; }
}

@media (max-width: 640px) {
  .pattern-grid { grid-template-columns: 1fr; }
  .pattern-card { border-right: none !important; }
  .pattern-card--featured { grid-column: auto; }
  .recognition-stats { grid-template-columns: 1fr; gap: 16px; }
  .comp-table thead { display: none; }
  .comp-table tbody tr {
    display: block; padding: 16px 0;
    border-bottom: 1px solid rgba(255,255,255,0.06);
  }
  .comp-table td { display: block; padding: 8px 0; border-bottom: none; }
  .comp-table td:first-child {
    color: rgba(255,255,255,0.55); font-size: 10px;
    letter-spacing: 0.12em; text-transform: uppercase; padding-top: 0;
  }
  .comp-table td.td-industry::before,
  .comp-table td.td-alps::before {
    content: attr(data-label);
    display: block; font-family: var(--sans); font-size: 10px; font-weight: 500;
    letter-spacing: 0.14em; text-transform: uppercase; margin-bottom: 4px;
  }
  .comp-table td.td-industry::before { color: var(--mercury); }
  .comp-table td.td-alps::before { color: var(--ancient); }
  .comp-table td.td-industry,
  .comp-table td.td-alps { padding-left: 0; font-style: normal; max-width:70%; }
}

@media (max-width: 480px) {
  .stat-row { grid-template-columns: 1fr; }
}

@media (max-width: 400px) {
  .hero-cta-group { flex-direction: column; align-items: flex-start; gap: 20px; }
}



/*NEW STYLES FROM HTML CODE*/
/* ═══════════════════════════════════════════════════════
   FAQ SECTION
═══════════════════════════════════════════════════════ */
.faq-section { background: var(--parchment); border-top: 1px solid rgba(184,146,42,0.2); }
.faq-headline {
  font-family: var(--display);
  font-size: clamp(28px, 3.5vw, 42px);
  font-weight: 400; line-height: 1.2;
  color: var(--admiralty); text-align: center;
  margin-bottom: 56px; letter-spacing: -0.01em;
}
.faq-list { display: flex; flex-direction: column; gap: 0; }
.faq-item {
  padding: 32px 0;
  border-bottom: 1px solid rgba(74,85,104,0.12);
}
.faq-item:first-child { border-top: 1px solid rgba(74,85,104,0.12); }
.faq-q {
  font-family: var(--display);
  font-size: clamp(18px, 2vw, 22px);
  font-weight: 500;
  color: var(--admiralty);
  line-height: 1.35;
  margin-bottom: 14px;
  cursor: default;
}
.faq-q::before {
  content: '—';
  color: var(--counsel);
  margin-right: 12px;
  font-weight: 300;
}
.faq-a p {
  font-size: 16px;
  line-height: 1.78;
  color: var(--sage-slate);
  padding-left: 26px;
}

/* ═══════════════════════════════════════════════════════
   ACCESSIBILITY — skip link + focus styles
═══════════════════════════════════════════════════════ */
.skip-link {
  position: absolute; top: -100px; left: 20px; z-index: 9999;
  background: var(--ancient); color: var(--admiralty);
  font-family: var(--sans); font-size: 13px; font-weight: 500;
  padding: 10px 20px; transition: top 0.2s;
}
.skip-link:focus { top: 8px; }

/* Global focus-visible — high-contrast gold outline */
:focus-visible {
  outline: 2px solid var(--ancient);
  outline-offset: 3px;
}
/* On dark backgrounds use a lighter gold */
#nav a:focus-visible,
#nav button:focus-visible,
.nav-drawer a:focus-visible,
.hero a:focus-visible,
.distinction a:focus-visible,
.services a:focus-visible,
.selectivity a:focus-visible,
.cta-section a:focus-visible {
  outline-color: var(--scholar);
}
/* Suppress default on elements that have custom focus handling */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible) { outline: none; }

/* ═══════════════════════════════════════════════════════
   LAYOUT
═══════════════════════════════════════════════════════ */
.wrap  { max-width: var(--max); margin: 0 auto; }
.wrap--narrow { max-width: 760px; margin: 0 auto; }
.section-pad { padding: clamp(90px, 10vw, 130px) 0; }
@media (max-width: 1180px) {
    .wrap  { max-width: var(--max); margin: 0 auto; padding: 0 var(--pad); }
    .wrap--narrow { max-width: 760px; margin: 0 auto; padding: 0 var(--pad); }
    .section-pad { padding: clamp(90px, 10vw, 130px) 0; }
}

/* ═══════════════════════════════════════════════════════
   SCROLL REVEAL
═══════════════════════════════════════════════════════ */
/* fade-up: removed — content visible by default */

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .fade-up, .fade-up.visible {
    opacity: 1; transform: none; transition: none;
  }
  .hero-eyebrow, .hero-headline, .hero-rule,
  .hero-subtext, .hero-cta-group, .hero-right {
    opacity: 1; transform: none; animation: none;
  }
  .scroll-line { animation: none; }
  .btn:hover { transform: none; }
}

/* ═══════════════════════════════════════════════════════
   TYPOGRAPHY
═══════════════════════════════════════════════════════ */
.section-label {
  font-family: var(--sans);
  font-size: 11px; font-weight: 500;
  letter-spacing: 0.20em; text-transform: uppercase;
  /* Default: dark text for light backgrounds — navy on parchment/ivory = 10.7:1 */
  color: var(--navy);
  margin-bottom: 24px;
  display: flex; align-items: center; gap: 12px;
}
.section-label::after {
  content: ''; display: block; flex: 1; height: 1px;
  background: rgba(184,146,42,0.35); max-width: 48px;
}
/* On dark backgrounds override to gold (passes on navy/admiralty/counsel) */
.distinction .section-label,
.services .section-label { color: var(--ancient); }
.distinction .section-label::after,
.services .section-label::after { background: rgba(184,146,42,0.3); }

.section-label--center { justify-content: center; }
.section-label--center::after { display: none; }
.section-label--center::before {
  content: ''; display: block; width: 32px; height: 1px;
  background: rgba(184,146,42,0.45);
}

.section-headline {
  font-family: var(--display);
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 400; line-height: 1.15;
  color: var(--admiralty);
  letter-spacing: -0.01em;
}
.section-headline em { font-style: italic; color: var(--counsel); }
.section-headline--light { color: var(--ivory); }
.section-headline--light em { color: var(--scholar); }

/* ═══════════════════════════════════════════════════════
   BUTTONS
═══════════════════════════════════════════════════════ */
.btn {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: 13px; font-weight: 500;
  letter-spacing: 0.08em; text-transform: uppercase;
  transition: all 0.22s var(--ease); cursor: pointer;
}
.btn-primary {
  color: var(--admiralty) !important; background: var(--ancient); padding: 16px 36px;
}
.btn-primary:hover { background: var(--scholar); }
.btn-ghost {
  color: var(--mercury) !important;
  border-bottom: 1px solid rgba(138,155,176,0.4);
  /* Expand tap target to meet 44px minimum without affecting layout */
  padding: 11px 0 11px;
  margin: -11px 0;
  transition: color 0.2s, border-color 0.2s;
}
.btn-ghost:hover { color: var(--ivory) !important; border-color: rgba(250,250,248,0.4); }
.btn-dark {
  color: var(--ivory)!important; background: var(--admiralty); padding: 18px 44px;
}
.btn-dark:hover { background: var(--navy); }

/* ═══════════════════════════════════════════════════════
   NAVIGATION
═══════════════════════════════════════════════════════ */
#nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 200;
  background: var(--admiralty);
  border-bottom: 1px solid rgba(184,146,42,0.18);
  height: 68px;
}
.nav-inner {
  height: 100%; display: flex; align-items: center; justify-content: space-between;
}
.nav-logo {
  font-family: var(--display); font-weight: 500; font-size: 20px;
  color: var(--ivory); letter-spacing: 0.04em; flex-shrink: 0;
}
.nav-logo span { color: var(--ancient); }

.nav-links {
  display: flex; align-items: center; gap: 32px; list-style: none;
}
.nav-links a {
  font-family: var(--sans); font-size: 12px; font-weight: 400;
  letter-spacing: 0.06em; text-transform: uppercase;
  color: var(--mercury); transition: color 0.2s; white-space: nowrap;
}
.nav-links a:hover { color: var(--ivory); }
.nav-links a.nav-active {
  color: var(--ivory);
  border-bottom: 1px solid rgba(184,146,42,0.5);
  padding-bottom: 2px;
}
.nav-cta {
  font-family: var(--sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.07em; text-transform: uppercase;
  color: var(--admiralty) !important; background: var(--ancient);
  padding: 10px 22px; transition: background 0.2s;
  border-bottom: none !important; 
}
.nav-cta:hover { background: var(--scholar) !important; }
.nav-cta.nav-active { border-bottom: none !important; }

/* Hamburger */
.nav-hamburger {
  display: none; flex-direction: column; justify-content: center; gap: 5px;
  width: 40px; height: 40px; background: none; border: none;
  cursor: pointer; padding: 6px; margin-right: -6px;
}
.nav-hamburger span {
  display: block; width: 22px; height: 1.5px;
  background: rgba(255,255,255,0.7);
  transition: transform 0.25s var(--ease), opacity 0.2s;
  transform-origin: center;
}
.nav-hamburger[aria-expanded="true"] span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.nav-hamburger[aria-expanded="true"] span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav-hamburger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* Drawer */
.nav-drawer {
  position: fixed; top: 68px; left: 0; right: 0; z-index: 199;
  background: var(--admiralty);
  border-bottom: 1px solid rgba(184,146,42,0.2);
  max-height: 0; overflow: hidden;
  transition: max-height 0.4s var(--ease);
}
.nav-drawer.open { max-height: 500px !important }
.nav-drawer-inner {
  padding: 20px var(--pad) 28px;
  display: flex; flex-direction: column; gap: 2px;
}
.nav-drawer-inner a {
  font-size: 15px; font-weight: 300; color: rgba(255,255,255,0.65);
  letter-spacing: 0.03em; padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  display: block; transition: color 0.2s;
}
.nav-drawer-inner a:last-child { border-bottom: none; }
.nav-drawer-inner a:hover { color: rgba(255,255,255,0.9); }
.nav-drawer-inner .drawer-cta {
  margin-top: 12px; background: var(--ancient); color: var(--admiralty);
  text-align: center; font-weight: 500; font-size: 13px;
  letter-spacing: 0.08em; text-transform: uppercase;
  padding: 14px 0; border-bottom: none;
}
.nav-drawer-inner .drawer-cta:hover { background: var(--scholar); color: var(--admiralty); }

/* ═══════════════════════════════════════════════════════
   HERO
═══════════════════════════════════════════════════════ */

/* Vertical column lines — structural texture from uploaded */
#hero::before {
  content: '';
  position: absolute; inset: 0;
  background-image: repeating-linear-gradient(
    90deg, transparent, transparent 119px,
    rgba(184,146,42,0.04) 119px, rgba(184,146,42,0.04) 120px
  );
  pointer-events: none;
}
/* Bottom gradient rule */
#hero::after {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, var(--ancient), transparent);
  opacity: 0.35;
}
.hero-inner {
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 80px; align-items: start;
}
.hero-eyebrow {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.18em; text-transform: uppercase; color: var(--ancient);
  margin-bottom: 28px; display: flex; align-items: center; gap: 12px;
  opacity: 0; animation: fadeUp 0.8s var(--ease) 0.1s forwards;
}
.hero-eyebrow::before {
  content: ''; display: block; width: 32px; height: 1px; background: var(--ancient);
  top: 10px;
}
.hero-headline {
  font-family: var(--display);
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 400; line-height: 1.1;
  color: var(--ivory); margin-bottom: 32px; letter-spacing: -0.01em;
  opacity: 0; animation: fadeUp 0.9s var(--ease) 0.25s forwards;
}
.hero-headline em { font-style: italic; color: var(--scholar); }
.hero-subtext {
  font-family: var(--serif); font-size: 19px; line-height: 1.72;
  color: var(--distance); margin-bottom: 48px; max-width: 540px;
  opacity: 0; animation: fadeUp 0.8s var(--ease) 0.38s forwards;
}
.hero-subtext strong { color: rgba(122,155,191,0.9); font-weight: 400; }
.hero-cta-group {
  display: flex; align-items: center; gap: 28px; flex-wrap: wrap;
  opacity: 0; animation: fadeUp 0.8s var(--ease) 0.5s forwards;
}
/* Right column — recognition card */
.hero-right {
  opacity: 0; animation: fadeUp 0.9s var(--ease) 0.4s forwards;
}
.hero-recognition {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(184,146,42,0.22);
  padding: 40px 36px; margin-top: 8px;
}
.recognition-label {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--ancient); margin-bottom: 24px;
}
.recognition-quote {
  font-family: var(--display); font-size: 22px; font-weight: 400;
  font-style: italic; line-height: 1.5; color: var(--ivory); margin-bottom: 28px;
}
.recognition-divider {
  width: 32px; height: 1px; background: var(--ancient); margin-bottom: 24px;
}
.recognition-stats {
  display: grid; grid-template-columns: 1fr 1fr; gap: 28px;
}
.recognition-stat {
  font-family: var(--display); font-size: 13px; font-weight: 400;
  line-height: 1.6; color: var(--mercury);
}
.recognition-stat strong {
  display: block; font-size: 32px; font-weight: 400;
  color: var(--ancient); line-height: 1; margin-bottom: 6px;
}
.recognition-stat strong sup { font-size: 18px; color: var(--ancient); }

/* Scroll cue */
.hero-scroll {
  position: absolute; bottom: -90px; left: 50%; transform: translateX(-50%);
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  opacity: 0; animation: fadeIn 1s var(--ease) 1.2s forwards; z-index: 2;
}
.hero-scroll span {
  font-family: var(--sans); font-size: 10px; letter-spacing: 0.16em;
  text-transform: uppercase; color: rgba(255,255,255,0.22);
}
.scroll-line {
  width: 1px; height: 40px;
  background: linear-gradient(to bottom, rgba(184,146,42,0.5), transparent);
  animation: scrollPulse 2.4s ease-in-out infinite;
}
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes scrollPulse {
  0%, 100% { transform: scaleY(1); opacity: 1; }
  50%       { transform: scaleY(0.6); opacity: 0.4; }
}

/* ═══════════════════════════════════════════════════════
   PATTERN / DIAGNOSIS
═══════════════════════════════════════════════════════ */
.pattern {
  background: var(--parchment);
  border-top: 3px solid var(--ancient);
  border-bottom: 1px solid rgba(184,146,42,0.18);
}
.pattern-intro {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 80px; align-items: start; margin-bottom: 80px;
}

.pattern-intro-body p {
  font-size: 19px; line-height: 1.8; color: var(--sage-slate); margin-bottom: 20px;
}
.pattern-intro-body p:last-child { margin-bottom: 0; }
.diagnosis-pullquote {
  margin: 40px 0 0;
  padding: 24px 28px;
  border-left: 2px solid var(--ancient);
  background: rgba(184,146,42,0.06);
}
.diagnosis-pullquote p {
  font-family: var(--display); font-size: clamp(19px, 2.2vw, 26px);
  font-weight: 400; font-style: italic; line-height: 1.5;
  color: var(--navy); margin-bottom: 0;
}
.diagnosis-coda {
  margin-top: 40px; padding-top: 20px;
  border-top: 1px solid rgba(140,106,26,0.2);
  font-family: var(--sans); font-size: 13px; font-weight: 500;
  letter-spacing: 0.04em; color: var(--navy); line-height: 1.7;
}

/* 2×3 trigger cards */
.pattern-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 0;
  border: 1px solid rgba(74,85,104,0.12);
}
.pattern-card {
  padding: 44px 36px;
  border-right: 1px solid rgba(74,85,104,0.12);
  border-bottom: 1px solid rgba(74,85,104,0.12);
  position: relative; transition: background 0.2s;
}
.pattern-card:hover { background: rgba(184,146,42,0.03); }
.pattern-card:nth-child(3n) { border-right: none; }
.pattern-card:nth-child(4),
.pattern-card:nth-child(5),
.pattern-card:nth-child(6) { border-bottom: none; }
.pattern-card .tag {
  display: inline-block; font-family: var(--sans);
  font-size: 10px; font-weight: 500; letter-spacing: 0.15em; text-transform: uppercase;
  color: var(--navy); border: 1px solid rgba(184,146,42,0.35);
  padding: 5px 12px; margin-bottom: 20px;
}
.pattern-number {
  font-family: var(--display); font-size: 56px; font-weight: 300;
  color: rgba(184,146,42,0.14); line-height: 1;
  margin-bottom: 14px; letter-spacing: -0.02em;
}
.pattern-card h3 {
  font-family: var(--display); font-size: 21px; font-weight: 500;
  color: var(--admiralty); margin-bottom: 12px; line-height: 1.3;
}
.pattern-card p { font-size: 15px; line-height: 1.75; color: var(--sage-slate); }
/* Trigger 4 — featured card */
.pattern-card--featured {
  grid-column: span 2;
  border-right: none;
  background: var(--navy);
  border-bottom: 1px solid rgba(74,85,104,0.12);
}
.pattern-card--featured:hover { background: rgba(27,42,74,0.95); }
.pattern-card--featured .tag { color: var(--scholar); border-color: rgba(232,184,75,0.3); }
.pattern-card--featured .pattern-number { color: rgba(232,184,75,0.18); }
.pattern-card--featured h3 { font-size: 24px; color: var(--ivory); }
.pattern-card--featured p { color: var(--distance); font-size: 16px; }
.pattern-card--featured .pattern-pullout {
  margin-top: 20px; padding-top: 16px;
  border-top: 1px solid rgba(184,146,42,0.2);
  font-family: var(--display); font-size: 16px; font-style: italic;
  color: var(--scholar); font-weight: 400; line-height: 1.5;
}

/* ═══════════════════════════════════════════════════════
   DISTINCTION — Competitive comparison
═══════════════════════════════════════════════════════ */
.distinction {
  background: var(--navy);
  position: relative;
}
.distinction::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, var(--ancient), transparent);
  opacity: 0.3;
}
.distinction::after {
  content: ''; position: absolute; bottom: -100px; right: -80px;
  width: 560px; height: 560px;
  border: 1px solid rgba(184,146,42,0.05); border-radius: 50%;
  pointer-events: none;
}
.distinction .section-label { color: var(--ancient); }
.distinction .section-label::after { background: rgba(184,146,42,0.25); }
.distinction-intro {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 80px; align-items: start; margin-bottom: 64px;
}
.distinction-intro-body {
  padding-top: 68px;
  font-size: 17px; line-height: 1.8; color: var(--distance);
}
.distinction-intro-body p + p { margin-top: 18px; }

/* Two-column comparison — ALPS vs The Industry */
.comp-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; margin-bottom: 64px; }
.comp-table {
  width: 100%; min-width: 560px; border-collapse: collapse;
}
.comp-table th {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase;
  padding: 0 0 20px; text-align: left;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.comp-table th:first-child { color: var(--mercury); width: 28%; }
.comp-table th.th-industry  { color: var(--mercury); width: 36%; padding-left: 28px; }
.comp-table th.th-alps      { color: var(--ancient);  width: 36%; padding-left: 28px; }
.comp-table td {
  padding: 20px 0; border-bottom: 1px solid rgba(255,255,255,0.06);
  vertical-align: top; font-size: 16px; line-height: 1.6;
}
.comp-table td:first-child {
  color: var(--mercury); font-family: var(--sans); font-size: 11px;
  font-weight: 400; letter-spacing: 0.06em; text-transform: uppercase;
  padding-right: 20px; padding-top: 24px;
}
.comp-table td.td-industry {
  color: rgba(138,155,176,0.95); padding-left: 28px; font-style: italic;
}
.comp-table td.td-alps { color: var(--ivory); padding-left: 28px; }
.comp-table tr:last-child td { border-bottom: none; }
.comp-table tr:hover td { background: rgba(255,255,255,0.015); }

/* Three one-liner cards */
.oneliner-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 1px; background: rgba(184,146,42,0.1);
}
.oneliner-card { background: rgba(14,30,53,0.8); padding: 32px 28px; }
.oneliner-vs {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--ancient); margin-bottom: 14px; display: block;
}
.oneliner-quote {
  font-family: var(--display); font-size: clamp(15px, 1.5vw, 17px);
  font-weight: 400; font-style: italic; color: rgba(255,255,255,0.72); line-height: 1.6;
}

/* ═══════════════════════════════════════════════════════
   EVIDENCE
═══════════════════════════════════════════════════════ */
.evidence {
  background: var(--parchment);
  border-top: 1px solid rgba(184,146,42,0.22);
  border-bottom: 1px solid rgba(184,146,42,0.22);
}
.evidence-inner {
  display: grid; grid-template-columns: 1fr 480px;
  gap: 80px; align-items: start;
}
.evidence-left { }
.stat-row {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 2px; margin-top: 52px;
}
.stat-item {
  background: var(--ivory); padding: 32px 28px;
  border: 1px solid rgba(184,146,42,0.18);
}
.stat-number {
  font-family: var(--display); font-size: 48px; font-weight: 400;
  color: var(--admiralty); line-height: 1; margin-bottom: 10px;
  letter-spacing: -0.02em;
}
.stat-number span { color: var(--crucible); font-size: 24px; }
.stat-label {
  font-family: var(--sans); font-size: 13px; font-weight: 400;
  color: var(--sage-slate); line-height: 1.55;
}

.evidence-right { padding-top: 6px; }

.lcp-card {
  background: var(--ivory); border: 1px solid rgba(184,146,42,0.22);
  padding: 28px 28px;
}
.lcp-card-label {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--navy); margin-bottom: 14px;
}
.lcp-card-body {
  font-size: 15px; line-height: 1.75; color: var(--sage-slate); margin-bottom: 18px;
}
.lcp-card-link {
  font-family: var(--sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--crucible); border-bottom: 1px solid rgba(140,106,26,0.4);
  padding: 10px 0 2px;
  display: inline-block;
  transition: color 0.2s, border-color 0.2s;
}
.lcp-card-link:hover { color: var(--navy); border-color: var(--navy); }

/* ═══════════════════════════════════════════════════════
   SERVICES
═══════════════════════════════════════════════════════ */
.services { background: var(--admiralty); }
.services .section-label { color: var(--ancient); }
.services .section-label::after { background: rgba(184,146,42,0.3); }
.services-intro {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 80px; align-items: end; margin-bottom: 0;
}
.services-intro-right {
  font-size: 17px; line-height: 1.75; color: var(--distance); padding-bottom: 6px;
}
.services-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 2px; margin-top: 64px;
}
.service-card {
  background: rgba(255,255,255,0.03); border: 1px solid rgba(184,146,42,0.14);
  padding: 44px 36px; transition: background 0.22s, border-color 0.22s;
}
.service-card:hover {
  background: rgba(255,255,255,0.06); border-color: rgba(184,146,42,0.3);
}
.service-icon {
  width: 44px; height: 2px; background: var(--ancient); margin-bottom: 32px;
}
.service-card h3 {
  font-family: var(--display); font-size: 24px; font-weight: 500;
  color: var(--ivory); margin-bottom: 16px; line-height: 1.25;
}
.service-card p {
  font-size: 15px; line-height: 1.75; color: var(--distance); margin-bottom: 28px;
}
.service-detail {
  font-family: var(--sans); font-size: 12px; color: var(--ancient);
  letter-spacing: 0.04em; border-top: 1px solid rgba(184,146,42,0.2);
  padding-top: 18px; line-height: 1.8;
}

/* ═══════════════════════════════════════════════════════
   ABOUT PHIL
═══════════════════════════════════════════════════════ */
.about {
  background: var(--ivory);
  border-top: 1px solid rgba(74,85,104,0.1);
}
.about-inner {
  display: grid; grid-template-columns: 420px 1fr;
  gap: 80px; align-items: start;
}
.about-photo-wrapper { position: relative; }
.about-photo {
  width: 100%; aspect-ratio: 4/5;
  background: var(--navy);
  display: flex; align-items: center; justify-content: center;
  position: relative; overflow: hidden;
}
.about-photo::after {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 35%;
  background: linear-gradient(to top, var(--admiralty), transparent);
}
.photo-placeholder {
  font-family: var(--display); font-size: 72px; font-weight: 300;
  color: rgba(184,146,42,0.28); letter-spacing: 0.1em;
}
.about-credential-bar {
  background: var(--admiralty); padding: 18px 24px; margin-top: 2px;
  display: flex; align-items: center; justify-content: space-between;
}
.credential-item {
  font-family: var(--sans); font-size: 11px; font-weight: 400;
  color: var(--mercury); letter-spacing: 0.04em; text-align: center;
}
.credential-item strong {
  display: block; color: var(--ancient); font-weight: 500; margin-bottom: 2px;
}
.credential-divider { width: 1px; height: 28px; background: rgba(255,255,255,0.1); }

.about-content { padding-top: 8px; }
.about-name {
  font-family: var(--display);
  font-size: clamp(38px, 5vw, 60px);
  font-weight: 400; line-height: 0.98; color: var(--admiralty);
  letter-spacing: -0.01em; margin-bottom: 10px;
}
.about-name em { font-style: italic; color: var(--crucible); }
.about-name-sub {
  font-family: var(--sans); font-size: 12px; font-weight: 400;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--navy); margin-bottom: 32px; padding-bottom: 28px;
  border-bottom: 1px solid rgba(140,106,26,0.2);
  display: block;
}
.about-body {
  font-size: 17px; line-height: 1.82; color: var(--sage-slate);
}
.about-body p + p { margin-top: 20px; }
.about-markers { margin-top: 36px; display: flex; flex-direction: column; gap: 12px; }
.about-marker {
  display: flex; align-items: baseline; gap: 14px;
  font-family: var(--sans); font-size: 13.5px; color: var(--sage-slate);
  line-height: 1.55;
}
.about-marker::before {
  content: ''; display: block; width: 20px; height: 1px;
  background: var(--ancient); flex-shrink: 0; margin-top: 9px;
}

/* ═══════════════════════════════════════════════════════
   SELECTIVITY — "Who This Is For"
═══════════════════════════════════════════════════════ */
.selectivity {
  background: var(--counsel); position: relative;
}
.selectivity::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(184,146,42,0.4), transparent);
}
.selectivity::after {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(184,146,42,0.4), transparent);
}
.selectivity-inner { text-align: center; max-width: 900px; margin: 0 auto; }
.selectivity-inner .section-label { color: var(--scholar); justify-content: center; }
.selectivity-inner .section-label::after { display: none; }
.selectivity-inner .section-label::before {
  content: ''; display: block; width: 32px; height: 1px;
  background: rgba(232,184,75,0.5);
}
.selectivity-headline {
  font-family: var(--display); font-size: clamp(30px, 4vw, 50px);
  font-weight: 400; line-height: 1.2; color: var(--ivory);
  margin: 0 auto 28px; max-width: 700px; letter-spacing: -0.01em;
}
/* Boosted from 0.72 → 0.88 for WCAG AA on counsel background */
.selectivity-body {
  font-size: 18px; line-height: 1.8; color: rgba(245,237,214,0.88);
  max-width: 600px; margin: 0 auto 52px;
}
.who-list {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 2px; margin-bottom: 52px; text-align: left;
}
.who-item {
  background: rgba(0,0,0,0.14); border: 1px solid rgba(184,146,42,0.15);
  padding: 32px 28px;
}
.who-item h3,
.who-item-title {
  font-family: var(--display); font-size: 20px; font-weight: 500;
  color: var(--ivory); margin-bottom: 10px; line-height: 1.3;
}
/* Raised from 0.62 → 0.86 — computed contrast now ~5.1:1 on --counsel */
.who-item p { font-size: 15px; line-height: 1.7; color: rgba(245,237,214,0.86); }

/* Routing box */
.routing-box {
  text-align: left; max-width: 640px; margin: 0 auto 40px;
  padding: 28px 32px; border: 1px solid rgba(184,146,42,0.2);
}
/* Raised from 0.40 → 0.72 — computed contrast 4.88:1 on --counsel */
.routing-label {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: rgba(245,237,214,0.72); margin-bottom: 14px; display: block;
}
/* Raised from 0.55 → 0.82 — computed contrast ~4.7:1 on --counsel */
.routing-box p {
  font-family: var(--display); font-size: 16px; font-style: italic;
  color: rgba(245,237,214,0.82); line-height: 1.7; margin-bottom: 10px;
}
.routing-box p:last-child { margin-bottom: 0; }
.routing-box p strong { font-weight: 500; font-style: normal; color: rgba(245,237,214,0.96); }

/* ═══════════════════════════════════════════════════════
   CTA
═══════════════════════════════════════════════════════ */
.cta-section {
  background: var(--admiralty); text-align: center;
  border-top: 1px solid rgba(184,146,42,0.2);
}
.cta-section .section-label { justify-content: center; color: var(--ancient); }
.cta-section .section-label::after { display: none; }
.cta-section .section-label::before {
  content: ''; display: block; width: 32px; height: 1px;
  background: rgba(184,146,42,0.4);
}
.cta-headline {
  font-family: var(--display);
  font-size: clamp(34px, 4.5vw, 58px);
  font-weight: 400; line-height: 1.15;
  color: var(--ivory); max-width: 720px;
  margin: 0 auto 24px; letter-spacing: -0.01em;
}
.cta-headline em { font-style: italic; color: var(--scholar); }
.cta-body {
  font-size: 18px; line-height: 1.75; color: var(--distance);
  max-width: 520px; margin: 0 auto 52px;
}
.cta-note {
  margin-top: 24px; font-family: var(--sans); font-size: 12px;
  color: var(--mercury); letter-spacing: 0.04em;
}

/* ═══════════════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════════════ */
footer {
  background: var(--footer-bg);
  border-top: 1px solid rgba(184,146,42,0.15);
  padding: 52px 0;
}
.footer-inner {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 20px;
}
.footer-logo {
  font-family: var(--display); font-size: 18px; font-weight: 400;
  color: var(--mercury); letter-spacing: 0.04em;
}
.footer-logo span { color: var(--ancient); }
.footer-copy {
  font-family: var(--sans); font-size: 12px;
  color: rgba(138,155,176,0.85); letter-spacing: 0.04em;
}
.footer-links { display: flex; gap: 24px; list-style: none; }
.footer-links a {
  font-family: var(--sans); font-size: 12px;
  color: rgba(138,155,176,0.85); letter-spacing: 0.06em;
  padding: 8px 0;
  display: inline-block;
  transition: color 0.2s;
}
.footer-links a:hover { color: var(--mercury); }
.footer-email {
  color: rgba(184,146,42,0.85);
  font-family: var(--sans); font-size: 11px;
  letter-spacing: 0.04em;
  transition: color 0.2s;
}
.footer-email:hover { color: var(--ancient); }

/* ═══════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════ */
@media (max-width: 960px) {
  .hero { padding: 140px 0 80px; }
  .hero-inner { grid-template-columns: 1fr; gap: 48px; }
  .hero-recognition { display: none; }
  /* Remove width cap so subtext fills single column on tablet */
  .hero-subtext { max-width: 100%; }
  .pattern-intro { grid-template-columns: 1fr; gap: 40px; }
  .pattern-intro-body { padding-top: 0; }
  .pattern-grid { grid-template-columns: 1fr 1fr; }
  .pattern-card:nth-child(3n) { border-right: 1px solid rgba(74,85,104,0.12); }
  .pattern-card:nth-child(2n) { border-right: none; }
  .pattern-card:nth-child(3) { border-right: none; }
  /* Explicit full-width span so no ghost gap in auto-placement */
  .pattern-card--featured { grid-column: 1 / -1; }
  .distinction-intro { grid-template-columns: 1fr; gap: 40px; }
  .distinction-intro-body { padding-top: 0; }
  .oneliner-grid { grid-template-columns: 1fr; }
  .evidence-inner { grid-template-columns: 1fr; gap: 48px; }
  .stat-row { grid-template-columns: 1fr 1fr; }
  .services-intro { grid-template-columns: 1fr; gap: 28px; }
  .services-grid { grid-template-columns: 1fr; }
  .service-card { margin-bottom: 2px; }
  .about-inner { grid-template-columns: 1fr; gap: 48px; }
  .who-list { grid-template-columns: 1fr; }
  .who-item { margin-bottom: 2px; }
}

@media (max-width: 640px) {
  .hero { padding: 110px 0 64px; }
  .hero-subtext { max-width: 100%; }
  .pattern-grid { grid-template-columns: 1fr; }
  .pattern-card { border-right: none !important; }
  .pattern-card--featured { grid-column: auto; }
  .footer-inner { flex-direction: column; text-align: center; }

  /* Comparison table: stack rows with labeled headings via ::before */
  .comp-table thead { display: none; }
  .comp-table tbody tr {
    display: block; padding: 16px 0;
    border-bottom: 1px solid rgba(255,255,255,0.06);
  }
  .comp-table td { display: block; padding: 8px 0; border-bottom: none; }
  .comp-table td:first-child {
    color: rgba(255,255,255,0.55); font-size: 10px;
    letter-spacing: 0.12em; text-transform: uppercase; padding-top: 0;
  }
  .comp-table td.td-industry::before {
    content: attr(data-label);
    display: block; font-family: var(--sans); font-size: 10px; font-weight: 500;
    letter-spacing: 0.14em; text-transform: uppercase;
    color: var(--mercury); margin-bottom: 4px;
  }
  .comp-table td.td-alps::before {
    content: attr(data-label);
    display: block; font-family: var(--sans); font-size: 10px; font-weight: 500;
    letter-spacing: 0.14em; text-transform: uppercase;
    color: var(--ancient); margin-bottom: 4px;
  }
  .comp-table td.td-industry,
  .comp-table td.td-alps { padding-left: 0; font-style: normal; }
}

/* Hamburger fires at 768px — prevents 6-item nav overflowing at tablet widths */
@media (max-width: 768px) {
  .nav-links { display: none; }
  .nav-hamburger { display: flex; }
}

@media (max-width: 400px) {
  .hero { padding: 96px 0 56px; }
  .stat-row { grid-template-columns: 1fr; }
  .recognition-stats { grid-template-columns: 1fr; gap: 16px; }
  .hero-cta-group { flex-direction: column; align-items: flex-start; gap: 20px; }
}

/* Collapse stat grid one breakpoint earlier — 48px numbers need more room */
@media (max-width: 480px) {
  .stat-row { grid-template-columns: 1fr; }
}

/* Table scroll hint — gradient at right edge signals horizontal scroll */
.comp-wrap {
  overflow-x: auto; -webkit-overflow-scrolling: touch;
  margin-bottom: 64px;
  position: relative;
}
.comp-wrap::after {
  content: '';
  position: absolute; top: 0; right: 0; bottom: 0;
  width: 48px;
  background: linear-gradient(to right, transparent, rgba(27,42,74,0.85));
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s;
}
/* JS will add .is-scrollable class when table overflows */
.comp-wrap.is-scrollable::after { opacity: 1; }


/* ═══════════════════════════════════════════════════════
   ELEVATIONS PREVIEW SECTION CSS
═══════════════════════════════════════════════════════ */
.elevations { background: var(--parchment); border-top: 1px solid rgba(184,146,42,0.2); }
.elevations-intro { max-width: 600px; font-family: var(--serif); font-size: clamp(17px,1.8vw,19px); line-height: 1.72; color: var(--sage-slate); margin-top: 20px; }
.elevations-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-top: 52px; }
.elev-card { background: var(--ivory); border: 1px solid rgba(184,146,42,0.18); border-top: 3px solid var(--ancient); padding: 32px 28px 28px; display: flex; flex-direction: column; transition: box-shadow 0.25s ease, transform 0.25s ease; }
.elev-card:hover { box-shadow: 0 8px 32px rgba(14,30,53,0.1); transform: translateY(-3px); }
.elev-meta { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; }
.elev-tag { font-family: var(--sans); font-size: 10px; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--admiralty); background: rgba(184,146,42,0.1); padding: 3px 9px; border-radius: 2px; }
.elev-date { font-family: var(--sans); font-size: 11px; color: var(--sage-slate); letter-spacing: 0.04em; }
.elev-headline { font-family: var(--display); font-size: clamp(19px,1.9vw,23px); font-weight: 400; line-height: 1.35; color: var(--admiralty); margin-bottom: 14px; flex-grow: 1; }
.elev-excerpt { font-family: var(--sans); font-size: 13px; line-height: 1.7; color: var(--sage-slate); margin-bottom: 24px; }
.elev-read { font-family: var(--sans); font-size: 12px; font-weight: 500; letter-spacing: 0.06em; color: var(--crucible); display: inline-flex; align-items: center; gap: 6px; transition: gap 0.2s ease; }
.elev-read:hover { gap: 10px; }
.elevations-footer { display: flex; align-items: center; justify-content: space-between; margin-top: 52px; padding-top: 32px; border-top: 1px solid rgba(184,146,42,0.2); }
.elevations-cta-text { font-family: var(--display); font-size: clamp(16px,1.6vw,18px); font-style: italic; color: var(--sage-slate); }
.elevations-archive-link { font-family: var(--sans); font-size: 13px; font-weight: 500; letter-spacing: 0.06em; color: var(--navy); border: 1px solid rgba(27,42,74,0.3); padding: 11px 22px; transition: background 0.2s ease, color 0.2s ease; }
.elevations-archive-link:hover { background: var(--navy); color: var(--ivory); }
@media (max-width: 860px) {
  .elevations-grid { grid-template-columns: 1fr; gap: 20px; }
  .elevations-footer { flex-direction: column; gap: 24px; text-align: center; }
}

/* ═══════════════════════════════════════════════════════
   VIEW ROUTING SYSTEM
═══════════════════════════════════════════════════════ */
.alps-view { display: block; }
.alps-view[hidden] { display: none !important; }

/* ═══════════════════════════════════════════════════════
   ELEVATIONS INDEX PAGE
═══════════════════════════════════════════════════════ */
/* ── HERO MASTHEAD ────────────────────────────────────── */
.masthead {
  background: var(--admiralty);
  padding: clamp(110px,14vw,160px) 0 clamp(60px,7vw,90px);
  position: relative;
  overflow: hidden;
}
.masthead::before {
  content: '';
  position: absolute; inset: 0;
  background: repeating-linear-gradient(
    -45deg,
    transparent,
    transparent 40px,
    rgba(184,146,42,0.03) 40px,
    rgba(184,146,42,0.03) 41px
  );
  pointer-events: none;
}
.masthead-inner { position: relative; }
.masthead-eyebrow {
  font-family: var(--sans);
  font-size: 10px; font-weight: 500;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--ancient); margin-bottom: 20px;
  display: flex; align-items: center; gap: 10px;
}
.masthead-eyebrow::before {
  content: ''; display: block;
  width: 32px; height: 1px;
  background: var(--ancient); opacity: 0.6;
}
.masthead-title {
  font-family: var(--display);
  font-size: clamp(42px,6vw,76px);
  font-weight: 300;
  line-height: 1.1;
  color: var(--ivory);
  margin-bottom: 10px;
}
.masthead-title em { font-style: italic; color: var(--scholar); }
.masthead-byline {
  font-family: var(--sans);
  font-size: 12px; font-weight: 400;
  letter-spacing: 0.08em;
  color: var(--distance);
  margin-bottom: 28px;
}
.masthead-desc {
  font-family: var(--serif);
  font-size: clamp(17px,1.9vw,20px);
  line-height: 1.7;
  color: rgba(250,250,248,0.72);
  max-width: 560px;
  margin-bottom: 40px;
}
.masthead-subscribe {
  display: inline-flex; align-items: center; gap: 10px;
}
.masthead-subscribe a {
  font-family: var(--sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.08em; padding: 11px 24px;
}
.btn-gold {
  background: var(--ancient); color: var(--admiralty) !important;
  transition: background 0.2s;
}
.btn-gold:hover { background: var(--scholar); }
.btn-ghost-light {
  border: 1px solid rgba(250,250,248,0.25);
  color: rgba(250,250,248,0.75) !important;
  transition: border-color 0.2s, color 0.2s;
}
.btn-ghost-light:hover { border-color: var(--ancient); color: var(--ancient); }
.masthead-rule {
  width: 48px; height: 1px;
  background: var(--ancient); opacity: 0.5;
  margin: 48px 0 0;
}

/* ── FILTER BAR ────────────────────────────────────────── */
.filter-bar {
  background: var(--parchment);
  border-bottom: 1px solid rgba(184,146,42,0.18);
  padding: 0;
  position: sticky; top: 68px; z-index: 800;
}
.filter-inner {
  display: flex; align-items: center; gap: 0;
  overflow-x: auto; scrollbar-width: none;
}
.filter-inner::-webkit-scrollbar { display: none; }
.filter-btn {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--sage-slate);
  padding: 16px 22px;
  border: none; border-bottom: 2px solid transparent;
  background: transparent; cursor: pointer;
  transition: color 0.2s, border-color 0.2s;
  white-space: nowrap;
}
.filter-btn:hover { color: var(--navy); }
.filter-btn.active { color: var(--navy); border-bottom-color: var(--navy); }

/* ── FEATURED POST ─────────────────────────────────────── */
.featured-section { background: var(--parchment); }
.featured-label {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--navy); margin-bottom: 28px;
  display: flex; align-items: center; gap: 10px;
}
.featured-label::after { content: ''; flex: 1; height: 1px; background: rgba(184,146,42,0.25); }
.featured-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: start;
}
.featured-tag-row { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.f-tag {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--admiralty); background: var(--ancient);
  padding: 4px 10px; border-radius: 2px;
}
.f-date { font-family: var(--sans); font-size: 11px; color: var(--sage-slate); }
.featured-headline {
  font-family: var(--display);
  font-size: clamp(28px,3.5vw,44px);
  font-weight: 400; line-height: 1.2;
  color: var(--admiralty); margin-bottom: 20px;
}
.featured-excerpt {
  font-family: var(--serif);
  font-size: clamp(16px,1.6vw,18px);
  line-height: 1.75; color: var(--sage-slate);
  margin-bottom: 28px;
}
.featured-read {
  font-family: var(--sans); font-size: 13px; font-weight: 500;
  letter-spacing: 0.06em; color: var(--admiralty);
  border: 1px solid rgba(27,42,74,0.35); padding: 12px 24px;
  display: inline-block;
  transition: background 0.2s, color 0.2s;
}
.featured-read:hover { background: var(--navy); color: var(--ivory); }
.featured-pullquote {
  background: var(--navy);
  padding: 48px 44px;
  position: relative;
}
.featured-pullquote::before {
  content: '201C';
  font-family: var(--display);
  font-size: 96px; line-height: 1;
  color: var(--ancient); opacity: 0.4;
  position: absolute; top: 16px; left: 32px;
}
.pq-text {
  font-family: var(--display);
  font-size: clamp(20px,2.4vw,28px);
  font-style: italic; line-height: 1.45;
  color: var(--ivory); position: relative; z-index: 1;
  margin-bottom: 20px;
}
.pq-attr {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--ancient);
}

/* ── ARCHIVE GRID ──────────────────────────────────────── */
.archive-section { background: var(--ivory); }
.archive-section-label {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--navy); margin-bottom: 40px;
  display: flex; align-items: center; gap: 10px;
}
.archive-section-label::after { content: ''; flex: 1; height: 1px; background: rgba(27,42,74,0.15); }
.archive-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
.arch-card {
  border-top: 2px solid rgba(184,146,42,0.3);
  padding: 28px 0 0;
  display: flex; flex-direction: column;
  transition: opacity 0.2s;
}
.arch-card:hover { opacity: 0.8; }
.arch-meta { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.arch-tag {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--crucible);
}
.arch-date { font-family: var(--sans); font-size: 11px; color: var(--sage-slate); }
.arch-headline {
  font-family: var(--display);
  font-size: clamp(18px,1.8vw,22px);
  font-weight: 400; line-height: 1.3;
  color: var(--admiralty); margin-bottom: 12px;
  flex-grow: 1;
}
.arch-excerpt {
  font-family: var(--sans); font-size: 12px; line-height: 1.65;
  color: var(--sage-slate); margin-bottom: 16px;
}
.arch-link {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.06em; color: var(--crucible);
  display: inline-flex; align-items: center; gap: 5px;
  transition: gap 0.2s;
}
.arch-link:hover { gap: 9px; }

/* ── SUBSCRIBE BAND ────────────────────────────────────── */
.subscribe-band {
  background: var(--navy);
  padding: clamp(64px,8vw,90px) 0;
  text-align: center;
}
.subscribe-headline {
  font-family: var(--display);
  font-size: clamp(28px,3.5vw,44px);
  font-weight: 400; font-style: italic;
  color: var(--ivory); margin-bottom: 14px;
}
.subscribe-sub {
  font-family: var(--sans); font-size: 14px;
  color: rgba(250,250,248,0.65); margin-bottom: 36px;
}
.subscribe-form {
  display: flex; align-items: center;
  gap: 0; max-width: 460px; margin: 0 auto;
}
.subscribe-input {
  flex: 1; padding: 14px 20px;
  font-family: var(--sans); font-size: 13px;
  border: 1px solid rgba(184,146,42,0.3);
  background: rgba(14,30,53,0.5);
  color: var(--ivory);
  outline: none;
}
.subscribe-input::placeholder { color: var(--distance); }
.subscribe-input:focus { border-color: var(--ancient); }
.subscribe-submit {
  padding: 14px 24px;
  font-family: var(--sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.08em; text-transform: uppercase;
  background: var(--ancient); color: var(--admiralty);
  border: none; cursor: pointer;
  transition: background 0.2s;
}
.subscribe-submit:hover { background: var(--scholar); }
.subscribe-note {
  font-family: var(--sans); font-size: 11px;
  color: rgba(250,250,248,0.70); margin-top: 14px;
}

/* ── FOOTER ────────────────────────────────────────────── */
footer {
  background: var(--footer-bg);
  padding: clamp(48px,6vw,72px) 0;
}
.footer-inner {
  display: flex; align-items: flex-start;
  justify-content: space-between; flex-wrap: wrap; gap: 32px;
}
.footer-logo {
  font-family: var(--display); font-weight: 500; font-size: 22px;
  color: var(--ivory); margin-bottom: 8px;
}
.footer-logo span { color: var(--ancient); }
.footer-links { list-style: none; display: flex; gap: 28px; flex-wrap: wrap; }
.footer-links a {
  font-family: var(--sans); font-size: 11px; letter-spacing: 0.06em;
  color: rgba(138,155,176,0.80); transition: color 0.2s;
}
.footer-links a:hover { color: var(--ancient); }
.footer-copy {
  font-family: var(--sans); font-size: 11px;
  color: rgba(138,155,176,0.80); align-self: flex-end;
}

/* ── RESPONSIVE ────────────────────────────────────────── */
@media (max-width: 900px) {
  .nav-links { display: none; }
  .featured-grid { grid-template-columns: 1fr; gap: 36px; }
  .archive-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .archive-grid { grid-template-columns: 1fr; }
  .subscribe-form { flex-direction: column; }
  .subscribe-input, .subscribe-submit { width: 100%; }
}


/* ═══════════════════════════════════════════════════════
   POST PAGE
═══════════════════════════════════════════════════════ */
/* ── ARTICLE HEADER ────────────────────────────────────── */
.article-header {
  background: var(--parchment);
  padding: clamp(110px,14vw,150px) 0 clamp(56px,7vw,80px);
  border-bottom: 1px solid rgba(184,146,42,0.2);
}
.breadcrumb {
  display: flex; align-items: center; gap: 8px;
  font-family: var(--sans); font-size: 11px;
  color: var(--sage-slate); margin-bottom: 32px;
}
.breadcrumb a { color: var(--navy); transition: opacity 0.2s; }
.breadcrumb a:hover { opacity: 0.7; }
.breadcrumb-sep { color: var(--sage-slate); opacity: 0.5; }
.article-tag-row { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.article-tag {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--admiralty); background: var(--ancient); padding: 4px 12px;
}
.article-date { font-family: var(--sans); font-size: 12px; color: var(--sage-slate); }
.article-title {
  font-family: var(--display);
  font-size: clamp(32px,5vw,58px);
  font-weight: 400; line-height: 1.15;
  color: var(--admiralty);
  max-width: 820px;
  margin-bottom: 28px;
}
.article-subtitle {
  font-family: var(--serif); font-style: italic;
  font-size: clamp(18px,2vw,22px);
  line-height: 1.6; color: var(--sage-slate);
  max-width: 680px; margin-bottom: 40px;
}
.article-byline {
  display: flex; align-items: center; gap: 16px;
  padding-top: 28px;
  border-top: 1px solid rgba(184,146,42,0.2);
}
.byline-avatar {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: var(--navy);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--display); font-size: 20px;
  color: var(--ancient); font-weight: 400; flex-shrink: 0;
}
.byline-name {
  font-family: var(--sans); font-size: 13px; font-weight: 500;
  color: var(--navy); display: block;
}
.byline-title {
  font-family: var(--sans); font-size: 11px;
  color: var(--sage-slate); letter-spacing: 0.04em;
}
.article-share {
  display: flex; align-items: center; gap: 10px;
  margin-left: auto;
}
.share-label { font-family: var(--sans); font-size: 11px; color: var(--sage-slate); }
.share-btn {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--sage-slate);
  border: 1px solid rgba(74,85,104,0.2);
  padding: 7px 14px;
  background: transparent; cursor: pointer;
  transition: border-color 0.2s, color 0.2s;
}
.share-btn:hover { border-color: var(--ancient); color: var(--ancient); }

/* ── ARTICLE BODY ──────────────────────────────────────── */
.article-body-wrap {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 80px;
  max-width: var(--max);
  margin: 0 auto;
  padding: clamp(56px,8vw,96px) var(--pad);
  align-items: start;
}
.article-body {
  max-width: 720px;
}
.article-body p {
  font-family: var(--serif);
  font-size: clamp(17px,1.8vw,20px);
  line-height: 1.82;
  color: var(--sage-slate);
  margin-bottom: 28px;
}
.article-body p:first-of-type::first-line {
  font-variant: small-caps;
  letter-spacing: 0.04em;
}
.article-body h2 {
  font-family: var(--display);
  font-size: clamp(22px,2.5vw,30px);
  font-weight: 400; line-height: 1.3;
  color: var(--admiralty);
  margin: 52px 0 20px;
}
.article-body h3 {
  font-family: var(--display);
  font-size: clamp(19px,2vw,24px);
  font-weight: 400; font-style: italic;
  color: var(--counsel);
  margin: 36px 0 14px;
}
.article-body strong { font-weight: 600; color: var(--navy); }
.article-body em { font-style: italic; color: var(--counsel); }

/* Pull quote */
.pull-quote {
  background: var(--navy);
  padding: 36px 40px;
  margin: 22px 0;
  position: relative;
}
.pull-quote::before {
  content: '201C';
  font-family: var(--display);
  font-size: 80px; line-height: 1;
  color: var(--ancient); opacity: 0.35;
  position: absolute; top: 8px; left: 24px;
}
.pull-quote p {
  font-family: var(--display) !important;
  font-size: clamp(19px,2.2vw,25px) !important;
  font-style: italic !important;
  line-height: 1.45 !important;
  color: var(--ivory) !important;
  position: relative; z-index: 1;
  margin-bottom: 0 !important;
}

/* Gold rule divider */
.article-rule {
  width: 40px; height: 2px;
  background: var(--ancient);
  margin: 40px 0;
}

/* Sidebar */
.article-sidebar { position: sticky; top: 100px; }
.sidebar-block {
  background: var(--parchment);
  border-top: 3px solid var(--ancient);
  padding: 28px 26px;
  margin-bottom: 24px;
}
.sidebar-label {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--navy); margin-bottom: 16px;
}
.sidebar-copy {
  font-family: var(--sans); font-size: 13px; line-height: 1.65;
  color: var(--sage-slate); margin-bottom: 18px;
}
.sidebar-cta {
  font-family: var(--sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.08em;
  background: var(--navy); color: var(--ivory);
  padding: 11px 20px; display: block; text-align: center;
  transition: background 0.2s;
}
.sidebar-cta:hover { background: var(--admiralty); }
.sidebar-related-list { list-style: none; display: flex; flex-direction: column; gap: 16px; }
.sidebar-related-item a {
  font-family: var(--display);
  font-size: 16px; font-weight: 400;
  color: var(--admiralty); line-height: 1.3;
  display: block; padding-bottom: 16px;
  border-bottom: 1px solid rgba(184,146,42,0.15);
  transition: color 0.2s;
}
.sidebar-related-item:last-child a { border-bottom: none; }
.sidebar-related-item a:hover { color: var(--ancient); }
.sidebar-related-tag {
  font-family: var(--sans); font-size: 10px; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--navy);
  display: block; margin-bottom: 4px;
}

/* ── ARTICLE FOOTER ────────────────────────────────────── */
.article-footer-band {
  background: var(--parchment);
  border-top: 1px solid rgba(184,146,42,0.2);
  padding: clamp(56px,7vw,80px) 0;
}
.author-block {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 32px; align-items: start;
  padding-bottom: 52px;
  border-bottom: 1px solid rgba(184,146,42,0.2);
  margin-bottom: 52px;
}
.author-avatar {
  width: 80px; height: 80px; border-radius: 50%;
  background: var(--navy);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--display); font-size: 32px;
  color: var(--ancient); flex-shrink: 0;
}
.author-name {
  font-family: var(--display);
  font-size: 22px; font-weight: 400;
  color: var(--admiralty); margin-bottom: 4px;
}
.author-role {
  font-family: var(--sans); font-size: 11px;
  letter-spacing: 0.06em; color: var(--sage-slate);
  margin-bottom: 14px;
}
.author-bio {
  font-family: var(--serif); font-size: 16px;
  line-height: 1.72; color: var(--sage-slate);
  margin-bottom: 16px;
}
.author-link {
  font-family: var(--sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.06em; color: var(--navy);
  display: inline-flex; align-items: center; gap: 6px;
  transition: gap 0.2s;
}
.author-link:hover { gap: 10px; }

/* Related grid */
.related-label {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--navy); margin-bottom: 32px;
  display: flex; align-items: center; gap: 10px;
}
.related-label::after { content: ''; flex: 1; height: 1px; background: rgba(27,42,74,0.15); }
.related-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; }
.related-card { border-top: 2px solid rgba(184,146,42,0.3); padding-top: 24px; }
.related-card-tag {
  font-family: var(--sans); font-size: 10px; font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--navy); margin-bottom: 10px;
}
.related-card h3 {
  font-family: var(--display);
  font-size: 19px; font-weight: 400; line-height: 1.3;
  color: var(--admiralty); margin-bottom: 10px;
}
.related-card a {
  font-family: var(--sans); font-size: 11px; font-weight: 500;
  color: var(--sage-slate); letter-spacing: 0.04em;
  display: inline-flex; align-items: center; gap: 5px;
  transition: color 0.2s, gap 0.2s;
}
.related-card a:hover { color: var(--ancient); gap: 9px; }

/* ── SUBSCRIBE CTA ─────────────────────────────────────── */
.post-subscribe {
  background: var(--admiralty);
  padding: clamp(56px,7vw,80px) 0;
  text-align: center;
}
.post-subscribe h2 {
  font-family: var(--display);
  font-size: clamp(26px,3.2vw,40px);
  font-weight: 400; font-style: italic;
  color: var(--ivory); margin-bottom: 12px;
}
.post-subscribe p {
  font-family: var(--sans); font-size: 13px;
  color: rgba(250,250,248,0.6); margin-bottom: 32px;
}
.post-sub-row {
  display: flex; align-items: center; justify-content: center;
  gap: 12px; flex-wrap: wrap;
}
.post-sub-row a {
  font-family: var(--sans); font-size: 12px; font-weight: 500;
  letter-spacing: 0.08em; padding: 12px 24px;
}
.btn-gold { background: var(--ancient); color: var(--admiralty) !important; transition: background 0.2s; }
.btn-gold:hover { background: var(--scholar); }
.btn-ghost { border: 1px solid rgba(250,250,248,0.25); color: rgba(250,250,248,0.75) !important; transition: border-color 0.2s, color 0.2s; }
.btn-ghost:hover { border-color: var(--ancient); color: var(--ancient); }

/* ── FOOTER ────────────────────────────────────────────── */
footer {
  background: var(--footer-bg);
  padding: clamp(48px,6vw,72px) 0;
}
.footer-inner {
  display: flex; align-items: flex-start;
  justify-content: space-between; flex-wrap: wrap; gap: 32px;
}
.footer-logo { font-family: var(--display); font-weight: 500; font-size: 22px; color: var(--ivory); }
.footer-logo span { color: var(--ancient); }
.footer-links { list-style: none; display: flex; gap: 28px; flex-wrap: wrap; }
.footer-links a { font-family: var(--sans); font-size: 11px; letter-spacing: 0.06em; color: rgba(138,155,176,0.80); transition: color 0.2s; }
.footer-links a:hover { color: var(--ancient); }
.footer-copy { font-family: var(--sans); font-size: 11px; color: rgba(138,155,176,0.80); align-self: flex-end; }

/* ── RESPONSIVE ────────────────────────────────────────── */
@media (max-width: 960px) {
  .article-body-wrap { grid-template-columns: 1fr; gap: 0; }
  .article-sidebar { display: none; }
  .related-grid { grid-template-columns: 1fr 1fr; }
  .author-block { grid-template-columns: 64px 1fr; gap: 20px; }
}
@media (max-width: 600px) {
  .nav-links { display: none; }
  .related-grid { grid-template-columns: 1fr; }
  .article-share { display: none; }
}



/* ═══════════════════════════════════════════════════════
   VIEW SWITCHING — pure CSS :target, no JavaScript needed
═══════════════════════════════════════════════════════ */
#view-elevations,
#view-post { display: none; }

#view-elevations:target,
#view-post:target { display: block !important; }

/* Hide main view when elevations or post is targeted */
:root:has(#view-elevations:target) #view-main,
:root:has(#view-post:target) #view-main { display: none !important; }

/* Offset for fixed nav */
#view-elevations, #view-post { scroll-margin-top: 68px; }

a:hover {
    text-decoration: none !important;
}


@media (max-width: 1490px) {
    .fl-row[data-node] > .fl-row-content-wrap
 {
        padding-right: 0px!important;
        padding-left: 0px!important;
    }
}







/* End Global CSS */


/* Start Global Nodes CSS */

/* End Global Nodes CSS */


/* Start Layout CSS */
.fl-builder-content-249 .fl-node-c6oxs7tnir58 img.fl-photo-img{
    width: 70% !important;
    height: auto !important;
    padding:10px 10px 10px 0px!important;
}

@media (max-width: 1180px) {
    .fl-builder-content[data-type="header"] .fl-menu .menu {
            row-gap: 5px !important;
            column-gap: 5px !important
    }
    .fl-builder-content[data-type="header"] .fl-menu .menu li.nav-cta > a {
        padding: 10px !important;
    }

}

/* End Layout CSS */

.fl-node-9tplis5ocfmg .nav-drawer {
  max-height: 0;
}
/* Sticky */
.fl-builder-content[data-type="header"].fl-theme-builder-header-sticky {
	position: fixed;
	width: 100%;
	z-index: 100;
}

/* Sticky - fix flyout menu  */
.fl-theme-builder-flyout-menu-push-left .fl-builder-content[data-type="header"].fl-theme-builder-header-sticky {
	left: auto !important;
	transition: left 0.2s !important;
}
.fl-theme-builder-flyout-menu-push-right .fl-builder-content[data-type="header"].fl-theme-builder-header-sticky {
	right: auto !important;
	transition: right 0.2s !important;
}
.fl-builder-content[data-type="header"].fl-theme-builder-header-sticky .fl-menu .fl-menu-mobile-opacity {
	height: 100vh;
	width: 100vw;
}
.fl-builder-content[data-type="header"]:not([data-overlay="1"]).fl-theme-builder-header-sticky .fl-menu-mobile-flyout {
	top: 0px;
}
.fl-theme-builder-flyout-menu-active body {
	margin-left: 0px !important;
	margin-right: 0px !important;
}
.fl-theme-builder-has-flyout-menu, .fl-theme-builder-has-flyout-menu body {
	overflow-x: hidden;
}
.fl-theme-builder-flyout-menu-push-right {
	right: 0px;
	transition: right 0.2s ease-in-out;
}
.fl-theme-builder-flyout-menu-push-left {
	left: 0px;
	transition: left 0.2s ease-in-out;
}
.fl-theme-builder-flyout-menu-active .fl-theme-builder-flyout-menu-push-right {
	position: relative;
	right: 250px;
}
.fl-theme-builder-flyout-menu-active .fl-theme-builder-flyout-menu-push-left {
	position: relative;
	left: 250px;
}
.fl-theme-builder-flyout-menu-active .fl-builder-content[data-type="header"] .fl-menu-disable-transition {
	transition: none;
}

/* Shrink */
.fl-builder-content[data-shrink="1"] .fl-row-content-wrap,
.fl-builder-content[data-shrink="1"] .fl-col-content,
.fl-builder-content[data-shrink="1"] .fl-module-content,
.fl-builder-content[data-shrink="1"] img {
	-webkit-transition: all 0.4s ease-in-out, background-position 1ms;
	-moz-transition: all 0.4s ease-in-out, background-position 1ms;
	transition: all 0.4s ease-in-out, background-position 1ms;
}
.fl-builder-content[data-shrink="1"] img {
	width: auto;
}
.fl-builder-content[data-shrink="1"] img.fl-photo-img {
	width: auto;
	height: auto;
}
.fl-builder-content[data-type="header"].fl-theme-builder-header-shrink .fl-row-content-wrap {
	margin-bottom: 0;
	margin-top: 0;
}
.fl-theme-builder-header-shrink-row-bottom.fl-row-content-wrap {
	padding-bottom: 5px;
}
.fl-theme-builder-header-shrink-row-top.fl-row-content-wrap {
	padding-top: 5px;
}
.fl-builder-content[data-type="header"].fl-theme-builder-header-shrink .fl-col-content {
	margin-bottom: 0;
	margin-top: 0;
	padding-bottom: 0;
	padding-top: 0;
}
.fl-theme-builder-header-shrink-module-bottom.fl-module-content,
.fl-theme-builder-header-shrink-module-bottom.fl-module:where(.fl-module:not(:has(> .fl-module-content))) {
	margin-bottom: 5px;
}
.fl-theme-builder-header-shrink-module-top.fl-module-content,
.fl-theme-builder-header-shrink-module-bottom.fl-module:where(.fl-module:not(:has(> .fl-module-content))) {
	margin-top: 5px;
}
.fl-builder-content[data-type="header"].fl-theme-builder-header-shrink img {
	-webkit-transition: all 0.4s ease-in-out, background-position 1ms;
	-moz-transition: all 0.4s ease-in-out, background-position 1ms;
	transition: all 0.4s ease-in-out, background-position 1ms;
}

/* Overlay */
.fl-builder-content[data-overlay="1"]:not(.fl-theme-builder-header-sticky):not(.fl-builder-content-editing) {
	position: absolute;
	width: 100%;
	z-index: 100;
}
.fl-builder-edit body:not(.single-fl-theme-layout) .fl-builder-content[data-overlay="1"] {
	display: none;
}
body:not(.single-fl-theme-layout) .fl-builder-content[data-overlay="1"]:not(.fl-theme-builder-header-scrolled):not([data-overlay-bg="default"]) .fl-row-content-wrap,
body:not(.single-fl-theme-layout) .fl-builder-content[data-overlay="1"]:not(.fl-theme-builder-header-scrolled):not([data-overlay-bg="default"]) .fl-col-content,
body:not(.single-fl-theme-layout) .fl-builder-content[data-overlay="1"]:not(.fl-theme-builder-header-scrolled):not([data-overlay-bg="default"]) .fl-module-box {
	background: transparent;
}

        			.fl-node-a7j9he54cl8o .fl-row-content {
				min-width: 0px;
			}
		






.fl-node-fge2d43cywtj {
	color: #ffffff;
}
:where(.fl-builder-content .fl-node-fge2d43cywtj *:not(input):not(textarea):not(select):not(a):not(.fl-menu-mobile-toggle)) {
	color: inherit;
}
.fl-builder-content .fl-node-fge2d43cywtj a {
	color: #ffffff;
}
.fl-builder-content .fl-node-fge2d43cywtj :where(.fl-row-content-wrap) a:hover {
	color: #ffffff;
}
.fl-builder-content .fl-node-fge2d43cywtj h1, .fl-builder-content .fl-node-fge2d43cywtj h2, .fl-builder-content .fl-node-fge2d43cywtj h3, .fl-builder-content .fl-node-fge2d43cywtj h4, .fl-builder-content .fl-node-fge2d43cywtj h5, .fl-builder-content .fl-node-fge2d43cywtj h6, .fl-builder-content .fl-node-fge2d43cywtj h1 a, .fl-builder-content .fl-node-fge2d43cywtj h2 a, .fl-builder-content .fl-node-fge2d43cywtj h3 a, .fl-builder-content .fl-node-fge2d43cywtj h4 a, .fl-builder-content .fl-node-fge2d43cywtj h5 a, .fl-builder-content .fl-node-fge2d43cywtj h6 a {
	color: #ffffff;
}
.fl-node-fge2d43cywtj > .fl-row-content-wrap {
	background-color: #080F1C;
	border-top-width: 1px;
	border-right-width: 0px;
	border-bottom-width: 1px;
	border-left-width: 0px;
}
.fl-node-fge2d43cywtj.fl-row-default-height > .fl-row-content-wrap, .fl-node-fge2d43cywtj.fl-row-full-height > .fl-row-content-wrap, .fl-node-fge2d43cywtj.fl-row-custom-height > .fl-row-content-wrap {
	align-items: center;
	justify-content: center;
}

                
    
    .fl-builder-row-settings #fl-field-separator_position {
        display: none !important;
    }
    
    
    
    	
	
    
    
    
    @media (max-width: 640px) { .fl-module-icon {
	text-align: center;
}
 }


.fl-node-urh0oigkvsm9 .fl-icon i, .fl-node-urh0oigkvsm9 .fl-icon i:before {
	font-size: 16px;
	color: #9b9b9b;
}
.fl-node-urh0oigkvsm9 .fl-icon-wrap .fl-icon-text {
	height: 28px;
}
.fl-node-urh0oigkvsm9.fl-module-icon {
	text-align: left;
}
.fl-node-urh0oigkvsm9 .fl-icon i:hover, .fl-node-urh0oigkvsm9 .fl-icon i:hover:before, .fl-node-urh0oigkvsm9 .fl-icon a:hover i, .fl-node-urh0oigkvsm9 .fl-icon a:hover i:before {
	color: #7f7f7f;
}
@media(max-width: 1490px) {
	.fl-node-urh0oigkvsm9 .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
@media(max-width: 960px) {
	.fl-node-urh0oigkvsm9 .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
@media(max-width: 640px) {
	.fl-node-urh0oigkvsm9 .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
 .fl-node-urh0oigkvsm9 > .fl-module-content {
	margin-top:0px;
	margin-bottom:0px;
	margin-left:5px;
}
@media (max-width: 640px) { .fl-node-urh0oigkvsm9 > .fl-module-content { margin-left:px; } }


.fl-node-q6b013isjzpe .fl-icon i, .fl-node-q6b013isjzpe .fl-icon i:before {
	font-size: 16px;
	color: #9b9b9b;
}
.fl-node-q6b013isjzpe .fl-icon-wrap .fl-icon-text {
	height: 28px;
}
.fl-node-q6b013isjzpe.fl-module-icon {
	text-align: left;
}
@media(max-width: 1490px) {
	.fl-node-q6b013isjzpe .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
@media(max-width: 960px) {
	.fl-node-q6b013isjzpe .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
@media(max-width: 640px) {
	.fl-node-q6b013isjzpe .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
 .fl-node-q6b013isjzpe > .fl-module-content {
	margin-top:0px;
	margin-right:0px;
	margin-bottom:0px;
	margin-left:3px;
}
@media (max-width: 640px) { .fl-node-q6b013isjzpe > .fl-module-content { margin-left:px; } }.fl-builder-content .fl-rich-text strong {
	font-weight: bold;
}

/**
 * Remove bottom margins from the last paragraph
 * in v2+ text editor modules.
 */
.fl-module.fl-rich-text p:last-child {
	margin-bottom: 0;
}
/* Handle overlays in the builder */
.fl-builder-edit .fl-module.fl-rich-text p:not(:has(~ *:not(.fl-block-overlay))) {
	margin-bottom: 0;
}



.fl-node-iru7bp61fy03 .fl-icon i, .fl-node-iru7bp61fy03 .fl-icon i:before {
	font-size: 16px;
	color: #9b9b9b;
}
.fl-node-iru7bp61fy03 .fl-icon-wrap .fl-icon-text {
	height: 28px;
}
.fl-node-iru7bp61fy03.fl-module-icon {
	text-align: left;
}
.fl-node-iru7bp61fy03 .fl-icon i:hover, .fl-node-iru7bp61fy03 .fl-icon i:hover:before, .fl-node-iru7bp61fy03 .fl-icon a:hover i, .fl-node-iru7bp61fy03 .fl-icon a:hover i:before {
	color: #7f7f7f;
}
@media(max-width: 1490px) {
	.fl-node-iru7bp61fy03 .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
@media(max-width: 960px) {
	.fl-node-iru7bp61fy03 .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
@media(max-width: 640px) {
	.fl-node-iru7bp61fy03 .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
 .fl-node-iru7bp61fy03 > .fl-module-content {
	margin-top:0px;
	margin-bottom:0px;
	margin-left:5px;
}
@media (max-width: 640px) { .fl-node-iru7bp61fy03 > .fl-module-content { margin-left:px; } }


.fl-node-khvp9u7la2g3 .fl-icon i, .fl-node-khvp9u7la2g3 .fl-icon i:before {
	font-size: 16px;
	color: #9b9b9b;
}
.fl-node-khvp9u7la2g3 .fl-icon-wrap .fl-icon-text {
	height: 28px;
}
.fl-node-khvp9u7la2g3.fl-module-icon {
	text-align: left;
}
@media(max-width: 1490px) {
	.fl-node-khvp9u7la2g3 .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
@media(max-width: 960px) {
	.fl-node-khvp9u7la2g3 .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
@media(max-width: 640px) {
	.fl-node-khvp9u7la2g3 .fl-icon-wrap .fl-icon-text {
		height: 28px;
	}
}
 .fl-node-khvp9u7la2g3 > .fl-module-content {
	margin-top:0px;
	margin-right:0px;
	margin-bottom:0px;
	margin-left:3px;
}
@media (max-width: 640px) { .fl-node-khvp9u7la2g3 > .fl-module-content { margin-left:px; } }.fl-builder-content-91938 .fl-node-r7h0peu9btog {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.fl-builder-content-91938 .fl-node-mrsf4bt3on9q {
	display: flex;
	flex-direction: column;
	justify-content: start;
	align-items: start;
	gap: 10px;
}
.fl-builder-content-91938 .fl-node-hn8by71zuapo img.fl-photo-img {
	object-fit: contain;
	object-position: left center;
}
.fl-node-hn8by71zuapo .fl-photo-content, .fl-node-hn8by71zuapo .fl-photo-img {
	width: 90%;
}
.fl-builder-content-91938 .fl-node-x6lhifjnod79 {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
}


.fl-node-l61thzyqdowg .menu-item :is(*:focus, a:hover, .fl-has-submenu-container:hover > *),
.fl-node-l61thzyqdowg .current-menu-item > a,
.fl-node-l61thzyqdowg .current-menu-item > .fl-has-submenu-container > * {
	color: #B8922A;}

			.fl-node-l61thzyqdowg .menu .fl-has-submenu .sub-menu{
		display: none;
	}
	.fl-node-l61thzyqdowg .fl-menu .sub-menu {
	background-color: #ffffff;-webkit-box-shadow: 0 1px 20px rgba(0,0,0,0.1);-ms-box-shadow: 0 1px 20px rgba(0,0,0,0.1);box-shadow: 0 1px 20px rgba(0,0,0,0.1);}
	.fl-node-l61thzyqdowg .fl-menu li{
	border-top: 1px solid transparent;
}
.fl-node-l61thzyqdowg .fl-menu li:first-child{
	border-top: none;
}
	@media ( max-width: 640px ) {

	
	
			.fl-node-l61thzyqdowg .fl-menu ul.menu {
			display: none;

						float: none;
					}
	
		.fl-node-l61thzyqdowg .fl-menu .sub-menu {
		-webkit-box-shadow: none;
		-ms-box-shadow: none;
		box-shadow: none;
	}
				.fl-node-l61thzyqdowg .fl-menu {
			container-type: inline-size;
		}
		@container (max-width: 250px) {
			.fl-node-l61thzyqdowg .fl-menu .menu-item.fl-has-submenu .sub-menu {
				min-width: auto;
				padding: 0;
			}
			.fl-node-l61thzyqdowg .fl-menu .menu-item a {
				overflow: hidden;
			}
		}
		
	.fl-node-l61thzyqdowg .fl-menu:not(.no-hover) .fl-has-submenu:hover > .sub-menu,
	.fl-node-l61thzyqdowg .mega-menu.fl-active .hide-heading > .sub-menu,
	.fl-node-l61thzyqdowg .mega-menu-disabled.fl-active .hide-heading > .sub-menu {
		display: block !important;
	}

	.fl-node-l61thzyqdowg .fl-menu-logo,
	.fl-node-l61thzyqdowg .fl-menu-search-item {
		display: none;
	}

	} 
	
@media ( min-width: 641px ) {

				.fl-node-l61thzyqdowg .fl-menu .menu > li{ display: inline-block; }

		.fl-node-l61thzyqdowg .menu li{
			border-left: 1px solid transparent;
			border-top: none;
		}

		.fl-node-l61thzyqdowg .menu li:first-child{
			border: none;
		}
		.fl-node-l61thzyqdowg .menu li li{
			border-top: 1px solid transparent;
			border-left: none;
		}

		.fl-node-l61thzyqdowg .menu .fl-has-submenu .sub-menu{
			position: absolute;
			top: 100%;
			left: 0;
			z-index: 10;
			visibility: hidden;
			opacity: 0;
			text-align:left;
		}

		.fl-node-l61thzyqdowg .fl-has-submenu .fl-has-submenu .sub-menu{
			top: 0;
			left: 100%;
		}

			
		
		.fl-node-l61thzyqdowg .fl-menu .fl-has-submenu:hover > .sub-menu,
		.fl-node-l61thzyqdowg .fl-menu .fl-has-submenu.focus > .sub-menu{
			display: block;
			visibility: visible;
			opacity: 1;
		}

		.fl-node-l61thzyqdowg .menu .fl-has-submenu.fl-menu-submenu-right .sub-menu{
			left: inherit;
			right: 0;
		}

		.fl-node-l61thzyqdowg .menu .fl-has-submenu .fl-has-submenu.fl-menu-submenu-right .sub-menu{
			top: 0;
			left: inherit;
			right: 100%;
		}

		.fl-node-l61thzyqdowg .fl-menu .fl-has-submenu.fl-active > .fl-has-submenu-container .fl-menu-toggle{
			-webkit-transform: none;
				-ms-transform: none;
					transform: none;
		}

				
					.fl-node-l61thzyqdowg .fl-menu .fl-menu-toggle{
				display: none;
			}
		
		.fl-node-l61thzyqdowg ul.sub-menu {
						padding-top: 0px;
									padding-right: 0px;
									padding-bottom: 0px;
									padding-left: 0px;
					}

		.fl-node-l61thzyqdowg ul.sub-menu a {
														}

	
	
			.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle{
			display: none;
		}
	}

	
	.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle {
				font-size: 16px;
		text-transform: none;
		padding-top: 14px;
		padding-right: 14px;
		padding-bottom: 14px;
		padding-left: 14px;
		border-color: rgba( 0,0,0,0.1 );
	}
	.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle rect,
	.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle.hamburger .hamburger-menu rect {
			}
	.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle:hover,
	.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle.fl-active {
		color: #B8922A;	}

	.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle:hover rect,
	.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle.fl-active rect,
	.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle.hamburger:hover .hamburger-menu rect,
	.fl-node-l61thzyqdowg .fl-menu .fl-menu-mobile-toggle.fl-active .hamburger-menu rect {
		fill: #B8922A;	}
	.fl-node-l61thzyqdowg ul.fl-menu-horizontal li.mega-menu > ul.sub-menu > li > .fl-has-submenu-container a:hover {
	color: ;
}
.fl-node-l61thzyqdowg .fl-menu .menu, .fl-node-l61thzyqdowg .fl-menu .menu > li {
	font-size: 16px;
	line-height: 1;
}
.fl-node-l61thzyqdowg .menu a {
	padding-top: 14px;
	padding-right: 14px;
	padding-bottom: 14px;
	padding-left: 14px;
}
.fl-node-l61thzyqdowg .fl-menu .menu .sub-menu > li {
	font-size: 16px;
	line-height: 1;
}
@media(max-width: 640px) {
	.fl-node-l61thzyqdowg .menu li.fl-has-submenu ul.sub-menu {
		padding-left: 15px;
	}
	.fl-node-l61thzyqdowg .fl-menu .sub-menu {
		background-color: transparent;
	}
}

/* Start Global Nodes CSS */

/* End Global Nodes CSS */


/* Start Layout CSS */
.fl-node-hn8by71zuapo .fl-photo-img{
    width: 80% !important;
    height: auto !important;
}

.fl-builder-content .fl-node-fge2d43cywtj a {
    color: #B8922A!important;
}
/* End Layout CSS */

.fl-node-l61thzyqdowg {
  margin-left: 0;
  gap: 0 !important;
}
.fl-node-l61thzyqdowg ul li:first-of-type a {
  padding-left: 0 !important;
}

        			.fl-node-fge2d43cywtj .fl-row-content {
				min-width: 0px;
			}
		
