:root {
  --cty-brandnavy: #131E29; /* SP brand navy */
  --cty-brandteal: #3f738d; /* header lines and pattern lines */
  --cty-brandgold: #b8773b; /* header lines and pattern lines */
  --cty-brandcoolblue: #f2f8fc; /* point section cards */
  
  --cty-body-bg: #131E24; /* off page background color */
  --cty-pagewrap-bg: white; /* pagewrap background color */
  --cty-pagewrap-txt: #131E29; /* pagewrap general color */
   
  --cty-alert-bg: #3e738d; /* alert background color */
  --cty-alert-txt: white; /* alert text color */
  
  --cty-h1: #131E29; /* h1 color */
  --cty-h2: #131E29; /* h2 color */
  --cty-h3: #131E29; /* h3 color */
  --cty-h4: #131E29; /* h4 color */
  --cty-h5: #131E29; /* h5 color */
  --cty-h6: #131E29; /* h6 color */
  
  --cty-alink: #B8773B; /* primary link color */
  --cty-ahover: #B8773B; /* primary hover color */
  --cty-asec-link: #222; /* secondary link color */
  --cty-asec-hover: #444; /* secondary hover color */
  --cty-asec-divider: #aaa; /* secondary divider color */
  
  --cty-pnav-link: #ffffff; /* var(--cty-pnav-link) nav color */
  --cty-pnav-hover: #B8773B; /* var(--cty-pnav-hover) nav hover color */ 
  --cty-pnav-dropdown: #131E29; /* var(--cty-pnav-dropdown) dropdown background color */
  
  
  --cty-linework: #DCE5EA; /* hr, sidenav, mobile nav */
  --cty-bg-silver: #fafafa; /* silver background */
  --cty-banner-wrap: #eeeeee; /* var(--cty-pnav-dropdown) dropdown background color */
}

body,html {
  height:100%;
  background-color:var(--cty-body-bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
  font-family: 'montserrat', sans-serif;
}

#page-wrap {
  position:relative;
  width:100%;
  background-color:var(--cty-pagewrap-bg);
  color:var(--cty-pagewrap-txt);
}

#page-header { }

#page-content { }

.container-fluid-full { }
.container-fluid-narrow { max-width:960px; }
@media screen and (min-width: 1200px) {
  .container-fluid-full { max-width:90000px; padding-left:5%; padding-right:5%; }
}

.bg-silver { background-color:var(--cty-bg-silver); }

/* global typography */

h1 { font-family: 'alternate-gothic-atf', sans-serif; font-weight: 500; letter-spacing: 0.03em; color:var(--cty-h1); font-size: 60px; line-height:1.1; margin-top:0px; margin-bottom: 1rem; }

h1.h1-detail { letter-spacing: 0em; font-size: 56px; line-height:1.2; font-weight: 500; }

h2 { color:var(--cty-h2); font-weight: 500; font-size: 26px; margin-top:1rem; margin-bottom: 1rem; }
h2.on-detail { font-family: 'alternate-gothic-atf', sans-serif; font-size: 0.9rem; margin-top:1.5rem; margin-bottom: 1rem; text-transform:uppercase; letter-spacing:0.050rem; }
h3 { color:var(--cty-h3); font-size: 1.1rem; font-weight:700; }
h4 { color:var(--cty-h4); }
h5 { color:var(--cty-h5); } 
h6 { color:var(--cty-h6); }
zf
h2.add-brand-icon { line-height:48px; }
span.h2-brand-icon { display:inline-block; vertical-align: middle; width:40px; height:48px; background:url('https://ctycms.com/nc-southpark/southpark-headline-icon-56x70.svg') center center no-repeat; background-size:contain; }

p, li { font-weight:500; font-size:18px; line-height:1.5; }

p.intro,p.lead { font-weight:500; font-size:21px; line-height:1.5; }

p.plocation { text-transform:uppercase; font-weight:600; font-size:16px; line-height:1.5; letter-spacing:0.050rem; }
p.plocation-lift { margin-top:-16px; }
p.paddress { font-size:16px; }
p.pdirections { font-weight:700; font-size:15px; line-height:1.5; letter-spacing:0.020rem; }
p.pdirections a span { color:var(--cty-brandnavy); }
  
label { }

hr { margin-top: 1.25rem; margin-bottom: 1.25rem; border: 0; border-top: 1px solid  var(--cty-brandcoolblue); opacity:1; }

a { color:var(--cty-alink); text-decoration:none; }
a:hover { color:var(--cty-ahover); text-decoration:none; }

a div.lnk-primary { color: inherit; font-weight:700; font-size:18px; line-height:23px; }
a div.lnk-secondary { color:var(--cty-asec-link); font-weight:400; font-size:16px; line-height:20px; margin-top:3px; }
a div.lnk-secondary span { color:var(--cty-asec-divider); }
a:hover div.lnk-primary { color: inherit; }
a:hover div.lnk-secondary { color:var(--cty-asec-hover); }


/* buttons */

.btn-brand { background-color:var(--cty-alink); border:1px solid var(--cty-alink); color:white; font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:0.010rem;
  margin:4px 2px 4px 0px; padding: .375rem .75rem; border-radius:0; text-transform:none; transition: all 0.15s linear 0s; }
.btn-brand:hover { background-color:var(--cty-ahover); border-color:var(--cty-ahover); color:white; }

.btn-outline-brand { background-color:white; border:1px solid var(--cty-alink); color:var(--cty-alink); font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:0.010rem; 
 margin:4px 2px 4px 0px; padding: .375rem .75rem; border-radius:0; text-transform:none; transition: all 0.15s linear 0s; }
.btn-outline-brand:hover { background-color:var(--cty-ahover); border-color:var(--cty-ahover); color:white; }

.btn-brand-pill { background-color:var(--cty-alink); border:1px solid var(--cty-alink);  color:white; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.010rem; border-radius:20px; 
  margin:4px 2px 4px 0px; padding: .275rem 1rem; text-transform:none; transition: all 0.15s linear 0s; }
.btn-brand-pill:hover {  background-color:var(--cty-ahover); border-color:var(--cty-ahover); color:white; }

.btn-outline-brand-pill { background-color:white; border:1px solid var(--cty-alink); color:var(--cty-alink); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.010rem; border-radius:20px; 
  margin:4px 2px 4px 0px; padding: .275rem 1rem; text-transform:none; transition: all 0.15s linear 0s; }
.btn-outline-brand-pill:hover { background-color:var(--cty-ahover); border-color:var(--cty-ahover); color:white; }

.btn-naked { color:var(--cty-alink); text-transform:uppercase; letter-spacing:0.050rem; margin:4px 2px 4px 0px; padding: .375rem 0rem; transition: all 0.15s linear 0s; }
.btn-naked:hover { color:var(--cty-ahover); }

.lk { display:table; width:100%; margin-bottom:12px; }
.lk-arrow { display:table-cell; width:30px; vertical-align:top; font-size:16px; line-height:1.4; color:var(--cty-alink); }
.lk-content { display:table-cell; width:auto; vertical-align:top; }


/* alert box */

.alert-wrap { background-color:var(--cty-alert-bg); }
.alert-wrap, a.alert-link, a.alert-link:hover { color:var(--cty-alert-txt); }
.alert-hold { display: table; width: 100%; }
.alert-prefix { display:table-cell; vertical-align: top; width:32px; padding-top:20px; padding-right:20px; }
.alert-content { display:table-cell; vertical-align: top; width:auto; padding-top:20px; }
.alert-dismiss { display:table-cell; vertical-align: top; width:32px; padding-top:20px; text-align:right; }

.alert-prefix { 
  font-size: 20px;
  line-height: 20px;
  text-transform: uppercase;
  letter-spacing: 0.100rem;
  padding-bottom:20px;
}

.alert-content { 
  font-size: 13px;
  line-height: 20px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.100rem;
}

.alert-message { padding-bottom:20px; }
a.alert-link { text-decoration:underline; }
a.alert-link:hover { text-decoration:underline; }

