


div.setsize {
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
    text-align: left;
    padding: 15px;
    box-sizing: border-box;
    background: linear-gradient(to top, rgba(255,255,255,1), rgba(255,255,255,.7));
}

.spacing {
    line-height: 1.6em;
    text-align: left;
}







//div.setsize {
//max-width : 1280px ;
//margin: -16px auto;
//position : relative;
//text-align : left;
//padding-right : 10px;
//padding-left : 10px;
//padding-bottom : 0px;

//h1 {
//  margin:0;
//  padding:0;
// }

// background : linear-gradient(to top, rgba(255,255,255,100), rgba(255,255,255,.7));


// }


#license {
    width:100%;
    /* background:#fff; */
background : linear-gradient(to bottom, rgba(100,100,100,.6), rgba(0,0,0,0));
    padding: 0px 0;

    margin:0 auto;
    overflow:hidden;
    box-sizing:border-box;
}

.inverted-icon {
    filter: invert(1) brightness(1);
    display: inline-block;
}
        .badge {
            background: #e53e3e;
            color: white;
            font-size: 11px;
            font-weight: bold;
            padding: 2px 6px;
            border-radius: 50%;
            display: none;
            margin-left: 5px;
        }


/* Package Deals */

.col-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.column-pkg {
  flex: 1;
  padding: 5px;
  background-color: #f0f0f0;
  border: 1px solid #ccc;
  margin: 5px;
  line-height : 1.25;
  box-sizing: border-box;
}

/* Media query for smaller screens */
@media (max-width: 768px) {
  .col-container {
    flex-direction: column;
    align-items: center;
  }

  .column-pkg {
    width: 100%;
    margin: 10px 0;
  }
}

.col-left {
  background-color: dodgerblue;
font-weight: 500;
border-width : 1px;
border-radius: 5px ;
padding : 5px;
  flex: 50%;
  Font-Family : 'Inter Tight', sans-serif ;
  Color : #fff ;
  Font-Size : 12pt ;
  line-height : 1.1;
  text-align: center; }

.col-center {
  background-color: black;
font-weight: 500;
border-width : 1px;
border-radius: 5px ;
padding : 5px;
  flex: 50%;
  Font-Family : 'Inter Tight', sans-serif ;
  Color : #fff ;
  Font-Size : 12pt ;
  line-height : 1.1;
  text-align: center; }

.col-right {
  background-color: navy ;
font-weight: 500;
border-width : 1px;
border-radius: 5px ;
padding : 5px;
  flex: 50%;
  Font-Family : 'Inter Tight', sans-serif ;
  Color : #fff ;
  Font-Size : 12pt ;
  line-height : 1.1;
  text-align: center; }

.col-left2 {
  background-color: green;
font-weight: 500;
border-width : 1px;
border-radius: 5px ;
padding : 5px;
  flex: 50%;
  Font-Family : 'Inter Tight', sans-serif ;
  Color : #fff ;
  Font-Size : 12pt ;
  line-height : 1.1;
  text-align: center; }

.col-right2 {
  background-color: darkgreen;
font-weight: 500;
border-width : 1px;
border-radius: 5px ;
padding : 5px;
  flex: 50%;
  Font-Family : 'Inter Tight', sans-serif ;
  Color : #fff ;
  Font-Size : 12pt ;
  line-height : 1.1;
  text-align: center; }


    /* Image link styling */
    a img {
        /* width: 18px; Adjust size as needed */
        border-radius: 1px; /* Optional rounded corners */
        transition: box-shadow 0.3s ease, transform 0.3s ease;
    }

    /* Glow effect on hover */
    a:hover img {
        /* box-shadow: 0 0 2px 2px rgba(0, 255, 255, 0.8); */
        transform: scale(1.1); /* Slight zoom for emphasis */
    }


/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 99999; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content */
.modal-content {
  background-color: #fefefe;
  margin: auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
  border-radius: 15px;
}

/* Close Button Logic */
[class^="close"] {
  color: #aaaaaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer;
}

[class^="close"]:hover { color: #000; }

/* Left-justified list formatting */
.course-row {
   margin-bottom: 10px;
  display: block;
  text-align: left;
}

.modal-trigger {
  text-decoration: none;
  color: black;
}

.course-title {
margin-left: 10px;
vertical-align: middle;
}



BODY {
margin-top : 0px ;
background-repeat : no-repeat ;
min-height : 400px ;
background-position : top left ;
Margin-Left : 0px ;
Margin-Right : 0px ;
Font-Family : Inter Tight, sans-serif ;
Background-Color : #ffffff ;
background-attachment : fixed;
/* background-image : url(images/phiibgd2.jpg); */
background-image : url(images/phiibgd.jpg);
background-position : top left;
}

:link {
Color : #24558A
}
html {
margin : 0;
padding : 0;


Height : 100%;

}

Font-Family : 'Inter Tight', sans-serif ;
Color : black ;
Text-Decoration : None ;
Font-Weight : Normal ;
}
:active {
Font-Family : 'Inter Tight', sans-serif ;
Color : #0652D0 ;
Text-Decoration : None ;
}
:visited {
Font-Family : 'Inter Tight', sans-serif ;
Color : #0652D0 ;
Text-Decoration : None ;
}
Body Text body {
color : black ;
Font-Family : 'Inter Tight', sans-serif ;
}
All Links A {
Font-Family : 'Inter Tight', sans-serif ;
Color : #0652D0 ;
Text-Decoration : none ;
}
A:hover {
Font-Family : 'Inter Tight', sans-serif ;
Color : #0652D0 ;
Text-Decoration : none ;
font-weight: 550;
}
:link {
Font-Family : 'Inter Tight', sans-serif ;
Color : #0652D0 ;
Text-Decoration :  none ;
}



input[type=checkbox] {
-ms-transform: scale(1.5);
-moz-transform: scale(1.5);
-webkit-transform: scale(1.5);
-o-transform: scale(1.5);
padding : 5px
}

.hidden{
  opacity:0;
  /*  OR   */
  position:absolute;
  left:-999px;
}

.spacing {
line-height : 1.6em;
text-align : left;
}

.chatbutton {
position : fixed; 
bottom : 0; 
right : 0px; 
Width : 200px; 
Height : 4em; 
Text-Align : Center;
}

