html, body {margin: 0; padding: 0;}

@font-face {font-family: 'RFDewi'; font-style: normal; font-weight: 400; font-display: block;
  src: local(''), url('fonts/rfdewi-400.woff2') format('woff2'), url('fonts/rfdewi-400.woff') format('woff');
}
@font-face {font-family: 'RFDewi'; font-style: normal; font-weight: 500; font-display: block;
  src: local(''), url('fonts/rfdewi-500.woff2') format('woff2'), url('fonts/rfdewi-500.woff') format('woff');
}

body {font-family: 'RFDewi', Arial, Verdana, Geneva; font-variant-ligatures: none; letter-spacing: .3px;}

#width {position: fixed; top: 0; z-index: 20; padding: 0 3px; font-size: 11px; line-height: 14px; font-family: Arial, Helvetica, sans-serif; background-color: #FF0;}
a, a:visited, a:hover {color: #2E3FE1;} a {text-decoration: underline; text-decoration-thickness: 1px; text-decoration-style: dotted; text-underline-offset: .13em; cursor: pointer;}
a:focus-visible {outline: 2px solid #66AFE9; outline-offset: 2px;} /*sdf - define color*/
a, .ham {-webkit-tap-highlight-color: transparent;} img {border: 0;}
.phlink {color: inherit !important; text-decoration: none !important; white-space: nowrap;} .phlink:hover {cursor: text;}


/*-----------------------------------------------*/

/*HEADER*/

/*header {border: 1px solid blue;} #social {border: 2px solid yellow} #phone {border: 2px solid green}
#logo {border: 1px solid yellow} #logo img {border: 1px solid magenta}*/

/*#headtop {border: 1px solid yellow} #addr {border: 1px solid cyan} #phone {border: 1px solid magenta} #social {border: 1px solid green}*/

#headtopback, #headtop {height: 40px;} #headtop, header {width: 100%; margin: auto; z-index: 2;}
header {display: table; box-shadow: 0 5px 7px -5px #000; text-align: center; box-sizing: border-box; border-bottom: 4px solid var(--darkblue);}
#logo {position: absolute; z-index: 3;} #logo img {display: block;}

#phone {display: block; font-size: 20px; line-height: 1; text-align: right; padding-top: 8px; text-align: right; white-space: nowrap;}
#phone, #phone a {font-weight: 500;}

@media (min-width: 2156px) {#headtop, header, .navheader {padding: 0 15%;}}
@media (max-width: 2155px) {#headtop, header, .navheader {padding: 0 12%;}}
@media (max-width: 1980px) {#headtop, header, .navheader {padding: 0 8%;}}
@media (max-width: 1520px) {#headtop, header, .navheader {padding: 0 3%;}}
@media (min-width: 1081px) {#headerback, header {height: 105px;} #logo {margin-top: -26px;}}
@media (max-width: 1080px) {#headerback, header {height: 125px;} #logo {margin-top: -15px;}}
@media (min-width: 876px) {#logo, #logo img {width: 235px; height: 118px;}}
@media (max-width: 875px) {#logo, #logo img {width: 185px; height: 93px;}} /*805px if no COMING SOON*/

@media (min-width: 806px) {
#addr1 {width: 100%; text-align: right; padding-right: 25px;} #addr2 {display: none;}
#addr1 span:nth-child(1) {display: none;} #addr1 span:nth-child(2) {display: inline;}
}
@media (max-width: 805px) {
#headtop, header, .navheader {padding: 0;} #headerback, header {height: 85px;}
#addr2 {position: absolute; right: 120px; top: 0; margin-top: 28px; line-height: 1.5; text-align: right; color: #FFF;}
#logo {margin: -25px 0 0 25px;} /*#social {padding-right: 3%;} - unhide when I get links*/ #phone {padding-right: 3%;} /*remove when I get social links*/
}
@media (max-width: 805px) and (min-width: 351px) {#addr1 {display: none;}}
@media (max-width: 725px) {#addr2 {margin-top: 17px;} #addr2 span:first-child {display: none;} #addr2 span:last-child {display: block;}}
@media (max-width: 560px) {#addr2 {margin-top: 21px; right: 110px; font-size: .85em;}}
@media (max-width: 515px) {#addr2 {right: 100px;}}
@media (min-width: 501px) {#headtop, header {position: fixed;}}
@media (max-width: 500px) {#addr2 {margin-top: 61px;}}
@media (max-width: 500px) and (min-width: 351px) {#logo {margin-left: 15px;}}

#social {text-align: right; width: 85px; padding-left: 18px; white-space: nowrap; display: none !important;} /*remove display none when I get links*/
#social img {height: 26px; width: 26px; display: inline-block; margin: 0 2px -5px 2px;}
@keyframes shake {20% {-webkit-transform: rotateZ(-8deg);} 80% {-webkit-transform: rotateZ(8deg);}}
#social img:hover {-webkit-animation: shake .16s 5;}

@media (max-width: 480px) {#addr2 {display: none;}}
@media (max-width: 465px) {#social {display: none;} #phone {padding-right: 15px;}}
@media (max-width: 380px) {#headerback, header {height: 65px;} #logo, #logo img {width: 150px; height: 76px;}}
@media (max-width: 350px) {
#headerback, header {height: 175px;} #headtopback, #headtop {height: 105px;} #headtop td:not(#social) {display: block;}
#logo {margin: 62px auto 0 auto; left: 0; right: 0;} #logo, #logo img {width: 185px; height: 93px;}
#logo img {margin: auto !important; text-align: center !important; padding: 0 !important;}
#phone {position: absolute; top: 5px; left: 0; right: 0; margin: auto; padding-right: 0; text-align: center;}
#addr1 {position: absolute; top: 45px; left: 0; right: 0; text-align: center; line-height: 1.5;}
#addr1 span:nth-child(2) {display: none;}
#addr1 span:last-child {display: block;}
}

/*Unhide after they set up social sites: #social {display: none !important;} #phone {padding-right: 3%;}*/

/*----------------*/

/*MENU*/

/*.navheader {border: 1px solid orange} nav {border: 1px solid red} nav div {border: 1px solid cyan} nav a {border: 1px solid blue} .ham {border: 1px solid yellow}*/

#navcheck {display: none;}
nav a.selected {cursor: text; pointer-events: none; -webkit-user-select: none; -webkit-touch-callout: none;}
nav a {display: table-cell; text-decoration: none; cursor: pointer; line-height: 1.4; font-weight: 400; -webkit-transition: background .2s, color .1s, font-size .3s; color: #FFF !important;}

/*Pay link COMING SOON*/
nav div:last-child span {font-size: .8em; display: block;}
nav div:last-child a:hover:not(.selected) {text-decoration: none !important; cursor: default !important;}
nav div:last-child a {color: #DDD !important; pointer-events: none !important;}
@media (max-width: 805px) {nav div:last-child a {color: #BBB !important;}}
/*end pay link*/

@media (min-width: 2386px) {.navheader {top: 29px;} nav div {height: 40px; padding: 2px;} nav div:after {height: 20px;}}
@media (max-width: 2385px) and (min-width: 1351px) {
.navheader {top: 24px;} nav span {display: block;} nav div {height: 45px; padding: 3px;} nav div:after {height: 40px;}
}
@media (min-width: 1351px) {nav div:first-child:after {border: 0;}}
@media (max-width: 1350px) and (min-width: 1081px) {
.navheader {top: 6px; width: 750px;} nav div {height: 35px; padding: 3px;} nav div:after {height: 20px;}
nav div:nth-child(-n+5) {margin-bottom: 2px;} nav div:nth-child(-n+5) {margin-top: 2px;}
nav div:first-child:after, nav div:nth-child(6):after {border: 0;}
}
@media (max-width: 1080px) and (min-width: 806px) {
.navheader {top: 0px; width: 550px; /*500px if Pay but no "coming soon"*/} nav div {height: 50px; padding: 2px;} nav span {display: block;} nav div:after {height: 36px;}
nav div:nth-child(-n+5) {margin-bottom: 4px;} nav div:nth-child(-n+5) {margin-top: 4px;}
nav div:first-child:after, nav div:nth-child(6):after {border: 0;}
}
@media (min-width: 806px) {
.ham {display: none;} .navheader {position: absolute; right: 0; padding-left: 0; text-align: right;}
nav {display: inline-block;}
nav div {display: inline-grid; align-content: center; align-self: center; align-items: center; vertical-align: middle; white-space: nowrap;}
nav div:after {position: absolute; content: ""; margin-left: -5px; border-right: 1px solid #BBB;}
nav a {font-size: 16px; padding: 3px 11px; text-align: center; height: inherit; align-content: center;}
nav a:hover {text-decoration: underline; text-decoration-thickness: 1px; text-decoration-style: dotted; text-underline-offset: .1em;}
}
@media (max-width: 805px) {
.navheader {left: 0; right: 0;}
nav {position: relative; text-align: center; top: 82px; transition: .15s; height: 0; font-size: 0; box-sizing: border-box; z-index: -1; background-color: var(--darkblue);}
nav div {display: inline-block; text-align: center; left: 0; right: 0; margin: 0 -2px; font-size: 0; height: 0; opacity: 0; transition: .15s; border: 1px solid transparent;}
nav a {text-align: center; font-size: 0; opacity: 0; height: 0; white-space: nowrap; padding: 0 8px 1px 8px; border: 1px solid #40628A; pointer-events: none; background-color: var(--darkblue);}

#navcheck:checked ~ nav {height: 100%; z-index: 2; box-shadow: 0 8px 10px -2px #000;}
#navcheck:checked ~ nav div {opacity: 1; height: 70px;}
#navcheck:checked ~ nav a {font-size: 18px; opacity: 1; pointer-events: auto; height: 70px; vertical-align: middle; width: 1%;}

.ham, .ham * {-webkit-touch-callout: none; -webkit-user-select: none; user-select: none; touch-action: manipulation;}
.ham {position: absolute; z-index: 600; height: 35px; width: 45px; top: 18px; right: 25px; margin: auto; text-align: center; padding: 0 3px 10px 10px;}
.ham:hover {cursor: pointer;} .ham > div {top: 18px; left: 10px;}

.ham div {top: 22px; left: 10px; -webkit-transition: -webkit-transform 0.4s ease-out;}
.ham div, .ham div:before, .ham div:after {position: absolute; display: block; content: ""; height: 3px; width: 38px; opacity: 1; background: #FFF;} .ham div:before {top: -10px;} .ham div:after {top: 10px;}

#navcheck:checked ~ .ham div {width: 0; transform: rotateX(180deg); transition-timing-function: ease;}
#navcheck:checked ~ .ham div:before {-webkit-transform: rotateZ(37deg); top: 0;}
#navcheck:checked ~ .ham div:after {-webkit-transform: rotateZ(-37deg); top: 0;}
}
@media (max-width: 805px) and (min-width: 621px) {
.navheader {margin: 0 -2px;} nav div {width: 20%;} nav span {display: block;}
#navcheck:checked ~ nav div:first-child a, #navcheck:checked ~ nav div:nth-child(6) a {border-left: none;}
#navcheck:checked ~ nav div:nth-child(5) a, #navcheck:checked ~ nav div:last-child a {border-right: none;}
}
@media (max-width: 620px) {
nav div {width: 50%;} #navcheck:checked ~ nav div:nth-child(odd) a {border-left: none;}
#navcheck:checked ~ nav div:nth-child(even) a {border-right: none;}
}
/*Pay link COMING SOON*/ @media (max-width: 620px) and (min-width: 391px) {nav div:last-child span {display: inline;}}
@media (max-width: 450px) {nav div:nth-child(8) span {display: block;}}
@media (max-width: 415px) {nav div:nth-child(2) span {display: block;}}
@media (max-width: 500px) {.ham {top: 58px; right: 20px;}}
@media (max-width: 390px) {nav span {display: block;}}
@media (max-width: 380px) {.ham {top: 48px;} nav {top: 62px;}}
@media (max-width: 350px) {.ham {top: 110px; left: 0; right: 0; margin: auto; padding: 0 3px 5px 10px} nav {top: 170px;}}

nav a:hover:not(.selected) {color: #FFF !important;}
@media (min-width: 806px) {nav .selected {text-decoration: underline;}}
@media (max-width: 805px) {nav .selected {background-color: #161E28;} nav a:hover:not(.selected) {background-color: #2C5586;}}

/*-----------------------------------------------*/

/*BODY AREA*/

#bread {font-size: 14px; line-height: 1.4; margin: 13px 0 20px 0;}

.bodyarea {position: relative; padding: 10px 0 35px 0; margin: auto; width: 85%; max-width: 1500px;}
.bodyarea, h2 {font-size: 20px; line-height: 1.7; font-weight: 400 !important;}
.bodyhead {padding-bottom: 10px; font-weight: 500 !important; font-size: 1.8em; line-height: 1.25; text-align: center;}
h1, h2, h3, h4, h5 {margin: 0;}

@media (max-width: 800px) {.bodyhead {font-size: 1.65em;}}
@media (max-width: 600px) {.bodyhead {padding-bottom: 0;}}
@media (max-width: 360px) {.bodyarea {width: 88%;} .bodyhead {font-size: 1.5em;}}

.heading, .heading2 {font-weight: 500; line-height: 1.35; display: table;} .heading {font-size: 1.4em;} .heading2 {font-size: 1.3em;}

.thislist {margin-left: -15px; line-height: 1.55;} .thislist li:not(li:last-child) {padding-bottom: 12px;} .thislist span {font-size: 1.1em; font-weight: 500; color: var(--medblue);}

/*Section shading on services pages*/
.divide:nth-of-type(odd) {background-color: #E9E9E9;} .divide .bodyarea {padding: 40px 0 25px 0;} /*.divide:not(:first-of-type) {padding-top: 35px;}*/
.divide:last-of-type {padding-bottom: 10px;}

/*-----------------------------------------------*/

/*Floor Plan Pics*/

.floorplan {margin: 40px auto 20px auto; text-align: center;} .floorplan div {margin: auto;}
.floorplan img {margin: 0 auto 40px auto; display: block; width: 100%; height: 100%; max-width: 700px;}

@media (min-width: 1301px) {
.floorplan div:first-child {display: table;} .floorplan div:first-child span {display: table-cell; width: 50%;}
.floorplan span:nth-child(1) img {padding-right: 30px;} .floorplan span:nth-child(2) img {padding-left: 30px;}
}

/*-----------------------------------------------*/

/*Suite Occupancy Status*/

.divocc {background-color: #CCC !important;}
.occupancy {text-align: center; margin-bottom: 25px;}
.divocc .heading {text-align: center; margin: auto;}
#suites {margin: 0 auto;} #suites td {vertical-align: top;}

.suites {table-layout: fixed; margin: 0 auto; background-color: #FFF; border: 1px solid #000; border-collapse: collapse}
.suites th, .suites td {font-size: .9em; white-space: nowrap;border: 1px solid #000; border-collapse: collapse;}
.suites th {font-size: .8em; font-weight: 500; background: #777; color: #FFF;}
.suites td:last-child {font-size: .9em;} /*Occupied*/
.suites .vacant td:last-child {text-transform: uppercase; font-size: .95em; font-weight: 500; color: #000;}
.suites .vacant td {background-color: #0F0;}

@media (min-width: 651px) {
.suites th, .suites td {padding: 6px 10px;} #suites td:first-child {padding-right: 10px;} #suites td:last-child {padding-left: 10px;}
}
@media (max-width: 650px) {
.suites th, .suites td {padding: 6px 0;} .suitetbl2 {display: block; padding: 0;}
.suitetbl2:last-child tr:not(.keeprow) th {display: none;}
.suitetbl2:last-child .suites, .suitetbl2:last-child .suites td {border-top: none;}
.suites td:nth-child(1) {width: 65px;} .suites td:nth-child(2) {width: 50px;} .suites td:nth-child(3) {width: 110px;}
}
@media (max-width: 315px) {
.suites th, .suites td {font-size: .8em;} .suites td:nth-child(3) {width: 100px;} .suites .occ {font-size: .85em;}
}

/*-----------------------------------------------*/

/*Page Pics*/

.pagepic img {width: 500px; height: 300px; width: 100%; height: auto; display: block;}
.picwide {max-width: 500px;} .pictall {max-width: 350px;}
.picleft {float: left; margin: 10px 40px 30px 0;} .picright {float: right; margin: 10px 0 30px 40px;}
@media (max-width: 1050px) and (min-width: 871px) {.picwide {max-width: 430px;}}
@media (max-width: 870px) {.picleft, .picright {text-align: center; float: none; margin: 35px auto;} .pictall {max-width: 400px;}}

/*Photo Albums*/
#album {margin: 40px auto 20px auto !important;}

/*-----------------------------------------------*/

/*BOTTOM AREA*/

/*Show again after they set up social sites:*/ .btmsoc {display: none !important;}

.btmareaback {background-color: #333;} .btmarea a {color: #FFF;}
.btmarea {display: grid; box-sizing: border-box; max-width: 1200px; margin: 0 auto; color: #FFF;}

.block {font-size: 16px; box-sizing: border-box; /*border: 1px solid #ddd;*/}
.block .btmhead {display: block; font-size: 30px; font-weight: 500; color: #FFF;}

.block1 {font-weight: 300; line-height: 1.5;} #btmlogo {text-align: center; font-size: .9em;}
.block1 img {display: block; width: 195px; max-width: 195px; height: 171px; width: 100%; height: auto; margin: 5px auto 0 auto;}

.block2 *, .block3 * {white-space: nowrap;} .block2 span {font-weight: 400;}

.block2 a {text-decoration: none;} .block2 a:hover {text-decoration: underline;}
.block2 ul {padding-top: 4px; margin-left: -20px;} .block2 li:not(.block2 li:last-child) {padding-bottom: 8px;}

.block3 {font-size: .85em; line-height: 1.5;}
.block3 span {display: block; font-size: 1.2em; line-height: 1.4; font-weight: 500; margin-bottom: 5px; white-space: normal;}
.btmicons {margin: 15px 0;} .btmarea .btmicons a:not(.btmarea .phlink) {font-size: 16px;} .btmarea .phlink {font-size: 1.4em; font-weight: 500;}
.btmicons img {margin: 2px 8px 15px 0; vertical-align: top;}
.btmsoc {margin-top: 15px;} .btmsoc img {width: 32px; height: 32px; margin: 0 3px;}
@keyframes shake {20% {-webkit-transform: rotateZ(-8deg);} 80% {-webkit-transform: rotateZ(8deg);}}
.btmsoc img:hover {-webkit-animation: shake .16s 5;}

@media (min-width: 1001px) {
.btmarea {grid-template-columns: repeat(9, 1fr);}
.block1 {grid-column: 1 / 4;} .block2 {grid-column: 4 / 8; justify-self: center;} .block3 {grid-column: 8 / 10;}
}
@media (max-width: 1000px) {.block1 {grid-column: 1 / -1; grid-row: 1; margin-bottom: 30px;} .block2 {justify-self: flex-start;}}

@media (max-width: 1000px) and (min-width: 801px) {
.btmarea {grid-template-columns: repeat(13, 1fr);}
.block2 {grid-column: 3 / 8;} .block3 {grid-column: 8 / 12;}
}
@media (max-width: 1000px) and (min-width: 551px) {.block2, .block3 {grid-row: 2;}}

@media (max-width: 800px) and (min-width: 651px) {
.btmarea {grid-template-columns: repeat(14, 1fr);}
.block2 {grid-column: 2 / 9;} .block3 {grid-column: 9 / 14;}
}
@media (max-width: 650px) and (min-width: 551px) {
.btmarea {grid-template-columns: repeat(3, 1fr);}
.block2 {grid-column: 1 / 1;} .block3 {grid-column: 3 / 3;}
}
@media (min-width: 551px) {.btmareaback {padding: 35px 50px;} .block3 {justify-self: flex-end;}}
@media (max-width: 550px) {
.btmareaback {padding: 35px 30px;}
.btmarea {grid-template-columns: 1fr;} .block2 {margin-bottom: 20px;}
/*.btmarea section {grid-column: 1;}*/ .block2, .block3 {justify-self: center;}
}
@media (max-width: 360px) {.block2, .block3 {justify-self: flex-start;}}

/*-----------------------------------------------*/

/*Contact & Find Us Buttons*/

#findmap {display: table; margin: auto; text-align: center;} .btn {display: inline-block; text-align: center; margin: 0 6px 25px 6px;}
.btn a {background-color: var(--darkblue); display: inline-block; width: 130px; padding: 10px 0; font-size: 1rem; line-height: 1.4; font-weight: 400; text-decoration: none; color: #FFF; transition: 0.2s; border-radius: 4px;}
.btn a:hover:not(.selected) {background-color: var(--medblue);} .btn a.selected {cursor: text; background-color: #999;}
@media (max-width: 370px) {.btn {margin: 0 4px 25px 4px;} .btn a {width: 110px;}}

/*-----------------------------------------------*/

/*Footer*/

#serving {font-size: 12px; line-height: 1.4; color: #BBB; font-family: Arial, Helvetica, sans-serif;}
#serving a, .nolink {color: inherit !important; text-decoration: none !important; pointer-events: none !important;}

footer {font-size: 14px; line-height: 1.6; padding: 25px 25px 22px 25px; text-align: center; background-color: #000;}
footer, footer a {color: #FFF;} .copy {font-size: 1.2em;}
.web {font-size: 12px; font-family: Arial, Helvetica, sans-serif; color: #BBB;}
.web a {font-style: italic; text-decoration: none; white-space: nowrap; color: #FFF;} .web a:hover {text-decoration: underline;}

#totop {position: fixed; right: 14px; bottom: 12px; z-index: 100; width: 28px; height: 28px; display: grid; align-items: center; justify-content: center; text-decoration: none; font-family: Arial, sans-serif; font-size: 24px; color: #999 !important; line-height: 0; transform: rotate(270deg);}

/*====================================================*/

/*COLORS*/

#headtop {background-color: var(--darkblue);} header {background-color: var(--darkgrey);}
body {background-color: #FFF; color: #444;}
#headtop, #phone a {color: #FFF;} .bodyhead {color: var(--medblue);} .heading {color: #000;}
#bottomarea {background-color: #222;} #bottomarea, #bottomarea a {color: #FFF;}

:root {--darkblue: #002A5C; --medblue: #315A8B; --darkgrey: #767676 ; --darkgreen: #F00;}