.alert-dismiss { 
  font-size:20px;
  line-height:20px; 
  padding-bottom:20px;
}

#dismiss-alert { color:var(--cty-alert-txt); text-decoration:none; }





/* css for modal backdrop */

.modal-backdrop { background-color: #000000; }
.modal-backdrop.show { opacity:0.5; }
.modal-body h1 { margin-top:1rem; }

/* footer */

.footer-wrap { background-color:var(--cty-brandnavy); position:relative; overflow:hidden; }
.footer-wrap p { color:#fff; margin-bottom:0.5rem; }
.footer-wrap p.footer-headline { font-family: 'alternate-gothic-atf', sans-serif; font-size:26px; line-height:1.25; font-weight:500; margin-bottom:0.5rem; }
.footer-wrap p.footer-address { font-weight:400; font-size:16px; line-height:1.5; }
.footer-wrap p.footer-legal { font-weight:400; font-size:15px; line-height:1.5; }
.footer-wrap p.footer-subscribe-button { margin-top:1rem; margin-bottom:0; }


.footer-subscribe-cell { padding:60px 40px; border-bottom:3px solid #3F738D;  }
.footer-content-cell { padding:60px 40px; }
.footer-wrap-pattern { }
@media screen and (min-width: 992px) {
  .footer-subscribe-cell { padding:80px 80px 80px 40px; border:0; }
  .footer-content-cell { padding:80px 40px; border-right:1px solid #3F738D; }
  .footer-wrap-pattern { 
    xbackground-image: url('https://ctycms.com/nc-southpark-splash/SouthPark-pattern.svg');
    background-image: url('https://ctycms.com/nc-southpark/SouthPark-pattern-strip-footer.svg');
    background-position: top left;
    xbackground-size: 300px 300px;
    xbackground-size: 122px 634px; /* native */
    xbackground-size: 61px 317px;
    background-size: 110px 571px;
    background-repeat:repeat;
    position:absolute;
    top:0px; 
    right:0px;
    width:90px;
    height:100%; 
  }
}

.footer-logo { width:200px; margin:0 auto; margin-bottom:30px; }

.footer-social { margin:24px 0; }
.footer-social a { display:inline-block; width:30px; height:30px; font-size:14px; line-height:30px; border-radius:50%; text-align:center; margin:0 8px; }
.footer-social a { text-decoration:none; color:var(--cty-brandnavy); background-color:#ffffff; border:none; transition: all 0.15s linear 0s; }
.footer-social a:hover { color:white; background-color:var(--cty-brandgold); }
@media screen and (min-width: 992px) { 
  .footer-logo { width:200px; margin-left:0px; margin-right:40px; }
  .footer-social a { margin:0 14px 0 0; } 
}

	
	
/* banner */

.no-banner { width:100%; border-top:1px solid var(--cty-banner-wrap); }
.banner-b { width:100%; height:240px; background-color:var(--cty-banner-wrap); background-position:center center; background-size:cover; border-bottom:2px solid var(--cty-brandteal);}
@media all and (min-width: 992px) {
  .banner-b { height:360px; }
}

.banner-pattern { 
  background-color: var(--cty-brandnavy);
  background-image: url('https://ctycms.com/nc-southpark-splash/SouthPark-pattern.svg');
  background-position: center center;
  background-size: 500px 500px;
  height:160px;
}
@media all and (min-width: 992px) {
  .banner-pattern { height:240px; }
}

/* detail header */

.full-color { width:100%; background:var(--cty-banner-wrap); }
.detail-header { width:100%; background:var(--cty-banner-wrap); }
.detail-header h1 { font-size: 3.0rem; margin:0; }

p.header-groups { margin:1rem 0; } 
a.btn-header-groups { background-color:inherit; padding:4px 8px; margin:3px 1px; border-radius:4px; transition: all 0.15s linear 0s;  }
a.btn-header-groups { font-size:13px; line-height:15px; letter-spacing:0.050rem; font-weight:700; text-transform:uppercase; color:var(--cty-alink); border:2px solid var(--cty-alink); }
a.btn-header-groups:hover { color:var(--cty-ahover); border-color:var(--cty-ahover); }



/* sidenav drawer */

.sidenav-container { max-width:1200px; margin:auto; } /* match container-fluid width */
.sidenav-row { display:block; width:100%; }
.sidenav-col-nav { display:block; width:100%; padding:0; }
.sidenav-col-content { display:block; width:100%; padding-right:24px; padding-left:24px; }
@media screen and (min-width: 992px) {
	.sidenav-row { display: flex; flex-direction: row-reverse; width:100%; }
	.sidenav-col-nav { display:block; width:25%; padding:60px 24px 60px 40px; }
	.sidenav-col-content { display:block; width:75%; padding-right:40px; }
}

.d-sidenav { width:100%; }

.d-sidenav-section { display:table; width:100%; background-color:var(--cty-brandnavy); padding:8px 0; }
.d-sidenav-section-label { display:table-cell; text-align:left; width:auto; vertical-align:top; font-size:18px; line-height:24px; }
.d-sidenav-section-label a { display:block; padding:10px 12px 10px 24px; color:white; font-weight:700; text-transform:none; text-decoration:none; margin-right:40px; }
.d-sidenav-section-label a:hover { color:white; text-decoration:none;  }
.d-sidenav-section-toggle { display:table-cell; text-align:right; width:60px; vertical-align:top; cursor:pointer; color:white; font-size:20px; line-height:24px; }
.d-sidenav-section-toggle a { display:block; padding:10px 24px 10px 12px; color:white; text-decoration:none;  }
.d-sidenav-section-toggle a:hover { color:white; text-decoration:none; }
#d-sidenav-drawer { display:none; }
@media all and (min-width: 992px) {
  .d-sidenav-section { padding:2px 0; }
	.d-sidenav-section-label { display:block; width:100%; padding-top:8px; }
  .d-sidenav-section-label a { margin-right:0; }
	.d-sidenav-section-toggle { display:none;  }
	#d-sidenav-drawer { display:block!important; }
}

.d-sidenav ul { padding:0; margin:0; }
.d-sidenav > ul { border:1px solid var(--cty-linework); border-left:0px; border-right:0px; } 
.d-sidenav li { padding:0; margin:0; list-style:none; }

.d-sidenav li .li-flex { display:flex; }

.d-sidenav > ul > li { border-bottom:1px solid var(--cty-linework); }
.d-sidenav > ul > li:last-child { border-bottom:none; }

.d-sidenav li ul { padding-bottom:16px; }
.d-sidenav li ul li { padding:4px 0px; }

.d-sidenav li a {
  display:table;
  width:100%; 
  text-decoration:none;
  font-weight:400;
}

.d-sidenav li.d-open { background-color:var(--cty-pagewrap-bg); }

.d-sidenav li a div.sn-indicator { display:table-cell; width:36px; text-align:left; padding:14px 0px 14px 20px; font-weight:600; font-size:14px; line-height:24px; vertical-align:top; color:var(--cty-pagewrap-bg); }
.d-sidenav li a div.sn-label { display:table-cell; width:auto; text-align:left; padding:14px 20px 14px 0px; font-weight:400; font-size:15px; line-height:24px; vertical-align:top; color:var(--cty-pagewrap-txt); }
.d-sidenav li a div.sn-label-nested { display:table-cell; width:100%; text-align:left; padding:4px 20px 4px 50px; font-weight:400; font-size:14px; line-height:24px; vertical-align:top; color:var(--cty-pagewrap-txt); }
.d-sidenav li a:hover div { color:var(--cty-ahover); }

.d-sidenav li.d-open a div.sn-indicator { color:var(--cty-pagewrap-txt); }
.d-sidenav li.d-selected div.sn-indicator { color:var(--cty-pagewrap-txt)!important; }
.d-sidenav li.d-selected div.sn-label { color:var(--cty-pagewrap-txt); }

.d-sidenav li.d-sub-selected div.sn-label-nested { color:var(--cty-pagewrap-txt)!important; }


/* mobile nav */

.header-wrap { background-color:var(--cty-brandnavy); padding:2px 0 0 0; border-bottom:2px solid var(--cty-brandteal); }
.nav-relative { position:relative; }
.nav-hold { width:100%; height:70px; }
.nav-logo-mobile { position:absolute; z-index:9999; top:0px left:24px; display:block;  width:120px; height:120px; background-color:var(--cty-brandnavy); border:2px solid var(--cty-brandteal); border-top:0px;}
.nav-logo-mobile a { display:block; margin:14px 0 0 13px; width:90px; height:90px; background-size:contain; background-repeat:no-repeat; }
.nav-logo-desktop { display:none; }
.nav-toggle a { float:right; font-size:24px; line-height:70px; color:var(--cty-pnav-link); }
.nav-toggle a:hover { color:var(--cty-pnav-hover);  }

#nav-drawer { display:none }

#primary-nav { padding-top:50px; }
#primary-nav ul { margin:0; padding:0; }  
#primary-nav ul li { list-style: none; margin:0; padding:0; width:100%; }
#primary-nav ul li div.menu-set { display:table; border-top:2px solid var(--cty-brandteal); width:100%; }
#primary-nav ul li:first-child div.menu-set { border-top:0; }
#primary-nav ul li div.menu-set a {
  display:table-cell;
  width:90%;
  text-align:left;
  vertical-align:top;
  padding:12px 0px;
  color:var(--cty-pnav-link);
  font-family: 'alternate-gothic-atf', sans-serif;
  font-size:22px;
  line-height:1.5;
  font-weight:500;
  letter-spacing: 0.100rem;
  text-transform:uppercase;
}

#primary-nav ul li div.menu-set a.subnav-toggle { width:10%; text-align:right; }
#primary-nav ul li div.menu-set a:hover { color:var(--cty-pnav-hover); }

#primary-nav ul ul { display:none; margin:0; padding:8px 0px 24px 0px; }

#primary-nav ul li ul li a { /*dropdowns*/
  display: block;
  padding:10px 4px 10px 20px;
  font-size:18px;
  line-height:24px;
  font-weight:500;
  text-transform:none;
  color:var(--cty-pnav-link);
}

#primary-nav ul li ul li a:hover { color:var(cc-pnav-hover); }

#secondary-nav { padding:10px 0 30px 0; }

.nav-search { }

#site-search {
  display:table;
  width:100%;	
  padding:8px 16px;
  margin:20px 0 0 0;
  border:2px solid var(--cty-brandteal);
  border-radius:6px;
  text-align:left;
}

#site-search input[type="text"]{
  display:table-cell;	
  font-size:16px;
  line-height:24px;
  color:var(--cty-pnav-link);
  letter-spacing: 0.100rem;
  background:transparent;
  border:none;
  padding:0;
  margin:0;
  width:90%;
  text-align:left;  
  vertical-align:middle;
  outline:0;
}

#site-search button {
  display:table-cell;
  font-size:14px;
  line-height:24px;
  color:var(--cty-pnav-link);
  background:transparent;
  border:none;
  margin:0;
  padding:0;
  width:10%;
  text-align:right;
  vertical-align:middle;
}