.toptag {
Font-Family : Inter Tight, sans-serif ;
Font-Size : 11pt ;
}



.companyname {
Font-Family : University Roman Let Plain Med;
Font-Size : 16pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
padding-left : 0px;
line-height : 1.2em;
}

.sub-headline-text {
    display: block;
    font-size: 12pt;
    font-weight: 500;
    color: #4465A2;
    font-style: normal;
    margin-top: 5px;
}

.heading1 {
Font-Size : 22pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 120%;
}

.heading1a {
Font-Size : 23pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 100%;
}

.heading2 {
Font-Size : 18pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 120%;
}

.heading3 {
Font-Size : 16pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 1.5em;
}

.heading3a {
Font-Size : 16pt ;
color: #000;
font-weight: 600;
line-height : 1.5em;
}

.heading4 {
Font-Size : 13pt ;
font-style: italic;
color: #000;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
padding-left : 0px;
}


.headingbox {
Font-Size : 18pt ;
font-style: italic;
color: #blue;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 120%;
}



.heading16 {
Font-Size : 16pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 1.5em;
}

.headingtour {
Font-Size : 20pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 100%;
}



.contactform {
Font-Size : 12pt ;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
padding-left : 0px;
line-height : 1.5em;
}

.input[type=radio] {
-ms-transform: scale(1.5) ;
-moz-transform: scale(1.5) ;
-webkit-transform: scale(1.5) ;
-o-transform: scale(1.5) ;
padding : 5px
}

.headinglink {
Font-Size : 15pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
padding-left : 0px;
line-height : 1.5em;
}


.head1 {
Font-Size : 22pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 120%;
}


.head-short {
Font-Size : 18pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 120%;
}

.head-enroll {
Font-Size : 18pt ;
font-style: normal;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 120%;
}


.subtitle {
Font-Size : 13pt ;
font-style: italic;
color: #000;
font-weight: 300;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
line-height : 120%;
}

.head2 {


Font-Family : 'Inter Tight', sans-serif ;
Color : #4465A2 ;
Font-Size : 15pt ;
Font-Weight : Bold ;
font-style: italic;
line-height : 1.4em;

}


.buy {
Font-Size : 14pt ;
color: #fff;
}

.grid-container {
display : grid ;
grid-template-columns : 50% 50% ;
border : #5EB0FC solid 1px;
padding : 0px;
}
.grid-item {
border : #5EB0FC solid 1px;
padding : 0px;
  text-align: center;
}

.standouttext {
Font-Family : 'Inter Tight', sans-serif ;
Color : #3A578B ;
Font-Size : 14pt ;
Font-Weight : Bold ;
font-style: italic;
line-height : 1.4em;
}

.testimonialtext {
Font-Family : 'Inter Tight', sans-serif ;
Color : #25385A ;
Font-Size : 12pt ;
Font-Weight : normal ;
font-style: normal;
line-height : 1.4;
padding-left: 10px;

}

.quotetext {
Font-Family : 'Inter Tight', sans-serif ;
Color : #4465A2 ;
Font-Size : 12pt ;
Font-Weight : Bold ;
font-style: italic;
line-height : 1.5em
}

.shadedbox {

border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
/* background-color: rgba(58, 87, 139, 0.7); */
background-color: rgba(0, 0, 0, 0.5);
Font-Family : 'Inter Tight', sans-serif ;
color: #FFFFFF;
Font-Size : 15pt ;
font-style: italic;
line-height : 1.2em;

}


.reviews {
max-width : 1280px ;
margin: -16px auto;
position : relative;
text-align : left;
padding-right : 10px;
padding-left : 10px;
padding-bottom : 0px;
margin : 0 auto;
border: 1px solid #ccc;
border-radius: 15px;
line-height : 1.5em ;
Width : 100% ;
Text-Align : Left">
h1 {
  margin:0;
  padding:0;
}
background : linear-gradient(to top, rgba(255,255,255,100), rgba(255,255,255,.7));
}


.outer {
display: flex;
            justify-content: center;
            margin: 0;
            padding: 20px;
            font-family: sans-serif;
}

        /* The wrapper is centered as a block, but its contents align left */
        .centered-block {
            display: inline-block;
            text-align: left;
            max-width: 100%;
        }

.holidaybox {

border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
background-color: rgba(120, 27, 37, 0.7);
Font-Family : 'Inter Tight', sans-serif ;
color: #FFFFFF;
Font-Size : 15pt ;
font-style: italic;
line-height : 1.4em;

}


.specialbox {

border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
/* background-color: rgba(0, 200, 100, 0.7); */
background-color: rgba(0, 0, 0, 0.6);
Font-Family : 'Inter Tight', sans-serif ;
color: #ffffff;
Font-Size : 15pt ;
font-style: italic;
line-height : 1.4em;

}


.newyearsbox {

border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
background-color: rgba(10, 10, 10, 0.7);
Font-Family : 'Inter Tight', sans-serif ;
color: #FFFFFF;
Font-Size : 15pt ;
font-style: italic;
line-height : 1.4em;

}


.cybersalebox {
border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
/* background-color: rgba(10, 10, 10, 0.7); */
Font-Family : 'Inter Tight', sans-serif ;
color: Blue;
Font-Size : 15pt ;
font-style: italic;
line-height : 1.4em;

}




.shadedbox2 {

border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
background-color: rgba(0, 0, 0, .7);
/* background-color: rgba(54, 164, 44, .6); */
Font-Family : 'Inter Tight', sans-serif ;
color: #FFFFFF;
Font-Size : 15pt ;
font-style: italic;
line-height : 1.4em;

}




.enrollbox {

border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
/* background-color: rgba(58, 87, 139, 0.7); */
background-color: rgba(54, 164, 44, 1);
Font-Family : 'Inter Tight', sans-serif ;
color: #FFFFFF;
Font-Size : 15pt ;
font-style: italic;
line-height : 1.4em;

}

.enrollbox a {
color: #FFFFFF;

}


.hero {
Font-Size : 13pt ;
text-align : left;
//font-style: italic;
color: #000;
font-weight: 400;
// text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
}

.spacing {
    line-height: 1.6em;
    text-align: left;
}


