@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Mulish:wght@300;400;500;600;700&display=swap');
img {max-width: 100%;} 


.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px; height: 0; overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Joomla Shack sliders */
div.jwts_toggleControlContainer a.jwts_toggleControl{
background-image:none;
background-color:transparent;
padding:8px;
font-size: inherit;
padding-top: 13px;
border:0;
}
div.jwts_toggleControlContainer a.jwts_toggleOn{color:#242a2f}
div.jwts_toggleControlContainer a.jwts_toggleOff span.jwts_toggleControlTitle {
background: url() no-repeat 0 4px;
}
div.jwts_content{border:0;padding:0;}


/*Full Width Video Style*/

.example-marquee {position: relative;}
.content {
display: table;
width: 100%;
min-height: 70vh;
z-index: 1;
position: relative;
}
.content .inner {
display: table-cell;
text-align: center;
padding-left: 16px;
padding-right: 16px;
vertical-align: bottom;
padding-bottom: 28%;
}
.content .inner h1 {
font-size: 62px;
color: white;
text-shadow: 0px 1px 3px rgba(0,0,0,0.5);
}

			.video-background-controls button {
				font-size: 32px;
				display: inline-block;
				padding: 0px;
				margin: 0px;
				height: 32px;
				width: 32px;
				border-radius: 16px;
				line-height: 32px;
				border: none;
				background: none;
				-webkit-appearance: none;
				color: white;
				filter: drop-shadow(0px 0px 1px black);
				cursor: pointer;
				opacity: 1;
				transition: all 250ms ease-in-out;
				margin-left: 10px;
			}

			.video-background-controls button:hover {
				opacity: 0.5;
			}

			iframe {
				transition: opacity 500ms ease-in-out;
				transition-delay: 250ms;
			}


html{scroll-behavior: smooth;}
body {
font-family: 'Mulish', Arial, sans-serif;
font-size: 1.1em;
line-height: 1.8em;
color: #5e5e5e;
}
h1, h2, h3, h4 {font-family:'Playfair Display',serif;color:#83acce;line-height:100%;font-weight:800}
h1{font-size:3.7em;line-height:1em;}
h2{font-size:1.6em;}
h3{line-height:1em;font-style:italic;text-transform:unset;}
.block-quote{margin-top:20px;padding:5px 0px 5px 12px;border-left:2px solid #83acce}
.block-quote h1,.block-quote h2,.block-quote h3{border:0;margin:5px 0}
h4{padding-left: 0;border-left: 0;margin-bottom: -14px;font-size: 119%;}
a {color: #c9a84c;}
a:hover {color:#e6b34a;}
.readon{background-color: #83acce;color:#fff;border-bottom: 2px solid #3C6587;position:relative;}
.readon:hover{background-color: #3C6587;color:#fff;border-bottom: 2px solid #214A6C;
}


.rl_sliders.accordion > .accordion-group > .accordion-heading > a.accordion-toggle{color: #ff6500;}
.rl_sliders.accordion > .accordion-group > .accordion-heading > a.accordion-toggle:hover{color:#af4702;}
#header-surround{background-color:#fff;}
#header{background-color:#fff;padding:18px 4% 14px;}
#header-height{}

#drawer-holder{background-color:#383838;padding:16px 1% 14px;z-index: 12;position: relative;}

#showcase-bkg{
background-image: url(../../../images/heroBG.jpg);
background-size:cover;
background-position: center;
background-attachment: fixed;
display:block;
width:100%;
}
#showcase{
clear:both;
transition: all 0.5s ease-in-out;
width:100%;
padding: 12% 0;
color:#fff;
text-align:center;
margin:0px auto; /* added to my template due to the top menu position complexity */
}
#showcase h1, #showcase h2{color:#83acce;text-transform: none !important;}
#showcase-a.width-95{width:90%;max-width:803px;position: relative;} /*position: relative; puts content over showcase::before */

#pretop{position: relative;padding:99px 4% 36px;margin-bottom:-53px;color: #424242;background: linear-gradient(180deg, #ffffff 0%, #c8d6e8 100%);z-index:222;}
#pretop-boxes{width:100%; text-align:center;margin:0 auto;}/*max-width:1400px;*/
#top-a.pre{background-color:transparent;}
#pretop h2{padding-left:0;border-left: 0;font-size:2.1em}

#top-boxes{max-width:1200px;width:100%; text-align:left;margin:0 auto;}
#top{color: #424242;background: linear-gradient(180deg, #ffffff 0%, #c8d6e8 100%);}
#top::after {color: #c9a84c;text-shadow: 0px 2px 0 #c9a84c;} /*dropdown triangle */
#top h2, #top h3, #top h4{line-height: 100%;color:#656565;padding-left:0px;border-left:0;border-bottom: 2px solid #83acce;padding-bottom:31px;opacity: .8;}

#utility-bkg{
background-image: url(../../../images/showcase-bkg3.jpg);
background-size:cover;
background-position:right;
background-attachment: fixed;
display:block;
width:100%;
}
#utility{color: #fff;background-color: rgb(0 0 0 / 62%);padding:6% 0;}
#utility h2, #utility h3, #utility h4{color:#fff;}
#utility-boxes{max-width:800px;width:50%; text-align:left;margin-left:4%;}


#feature{background-color: #fff;}
#feature-boxes {text-align:left;}
#feature h2, #feature h3 {font-size:224%;}


#maintop-bkg{
background-image: url(../../../images/maintop-bkg.jpg);
background-size:cover;
background-position: center;
background-attachment: fixed;
display:block;
width:100%;
}
#maintop{
color: #fff;
background-color: rgba(0, 0, 0, 0.5);
padding: 12% 0;
}
#maintop h2, #maintop h3, #maintop h4{color:#fff}
#maintop-boxes{
    max-width: 800px;
    width: 75%;
    text-align: left;
    margin-left: 25%;
}
#expandedtop{background-color: #FFFFFF;color: #2C2C2C;}
#expandedtop h2, #expandedtop h3, #expandedtop h4{color:#656565}
#expandedtop-boxes{
    max-width: 1200px;
    width: 100%;
    text-align: left;
margin:0 auto;
}
#content-top{background-color: #FFFFFF;color: #6E6E6E;}
#content-top h2, #content-top h3, #content-top h4{color:#656565}
#mainbody{background-color: #FFFFFF;color: #2C2C2C;}
#sidebar-a{
background-color: #fff; /* or AFAFAF #78bf57 or #888888*/
color: #5e5e5e;
font-size:80%;
}
#sidebar-a h2, #sidebar-a h3{color:#fff;text-shadow: 1px 2px 0 rgba(0,0,0,0.2);}
#sidebar-b{background-color: #fff; /* #AFAFAF or #78bf57 or #888888*/
color: #5e5e5e;
font-size:80%;
}
#content-bottom{color: #6E6E6E;background-color: #FFFFFF;}
#content-bottom h2, #content-bottom h3, #content-bottom h4{color:#656565}
#content-bottom-boxes {border-top: 1px solid #ccc;padding-top: 53px;}
#expandedbottom{
color: #424242;
background-image:linear-gradient(180deg, #283d45, #091E26);
border-top: 1px solid #dde0e7;
box-shadow: 0px 1px 0 #091E26;
}
#expandedbottom::after {color: #091E26;text-shadow: 0px 2px 0 #091E26;}
#expandedbottom-boxes{max-width:1200px;width:100%; text-align:left;margin:0 auto;}
#expandedbottom h2, #expandedbottom h3, #expandedbottom h4 {color: #fff;}
#expandedbottom .block-quote{border-left:8px solid #333}