#site-search ::-webkit-input-placeholder { color:var(--cty-pnav-link); opacity: 0.8; }
#site-search :-moz-placeholder { color:var(--cty-pnav-link); opacity: 0.8; }
#site-search ::-moz-placeholder { color:var(--cty-pnav-link); opacity: 0.8; }
#site-search :-ms-input-placeholder { color:var(--cty-pnav-link); opacity: 0.8; }

/* desktop nav */
@media all and (min-width: 992px) {
  
  .header-wrap { padding:0; height:74px; border-bottom:2px solid var(--cty-brandteal); }
  .nav-relative { position:relative; }
  .nav-hold { }
  .nav-logo-mobile { display:none; }  
  .nav-logo-desktop { position:absolute; z-index:9999; top:0px left:24px; display:block;  width:170px; height:160px; background-color:var(--cty-brandnavy); border:2px solid var(--cty-brandteal); border-top:0px;}
  .nav-logo-desktop a { display:block; margin:19px 0 0 23px; width:120px; height:120px; background-size:contain; background-repeat:no-repeat; }
  .nav-toggle { display:none; }

   #nav-drawer { display:block!important; } /* slidetoggle fix */
  
  /* primary-nav */
   
  #primary-nav { position:absolute; top:8px; right:-16px; width:auto; height:64px; padding:0; }
  #primary-nav ul { display:block; float:right; }
  #primary-nav ul li { display:block; float:left; width:auto; padding:0 12px; }
  #primary-nav ul li div.menu-set { display:table; border:none; width:auto; }
  #primary-nav ul li div.menu-set a {
    display:table-cell;
    width: auto;
    font-size:24px;
    line-height:40px;
    padding:8px 12px 16px 12px;
  }
  
  #primary-nav ul li div.menu-set a.subnav-toggle { color:var(--cty-brandgold); width: auto; padding-left:0px; font-size:18px; }
  #primary-nav ul li div.menu-set:hover a { color:var(--cty-pnav-hover); }

  #primary-nav ul li:hover a { background-color:var(--cty-pnav-dropdown); }
  #primary-nav ul li a:hover { color:var(--cty-pnav-hover); }

  /* drop down lists */

  #primary-nav ul li ul { 
    position: absolute;
    width: 220px;
    height:auto;
    padding:20px 0px;
    background-color:var(--cty-pnav-dropdown);
    display:none;
    border:2px solid var(--cty-brandteal);
    border-top:0px;
  }

  #primary-nav ul li:hover > ul { display:block !important; left: auto; z-index:9999; margin-left:-16px; } 
  @media all and (min-width: 992px) { #primary-nav li:last-child:hover > ul { right:0px; } }
  
  #primary-nav ul li ul li { width:200px; padding:0px; }
  #primary-nav ul li ul li a { 
    width:100%;
    padding:6px 24px;
    background-color:var(--cty-pnav-dropdown);
  }


  /* secondary nav */
  
  #secondary-nav { display:none; position:absolute; top:12px; right:20px; width:auto; padding:0; }
   
  #site-search {
    border:0;
    margin:0;
    width:180px;
    padding:4px 4px;
    border-radius:0;
    border-bottom:1px solid var(--cty-linework);
  }

}

/* desktop nav */
@media all and (min-width: 999992px) {
   
  /* primary-nav */
   
  #primary-nav { position:absolute; top:8px; right:0px; width:auto; padding:0; }
  #primary-nav ul { display:block; float:right; }
  #primary-nav ul li { display:block; float:left; width:auto; }
  #primary-nav ul li div.menu-set { display:table; border:none; width:auto; border:1px solid #ff0000; }
  #primary-nav ul li div.menu-set a {
    width: auto;
    padding:14px 12px 14px 16px;
  }
  
  #primary-nav ul li div.menu-set a.subnav-toggle { color:var(--cty-brandgold); padding-left:0px; padding-right:12px; }
  #primary-nav ul li div.menu-set:hover a { color:var(--cty-pnav-hover); }

  #primary-nav ul li:hover a { background-color:var(--cty-pnav-dropdown); }
  #primary-nav ul li a:hover { color:var(--cty-pnav-hover); }

  /* drop down lists */

  #primary-nav ul li ul { 
    position: absolute;
    width: 220px;
    height:auto;
    padding:20px 0px;
    background-color:var(--cty-pnav-dropdown);
    display:none;
    border:2px solid var(--cty-brandteal);
    border-top:0px;
  }

  #primary-nav ul li:hover > ul { display:block !important; left: auto; z-index:9999; } 
  @media all and (min-width: 992px) { #primary-nav li:last-child:hover > ul { right:0px; } }
  
  #primary-nav ul li ul li { width:200px; }
  #primary-nav ul li ul li a { 
    width:100%;
    padding:6px 24px;
    background-color:var(--cty-pnav-dropdown);
  }


}