/* --- Typography & Headings --- */
.heading2 {
    font-size: 18pt;
    font-style: italic;
    color: #000;
    font-weight: 400;
    text-shadow: 1px 1px 1px rgba(159, 125, 69, .4);
    line-height: 1.3;
    display: block;
}

.companyname {
Font-Family : University Roman Let Plain Med;
    font-size: 15pt;
    font-style: italic;
    color: #000;
    font-weight: 400;
    text-shadow: 1px 1px 1px rgba(159, 125, 69, .4);
    line-height: 1.2em;
}

.headinglink {
    font-size: 13pt;
    font-style: italic;
    color: #000;
    font-weight: 400;
    line-height: 1.4;
}

.hero {
    font-size: 12pt;
    text-align: left;
    color: #000;
    font-weight: 400;
    line-height: 1.5;
}


#banner {
padding: 0px 0;
background-image : url(images/home-inspector-banner.jpg);
background-repeat : no-repeat ;
height:  375px;
padding:2px 8px;
    margin:auto;
    left:0;right:0;
    top:0%;bottom:auto;
    overflow:hidden;
    box-sizing:border-box;
}




.bannershade {

border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 99% ;
background-color: rgba(255, 255, 255, 0.6);
Font-Family : 'Inter Tight', sans-serif ;
color: #000000;
}


.boxedlink {

background-color: #CAE7BB;
border : 5px solid #959595;
border-width : 0px;
border-radius: 5px ;
padding : 10px;
// Width : 100% ;
Font-Family : 'Inter Tight', sans-serif ;
color: #000;
Font-Size : 16pt ;
font-weight: 500;
display: flex;
justify-content: center;
align-items: center;

  -webkit-transition: color .2s ease;
  -o-transition: color .2s ease;
  transition: color .2s ease;
}

.boxedlink:hover
{
     -webkit-box-shadow:3px 3px 3px rgba(0, 0, 0, .2);
    -moz-box-shadow:3px 3px 3px rgba(0, 0, 0, .2);
    box-shadow:3px 3px 3px rgba(0, 0, 0, .2);
    border: solid 1px #ccc;
} 




.quicklinks {
    border: 5px solid #959595;
    border-width: 1px;
    border-radius: 5px;
    padding: 5px;
    width: 100%;
    background-color: #E1DFD5;
    font-size: 12pt;
    text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
    
    /* --- Added for Horizontal and Vertical Centering --- */
    display: flex;
    justify-content: center; /* Centers items horizontally */
    align-items: center;     /* Centers items vertically */
    flex-wrap: wrap;         /* Allows clean wrapping on mobile devices */
    gap: 8px;                /* Keeps even spacing between links and separators */
    box-sizing: border-box;  /* Ensures padding doesn't push the div past 100% width */
}

.quicklinks a {
    color: #000000;
}

.quicklinks a:hover {
    color: #000;
    font-weight: 500;
    -webkit-transition: color .2s ease;
    -o-transition: color .2s ease;
    transition: color .2s ease;
}



/* --- Core Structural Utility Grid Definitions --- */
.trust-container,
.income-callout-box,
.master-value-container,
.state-licensing-section,
.closing-cta-banner {
    width: 100%;
    box-sizing: border-box;
    margin: 30px auto;
}

/* --- Section 1: Brand Authority Credentials --- */
.trust-container {
    background-color: #ffffff;
    border: 1px solid #e2e8f0;
    border-left: 5px solid #24558A;
    border-radius: 8px;
    padding: 25px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}
.trust-badge {
    display: inline-block;
    background-color: #e2e8f0;
    color: #1e293b;
    font-size: 9.5pt;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 15px;
}
.trust-title {
    font-size: 18pt;
    font-weight: 700;
    color: #000000;
    line-height: 1.3;
    margin: 0 0 15px 0;
}
.trust-split-row {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.trust-main-text {
    font-size: 12pt;
    line-height: 1.6;
    color: #333333;
    margin: 0;
}
.trust-bullet-column {
    display: flex;
    flex-direction: column;
    gap: 12px;
    background-color: #f8fafc;
    padding: 18px;
    border-radius: 6px;
}
.trust-bullet-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 11.5pt;
    line-height: 1.4;
    color: #000000;
}
.trust-icon {
    color: #24558A;
    font-weight: bold;
    flex-shrink: 0;
}