#mainbottom{background-color: #FFFFFF;color: #6E6E6E;padding:0 4% 0;}
#mainbottom-boxes{max-width:1200px;width:100%; text-align:left;margin:0 auto;}
#mainbottom h2, #mainbottom h3, #mainbottom h4{color:#656565}

#extension{
  color: #2b3c4e;
  background: linear-gradient(to bottom, #c8d3dc 0%, #c8d3dc 50%, #ffffff 50%, #ffffff 100%);
}
#extension h2, #extension h3, #extension h4{font-size:177%;color:#2b3c4e;padding-left:0;border-left:0;font-style:unset;text-transform:none;}
/*#extension table{font-size:70%;line-height: 14px;}
#extension table img{width:100%;}*/
#extension img{width:18%;min-width:200px;margin:.5%;}
.sold-aircraft{font-size:70%;width:19%;display:inline-block;vertical-align:top;margin: .5%;min-width: 200px;}



#fullwidth{
width:100%; text-align:center;margin:0 auto;
}
#fullwidth h2, #fullwidth h3, #fullwidth h4{color:#656565}
#bottom{
background-image: url(../images/patterns/noise.png);
background-color: #15355b;
color: #f1f1f1;
border-top: 6px solid #83acce;
}
#bottom h2, #bottom h3, #bottom h4{font-size: 1.6em;color:#fff;border:0;}

