/* ==== COLOR SYSTEM ==== */

:root {
    --elevated_background: #F2F2F2;
    --text_highlight: #1E427F;
    --accent-color: #CEBD9A;
  }
  
/* ==== THEME STYLE ==== */

h1,
h2,
h3,
h4,
h5,
h6,
p,
a{
    color: black;
}

.text-dark{
    color: black;
}
.subtitle{
    color:#1E427F;
    size: 1rem;
}
.text-center{
    text-align: center;
}

.auto-margin{
    margin: 0 auto;
}

.no-margin{
    margin: 0;
}

.margin-top{
    margin-top: 10px;
}

.margin-top-large{
    margin-top: 40px;
}

.margin-bottom{
    margin-bottom: 10px;
}

.margin-bottom-large{
    margin-bottom: 40px;
}

.office-location p{
    margin: 0;
}

.office-location i{
    margin: 0;
    color: var(--accent-color);
}

.office-detail-box{
    padding: 0px 40px;
}


.service-location{
    margin: 0 auto;
    max-width: 800px;
    height: auto;
    padding: 20px;
}

.office-service{
    margin: 0 auto;
    max-width: 800px;
    height: auto;
    padding: 20px;
}

/* ==== GRID SYSTEM ==== */

/*  SECTIONS  */
.section {
	clear: both;
	padding: 0px;
}

/*  COLUMN SETUP  */
.col {
	display: block;
	float:left;
}

/*  GROUPING  */
.group:before,
.group:after {
	content:"";
	display:table;
}
.group:after {
	clear:both;
}
.group {
    zoom:1; /* For IE 6/7 */
}


/*  GRID OF TWO  */
.span_2_of_2 {
	width: 100%;
}
.span_1_of_2 {
	width: 49.2%;
}

/*  GO FULL WIDTH AT LESS THAN 480 PIXELS */

@media only screen and (max-width: 480px) {
	.col { 
		margin: 1% 0 1% 0%;
	}
}

@media only screen and (max-width: 480px) {
	.span_2_of_2, .span_1_of_2 { width: 100%; }
}

/* ==== ACCORDION ==== */

.tab, .tab * 
{
    box-sizing: border-box;
}
.tab { 
    max-width: 600px; 
}

/* (B) HIDE CHECKBOX */
.tab input { 
    display: none; 
}

.tab label {
    position: relative; 
    display: block;
    width: 100%;
    margin-top: .3rem;
    padding: 10px;
    padding-left: 30px;
    font-weight: 500;
    color: black;
    cursor: pointer;
    font-size: 18px;
}

.tab label:hover {
    color: var(--text_highlight);
}

.tab .content {
    background: var(--elevated_background);
    overflow: hidden;
    transition: max-height 0.3s;
    max-height: 0;
}
.tab .content p { padding: 8px; }
.tab input:checked ~ .content { 
    max-height: 300vh;
    padding: 20px; 
}
.tab label::before {
    display: block;  
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    left: 10px; 
    font-size: 1.3rem;
    top: .5rem;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    transition: all 0.4s;
}

.tab input:checked ~ label::before { transform: rotate(90deg); }