/* --- Section 2: Financial Calculator Hook --- */
.income-callout-box {
    background-color: #f8fafc;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 22px;
}
.income-title {
    font-size: 15pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 10px 0;
}
.income-grid {
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.income-stat {
    font-size: 20pt;
    font-weight: 800;
    color: #36a42c;
    line-height: 1.1;
}
.income-text {
    font-size: 11pt;
    line-height: 1.5;
    color: #333333;
}

/* --- Section 3: 3-Step Milestones & Catalog --- */
.steps-catalog-row {
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin: 30px auto;
    width: 100%;
    box-sizing: border-box;
}
.steps-container {
    flex: 1.2;
}
.steps-title {
    font-size: 18pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 20px 0;
    line-height: 1.3;
}
.step-item {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
}
.step-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background-color: #24558A;
    color: #ffffff;
    font-weight: 700;
    font-size: 14pt;
    border-radius: 50%;
    flex-shrink: 0;
}
.step-text h3 {
    margin: 0 0 5px 0;
    font-size: 13pt;
    font-weight: 600;
    color: #000000;
}
.step-text p {
    margin: 0;
    font-size: 11pt;
    line-height: 1.5;
    color: #333333;
}
.catalog-cta-box {
    flex: 1;
    background-color: #f8fafc;
    border: 1px dashed #24558A;
    border-radius: 8px;
    padding: 25px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.catalog-title {
    font-size: 15pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 12px 0;
}
.catalog-text {
    font-size: 11pt;
    line-height: 1.6;
    color: #333333;
    margin: 0 0 20px 0;
}
.catalog-btn {
    display: block;
    text-align: center;
    background-color: #36a42c;
    color: #ffffff !important;
    font-weight: 600;
    font-size: 12pt;
    padding: 12px 20px;
    border-radius: 5px;
    transition: background-color 0.2s ease;
}
.catalog-btn:hover {
    background-color: #2b8223;
}

/* --- Section 4: Master Inclusions & Curriculum --- */
.master-value-container {
    background-color: #ffffff;
    border: 1px solid #e2e8f0;
    border-top: 5px solid #24558A;
    border-radius: 8px;
    padding: 25px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04);
}
.master-title {
    font-size: 18pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 10px 0;
    line-height: 1.3;
}
.master-subtitle {
    font-size: 11.5pt;
    line-height: 1.5;
    color: #475569;
    margin: 0 0 25px 0;
}
.master-split-row {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.master-left-col {
    flex: 1.2;
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.master-paragraph {
    font-size: 11pt;
    line-height: 1.6;
    color: #333333;
    margin: 0;
}
.timeline-highlight-box {
    background-color: #f8fafc;
    border-left: 3px solid #24558A;
    padding: 15px;
    border-radius: 0 6px 6px 0;
    font-size: 11pt;
    line-height: 1.5;
    color: #1e293b;
}
.master-right-col {
    flex: 1.1;
    background-color: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 6px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.master-badge {
    display: inline-block;
    align-self: flex-start;
    background-color: #22c55e;
    color: #ffffff;
    font-size: 9.5pt;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.master-features-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.master-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 11pt;
    line-height: 1.4;
    color: #14532d;
}
.master-feature-item strong {
    color: #000000;
}
.master-checkmark {
    color: #22c55e;
    font-weight: bold;
    flex-shrink: 0;
    margin-top: 1px;
}

/* --- Section 5: Geographical Mapping Box --- */
.state-licensing-section {
    background-color: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 25px;
    text-align: center;
}
.state-title {
    font-size: 18pt;
    font-weight: 700;
    color: #000000;
    margin: 0 0 12px 0;
}
.state-description {
    font-size: 12pt;
    line-height: 1.6;
    color: #333333;
    max-width: 850px;
    margin: 0 auto;
}

/* --- Section 6: Closing Action Banner --- */
.closing-cta-banner {
    background: linear-gradient(135deg, #24558A 0%, #17375b 100%);
    color: #ffffff;
    border-radius: 8px;
    padding: 30px 25px;
    text-align: center;
}
.closing-title {
    font-size: 18pt;
    font-weight: 700;
    margin: 0 0 10px 0;
    color: #ffffff;
}
.closing-text {
    font-size: 11.5pt;
    line-height: 1.6;
    color: #e2e8f0;
    max-width: 800px;
    margin: 0 auto 20px auto;
}
.closing-actions {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
}
.closing-btn-primary {
    display: inline-block;
    background-color: #36a42c;
    color: #ffffff !important;
    font-weight: 600;
    padding: 12px 24px;
    border-radius: 5px;
    font-size: 11pt;
    text-decoration: none;
}
.closing-btn-primary:hover {
    background-color: #2b8223;
}

/* --- Media Queries (Tablet & Desktop Layouts) --- */
@media screen and (min-width: 769px) {
    .trust-split-row, .income-grid, .steps-catalog-row, .master-split-row {
        flex-direction: row;
    }
    .trust-container, .state-licensing-section, .master-value-container {
        padding: 35px;
    }
    .trust-title, .steps-title, .master-title, .state-title, .closing-title {
        font-size: 22pt;
    }
    .trust-left-side { flex: 1.2; }
    .trust-bullet-column { flex: 1; padding: 22px; }
    .income-stat { flex: 0.8; border-right: 2px solid #cbd5e1; padding-right: 15px; }
    .income-text { flex: 2; padding-left: 5px; }
    .steps-catalog-row { align-items: stretch; }
    .master-left-col { flex: 1.2; }
    .master-right-col { flex: 1.1; padding: 25px; }
    .closing-actions { flex-direction: row; gap: 15px; }
}


/* ==========================================================================
   1. PRIMARY CALL-TO-ACTION BUTTON (50% LARGER)
   ========================================================================== */
.matrix-toggle-btn {
    font-family: 'Inter Tight', sans-serif;
    font-size: 17.5pt !important; /* ~50% larger than standard 11.5pt text */
    font-weight: 600 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    cursor: pointer !important;
    display: inline-block !important;
    padding: 15px 36px !important; /* Scaled up touch target footprint */
    background-color: rgba(36, 85, 138, 0.95) !important; /* Deep rich brand blue */
    border: 2px solid rgba(255, 255, 255, 0.4) !important;
    border-radius: 5px !important;
    
    -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.25) !important;
    -moz-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.25) !important;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.25) !important;
    
    transition: background-color 0.15s ease, transform 0.1s ease, box-shadow 0.15s ease !important;
}

.matrix-toggle-btn:hover {
    background-color: #36a42c !important; /* Vivid brand green on hover profile */
    text-decoration: none !important;
    -webkit-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3) !important;
    -moz-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3) !important;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3) !important;
}

.matrix-toggle-btn:active {
    transform: translateY(1px) !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2) !important;
}

/* Structural selector utility hiding the background state toggle checkbox */
.matrix-toggle-checkbox {
    display: none !important;
}


/* ==========================================================================
   2. MATRIX CONTENT MODAL PANEL (BREAKS OUT OF FIXED BANNER CONSTRAINTS)
   ========================================================================== */
.seo-state-matrix-container {
    display: none; /* Controlled via checkbox rule below */
    
    /* Forces the panel out of parent boundaries to prevent truncation */
    position: absolute !important; 
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 95% !important;
    max-width: 1050px !important;
    margin: 10px auto 0 auto !important;
    padding: 20px !important;
    
    /* Ultimate layering priority to render cleanly over background graphics */
    z-index: 2147483647 !important; 
    
    background-color: #E1DFD5 !important; /* Neutral background matrix tone */
    border: 2px solid #959595 !important;
    border-radius: 5px !important;
    box-sizing: border-box !important;
    text-align: left !important;
    
    -webkit-box-shadow: 0 10px 35px rgba(0, 0, 0, 0.4) !important;
    -moz-box-shadow: 0 10px 35px rgba(0, 0, 0, 0.4) !important;
    box-shadow: 0 10px 35px rgba(0, 0, 0, 0.4) !important;
    
    animation: slideModalDown 0.18s ease-out !important;
}

/* CRITICAL OVERRIDE: Forces the #banner to let content overflow its height bounds */
#banner {
    position: relative !important;
    overflow: visible !important; 
}