#fullwidth-bottom{background-color:#7aadd3;padding:15px 4% 8px;text-align:  center;}
#fullwidth-bottom a{color:#fff;}
#fullwidth-bottom a:hover{color:#1b3a5f;}


#footer{
background-image: url(../images/patterns/noise.png);
color: #ccc;
background-color: #15355b;
font-size:80%;
}
#footer h2, #footer h3, #footer h4{color:#e8e8e8;text-shadow: 1px 2px 0 rgba(0,0,0,0.2);border: 0;
  padding-left: 0;}
#copyright{
background-image: url(../images/patterns/noise.png);
color: #5f5f5f;
background-color: #15355b;

}
#copyright h2, #copyright h3, #copyright h4{color:#787878;text-shadow: 1px 2px 0 rgba(0,0,0,0.2);}


/*Changes to menu*/
.mobilemenuck-bar-title{display:none;}
.mobilemenuck-bar-button {top: -144px;font-size: 32px !important;}
div#maximenuck197{float:none;text-align:right;margin-right: -45px;margin-top:42px;}
div#maximenuck197 ul.maximenuck li.maximenuck.level1 > a span.titreck, div#maximenuck197 ul.maximenuck li.maximenuck.level1.active > a span.titreck, div#maximenuck197 ul.maximenuck li.maximenuck.level1:hover > span.separator, div#maximenuck197 ul.maximenuck li.maximenuck.level1.active > span.separator {
font-size: 19px;
font-weight: 500;
}
div#maximenuck197 ul.maximenuck{margin-top:0;}
div#maximenuck197 ul.maximenuck li.maximenuck.level1{margin-top:5px;margin-bottom:5px;margin-right:24px;}
div#maximenuck197 ul.maximenuck li.maximenuck.last.level1{margin-right:0px;}
div#maximenuck197 .maxiFancybackground{height:1px;top:29px;background-color:transparent;border-top:2px solid #7aadd3;}


/*Menu text color*/
div#maximenuck197 ul.maximenuck li.maximenuck.level1 > a, div#maximenuck197 ul.maximenuck li.maximenuck.level1 > span.separator{
color:#393939;
}
/*Active menu item color*/
div#maximenuck197 ul.maximenuck li.maximenuck.level1:hover > a span.titreck,
div#maximenuck197 ul.maximenuck li.maximenuck.level1.active > a span.titreck,
div#maximenuck197 ul.maximenuck li.maximenuck.level1:hover > span.separator,
div#maximenuck197 ul.maximenuck li.maximenuck.level1.active > span.separator {
color: #000;}

/* submenu */
div#maximenuck197 ul.maximenuck li.level1.parent > a:after, div#maximenuck197 ul.maximenuck li.level1.parent > span.separator:after{
right:-7px;} /*dropdown arrow position*/
div#maximenuck197 ul.maximenuck li ul.maximenuck2 li.maximenuck, div#maximenuck197 ul.maximenuck2 li.maximenuck{
padding-bottom:8px;}

/* submenu background and border */
div#maximenuck197 div.floatck{ 
border:1px; 
border-color:#fff;
background:#fff;
margin-top:24px;
padding-left:6px;
padding-top:8px;
}


/* submenu  link color */
div#maximenuck197 ul.maximenuck li.maximenuck ul.maximenuck2 li > a{
color:#393939;} 

/* Changes menu hover color */
div#maximenuck197 ul.maximenuck li.maximenuck.level1:hover > a span.titreck, div#maximenuck197 ul.maximenuck li.maximenuck ul.maximenuck2 li:hover > h2 a, div#maximenuck197 ul.maximenuck li.maximenuck ul.maximenuck2 li:hover > h3 a,  div#maximenuck197 ul.maximenuck2 li:hover > h2 a, div#maximenuck197 ul.maximenuck2 li:hover > h3 a{
color:#000;}
div#maximenuck197 ul.maximenuck li.maximenuck ul.maximenuck2 li:hover > a, div#maximenuck197 ul.maximenuck li.maximenuck ul.maximenuck2 li.active > a, div#maximenuck197 ul.maximenuck2 li:hover > a{
color:#000;}

