
/* 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; }


/* fauxgram */


.fauxgram { width:100%; background-color:var(--cms-orange); }

.fauxgram-row { width:100%; display:flex; }
.fauxgram-follow { width:100%; }
.fauxgram-follow a { display:flex; width:100%; height:100%; padding:60px 30px; align-items:center; text-decoration:none; color:var(--cms-black); }
.fauxgram-follow a:hover { color:var(--cms-black); text-decoration:none; }
.fauxgram-follow a div { width:100%; text-align:center; }

.fauxgram-icon { font-size:46px; line-height:1;  margin-bottom:0.75rem; color:var(--cms-black); }
.fauxgram-headline { font-weight:700; font-size:1.4rem; line-height:1.2; margin-bottom:0.75rem; text-wrap:balance; }
.fauxgram-handle { font-weight:700; font-size:0.8rem; line-height:1.2; text-wrap:balance; }

.fauxgram-cell { width:50%; }
.fauxgram-img { width:100%; padding-bottom: 133%; background-size:cover; background-position:center center; }

@media all and (min-width: 992px) {
  .fauxgram { width:100%; display:flex; }
  .fauxgram-row { width:40%; }
  .fauxgram-follow { width:20%; }
}



/* sp-subscribe-callout */

.sp-subscribe-callout { 
  width:100%;
  height:auto;
  min-height:400px;
  background-color:white;
  background-image:url('https://img.ctykit.com/cdn/mn-saint-paul/signup.png');
  background-position:center center;
  background-size:cover;
}
.sp-subscribe-hold {
  width:100%;
  text-align:center;
  color:var(--cms-brick);
}
@media all and (min-width: 992px) {
  .sp-subscribe-hold { margin-top:60px; }
  .sp-subscribe-callout { min-height:600px; }
}








/* sp-home-hero */

.sp-home-hero { 
  position:relative;
}
.sp-home-hero-image { 
  position:relative;
  border:24px solid white;
  aspect-ratio: 4 / 3;
  background-position:center center;
  background-size:cover;
}
.sp-home-hero-video {
  position: relative;
  border:24px solid white;
  aspect-ratio: 4 / 3;
  display: flex;
  min-height: inherit;
  align-items: center; /* center vertically */
  justify-content: center; /* center horizontally */
  overflow: hidden;
}
.sp-home-hero-video-video {
  position: absolute;
  width: 100%; 
  height:100%; 
  object-fit: cover; 
  object-position: center;
}

.sp-home-hero-logo { 
  position:absolute;
  top:0px;
  left:0px;
  width:300px;
  height:auto;
}
.sp-home-hero-text {
  padding:0 24px 24px 24px;
  text-align:left;
  text-wrap:balance;
  color:var(--cms-brick);
  font-weight:700;
  font-size:1.25rem;
}
@media all and (min-width: 992px) {
  .sp-home-hero-image { border-width:60px; aspect-ratio: 3 / 2; border-top-width:180px; }
  .sp-home-hero-video { border-width:60px; aspect-ratio: 3 / 2; border-top-width:180px; }
  .sp-home-hero-logo { width:45%; }
  .sp-home-hero-text { 
    position:absolute;
    bottom:0px;
    right:0px;
    background-color:white;
    padding:30px 40px;
    width:55%;
    height:auto;
  }
}



/* sp bento stats */

.bento-stat {
  padding:4rem 3rem;
}
.bento-stat span.num { display:block; font-weight:800; font-size:2rem; line-height:1.2; }
.bento-stat span.label { display:block; font-family: 'sentinel', sans-serif; font-size:1.3rem; line-height:1.2; }
@media all and (min-width: 992px) {
  .bento-stat span.num { font-size:3rem; line-height:1.2; }
  .bento-stat span.label { font-size:1.3rem; line-height:1.2; }

}

.bento-image {
  width:100%;
  height:100%;
  background-position:center center;
  background-size:cover;
}





/* banner */

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




/* detail header */

.detail-header { width:100%; background:#fafafa; border-bottom: 1px solid #eee; }
.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); text-decoration:none; }
a.btn-header-groups:hover { color:var(--cty-ahover); border-color:var(--cty-ahover); text-decoration:none; }





/* css for modal backdrop */

.modal-backdrop { background-color: rgb(0,0,0); }
.modal-backdrop.show { opacity:0.75; }

#myModal .modal-body h1 { margin-top:1rem; }
#citylightModal .modal-body h1 { margin-top:1rem; }



/* basic lightbox */

.lightbox-wrap { margin-top:1.5rem; }
.lightbox-squares { width:100%; padding-bottom:100%; background-color:var( --cty-bg-card); background-position:center center; background-size:cover; }



/* solr search */

.site-search-nav { display:table; margin:24px 0px; }
.site-search-nav-control { display:table-cell; vertical-align:middle; padding-right:16px; border:0px solid #eee; }
.site-search-nav-counter { display:table-cell; font-style:italic; padding-right:16px; border:0px solid #eee; }

ul.site-search { margin:10px 0px; padding:0; list-style-type:none; }
ul.site-search li { margin-bottom:16px; }
ul.site-search li span.solr_type { display:block; text-transform:uppercase; font-size:12px; line-height:18px; font-weight:700; letter-spacing:0.100rem; }
ul.site-search li a { font-size:20px; line-height:30px; }
ul.site-search li span.solr_highlight { display:block; font-size:15px; line-height:22px; }
ul.site-search li span.solr_highlight em { font-style:normal; font-weight:700; }


/* cafe-weather */

.cafe-weather { width:100%; max-width:300px; border:1px solid#666; border-radius:1rem; padding:1rem 2rem; margin:1.5rem 0; }
.cafe-weather-today { text-align:center; color:inherit; font-weight: 500; font-size:1rem; line-height:1.1; letter-spacing:0.050rem; text-transform:uppercase; }
.cafe-weather-divider { width:100%; height:2px; opacity:0.25; background-color:#aaa; margin:0.5rem 0; }
.cafe-weather-current { text-align:center; color:inherit; font-weight: 400; font-size:1rem; line-height:1.1; }
.cafe-weather-future { text-align:center; color:inherit; font-weight: 400; font-size:1.5rem; line-height:1.1; }



/* image roll */

.image-roll-hold { background-color:#eee; }

.imagerollSwiper .swiper-wrapper { width:100%; height:500px; position:relative; }

.imagerollSwiper .swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.imagerollSwiper .swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.imagerollSwiper .swiper-navigation {
  position: absolute;
  z-index: 999;
  bottom: 30px;
  right: 30px;
  background-color: black;
  border-radius: 30px;
  width: 96px;
  height: 48px;
}

.swiper-roll-prev, .swiper-roll-next { display:block; width:48px; height:48px; font-size:24px; line-height:48px; text-align:center; float:left; color:white; opacity:0.85; }

.swiper-roll-prev:hover { opacity:1; }
.swiper-roll-next:hover { opacity:1; }



/* sharing-box */

.sharing-box { display:table; margin:1rem 0; }
.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(--cms-dark-gray); border:none; transition: all 0.15s linear 0s;}
.sharing-square a:hover { color:white; background-color:var(--cms-black); }
.share-cta { font-size:14px; line-height:16px; letter-spacing:0.100rem; font-weight:700; text-transform:uppercase; }
@media all and (min-width: 9999999px) {
	.sharing-box { display:block; margin-top:0px; }
	.sharing-label { display:block; }
	.sharing-icons { display:block; }
	.sharing-square { display:block; margin:20px 10px; }
}