/* Native CSS state logic switch tracking click behavior */
.matrix-toggle-checkbox:checked ~ .seo-state-matrix-container {
    display: block !important;
}


/* ==========================================================================
   3. INTERNAL CONTENT ELEMENTS & RESPONSIVE LINK LAYOUT GRID
   ========================================================================== */
.matrix-header-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin: 0 0 14px 0 !important;
    padding-bottom: 6px !important;
    border-bottom: 1px solid #959595 !important;
}

.matrix-title {
    font-family: 'Inter Tight', sans-serif !important;
    font-size: 13pt !important;
    font-style: italic !important;
    color: #000000 !important;
    font-weight: 600 !important;
    margin: 0 !important;
    text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5) !important;
}

/* Close marker control style tracking the header alignment layout rules */
.matrix-close-btn {
    font-size: 22pt !important;
    font-weight: 700 !important;
    color: #959595 !important;
    cursor: pointer !important;
    line-height: 1 !important;
    transition: color 0.1s ease !important;
}
.matrix-close-btn:hover {
    color: #000000 !important;
}

/* Flex-Grid Architecture Layout mapping */
.matrix-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)) !important;
    gap: 10px 14px !important;
}

.matrix-grid a {
    font-family: 'Inter Tight', sans-serif !important;
    font-size: 11pt !important;
    color: #0652D0 !important;
    text-decoration: none !important;
    display: inline-block !important;
}

.matrix-grid a:hover {
    color: #000000 !important;
    font-weight: 550 !important;
    text-decoration: underline !important;
}

/* Downward dropdown reveal animation profile rules */
@keyframes slideModalDown {
    from { opacity: 0; transform: translate(-50%, -8px); }
    to { opacity: 1; transform: translate(-50%, 0); }
}


/* ==========================================================================
   4. DEVICE SIZE DISPLAY BREAKPOINT RULE ADJUSTMENTS
   ========================================================================== */
@media screen and (max-width: 600px) {
    .matrix-grid {
        grid-template-columns: repeat(auto-fill, minmax(115px, 1fr)) !important;
        gap: 8px 10px !important;
    }
    .seo-state-matrix-container {
        padding: 15px !important;
        width: 92% !important;
    }
    .matrix-title {
        font-size: 11.5pt !important;
    }
}

@media screen and (max-width: 480px) {
    .matrix-toggle-btn {
        font-size: 14pt !important; /* Fluidly downscales on small smartphones */
        padding: 12px 24px !important;
        width: 90% !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================================
   FULL-WIDTH BADGE ROW CONTAINER
   ========================================================================== */
.full-width-badge-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;          /* Hard absolute rule: NEVER drop to a new line */
    justify-content: space-between !important; /* Forces left, center, right edge alignment */
    align-items: center !important;        /* Keeps all midlines vertically balanced */
    width: 100% !important;                /* Spans 100% of the screen/parent element */
    box-sizing: border-box !important;
    padding: 0 20px !important;            /* Side padding safety cushion for browser edges */
    margin: 25px auto !important;          /* Spacing above and below the badge row */
}

/* Modal link element anchors - Optimized for Full Size on Widescreen */
.full-width-badge-row .modal-trigger {
    display: block !important;
    flex: 0 1 auto !important;             /* Allows items to scale down fluidly on smaller screens */
    
    /* Expanded constraints to let graphics render at full native size on large displays */
    width: auto !important;
    max-width: 260px !important;           /* Increased boundary to accommodate full-res assets */
}

/* Specific text alignment layout rules for edge handling */
.full-width-badge-row .modal-trigger:first-child { text-align: left !important; }
.full-width-badge-row .modal-trigger:nth-child(2) { text-align: center !important; }
.full-width-badge-row .modal-trigger:last-child { text-align: right !important; }

/* Responsive Image Engine Rules */
.full-width-badge-row .modal-trigger img {
    width: 100% !important;                /* Scales smoothly within anchor limits */
    height: auto !important;               /* Restores absolute original graphic proportions */
    max-height: 140px !important;          /* Higher roof cap so large screens show full sizing */
    object-fit: contain !important;
    border: 0 !important;
    display: inline-block !important;
}

/* ==========================================================================
   RESPONSIVE DOWN-SCALING FOR MEDIUM TO SMALL SCREENS
   ========================================================================== */
@media screen and (max-width: 1024px) {
    .full-width-badge-row .modal-trigger {
        max-width: 160px !important;       /* Intermediate scaling for tablets/laptops */
    }
    .full-width-badge-row .modal-trigger img {
        max-height: 110px !important;
    }
}

@media screen and (max-width: 480px) {
    .full-width-badge-row {
        padding: 0 8px !important;         /* Tighter padding constraints on mobile edges */
    }
    .full-width-badge-row .modal-trigger {
        max-width: 95px !important;        /* Scales down nicely to fit 3-across on mobile without clipping */
    }
    .full-width-badge-row .modal-trigger img {
        max-height: 85px !important;       /* Compact layout height for small viewports */
    }
}



.container {
border : 5px solid #959595;
border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
Height : auto ;
Background-Color : #E1DFD5;
display: flex;
justify-content: center;
align-items: center;


Font-Size : 14pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);

}


.containertop {
border : 5px solid #959595;
border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
Height : auto ;
Background-Color : #E1DFD5;
display: flex;
justify-content: center;
align-items: center;


Font-Size : 12pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);

}


.course {

line-height : 1.6em;
align-items: center;
Font-Size : 12pt ;
text-align : left;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
}


.greyed {

Font-Size : 14pt ;
text-align : left;
font-style: italic;
color: #808080;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .4);
}



.greyed2 {

Font-Size : 12pt ;
text-align : left;
font-style: italic;
color: #808080;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .4);
}


.course2 {


align-items: center;
Font-Size : 12pt ;
text-align : left;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);
}


.compare {
Height : 40px ;
Font-Size : 12pt ;
font-style: normal;
color: #000;
font-weight: 500;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .4);
}



.roundedtable {
border : 5px solid #959595;
border-width : 1px;
border-radius: 5px ;
Color : #F8F8F8;
padding: 5px;
Height : 34px;
Background-Color : #E1DFD5;

}