/* sets dropdown arrow color */
div#maximenuck197.maximenuckh ul.maximenuck li.level1.parent > a:after, div#maximenuck197.maximenuckh ul.maximenuck li.level1.parent > span.separator:after{
    border-color:#666 transparent transparent transparent; }
/* set hamburger menu color */
#maximenuck197 .maximenumobiletogglericonck{color:#fff;font-size: 43px !important;}  

    
/* standard joomla menu for bottom menu */
ul.mod-menu.mod-list.nav.horizontal{display:inline-block;list-style:none;}
ul.mod-menu.mod-list.nav.horizontal li{display:inline-block;margin-right:24px;}






.show960{display:none;}
.show-over-1200{display:block;}
.show1200{display:none;}
.show767{display:none;}


@media only screen and (max-width: 1200px) {
.show-over-1200{display:none;}
.show1200{display:block;}
.fp-round-image-bottom-first-image{display:none;}
}

@media only screen and (max-width: 960px) {
.show960{display:block;}
.hide960{display:none;}
}

@media only screen and (max-width: 767px) {
.show767{display:block;}
.hide767{display:none;}
}
@media only screen and (max-width: 650px) {
#utility-boxes, #maintop-boxes {
    width: 98%;
    margin-left: 2%;
}
}

.show400{display:none;}
.hide400{display:block;}

.logo-text{text-align: center; padding-left: 89px;letter-spacing: 6px;text-transform: uppercase;margin-top: -32px;}

@media (max-width: 400px) {
.show400{display:block;}
.hide400{display:none;}
#header{padding-bottom:8px;}
.logo-text{padding-left: 0;
    letter-spacing: 3px;
    margin-top: -13px;
    font-size: 130%;
    font-weight: 500;}
#header-a{width:100%;}
body{font-size:1em}
}



/* === ACE Three Boxes Section === */
#extension {
  padding: 40px 20px 0;
  position: relative;
  margin-top: -120px;
  z-index: 10;
  background: linear-gradient(to bottom, transparent 0%, transparent 40%, #c8d6e8 40%, #c8d6e8 100%);
}
#extension::after {
  content: '';
  display: block;
  width: 100%;
  height: 6px;
  background: linear-gradient(to right, #b8923a, #8a6d2a, #b8923a);
  margin-top: 50px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}
#extension-boxes {
  display: flex;
  align-items: stretch;
  gap: 24px;
  max-width: 1100px;
  margin: 0 auto;
}
#extension-a, #extension-b, #extension-c {
  flex: 1;
  display: flex;
  flex-direction: column;
}
#extension-a .mod-custom,
#extension-b .mod-custom,
#extension-c .mod-custom {
  height: 100%;
}
#extension-a .aos-item,
#extension-b .aos-item,
#extension-c .aos-item {
  height: 100%;
}
@media only screen and (max-width: 767px) {
  #extension-boxes {
    flex-direction: column;
  }
  #extension {
    margin-top: -60px;
  }
}
/* === ACE Header: Single-Line Navigation Fix === */
#header-a {
  width: 20% !important;
}
#header-b {
  width: 76% !important;
  margin-left: 1% !important;
}


/* === ACE Gold Top Bar === */
#verytop{background: linear-gradient(to right, #b8923a, #8a6d2a, #b8923a) !important; color: #fff !important; padding: 17px 0 8px 0 !important; height: auto !important;}
#verytop a, #verytop a:hover{color: #fff !important;}
#verytop p{margin: 0 !important;}
#verytop .mod-custom, #verytop .mod-custom > div{height: auto !important;}
@media (min-width: 1480px) { #verytop .width-95 { width: calc(95% + 74px) !important; } }
@media (min-width: 992px) and (max-width: 1479px) { #verytop .width-95 { width: 100% !important; } }
#verytop { overflow: hidden !important; }

/* === ACE Mobile Hero Fix === */
@media only screen and (max-width: 767px) {
  #showcase-bkg {
    background-position: 65% center !important;
    background-attachment: scroll !important;
  }
  #showcase {
    padding: 20% 5% 8% !important;
    text-align: left !important;
  }
  #showcase h1 {
    font-size: 2.2em !important;
    line-height: 1.1 !important;
  }
  #showcase h2, #showcase h3 {
    font-size: 1.1em !important;
    line-height: 1.3 !important;
  }
  #showcase p {
    font-size: 0.95em !important;
  }
}