/* home hero */

.hero-wrap { background-color:#000; position:relative; overflow:hidden; } 

.hero-sizer { width:100%; height:540px; }
@media all and (min-width: 768px) {
  .hero-sizer { height:675px; }
}

.hero-image { position:absolute; top:0px; z-index:1; background-position:center center; background-size:cover; }

.hero-video { position:absolute; top:0px; z-index:2; display: flex; align-items: center; justify-content: center; }
.hero-video video { width: 100%; height:100%; object-fit: cover; object-position: center; }
.hero-cover { position:absolute; top:0px; z-index:3; display:flex; align-items:center; justify-content: center; background-color:rgba(19,30,41,0.10); }

.hero-cover-hold { max-width:900px; text-align:center; }
.hero-cover-content { padding:120px 24px 90px 24px; }
.hero-cover-content h1 { color:white; text-shadow: 0px 0px 4px var(--cty-brandnavy); }
.hero-cover-content p { color:white; text-shadow: 0px 0px 4px var(--cty-brandnavy);  }

  
/* home intro */


.home-intro { background-color:var(--cty-brandnavy); }
.home-intro-pattern { 
  background-color: var(--cty-brandnavy);
  background-image: url('https://ctycms.com/nc-southpark-splash/SouthPark-pattern.svg');
  background-position: center center;
  background-size: 400px 400px;
}

.home-intro-pattern-top { width:100%; height:100px; }
.home-intro-pattern-bottom { width:100%; height:100px; border-bottom: 2px solid var(--cty-brandteal); }

.home-intro-content { color:white; text-align:center; padding:60px; }
.home-intro-content .hold-width { max-width: 900px; margin: 0 auto; }

.home-intro-subscribe { color:white; text-align:center; padding:40px; border-top: 2px solid var(--cty-brandteal); }


.subscribe-domino { }
.subscribe-domino-a { }
.subscribe-domino-b { }
@media all and (min-width: 992px) {
  .subscribe-domino { display:flex; align-items: center; justify-content: center; }
  .subscribe-domino-a { padding-right:24px; }
  .subscribe-domino-b { }
}



/* home-featured-posts */

.home-featured-posts { background-color:var(--cty-brandnavy); }
.home-featured-posts h1, .home-featured-posts  h2, .home-featured-posts  h3, .home-featured-posts  p, .home-featured-posts  li { color:var(--cty-brandcoolblue); }


/* home-callout-section */

.home-callout-section { background-color:var(--cty-brandteal); }

.home-callout { width:100%; }
.home-callout-image { width:100%; height:300px; background-position:center center; background-size:cover; }
.home-callout-content { padding:40px; }
@media all and (min-width: 992px) {
  .home-callout { display:flex; flex-direction: row-reverse; }
  .home-callout-image { width:50%; height:auto; }
  .home-callout-content { width:50%; padding:80px; }
}
.home-callout-content h1, .home-callout-content h2, .home-callout-content h3, .home-callout-content p, .home-callout-content li { color:white; }



/* citylight social grid */

.citylight-social-grid { width:100%; border-left:0px solid white; border-bottom:0px solid white; background-color:black; }

.citylight-social-square {
  display:block;
  background-size:cover;
  background-position:center center;	
  float:left;
  position: relative;
  margin:0px;
  overflow:hidden;
  border-right:0px solid white;
  border-top:0px solid white;
}

.citylight-social-square { width: 50%; padding-bottom : 50%; }
@media all and (min-width: 768px) { .citylight-social-square { width: 33.33%; padding-bottom : 33.33%; } }
@media all and (min-width: 992px) { .citylight-social-square { width: 20%; padding-bottom : 20%; } .citylight-social-square-6 { display:none; } }

.citylight-social-square-cover { position:absolute; width:100%; height:100%; background-color:rgba(0,0,0,0.05); transition: all 0.15s linear 0s; }
.citylight-social-square:hover .citylight-social-square-cover { background-color:rgba(0,0,0,0.35); }
.citylight-social-square-icon { position:absolute; bottom:8%; left:8%; color:white; font-size:22px; line-height:22px; }
@media all and (min-width: 768px) { 
   .citylight-social-square-icon { bottom:16%; left:16%; font-size:28px; line-height:28px; }
}


/* feature card */

.feature-card { }
.feature-card-image { position:relative; }
.feature-card-image-img { position:relative; background-color:white; }
.feature-card-image-tag { position:absolute; bottom:-15px; display:inline-block; font-size:14px; line-height:30px; padding:0 8px; background-color:var(--cty-ahover); color:white; text-transform:uppercase; }
.feature-card-image-div3x2 { width:100%; padding-bottom:66%; background-color:#eee; background-size:cover; background-position:center center; }
.feature-card-content { background-color:white; padding:30px 30px 20px 30px; }
.feature-card-content-headline { color:var(--cty-h1); font-size:1.35rem; line-height:1.4; font-weight:700; margin-bottom:6px; }
.feature-card-content-body { color:var(--cty-h2); font-size:1.1rem; line-height:1.4; margin-bottom:12px; }
.feature-card a .feature-card-content-linklabel { color:var(--cty-alink); text-decoration:none; font-weight:700; }
.feature-card a:hover .feature-card-content-linklabel { color:var(--cty-ahover); text-decoration:none; }


/* basic lightbox */

.lightbox-wrap { margin-top:30px; }
.lightbox-squares { width:100%; padding-bottom:100%; background-color:var(--cty-banner-wrap); background-position:center center; background-size:cover; margin-bottom:30px; }


/* basic landing */

.nav-card-gallery { margin:48px 0 0 0; }
.nav-card-margin { margin-bottom:48px; }
.nav-card { width:100%; height:100%; background-color:var(--cty-brandcoolblue); overflow:hidden; transition: all 0.15s linear 0s; }
.nav-card :hover { background-color:#e4eff6; }
.nav-card a { display:block; }
.nav-card a .nav-card-image { position:relative; width:100%; padding-bottom:66.66%; background-color:#eee; margin-bottom:12px; overflow:hidden;  }
.nav-card a .nav-card-image-bg {  position:absolute; top:0; width:100%; height:100%; background-position:center center; background-size:cover; transition: all .5s; }
.nav-card a .nav-card-image-cover { position:absolute; top:0; width:100%; height:100%; background-color:rgba(0,0,0,0.0); transition: all .5s;  }
.nav-card a:hover .nav-card-image-bg { transform: scale(1.02); }

.nav-card-content { width:100%; height:100%; padding:10px 20px 20px 20px; text-align:center; }
.nav-card a .nav-card-content-headline { font-family: 'alternate-gothic-atf', sans-serif; color:var(--cty-brandteal); font-weight:500; letter-spacing: 0.025rem; font-size:28px; line-height:1.1; transition: all 0.15s linear 0s; }
.nav-card a:hover .nav-card-content-headline { color:var(--cty-brandnavy); }










/* basic snake */

.snake-wrap { width:100%; background-color:var(--cty-banner-wrap); }
.snake-container { width:100%; max-width:1200px; background-color:white; margin:0 auto; }
.snake-row { display:block; }
.snake-image { display: block; width:100%; padding-bottom: 90%; background-size:cover; background-position:center center; }
.snake-content { display: block; background-color:white; padding:30px; }
@media all and (min-width: 576px) {
	.snake-image { padding-bottom: 50%; }
}
@media all and (min-width: 768px) {
	.snake-row { display:flex; }
	.snake-row-alternate { flex-direction: row-reverse; }
	.snake-image { width:50%; padding:0; }
	.snake-content { width:50%; padding:60px; }
}
@media all and (min-width: 992px) {
	.snake-content { padding:90px; }
}




/* sp staff/board card */

.spc-cards { width:100%; margin-top:24px; margin-bottom:36px; }
.spc-card { background-color:var(--cty-brandnavy); border:12px solid #fff; height:100%; position:relative; }
.spc-card-linework-a { border:2px solid var(--cty-brandnavy); border-radius:0px 12px 0px 12px; position:absolute; top:0px; left:-10px; bottom:0px; right:-10px; pointer-events: none; }
.spc-card-linework-b { border:2px solid var(--cty-brandnavy); border-radius:0px 12px 0px 12px; position:absolute; top:-10px; left:0px; bottom:-10px; right:0px; pointer-events: none; }

.spc-card a { display:block; }
.spc-card-image { width:100%; background-color:#fff; padding-bottom:90%; background-position:center center; background-size:cover; border:16px solid #fff; border-bottom:0px; }
.spc-card-content { padding:22px 32px 16px 32px; background-color:var(--cty-brandnavy); }
.spc-name { font-family: 'alternate-gothic-atf', sans-serif; font-weight: 700; color:#fff; font-size:24px; line-height:1.1; margin-bottom:4px; }
.spc-title { font-weight: 600; color:#fff; font-size:12px; line-height:1.3; margin-bottom:8px; text-transform:uppercase; letter-spacing:0.050rem; }
.spc-firm { font-weight: 400; color:#fff;  font-size:16px; line-height:1.3; margin-bottom:4px; }

.spc-title { transition: all 0.35s linear 0s; }
.spc-name { transition: all 0.25s linear 0s; }
.spc-card a:hover .spc-name, .spc-card a:focus .spc-name { color:var(--cty-alink); }
.spc-card a:hover .spc-title, .spc-card a:focus .spc-title { color:var(--cty-alink); }



/* mapbox styles */

.smarker {  width: 24px; height: 36px; cursor: pointer; }
.smarker-bg { position:absolute; width:24px; height:36px; fill: var(--cty-brandnavy); }
.smarker-i { position:absolute; width:24px; height:36px; text-align:center; font-size:11px; line-height:24px; color:white; }

.mapboxgl-map { font-family:inherit; }
.mapboxgl-ctrl-attrib.mapboxgl-compact { min-height:24px; } /* bug fix */

.mapboxgl-popup { width: 200px; padding-bottom: 30px; } /* adjust padding bottom to height of marker */
.mapboxgl-popup-content { text-align: center; padding:30px 20px; box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.4); }
.mapboxgl-popup-content p.mapbox-pop-name { margin:8px 0px; color: var(--cty-brandteal); font-family: 'alternate-gothic-atf', sans-serif; font-weight:400; font-size:28px; line-height:30px; }
.mapboxgl-popup-content p.mapbox-pop-address { margin:8px 0px; font-size:15px; line-height:22px; color:var(--cty-pagewrap-txt); }
.mapboxgl-popup-content p.mapbox-pop-link { margin:8px 0px; }

.mapboxgl-ctrl-geocoder { min-width: 100%; }


/* point-section */

#point-section #clmap { width:100%; height:50vh; min-height:100px; max-height:500px; background-color:#E6E4E0; border-top:1px solid #eee; border-bottom:1px solid #eee; }

.section-filters { text-align:center; margin:30px 0px; }
.section-filters-points { text-align:left; margin:20px 0px; }
.section-filters .section-filters-title { text-align:center; color:#222; font-size:14px; line-height:16px; letter-spacing:0.100rem; font-weight:700; text-transform:uppercase; margin:0 0 14px 0;}
.section-filters ul { list-style:none; margin:0; padding:0 ;}
.section-filters li { display:inline; margin:0; padding:0; }
.section-filters a {
font-weight:500;
text-decoration: none;
line-height: 14px;
font-size: 14px;
text-align: center;
display:inline-block;
color:var(--cty-brandnavy);
background-color:white;
letter-spacing:  0.050rem;
border:1px solid var(--cty-brandgold);
border-radius:2px;
padding:8px 12px;
white-space: nowrap;
margin:5px 4px;
text-transform:none;
}
.section-filters a:hover { background-color:#122C50; border-color:#122C50; color:white; text-decoration: none; }
.section-filters a.selected { background-color:#122C50; border-color:#122C50; color:white; }

.point-section-results { margin:30px 0px; }

.pst { margin-bottom:24px; }
.pst-topline { border-top:1px solid #eee; padding-top:8px; }
.pst a { display:block; }

.pst a .pst-image { position:relative; width:100%; padding-bottom:66.66%; background-color:#eee; margin-bottom:12px; }
.pst a .pst-image-bg { position:absolute; top:0; width:100%; height:100%; background-position:center center; background-size:cover; }
.pst a .pst-image-cover { position:absolute; top:0; width:100%; height:100%; background-color:rgba(0,0,0,0.1); transition: all .5s;}
.pst a:hover .pst-image-cover { background-color:rgba(0,0,0,0.5);  }

/* fst custom */

.fst { width:100%; height:100%; background-color:var(--cty-brandcoolblue); position:relative; overflow:hidden; transition: all 0.15s linear 0s; }

.fst a { display:block; width:100%; height:100%; padding-left:40px; position:relative; }

.fst-content { width:100%; height:100%; border-left:2px solid white; }

.fst-location { 
position: absolute; 
bottom:28px;
left: 40px;
display: block;
width: auto;
height: 40px;
transform: rotate(-90deg);
transform-origin: 0 100%;
color:var(--cty-brandnavy);
text-transform:none;
font-weight:500;
font-size:14px;
line-height:40px;
letter-spacing:0.025rem;
}

.fst-image-hold { width:100%; overflow:hidden; }
.fst-image { width:100%; padding-bottom:66.66%; background-position:center center; background-size:cover;  }

.fst-inner-content { padding:28px 24px 20px 24px; }

.fst-callout { padding:4px 0 12px 0; margin-left:-2px; }

.btn-label { display:inline-block; background-color:var(--cty-brandnavy); font-family: 'alternate-gothic-atf', sans-serif; color:#fff;font-weight:700; letter-spacing: 0.025em; text-transform:uppercase; 
 border-radius:30px; font-size:12px; line-height:12px; vertical-align:middle; padding:6px 12px 6px 12px; }

.fst-name { padding:4px 0px 10px 0px; font-family: 'alternate-gothic-atf', sans-serif; color:#2a313c; font-weight:500; letter-spacing: 0.025rem; font-size:28px; line-height:1.1; }

.fst-teaser { font-size:16px; padding:0; color:var(--cty-brandnavy); padding-bottom:1rem; }
.fst-more { font-size:14px; padding:0; color:var(--cty-brandnavy); }
.fst-more span { color:var(--cty-alink); }

.fst-image { transition: all 0.35s linear 0s; }
.fst-name { transition: all 0.25s linear 0s; }
.fst:hover { background-color:#e4eff6; }
.fst a:hover .fst-image, .fst a:focus .fst-image { transform: scale(1.02); }
.fst a:hover .fst-more, .fst a:focus .fst-more { color:var(--cty-alink); }


/* guide cards for posts */


.gst { width:100%; height:100%; background-color:var(--cty-brandcoolblue); position:relative; overflow:hidden; transition: all 0.15s linear 0s; }

.gst a { display:block; width:100%; height:100%; position:relative; }

.gst-content { width:100%; height:100%; }


.gst-image-hold { width:100%; overflow:hidden; }
.gst-image { width:100%; padding-bottom:66.66%; background-position:center center; background-size:cover;  }

.gst-inner-content { padding:28px 24px 20px 24px; }

.gst-callout { padding:4px 0 12px 0; margin-left:-2px; }

.gst-name { padding:4px 0px 10px 0px; font-family: 'alternate-gothic-atf', sans-serif; color:var(--cty-brandteal); font-weight:500; letter-spacing: 0.025rem; font-size:28px; line-height:1.1; }

.gst-teaser { font-size:16px; padding:0; color:var(--cty-brandnavy); padding-bottom:1rem; }
.gst-more { font-size:14px; font-weight: 600; padding:0; color:var(--cty-brandnavy); }
.gst-more span { color:var(--cty-alink); }

.gst-image { transition: all 0.35s linear 0s; }
.gst-name { transition: all 0.25s linear 0s; }
.gst:hover { background-color:#e4eff6; }
.gst a:hover .gst-image, .gst a:focus .gst-image { transform: scale(1.02); }
.gst a:hover .gst-more, .gst a:focus .gst-more { color:var(--cty-alink); }



/* point section sticky */

.sticky-wrap { background-color:#fafafa; }
.sticky-hold { display:block; }
.sticky-content { width:100%; background-color:white; padding:40px; min-height:100px; }
.sticky-map { width:100%; height:90vh; min-height:420px; background-color:#E8E0D8; }
#stickymap { width:100%; height:90vh; background-color:#E8E0D8; }
@media all and (min-width: 768px) {
	.sticky-hold { display:flex; width:100%; max-width:1600px; margin:0 auto; background-color:#000; min-height:100vh; }
	.sticky-content { flex: 1 1 auto; height:auto; }
	.sticky-map { flex: 1 1 auto; height:auto; }
	#stickymap { width:100%; height:100vh; top:0px; position: sticky; position: -webkit-sticky; /* need for safari */ }
}



/* point-detail */

.point-social-icons { margin:24px 0; text-align:left;}
.point-social-icons a.btn-social { display:inline-block; width:30px; height:30px; font-size:15px; line-height:30px; border-radius:50%; text-align:center; margin:0 12px 0 0; }
.point-social-icons a.btn-social { text-decoration:none; color:white; background-color:var(--cty-alink); border:none; transition: all 0.15s linear 0s;}
.point-social-icons a.btn-social:hover { color:white; background-color:var(--cty-ahover); }

#point-detail { margin-left:-24px; margin-right:-24px; border-top:1px solid #E6E4E0; border-bottom:1px solid #E6E4E0;}
#point-detail #clmap { width:100%; height:50vh; min-height:150px; max-height:500px; background-color:#E6E4E0; border-top:0px solid white; border-bottom:0px solid white; }
@media all and (min-width: 992px) {
	#point-detail #clmap { border:0px solid white; }
	#point-detail { margin-left:0px; margin-right:0px; border: 1px solid #E6E4E0; }
}

.ftn { text-align:left; }
.ftn .ftn-label { font-weight:700; text-align:left; }
.ftn ul { margin:20px 0px; padding:0; }
.ftn li { list-style-type: none; padding:10px 0px; margin:0; border-bottom:1px solid var(--cty-brandteal); }
.ftn li:last-child { border-bottom:0;}
.ftnname { display:block; font-size:120%; font-family: 'alternate-gothic-atf', sans-serif; }
.ftnaddress { font-size:80%; color:#000; }
.ftndistance { font-size:80%; color:#666;}





/* bbq-events-calendar */
  
:root {
    
  --cty-bbq-bg: #ffffff; /* header bg and calendar bg */
  --cty-bbq-lns: #ffffff; /* linework between dates and calendar rows and tags */
  --cty-bbq-bgtxt: #bada55; /* color of days of the week + empty dates */
  
  --cty-bbq-month: #fff;
  --cty-bbq-month-bg: #333;
  --cty-bbq-day: #333;
  --cty-bbq-day-bg: #eee;
  --cty-bbq-dow: #333;
  --cty-bbq-dow-bg: inherit;
  
  --cty-bbq-highlight: #ffffff; 
  --cty-bbq-highlight-bg: var(--cty-brandteal);  
  --cty-bbq-hover: #ffffff; 
  --cty-bbq-hover-bg: var(--cty-brandnavy); 
}


.bbq-results-header { display:table; width:100%; margin:0; padding:0; background-color:var(--cty-brandteal); margin-bottom:16px; font-size:16px; line-height:1.5; padding:12px 0px; }
.bbq-results-header-left { display:table-cell; width:50px; vertical-align:middle; text-align:center; }
.bbq-results-header-middle { display:table-cell; width:auto; vertical-align:middle; text-align:center; font-weight:700; color:#fff; }
.bbq-results-header-right { display:table-cell; width:50px; vertical-align:middle; text-align:center; }
.bbq-results-header a { color:#fff; }
.bbq-results-header a:hover { color:#fff; }
  
.bbqgriddle { background-color:var(--cty-brandcoolblue); height:100%; overflow:hidden; position:relative; transition: all 0.15s linear 0s; }
.bbqgriddle:hover { background-color:#e4eff6; }
.bbqgriddle a { display:block; height:100%; } 
.bbqgriddle-image { width:100%; padding-bottom:80%; background-position:center center; background-size:cover; }
.bbqgriddle-content { padding:28px 24px 20px 24px; }
.bbqgriddle-date { position:absolute; top:10px; left:10px; }

.bbqgriddle a div.lnk-primary { font-family: 'alternate-gothic-atf', sans-serif; color:var(--cty-brandteal); font-weight:500; letter-spacing: 0.025rem; font-size:28px; line-height:1.1; }
.bbqgriddle a div.lnk-secondary { color:var(--cty-asec-link); font-weight:400; font-size:16px; line-height:24px; margin-top:9px; }
.bbqgriddle a div.lnk-secondary span { color:var(--cty-brandteal); }
.bbqgriddle a:hover div.lnk-primary { color: inherit; }
.bbqgriddle a:hover div.lnk-secondary { color:var(--cty-asec-hover); }

.bbqdate { width:70px; margin:0 auto 24px auto; padding:8px 0; background-color:#fff; }
@media all and (min-width: 768px) { .bbqdate { margin:0; }}

.bbqdate-month { text-align:center; color:var(--cty-brandnavy); font-size:10px; line-height:1.2; font-weight: 600; text-transform:uppercase;}
.bbqdate-day { text-align:center; color:var(--cty-brandnavy); font-size:24px; line-height:1.2; font-weight: 700; letter-spacing:0.100rem; }
.bbqdate-tip { text-align:center; color:var(--cty-brandnavy); font-size:10px; line-height:1.2; font-weight: 600; }
.bbqdate-ongoing { text-align:center; color:var(--cty-brandnavy); font-size:10px; line-height:1.2; font-weight: 600; }



  
  
  
.bbq-control-wrap { margin-bottom:30px; }

.bbq-cal-header { display:table; width:100%; margin:0; padding:0; background-color:var(--cty-brandteal); border-bottom:0; font-size:16px; line-height:1.5; padding:12px 0px; }
.bbq-cal-header-left { display:table-cell; width:40px; vertical-align:middle; text-align:center; }
.bbq-cal-header-middle { display:table-cell; width:auto; vertical-align:middle; text-align:center; font-weight:700; text-transform:none; }
.bbq-cal-header-right { display:table-cell; width:40px; vertical-align:middle; text-align:center; }
.bbq-cal-header a { color:#fff; }
.bbq-cal-header a:hover { color:#fff; }

#bbq-calendar table { width:100%; margin:0; padding:0; border:1px solid var(--cty-bbq-lns);  }   
#bbq-calendar th { /* days of the week */
  border-top:1px var(--cty-bbq-lns) solid; 
  background-color:var(--cty-brandcoolblue);
  color:var(--cty-brandteal); 
  font-size:10px;
  line-height:28px;
  letter-spacing:0.100rem;
  text-align:center;
  }
#bbq-calendar td {
  border-top:1px var(--cty-bbq-lns) solid;
  background-color:var(--cty-brandcoolblue);
  color:var(--cty-brandteal); /* color of hidden/inactive dates */
  font-size:12px;
  line-height:36px;
  letter-spacing:0.100rem;
  text-align:center;
  }
#bbq-calendar a { display:block; text-decoration:none; font-weight:600; }
#bbq-calendar a.ontoday { text-decoration:underline!important; }
#bbq-calendar td.highlight a { background-color:var(--cty-bbq-highlight-bg); color:var(--cty-bbq-highlight); }
#bbq-calendar a:hover, #bbq-calendar td.highlight a:hover { background-color:var(--cty-bbq-hover-bg); color:var(--cty-bbq-hover); }

.bbq-p { text-align:center; font-size:13px; line-height:36px; font-weight:500; }

#bbq-categories ul { list-style:none; padding:0; margin:0; width:100%; border:1px solid var(--cty-bbq-lns); }
#bbq-categories ul li { padding:0; margin:0; background-color:var(--cty-bbq-bg); border-bottom:1px solid var(--cty-bbq-lns); }
#bbq-categories ul li:last-child { border-bottom:0px; }
#bbq-categories a { display:block; padding:0 24px; font-size:14px; line-height:36px; text-align:center; }
#bbq-categories a.highlight { background-color:var(--cty-bbq-highlight-bg); color:var(--cty-bbq-highlight); text-decoration:none; }
#bbq-categories a:hover { background-color:var(--cty-bbq-hover-bg); color:var(--cty-bbq-hover); text-decoration:none; }




/* event-detail */

ul.datelist { list-style-type: none; padding-left:0; margin-left:0; }
ul.datelist li { margin-bottom:6px; }
ul.datelist li .dldate { font-size:16px; }
ul.datelist li .dltime { font-size:16px; color:#666; }



/* Post Section */

.post-card-gallery { margin:48px 0px 24px 0px; }
a.post-card { display:block; width:100%; height:100%; background-color:var(--cty-bg-silver); }

.post-card-image { position:relative; width:100%; }
.post-card-image-image { width:100%; padding-bottom:66%; background-position:center center; background-size:cover; }
.post-card-image-cover { position:absolute; top:0px; width:100%; height:100%; background-color:rgba(0,0,0,0); transition: all 250ms ease-out; }
.post-card-image-tag { position:absolute; top:0px; right:0px; width:auto; height:auto; background-color:rgba(0,0,0,0.5); font-size:12px; line-height:12px; color:white; padding:10px; }

.post-card-content { padding:20px; text-align:left; }
.post-card-content-headline { color:var(--cty-pagewrap-txt); font-weight:700; font-size:20px; margin-bottom:12px; }
.post-card-content-body { color:var(--cty-pagewrap-txt); font-weight:400; font-size:15px; margin-bottom:12px; }
.post-card-content-more { color:var(--cty-alink); font-weight:700; font-size: 13px; letter-spacing: 0.0500rem; text-transform: uppercase; }

a.post-card:hover .post-card-image-cover { background-color:rgba(0,0,0,0.15); }
a.post-card:hover .post-card-content-more { color:var(--cty-ahover); }


/* Post Detail */

.sharing-box { display:table; margin:10px auto; }
.sharing-label { display:table-cell; text-align:center; padding:10px; }
.sharing-icons { display:table-cell; text-align:center; }
.sharing-square { display:inline-block; text-align:center; margin:10px; }
.sharing-square a { display:inline-block; width:40px; height:40px; font-size:18px; line-height:38px; text-align:center;  }
.sharing-square a { text-decoration:none; color:white; background-color:var(--cty-alink); border:none; transition: all 0.15s linear 0s;}
.sharing-square a:hover { color:white; background-color:var(--cty-ahover); }
.share-cta { font-size:14px; line-height:16px; letter-spacing:0.100rem; font-weight:700; text-transform:uppercase; }
@media all and (min-width: 992px) {
	.sharing-box { display:block; margin-top:0px; }
	.sharing-label { display:block; }
	.sharing-icons { display:block; }
	.sharing-square { display:block; margin:20px 10px; }
}


/* over ride MC styles */

#mc_embed_signup .brandingLogo { display:none; }

/* MailChimp Form Embed Code - Classic - 12/17/2015 v10.7 */
#mc_embed_signup form {display:block; position:relative; text-align:left; margin: 20px; }
#mc_embed_signup h2 {font-weight:bold; padding:0; margin:15px 0; font-size:1.4em;}
#mc_embed_signup input {border: 1px solid #ABB0B2; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;}
#mc_embed_signup input[type=checkbox]{-webkit-appearance:checkbox;}
#mc_embed_signup input[type=radio]{-webkit-appearance:radio;}
#mc_embed_signup input:focus {border-color:#333;}
#mc_embed_signup .button {clear:both; background-color: #aaa; border: 0 none; border-radius:4px; transition: all 0.23s ease-in-out 0s; color: #FFFFFF; cursor: pointer; display: inline-block; font-size:15px; font-weight: normal; height: 32px; line-height: 32px; margin: 0 5px 10px 0; padding: 0 22px; text-align: center; text-decoration: none; vertical-align: top; white-space: nowrap; width: fit-content; width: -moz-fit-content;}
#mc_embed_signup .button:hover {background-color:#777;}
#mc_embed_signup .small-meta {font-size: 11px;}
#mc_embed_signup .nowrap {white-space:nowrap;}

#mc_embed_signup .mc-field-group {clear:left; position:relative; width:96%; padding-bottom:3%; min-height:50px; display:grid; }
#mc_embed_signup .size1of2 {clear:none; float:left; display:inline-block; width:46%; margin-right:4%;}
* html #mc_embed_signup .size1of2 {margin-right:2%; /* Fix for IE6 double margins. */}
#mc_embed_signup .mc-field-group label {display:block; margin-bottom:3px;}
#mc_embed_signup .mc-field-group input {display:block; width:100%; padding:8px 0; text-indent:2%;}
#mc_embed_signup .mc-field-group select {display:inline-block; width:99%; padding:5px 0; margin-bottom:2px;}
#mc_embed_signup .mc-address-fields-group {display:flex; flex-direction:row; justify-content:space-evenly; width:96%; gap:15px;}

#mc_embed_signup .datefield, #mc_embed_signup .phonefield-us{padding:5px 0;}
#mc_embed_signup .datefield input, #mc_embed_signup .phonefield-us input{display:inline; width:60px; margin:0 2px; letter-spacing:1px; text-align:center; padding:5px 0 2px 0;}
#mc_embed_signup .phonefield-us .phonearea input, #mc_embed_signup .phonefield-us .phonedetail1 input{width:40px;}
#mc_embed_signup .datefield .monthfield input, #mc_embed_signup .datefield .dayfield input{width:30px;}
#mc_embed_signup .datefield label, #mc_embed_signup .phonefield-us label{display:none;}

#mc_embed_signup .indicates-required {text-align:right; font-size:11px; margin-right:4%;}
#mc_embed_signup .asterisk {color:#e85c41; font-size:150%; font-weight:normal; position:relative; top:5px;}     
#mc_embed_signup .clear {clear:both;}
#mc_embed_signup .foot {display:grid; grid-template-columns: 3fr 1fr; width:96%; align-items: center;}

@media screen and (max-width:400px) {#mc_embed_signup .foot {display:grid; grid-template-columns: 1fr; width:100%; align-items: center;}}

@media screen and (max-width:400px) {#mc_embed_signup .referralBadge {width:50%;}}

#mc_embed_signup .brandingLogo {justify-self:right;}
@media screen and (max-width:400px) {#mc_embed_signup .brandingLogo {justify-self:left;}}

#mc_embed_signup .mc-field-group.input-group ul {margin:0; padding:5px 0; list-style:none;}
#mc_embed_signup .mc-field-group.input-group ul li {display:block; padding:3px 0; margin:0;}
#mc_embed_signup .mc-field-group.input-group label {display:inline;}
#mc_embed_signup .mc-field-group.input-group input {display:inline; width:auto; border:none;}

#mc_embed_signup div#mce-responses {float:left; top:-1.4em; padding:0em .5em 0em .5em; overflow:hidden; width:90%; margin: 0 5%; clear: both;}
#mc_embed_signup div.response {margin:1em 0; padding:1em .5em .5em 0; font-weight:bold; float:left; top:-1.5em; z-index:1; width:80%;}
#mc_embed_signup #mce-error-response {display:none;}
#mc_embed_signup #mce-success-response {color:#529214; display:none;}
#mc_embed_signup label.error {display:block; float:none; width:auto; margin-left:1.05em; text-align:left; padding:.5em 0;}
#mc_embed_signup .helper_text {color: #8d8985; margin-top: 2px; display: inline-block; padding: 3px; background-color: rgba(255,255,255,0.85); -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; font-size: 14px; font-weight: normal; z-index: 1;}

#mc-embedded-subscribe {clear:both; width:auto; display:block; margin:1em 0 1em 5%;}
#mc_embed_signup #num-subscribers {font-size:1.1em;}
#mc_embed_signup #num-subscribers span {padding:.5em; border:1px solid #ccc; margin-right:.5em; font-weight:bold;}

#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error {display:inline-block; margin:2px 0 1em 0; padding:3px; background-color:rgba(255,255,255,0.85); -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; font-size:14px; font-weight:normal; z-index:1; color:#e85c41;}
#mc_embed_signup #mc-embedded-subscribe-form input.mce_inline_error {border:2px solid #e85c41;}






/* before after slider */

.slim-jim { margin:1rem 0 1.5rem 0; }

.slim-before-caption, .slim-after-caption {
  position: absolute;
  margin-top: -15px;
  top: 50%;
  background-color: rgba(255,255,255,.9);
  color: #333;
  padding: 5px 10px;
  left: 10px;
  text-decoration: none;
  opacity: .8;
  -webkit-transition: opacity .2s ease-in-out;
  -moz-transition: opacity .2s ease-in-out;
  -o-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
  color:#fff; background-color:rgba(0,0,0,0.5); font-family: 'halyard-text', sans-serif; font-size:14px; line-height:16px;
}
.slim-after-caption {
  left: auto;
  right: 10px;
}

/* swiper carousel */

.swiper-container { margin:1.0rem 0 1.5rem 0; position:relative; }

.swiper-slide { }
.swiper-slide-image-ratio { position:relative; width:100%; padding-bottom:57%; background-color:#eee; background-position:center center; background-size:cover; }

.swiper-slide-caption { position:absolute; left:0px; bottom:0px; color:#fff; background-color:rgba(0,0,0,0.5); font-size:14px; line-height:16px; padding:6px 12px; }

.swiper-button-custom-prev, .swiper-button-custom-next {
display: block;
position: absolute;
z-index: 10;
top:50%;
left:-20px;
background-color: #c6a732;
border: 0;
color: #000;
padding: 0 !important;
font-size: 20px;
line-height: 40px;
height: 40px;
width: 40px;
margin-top: -20px;
text-align: center;
border-radius: 20px;
transition: all 250ms ease;
}
.swiper-button-custom-next {
  left:auto; right:-20px;;
}


.swiper { padding:0 0 24px 0; }

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  top: auto;
  bottom:0px;
  left: 0;
  width: calc(100vw-40px);
  height:24px;
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: .3s opacity;
  transform: translate3d(0,0,0);
  z-index: 10;
  background-color:#222;
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));
  height: var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius,50%);
  background: #fff;
  opacity: 0.5;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: #fff;
}




/* meetings */

h3.meeting-name { font-family: 'alternate-gothic-atf', sans-serif; color:#2a313c; font-weight:500; letter-spacing: 0.025rem; font-size:28px; line-height:1.1; }





ul.meetings-list { padding:0; margin:0; list-style:none; }
ul.meetings-list li { padding:0; margin:0 0 4px 0; list-style:none; }
ul.meetings-list li a { display:block; background-color:#ebf8fd; border-radius:2px; padding:6px 16px; font-weight:600; }
ul.meetings-list li a:hover { background-color:#e0f0f8; }

.board-card { background-color:#ebf8fd; width:100%; height:100%; padding:24px; }
.board-card h2 { font-size:19px; margin-top:0px; }
.board-card h3 { font-size:16px; line-height:1.5; }
.board-card p { font-size:16px; }
.board-card p b { font-weight:600; }





.bcal { margin-top:30px; }
.bcal-header { width:100%; background-color:#e0f0f8; padding:6px 12px; border:1px solid #fff; font-size:17px; line-height:24px; font-weight:700; }
.bcal-header-prev { display:inline-block; padding: 8px; }
.bcal-header-current { display:inline-block; padding:0 8px; }
.bcal-header-next { display:inline-block; padding:0 8px; }
.bcal-row { }
.bcal-cell { width:100%; background-color:#ebf8fd; border:1px solid #fff; }
.bcal-cell span { display:block; padding:6px 12px; background-color:#e0f0f8; font-size:15px; font-weight:600; }
.bcal-cell ul { padding:6px 12px; margin:0; }
.bcal-cell ul li { padding:0; margin:0 0 8px 16px; font-size:16px; font-weight:500;  }
.bcal-cell-blank { display:none; }
.bcal-cell-empty { display:none; }
@media all and (min-width: 992px) {
  .bcal-cell-blank { display:table-cell; opacity:0.5; }
  .bcal-cell-empty { display:table-cell; }
  .bcal-header { text-align:center; border-bottom:2px; }
  .bcal-row { display:table; width:100%; }
  .bcal-cell { display:table-cell; width:14.3%; height:100px; vertical-align:top; }
  .bcal-cell ul li { list-style:none; margin:0 0 8px 0px; font-size:15px;}
}


/* accordian raw */

.accordion-not { 
  width:100%;
  border:2px solid #f2f2f2;
  border-radius:calc(0.375rem - 1px);
  padding: 1rem 1.25rem;
  margin-bottom:1.5rem;
}
.accordion-not h2 { margin-top:4px; }

.accordion {
  --bs-accordion-color: red;
  --bs-accordion-bg: inherit; 
  --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
  --bs-accordion-border-color: #f2f2f2;
  --bs-accordion-border-width: 2px;
  --bs-accordion-border-radius: 0.375rem;
  --bs-accordion-inner-border-radius: calc(0.375rem - 1px);
  --bs-accordion-btn-padding-x: 1.25rem;
  --bs-accordion-btn-padding-y: 1rem;
  --bs-accordion-btn-color: var(--cty-alink);
  --bs-accordion-btn-bg: inherit;
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23cb255a'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23cb255a'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-border-color: red; /* #86b7fe */;
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-accordion-body-padding-x: 1.25rem;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: inherit; /*#0c63e4; */
  --bs-accordion-active-bg: inherit; /* #e7f1ff; */
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
  font-size: 18px;
  font-weight:700;
  color: var(--bs-accordion-btn-color);
  text-align: left;
  background-color: var(--bs-accordion-btn-bg);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: var(--bs-accordion-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: var(--bs-accordion-active-color); 
  background-color: var(--bs-accordion-active-bg);
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}
.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-active-icon);
  transform: var(--bs-accordion-btn-icon-transform);
}
.accordion-button::after {
  flex-shrink: 0;
  width: var(--bs-accordion-btn-icon-width);
  height: var(--bs-accordion-btn-icon-width);
  margin-left: auto;
  content: "";
  background-image: var(--bs-accordion-btn-icon);
  background-repeat: no-repeat;
  background-size: var(--bs-accordion-btn-icon-width);
  transition: var(--bs-accordion-btn-icon-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  border-color: inherit; /* var(--bs-accordion-btn-focus-border-color); */
  outline: 0;
  box-shadow: inherit; /* var(--bs-accordion-btn-focus-box-shadow); */
}

.accordion-header {
  margin-bottom: 0;
}

.accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
.accordion-item:first-of-type {
  border-top-left-radius: var(--bs-accordion-border-radius);
  border-top-right-radius: var(--bs-accordion-border-radius);
}
.accordion-item:first-of-type .accordion-button {
  border-top-left-radius: var(--bs-accordion-inner-border-radius);
  border-top-right-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}
.accordion-item:last-of-type .accordion-button.collapsed {
  border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
  border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:last-of-type .accordion-collapse {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-body {
  padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}

/* my changes */

.accordion { width:100%; }
h2.accordion-header { margin-top:0px; } 