.roundedtable-mbg {
border : 5px solid #959595;
border-width : 1px;
border-radius: 5px ;
Color : #F8F8F8;
padding: 5px;
Height : 34px;
Background-Color : #E1DFD5;
}


.roundedtable2 {
padding : 4;
border : 2px solid #B4B4B4;
border-radius: 5px ;
Font-Size : 10.5pt ;
Background-Color : #EDEDEE;

}


.container {
border : 5px solid #959595;
border-width : 1px;
border-radius: 5px ;
padding : 5px;
Width : 100% ;
Height : auto ;
Background-Color : #E1DFD5;
display: flex;
justify-content: center;
align-items: center;


Font-Size : 14pt ;
font-style: italic;
color: #000;
font-weight: 400;
text-shadow: 1px 2px 1px rgba(159, 125, 69, .8);

}






#bodytext {
Font-Family : 'Inter Tight', sans-serif ;
Color : black ;
Font-Size : 10.5pt ;
line-height : 1.4em
}
#footertext {
Font-Family : 'Inter Tight', sans-serif ;
Color : black ;
Font-Size : 9pt ;
line-height : 1.5em
}
#contentstext {
Font-Family : 'Inter Tight', sans-serif ;
Color : black ;
Font-Size : 10pt ;
line-height : 1.4em
}


#headlinetext {
Font-Family : 'Inter Tight', sans-serif ;
Color : #4465A2 ;
Font-Size : 18pt ;

}

#largetext {
Font-Family : 'Inter Tight', sans-serif ;
Color : #4465A2 ;
Font-Size : 18pt ;
line-height : .4em
}



#guaranteetext {
Font-Family : 'Inter Tight', sans-serif ;
Color : black ;
Font-Size : 14pt ;
line-height : 1.1em
}

img {
padding : 0;
/* display : block; */
/* margin : 0 auto; */

max-height : 100%;
max-width : 100%
}

BODYhtml {
margin : 0;
padding : 0;
Height : 100%
Height : 100%;
Height : 100%

}


/* EDGE BROWSER FIX */



#homeinspectioncoursesImage {
  position: relative;
  z-index: 1;
}
#continuingedcoursesImage {
  position: relative;
  z-index: 1;
}
#environmentalcoursesImage {
  position: relative;
  z-index: 1;
}
#weatherizationcoursesImage {
  position: relative;
  z-index: 1;
}
#moldcoursesImage {
  position: relative;
  z-index: 1;
}
#infraredcoursesImage {
  position: relative;
  z-index: 1;
}
#reportsoftwareImage {
  position: relative;
  z-index: 1;
}
#kitstoolsformsImage {
  position: relative;
  z-index: 1;
}
#specialcoursesImage {
  position: relative;
  z-index: 1;
}



.checkoutbutton
{
    position: float;
    margin: auto;
     height: 180px; 
     width: 180px; 
     background-color: transparent;
     float: center;
     text-align: center;
     border: solid 1px #ccc; 
     -moz-border-radius: 5px; 
     -webkit-border-radius: 5px; 
     border-radius:5px; 
}
.checkoutbutton:hover
{
     -webkit-box-shadow:3px 3px 3px rgba(0, 0, 0, .2);
    -moz-box-shadow:3px 3px 3px rgba(0, 0, 0, .2);
    box-shadow:3px 3px 3px rgba(0, 0, 0, .2);
    border: solid 1px #ccc;
} 



.checkoutbutton2
{
    position: float;
    margin: auto;
     height: 40px; 
     width: 175px; 
     background-color: transparent;
     float: center;
     text-align: center;
     border: solid 1px #ccc; 
     -moz-border-radius: 10px; 
     -webkit-border-radius: 10px; 
     border-radius:10px; 
}
.checkoutbutton2:hover
{
     -webkit-box-shadow:3px 3px 3px rgba(0, 0, 0, .2);
    -moz-box-shadow:3px 3px 3px rgba(0, 0, 0, .2);
    box-shadow:3px 3px 3px rgba(0, 0, 0, .2);
    border: solid 1px #ccc;
} 




/*  */
#mcmenu
{
    width:auto;
    display:block;
    /* white-space: nowrap; */
    text-align:center;
    font-family:"Arial", Helvetica,sans-serif;
    line-height:1.1;
}
#mcmenu ul
{
    width:100%;
    display:block;
    font-size:0;
    text-align:center;
    color:#FFFFFF;
/*  background-color: #4D4D4D; */ 

background : linear-gradient(to top, rgba(90,90,90,1), rgba(120,120,120,.9));

    border: transparent;
    margin:0; 
    padding:0;
    list-style:none;
    position:fixed;
    z-index:999999990;
    border-radius: 3px;
} 

#mcmenu li
{
    display:inline-block;
    position:relative;   
    font-size:0; 
    margin:0;
    padding:0;
}

/*Top level items
---------------------------------------*/
#mcmenu .top-item 
{
    font-size:14px;
    color: #ffffff;
    text-decoration:none;
    padding:15px 10px; 
    font-weight:normal;
/* text-transform:uppercase;   */
    letter-spacing:1px; 
    display:block;   
    position:relative;
    transition:all 0.3s;
}

#mcmenu li.over .top-item
{  
    color:#ffffff;
    background-color:#77A6F7;
}


/*Sub level items
---------------------------------------*/
#mcmenu .dropdown
{
    text-align:left;
    left:0;
    font-family:inherit;
    color: #ffffff;
/*  background-color:#4D4D4D; */
    background-color:#6E6E6E;
    border:none;
    position:absolute;
    box-shadow: 0 4px 8px rgba(0,0,0,0.3);
    display:none;
    opacity:0;
    cursor:default;
}

#mcmenu .dropdown li {
    display: block;  
}

#mcmenu .sub-item, #mcmenu .clm a, #mcmenu .clm h3 
{
    font-size:15px;
    font-weight:400;
    font-family:inherit;
    margin:0;
    padding:8px 10px; 
    display:block;
    color:inherit;
    text-decoration:none;    
}
#mcmenu .clm h3 {
    font-size:15px;
    font-weight:700;
}
#mcmenu .sub-item {
    background-color:#6E6E6E;
    position:relative;       
    transition:all 0.3s;
}

#mcmenu li.over > .sub-item, #mcmenu li:hover > .sub-item
{
    color:#000000;
    background-color:#EEEEEE;
}