/* === ACE Gold Box Accent Lines === */
#extension-a .aos-item,
#extension-b .aos-item,
#extension-c .aos-item {
  border-top: 4px solid #c9a84c !important;
}


/* === ACE Split Top Sections === */
#top #top-boxes {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
#top-a.width-45,
#top-b.width-45 {
  display: block !important;
  width: 100% !important;
  max-width: 900px !important;
  vertical-align: top;
}
#top-a.width-45 {
  padding: 40px 20px 50px !important;
}
#top-b.width-45 {
  padding: 50px 20px 40px !important;
  border-top: 4px solid #c9a84c;
}


/* === ACE Split Feature Sections === */
#feature #feature-boxes {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
#feature-a.width-45,
#feature-b.width-45 {
  display: block !important;
  width: 100% !important;
  max-width: 900px !important;
  vertical-align: top;
}
#feature-a.width-45 {
  padding: 40px 20px 50px !important;
}
#feature-b.width-45 {
  padding: 50px 20px 40px !important;
  border-top: 4px solid #c9a84c;
}

/* === ACE Column Break Fix === */
#mod-custom167 p {
  break-inside: avoid !important;
  -webkit-column-break-inside: avoid !important;
}

#mod-custom167 p:first-child {
  margin-top: 0 !important;
}

/* === ACE Light Blue Background === */
#feature {
  background-color: #c8d6e8 !important;
}
#mainbody {
  background-color: #c8d6e8 !important;
}

/* === ACE Remove White Bar === */
#header {
  background-color: transparent !important;
}
#showcase-bkg .aos-item {
  background-color: transparent !important;
}

/* === ACE White Bar Fix === */
#header-surround {
  background-color: transparent !important;
  box-shadow: none !important;
}
body {
  background-color: #c8d6e8 !important;
}


/* === ACE Section Spacing Reduction === */
#feature {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}
#top {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}
#top-a.width-45 {
  padding-top: 20px !important;
  padding-bottom: 30px !important;
}
#top-b.width-45 {
  padding-top: 30px !important;
  padding-bottom: 20px !important;
}
#feature-a.width-45 {
  padding-top: 20px !important;
  padding-bottom: 30px !important;
}
#feature-b.width-45 {
  padding-top: 30px !important;
  padding-bottom: 20px !important;
}

/* === ACE Smooth Scroll === */
html {
  scroll-behavior: smooth;
}

/* === ACE Hero CTA Button === */
.ace-hero-cta {
  display: inline-block;
  margin-top: 28px;
  padding: 16px 40px;
  background: linear-gradient(to right, #b8923a, #8a6d2a, #b8923a);
  color: #fff !important;
  font-family: 'Mulish', sans-serif;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-decoration: none !important;
  border-radius: 4px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.3);
  transition: all 0.3s ease;
}
.ace-hero-cta:hover {
  background: linear-gradient(to right, #c9a84c, #9a7d30, #c9a84c);
  box-shadow: 0 6px 20px rgba(0,0,0,0.4);
  transform: translateY(-2px);
  color: #1a2744 !important;
}

/* === ACE Typography Improvements === */
#feature h2, #top h2 {
  font-size: 2rem;
  margin-bottom: 20px;
}
#feature p, #top p {
  line-height: 1.75;
}

/* === ACE Image Performance === */
img {
  height: auto;
}

/* === ACE Three Box Hover Effect === */
#extension-a .aos-item,
#extension-b .aos-item,
#extension-c .aos-item {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
#extension-a .aos-item:hover,
#extension-b .aos-item:hover,
#extension-c .aos-item:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.15);
}

/* === ACE Footer Styling === */
#footer {
  padding: 40px 20px;
}

/* === ACE Focus/Accessibility === */
a:focus-visible, button:focus-visible {
  outline: 2px solid #c9a84c;
  outline-offset: 2px;
}


/* === ACE Compact Footer === */
#footer {
  padding: 20px 20px 15px !important;
}
#footer-a {
  display: block !important;
  text-align: left !important;
  width: 100% !important;
}
.ace-footer-row {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 24px;
}
.ace-footer-logo {
  flex-shrink: 0;
}
.ace-footer-info {
  font-size: 0.85em;
  line-height: 1.5em;
  color: #aaa;
}
.ace-footer-info a {
  color: #c9a84c !important;
  text-decoration: none !important;
}
.ace-footer-info .ace-footer-name {
  color: #fff;
  font-weight: 600;
  font-size: 1.05em;
  display: block;
}
.ace-footer-info .ace-footer-tagline {
  font-style: italic;
  color: #8a9bb5;
  margin-bottom: 4px;
  display: block;
}


/* === ACE Header & Menu Styling === */
#header-surround,
#header {
  background-color: #fff !important;
}
#header-a img {
  border: 4px solid #c0cfdf !important;
  border-radius: 3px;
}
div#maximenuck197 ul.maximenuck li.maximenuck.level1 > a span.titreck,
div#maximenuck197 ul.maximenuck li.maximenuck.level1.active > a span.titreck,
div#maximenuck197 ul.maximenuck li.maximenuck.level1 > span.separator {
  text-transform: uppercase !important;
  font-size: 14px !important;
  letter-spacing: 0.5px;
  font-weight: 500 !important;
}

/* ============================================
   ACE MOBILE RESPONSIVE FIXES
   ============================================ */

/* --- Global overflow fix (prevents left-right scroll) --- */
html, body {
  overflow-x: hidden !important;
}

@media (max-width: 768px) {

  /* --- Showcase / Hero section overflow fix --- */
  #showcase {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100vw !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-right: 0 !important;
  }
  #showcase-bkg {
    overflow: hidden !important;
  }

  /* --- Hero text sizing for mobile --- */
  #showcase h1,
  #showcase .aos-item h1 {
    font-size: 1.8em !important;
    line-height: 1.15em !important;
    margin-bottom: -10px !important;
  }
  #showcase p {
    font-size: 1.1em !important;
    line-height: 1.3em !important;
  }
  #showcase h2 {
    font-size: 0.95em !important;
    line-height: 1.3em !important;
  }

  /* --- CTA button mobile --- */
  .ace-hero-cta {
    font-size: 0.95em !important;
    padding: 12px 28px !important;
  }

  /* --- Extension section (three boxes) --- */
  #extension {
    padding: 20px 15px 0 !important;
    margin-top: -40px !important;
  }
  #extension > div {
    flex-direction: column !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
  }
  .width-30 {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Feature section --- */
  #feature {
    padding: 25px 15px !important;
  }
  #feature > div {
    flex-direction: column !important;
    flex-wrap: wrap !important;
  }
  #feature-a,
  #feature-b {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Top section --- */
  #top {
    padding: 25px 15px !important;
  }
  #top > div {
    flex-direction: column !important;
    flex-wrap: wrap !important;
  }
  #top-a,
  #top-b {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Utility / Contact section --- */
  #utility-bkg {
    padding: 20px 15px !important;
  }
  #utility {
    padding: 20px 10px !important;
  }
  .width-95 {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- All width classes mobile override --- */
  .width-45 {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- Reduce vertical spacing between sections --- */
  #extension, #feature, #top, #utility-bkg {
    margin-bottom: 0 !important;
  }

  /* --- Three-box card styling mobile --- */
  .ace-three-box {
    min-height: auto !important;
    padding: 20px 15px !important;
  }

  /* --- Footer compact on mobile --- */
  .ace-footer-row {
    flex-direction: column !important;
    text-align: center !important;
    gap: 12px !important;
  }
  #footer {
    padding: 15px 15px 12px !important;
  }
  .ace-footer-info {
    font-size: 0.8em !important;
  }

  /* --- Header bar mobile --- */
  #header {
    padding: 5px 10px !important;
  }

  /* --- Hamburger menu position fix --- */
  #maximenuck197-mobile-bar .mobilemenuck-bar-button {
    top: -75px !important;
  }

  /* --- General mobile cleanup --- */
  img {
    max-width: 100% !important;
    height: auto !important;
  }
  /* Preserve logo heights */
  #header img,
  .ace-footer-logo img {
    height: auto !important;
    max-height: 80px !important;
    width: auto !important;
  }

  /* --- Fix any inner containers overflowing --- */
  .container-fluid,
  [class*="container"] {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  /* --- Gold top bar mobile --- */
  #utility-bar {
    font-size: 0.75em !important;
    padding: 6px 10px !important;
  }


  /* --- Utility-bkg overflow fix --- */
  #utility-bkg {
    max-width: 100vw !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }
  #utility-boxes {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

}