#mcmenu .clm a:hover
{
    color:#ffffff;
    transition:color 0.2s;
}

#mcmenu .dropdown.right0 {left:auto;right:0;} 
#mcmenu .dropdown li > .dropdown.right0 {left:auto;right:100%;} 
       
#mcmenu li.full-width{
    position:static;
}
#mcmenu li.full-width .dropdown{
    width:100%;
    left:0;
    box-sizing:border-box;
}  

#mcmenu li.over > .dropdown
{
    display:block;
    opacity:1;
    z-index:1;
}

#mcmenu .dropdown li > .dropdown
{
    left:100%; right:auto;
    top:0;
}

#mcmenu ul.dropdown
{
    min-width:240px; /* Sub level menu min width */
}

#mcmenu div.dropdown  {
    text-align:center;
}

/* each column */
#mcmenu .clm
{
    text-align:left;
    margin:20px;
    vertical-align:top;/*or middle*/
    width:auto;
    min-width:240px;
    display:inline-block;
    *display:inline;*zoom:1;
}

#mcmenu .clm a:hover
{
    color:#ffffff;
    text-decoration:underline;
}



/*-----------Arrows----------------*/
#mcmenu .arrow {
    color:inherit;
    border-style:solid; border-width:2px 2px 0 0; padding:3px; transform:rotate(135deg);margin-top:-5px;margin-left:5px;
    position:relative;
    display: inline-block;
    width: 0;
    height: 0;
    vertical-align:middle;
    overflow:hidden;/*for IE6*/
}
        
#mcmenu .dropdown .arrow,
#mcmenu.mobile .arrow {
    transform:rotate(45deg);
    top:50%;margin-top:-7px;
    position:absolute;left:auto;right:20px;
} 
#mcmenu.mobile .back-icon {
    margin:2px 10px 2px 4px;
    padding:5px;/*back arrow size*/
    border-width:0 0 2px 2px;/*back arrow thickness*/
    position:static;margin-top:0;
}
#mcmenu .back {
    display:none;
}
#mcmenu.mobile .back.show {
    display:block;
    text-align:center;
    margin:0;
    cursor:pointer;
    padding:10px 10px;
    color:#000000;
    background-color:#FFFFFF;
    font-size:12px;
    font-weight:400;
    text-transform:uppercase;
    letter-spacing:2px;   
}




/*######## styles for mobile mode ########*/

#mcmenu.mobile  {
    width:100%;
    max-width:500px;
    display:block;

    background-color:#4D4D4D;
    border:1px solid rgba(0,0,0,0.2);
    box-sizing:border-box;
}

/*--begin mark1--*/

#mcmenu.mobile  {
    position:relative;
    left:-130%;
    right:auto; box-shadow:4px 0 18px rgba(0,0,0,0.3);
    transition:all 411ms cubic-bezier(.7, 0,1,.4);
}

#mcmenu.mobile.active {
    left:0;
    transition:all 411ms cubic-bezier(.16,.76,.45,1);
}

#mcmenu.mobile {z-index:99999999;}

.menu-icon.active {z-index:999999994;position:relative;}

/*--end mark1--*/

#mcmenu.mobile ul  {
    background-color:transparent;
    transition:all 411ms ease;
    box-sizing:border-box;
    border:none;
    border-radius: 0;
}

#mcmenu.mobile .mobileHide {
    display:none;
}

#mcmenu.mobile li {
    text-align:center;
}

#mcmenu.mobile .top-item
{       
    font-size:14px;
}

/* #mcmenu.mobile li.over > .top-item
{
    color:#000000;
    background-color:#FFFFFF;
} */

#mcmenu.mobile .dropdown {
    border:none;
    border-radius:0;
    box-shadow:none;
} 
  
#mcmenu.mobile .clm {
    text-align:center;
    width:100%;
    border:none;
    margin:0;
    padding:0;
    display:block;
}

/*----------- menu-icon ----------------*/
.menu-icon-wrapper {
    padding:0px;
    text-align:left;
    background : linear-gradient(to top, rgba(90,90,90,1), rgba(120,120,120,.9));
/*        background : linear-gradient(to bottom, rgba(192,193,195,1), rgba(255,255,255,.9)); */
}
.menu-icon {
    padding:6px;
    display:none;
    cursor: pointer;
    outline: none;
    background-color:#F8F7F6;
    border:1px solid transparent;
    border-radius:3px;
    transition: all 0.25s ease-out;
    user-select:none;
    box-sizing:content-box;
    font-size:0;
    position:relative;
}

.menu-icon.mobile {display:inline-block;}

.menu-icon.active{
    background-color:#F8F7F6;
}

.three-line{
  width: 28px;
  height: 18px;
  position: relative;
  display: inline-block;
  font-size: 0;
}
.three-line span{
  background-color:#000000;
  position: absolute;
  border-radius: 2px;
  transition: transform .5s ease-in-out;
  width:100%;
  height: 2px;
  left: 0;
  transform: rotate(0);
}
.three-line span:nth-child(1){
  top:0;
}
.three-line span:nth-child(2){
  top:8px;
  visibility:visible;
}
.three-line span:nth-child(3){
  bottom:0;
}

.menu-icon.active .three-line span:nth-child(1){
  transform: rotate(225deg);
  top: 8px;

}
.menu-icon.active .three-line span:nth-child(2){
  transform: rotate(180deg);
  visibility:hidden;
}
.menu-icon.active .three-line span:nth-child(3){
  transform: rotate(315deg);
  top: 8px;
}

@keyframes topItemAnimation{
  from {opacity: 0;  transform:translate3d(-16%, 0, 0);}
  to {opacity: 1; transform:translate3d(0, 0, 0);}
}





/* ##### ############### ##### */
/* ##### ############### ##### */
/* ##### ############### ##### */

@media screen and (max-width: 480px) {
    /* 1. Ensure the 50% larger button downsizes intelligently to avoid viewport bleed */
    .matrix-toggle-btn {
        font-size: 14pt !important;       /* Reduces size slightly from 17.5pt for narrow screens */
        padding: 12px 20px !important;    /* Tighter breathing room inside the touch boundary */
        width: 92% !important;            /* Scales fluidly inside the parent container margins */
        max-width: 340px !important;      /* Imposes a maximum barrier to look crisp and neat */
        box-sizing: border-box !important;/* Forces padding to count inside the 92% width calculation */
        white-space: normal !important;   /* Allows text to break to a second line cleanly if needed */
        line-height: 1.3 !important;      /* Comfortable spacing between text lines on tiny viewports */
    }

    /* 2. Compact container layout parameters for tight screens */
    .seo-state-matrix-container {
        padding: 12px 10px !important;    /* Maximum use of screen estate */
        width: 96% !important;            /* Expands near edges to minimize multi-row wrapping stress */
    }

    /* 3. Re-calculate grid columns so names don't truncate or clip */
    .matrix-grid {
        grid-template-columns: repeat(auto-fill, minmax(105px, 1fr)) !important;
        gap: 6px 8px !important;          /* Tight grid distribution optimizing tap targets */
    }
    
    .matrix-grid a {
        font-size: 10pt !important;       /* Clean reading height for links on mobile viewports */
        padding: 4px 0 !important;        /* Expands the actual touch target height for human fingers */
    }
}

/* Mobile view (default) */
.brand-header-wrapper {
    margin-top: 0px;
}

/* Desktop / Tablet view (screens larger than 768px) */
@media screen and (min-width: 769px) {
    .brand-header-wrapper {
        margin-top: 40px;
    }
}

/* Reinforces centering alignment calculations on mobile layouts */
div[align="center"] {
    position: relative !important;
}

@media screen and (max-width: 600px) {
    /* ... your existing mobile code ... */

    .companyname .first-line {
        display: block; /* Breaks the line right after this span ends */
    }
}


/* --- Responsive Visibility Control --- */
#topofpagemobile { display: block; margin: 0 auto 10px auto; }
#topofpage { display: none; }

@media screen and (min-width: 601px) {
    #topofpagemobile { display: none; }
    #topofpage { display: inline-block; float: left; margin-right: 15px; }
    .heading2 { font-size: 22pt; }
    .companyname { font-size: 18pt; }
}



/* ==========================================================================
   PARENT CANVAS (FORCES BOUNDARIES TO STAY INSIDE YOUR PAGE DIV)
   ========================================================================== */
#license {
    position: relative !important; /* Forces all child elements to stay trapped inside this box */
    display: block !important;
    width: 100% !important;        /* Fills 100% of your page div container */
    max-width: 100% !important;
    margin: 20px auto !important;
    padding: 0 !important;         /* Zero padding keeps your central map at maximum size */
    text-align: center !important;
    clear: both !important;
}

/* Your central dynamic state requirement graphic */
#license img {
    display: inline-block !important;
    height: auto !important;
    max-width: 100% !important;
}

/* ==========================================================================
   THE CORNER-ANCHOR FLANKING MATRIX
   ========================================================================== */
.nested-badge-row {
    display: block !important;
    position: absolute !important; /* Pulls the row out of the block order so nothing drops */
    top: 0 !important;             /* Aligns perfectly with the top edge of the #license box */
    left: 0 !important;
    width: 100% !important;        /* Stretches exactly to the left/right walls of your page div */
    height: 0 !important;          /* Zero height means it occupies NO vertical space in the document flow */
    margin: 0 !important;
    padding: 0 !important;
}

/* Force Left Image to Upper Left Corner inside the Page Div */
.nested-badge-row .mobile-hide-badge:first-child {
    position: absolute !important;
    left: 10px !important;         /* Inset spacing from the left edge of your page div */
    top: 15px !important;
    display: block !important;
    z-index: 20 !important;
}

/* Force Right Image to Upper Right Corner inside the Page Div */
.nested-badge-row .mobile-hide-badge:last-child {
    position: absolute !important;
    right: 10px !important;        /* Inset spacing from the right edge of your page div */
    top: 15px !important;
    display: block !important;
    z-index: 20 !important;
}

/* Render Images Intact */
.nested-badge-row .mobile-hide-badge img {
    display: block !important;
    height: auto !important;
    max-height: 110px !important;  /* Uniform layout height */
    border: 0 !important;
}

/* ==========================================================================
   MOBILE SCREEN SAFE-DISMISS
   ========================================================================== */
@media screen and (max-width: 768px) {
    /* Completely deletes the badges from rendering on tablets and mobile screens */
    .nested-badge-row {
        display: none !important;
    }
}





/* --- Hidden Utility --- */
.hidetext { display: none; }




@media only screen and (max-width: 900px) {
.hidetables{
display: none
}
table {
}
td {
border : 0px
}
th {
border : 0px 
}




/* ##### ############### ##### */
/* INTERACTIVE MAP USA */
/* ##### ############### ##### */

#mapwrapper {
	max-width: 705px;
	margin: 0 auto;
	padding: 0 0;
	background-color: transparent;
	min-width: 200px;
}
#map_base svg {
	max-height: 100%;
	width: 100%;
	margin: 0;
}

@media screen and (min-width: 200px) {
	#map_base svg {
		height:500px;
	}
}
#map-tip {
    font: 14px/16px Trebuchet MS, 'Inter Tight', sans-serif, sans-serif;
    display: none;
    padding: 3px;
    border: 1px solid #EBECED;
    color: #edeef0;
    z-index: 1000;
    float: left;
    position: absolute;
    /*gradient color*/
    background: rgb(73, 73, 73);
    background: -moz-linear-gradient(top, rgba(73, 73, 73, 1) 0%, rgba(101, 101, 101, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(73, 73, 73, 1)), color-stop(100%, rgba(101, 101, 101, 1)));
    background: -webkit-linear-gradient(top, rgba(73, 73, 73, 1) 0%, rgba(101, 101, 101, 1) 100%);
    background: -o-linear-gradient(top, rgba(73, 73, 73, 1) 0%, rgba(101, 101, 101, 1) 100%);
    background: -ms-linear-gradient(top, rgba(73, 73, 73, 1) 0%, rgba(101, 101, 101, 1) 100%);
    background: linear-gradient(to bottom, rgba(73, 73, 73, 1) 0%, rgba(101, 101, 101, 1) 100%);
    word-break: keep-all;
    white-space: nowrap
}
#map-tip p {
	margin: 0!important;
}
#map-tip img {
	float: left;
	padding: 3px;
}