/* --- Small phone specific (375px and below) --- */
@media (max-width: 375px) {
  #showcase h1,
  #showcase .aos-item h1 {
    font-size: 1.5em !important;
  }
  #showcase p {
    font-size: 1em !important;
  }
  .ace-hero-cta {
    font-size: 0.85em !important;
    padding: 10px 22px !important;
  }
}
/* === Square boxes, no gold bar === */
#extension-a .aos-item,
#extension-b .aos-item,
#extension-c .aos-item {
  border-radius: 0 !important;
  border-top: none !important;
}

/* === Square CTA button === */
.ace-hero-cta {
  border-radius: 0 !important;
}

/* === Comparison boxes - site-complementary colors === */
#feature-b div[style*="fff3f3"] {
  background: #f5f0e8 !important;
  border-left-color: #b8923a !important;
  opacity: 1 !important;
}
#feature-b div[style*="f3fff5"] {
  background: #e8eff8 !important;
  border-left-color: #83acce !important;
  opacity: 1 !important;
}
/* === Comparison box heading colors === */
#feature-b div[style*="fff3f3"] h4 {
  color: #8a6d2a !important;
}
#feature-b div[style*="f3fff5"] h4 {
  color: #3c6587 !important;
}

/* === Hero text shadow - dark blue === */
#showcase h1,
#showcase h2,
#showcase p {
  text-shadow: 0px 0px 6px rgba(28, 50, 80, 0.5) !important;
}

/* === Comparison boxes - spacing === */
#feature-b div[style*="display"] {
  margin-top: -10px !important;
  margin-bottom: 50px !important;
}
#feature-b div[style*="display"] > div {
  padding-top: 15px !important;
}
#feature-b div[style*="display"] > div h4 {
  margin-top: 5px !important;
}
#feature-b .mod-custom > div > p + div[style*="display:flex"] { margin-top: -10px !important; }
/* === Mobile fixes === */
@media (max-width: 991px) {
  /* Gold bar - right-aligned with padding */
  #verytop { padding: 10px 15px 10px 0 !important; overflow: hidden !important; max-width: 100vw !important; box-sizing: border-box !important; }
  #verytop * { max-width: 100% !important; box-sizing: border-box !important; }
  #verytop .width-95 { width: 100% !important; margin: 0 !important; }
  #verytop .mod-custom, #verytop .mod-custom > div { width: 100% !important; margin: 0 !important; }
  #verytop p { font-size: 11px !important; margin: 0 !important; }

  /* Header - logo left, hamburger right, hide desktop nav */
  #header { display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 8px 15px !important; }
  #header-a { text-align: left !important; width: auto !important; flex-shrink: 0 !important; margin-left: 0 !important; }
  #header-a .width-45 { width: auto !important; margin: 0 !important; }
  #header-a img { max-height: 55px !important; width: auto !important; }
  #header-b { position: static !important; width: auto !important; flex-shrink: 0 !important; margin: 0 !important; }
  #header-b .header-b { height: auto !important; }
  div#maximenuck197 ul.maximenuck { display: none !important; }
  .mobilemenuck-bar { position: static !important; display: flex !important; align-items: center !important; }
  .mobilemenuck-bar-button { position: static !important; }

  /* Comparison boxes */
  #feature-b div[style*="display"] { margin-top: 0 !important; margin-bottom: 20px !important; }
  #feature-b div[style*="display"] > div { padding-top: 15px !important; }
}

/* ADA Skip Link - hide more aggressively */
.skip-to-accessible {
  transform: translateY(-500%) !important;
}
.skip-to-accessible:focus {
  transform: translateY(0) !important;
}
