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



/* boulder-home-video */

.boulder-home-video {
  position: relative;
  display: flex;
  min-height: inherit;
  align-items: center; /* center vertically */
  justify-content: center; /* center horizontally */
  overflow: hidden;
  width:100%;
  height:calc(100vh - 100px);
  max-height:700px;
}

.boulder-home-video-video {
  position: absolute;
  width: 100%; 
  height:100%; 
  object-fit: cover; 
  object-position: center;
}

.boulder-home-video-cover {
  position: absolute;
  width: 100%; 
  height:100%; 
  background-color:rgba(0,0,0,0.25);
}

.boulder-home-video-content {
  position: relative;
  text-align: center;
  padding: 3rem;
  width:100%;
  max-width: 1280px;
}
.boulder-home-video-content h1 {
  font-family: 'source-serif-4', serif;
  font-weight:700;
  font-size:3rem;
  line-height:1.2;
  color:white;
  text-shadow:1px 1px 1px black;
}

.boulder-home-video-control { position:absolute; z-index:102; bottom:20px; right:20px; width:40px; height:40px; background-color:rgba(0,0,0,0.7); border-radius:50%; }
.boulder-home-video-control button { 
  display:block; 
  width:40px; 
  font-size:16px; 
  line-height:40px; 
  text-align:center; 
  color:#fff;
  border:0;
  background:transparent; 
  margin:0;
  padding:0;
}


@media all and (min-width: 992px) {
  .boulder-home-video { height:700px; max-height:700px; }
  .boulder-home-video-content { padding-top: 5rem; }
  .boulder-home-video-content h1 { font-size:3.25rem; } 
}



/* b-subscribe */

.b-subscribe {
  background-color:black;
  position: relative; 
  overflow: hidden;
}
.b-subscribe img {
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%; 
  object-fit: cover; 
  z-index: 0;
}
.b-subscribe-cover {
  position: absolute; 
  width: 100%; 
  height: 100%; 
  background: rgba(0,0,0,0.4); 
  z-index: 1;
}
.b-subscribe-content {
  position: relative; 
  z-index: 2;
  width:100%;
  max-width:700px;
  margin:0 auto;
  padding:100px 40px;
  text-align:center;
}
.b-subscribe-headline {
  color:white;
  font-weight: 800;
  font-size:2.5rem;
  text-shadow: 0px 0px 2px #000;
  text-wrap:balance;
}
.b-subscribe-teaser {
  color:white;
  font-weight: 500;
  font-size:1.15rem;
  text-shadow: 0px 0px 2px #000;
  text-wrap:balance;
  margin-bottom:1rem; 
}
.b-subscribe form {
  width:100%;
  max-width:360px;
  margin:0 auto; 
}
.b-subscribe form button { margin-top:0.5rem; }




/* featured events slider */



.bvents { margin:0; position:relative; }

.bvents-next, .bvents-prev {
  display: flex;
  position: absolute;
  z-index: 10;
  top:50%;
  left:-22px;
  border: 0;
  color: white;
  background-color: var(--cms-blue);
  padding: 0 !important;
  font-size: 16px;
  line-height: 36px;
  height: 36px;
  width: 36px;
  margin-top: -18px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: all 250ms ease;
  }
  .bvents-next {
    left:auto; right:-22px;
  }
@media all and (min-width: 992px) {
  .bvents-next, .bvents-prev { top:50%; }
  .bvents-next { left:-52px; top:calc(50% - 26px); }
  .bvents-prev { left:-52px; top:calc(50% + 26px); }
}





/* bento video v2 */

.bvid-cell { 
  background-color:var(--cms-merlot);
}

@media (min-width: 992px) {
  .bvid-cell-intro { aspect-ratio:9/16; }
}

.bvid-cell a { 
  display:block;
  background-color:black; color:white; 
  width:100%;
  aspect-ratio:9/16;
  position:relative;
  text-decoration:none;
  border-radius:0px;
  overflow:hidden;
  box-shadow: 0px 0px 8px 0px rgba(177,158,144,0.45);
  transition: all 200ms ease;
}
.bvid-cell a:hover { 
  text-decoration:none; 
  box-shadow: 0px 0px 8px 0px rgba(177,158,144,0.85);
}

.bvid-cell-image {
  position:absolute;
  z-index:1;
  width:100%;
  height:100%;
  background-size:cover;
  background-position:center center;
}

.bvid-cell-video {
  position:relative;
  z-index:2;
  width:100%;
  height:100%;
  background-size:cover;
  background-position:center center;
  overflow:hidden;
  will-change: transform; 
  transform: translateZ(0); 
}
.bvid-cell-video video {
 position: absolute;
  z-index:3;
  width: 100%; 
  height:100%; 
  object-fit: cover; 
  object-position: center;
}

.bvid-cell-cover {
  position: absolute;
  z-index:4;
  width: 100%; 
  height:100%; 
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.5) 0%,
    rgba(0, 0, 0, 0.3) 30%,
    rgba(0, 0, 0, 0) 60%
  );
  pointer-events: none;
}

.bvid-cell-content {
  position:absolute;
  z-index:9;
  pointer-events: none;
  bottom:0px;
  left:0px;
  width:100%;
  height:auto;
  color:white;
  padding:1rem;
  border-left:0px solid white;
}

.bvid-cell-headline {
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.2;
  margin-bottom: 0.25rem;
  text-wrap: balance;
  text-shadow: 0px 0px 1px #000;
  text-transform:none;
  letter-spacing:0.010rem;
}
.bvid-cell-line {
  width:60px; 
  height:2px;
  background-color:white;
  margin:0.75rem 0;
}
/*
.bvid-cell a .bvid-cell-line { width:60px; transition: all 1s ease; }
.bvid-cell a:hover .bvid-cell-line { width:80px; }
*/

.bvid-cell-text {
  font-family: 'source-serif-4', serif;
  font-weight:500; 
  font-size:1rem;
  line-height: 1.3;
  text-wrap: balance;
  text-shadow: 0px 0px 1px #000;
}

.bvid-cell-title {
  background-color:var(--cms-merlot);
  color:white;
  padding:2rem 1rem;
  display:flex;
  flex-direction: column;
  align-items: center;   
  justify-content: center; 
  width:100%;
  height:100%;
}
.bvid-cell-title-sm {
  font-weight: 400;
  font-size: 0.8rem;
  line-height: 1.1;
  text-wrap: balance;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:0.150rem;
}
.bvid-cell-title-lg {
  font-family: 'source-serif-4', serif;
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.1;
  text-wrap: balance;
  text-align:center;
  text-transform:none;
  letter-spacing:0rem;
  margin-top:10px;
  margin-bottom:20px;
}





/* bento video */

.bv-grid {
  display: flex;
  gap: 24px;
  flex-direction: column;
}

.bv-col {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 24px;
}

@media (min-width: 768px) {
  .bv-grid {
    max-width:1098px;
    margin:0 auto;
    flex-direction: row;
    align-items: center;
  }
}

.bv-cell { box-shadow: 0px 0px 8px 0px rgba(177,158,144,0.45); }
.bv-cell-short { aspect-ratio:4/5; }
.bv-cell-tall { aspect-ratio:9/16; }

.bv-cell a { 
  display:block;
  background-color:black; color:white; 
  width:100%;
  height:100%;
  position:relative;
  text-decoration:none;
  border-radius:0px;
  overflow:hidden;
}
.bv-cell a:hover { text-decoration:none; }

.bv-cell-image {
  position:absolute;
  z-index:1;
  width:100%;
  height:100%;
  background-size:cover;
  background-position:center center;
}

.bv-cell-video {
  position:relative;
  z-index:2;
  width:100%;
  height:100%;
  background-size:cover;
  background-position:center center;
  overflow:hidden;
  will-change: transform; 
  transform: translateZ(0); 
}
.bv-cell-video video {
 position: absolute;
  z-index:3;
  width: 100%; 
  height:100%; 
  object-fit: cover; 
  object-position: center;
}

.bv-cell-cover {
  position: absolute;
  z-index:4;
  width: 100%; 
  height:100%; 
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.5) 0%,
    rgba(0, 0, 0, 0.3) 30%,
    rgba(0, 0, 0, 0) 60%
  );
  pointer-events: none;
}

.bv-cell-content {
  position:absolute;
  z-index:9;
  pointer-events: none;
  bottom:0px;
  left:0px;
  width:100%;
  height:auto;
  color:white;
  padding:1rem;
  border-left:0px solid white;
}

.bv-cell-headline {
  font-weight: 800;
  font-size: 0.9rem;
  line-height: 1.3;
  margin-bottom: 0.25rem;
  text-wrap: balance;
  text-shadow: 0px 0px 2px #000;
  text-transform:uppercase;
  letter-spacing:0.090rem;
}
.bv-cell-text {
  font-family: 'source-serif-4', serif;
  font-weight:600; 
  font-size:0.8rem;
  line-height: 1.3;
  text-wrap: balance;
  text-shadow: 0px 0px 2px #000;
}

.bv-cell-title {
  background-color:var(--cms-merlot);
  color:white;
  padding:1rem;
  display:flex;
  flex-direction: column;
  align-items: center;   
  justify-content: center; 
  width:100%;
  height:100%;
}
.bv-cell-title-sm {
  font-weight: 400;
  font-size: 0.8rem;
  line-height: 1.1;
  text-wrap: balance;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:0.150rem;
}
.bv-cell-title-lg {
  font-family: 'source-serif-4', serif;
    font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.1;
  text-wrap: balance;
  text-align:center;
  text-transform:none;
  letter-spacing:0rem;
  margin-top:10px;
  margin-bottom:20px;
}






/* basic history gallery */

.timeline-hold { margin:50px 0px; background:url('https://img.ctykit.com/cdn/co-boulder/history-bg-stripe.svg') center center repeat-y; background-size:3px 1px; }
.timeline-begins { width:100%; height:12px; background:url('https://ctycms.com/co-boulder/history-bg-circle.svg') center center no-repeat; background-size:14px 12px; }
.timeline-ends { width:100%; height:12px; background:url('https://ctycms.com/co-boulder/history-bg-circle.svg') center center no-repeat; background-size:14px 12px; }
.timeline-table { display:block; width:100%; margin:40px 0px; }
.timeline-row { display:block; width:100%; }
/*
.timeline-row-even { }
.timeline-row-odd { }
*/
.timeline-cell-image { display:block; width:100%; padding:24px; }
.timeline-cell-text { display:block; width:100%; text-align:center; background: url('https://img.ctykit.com/cdn/co-boulder/texture-light.jpg'); padding:12px 24px; border: 1px solid #dec8bc; }
.timeline-cell-text-desktop { display:none; width:100%; text-align:center; background: url('https://img.ctykit.com/cdn/co-boulder/texture-light.jpg'); padding:12px 24px; border: 1px solid #dec8bc; }
.timeline-cell-text-mobile { display:block; width:100%; text-align:center;background: url('https://img.ctykit.com/cdn/co-boulder/texture-light.jpg'); padding:12px 24px; border: 1px solid #dec8bc; }
@media all and (min-width: 992px) {
	.timeline-table { display:table; width:100%; margin:50px 0px; }
	.timeline-row { display:table-row; width:100%; vertical-align:top; }
	.timeline-cell-image { display:table-cell; width:60%; vertical-align:middle; }
	.timeline-cell-text { display:table-cell; width:40%; vertical-align:middle; padding-left:40px; border:0px; }
	.timeline-cell-text-desktop { display:table-cell; width:30%; vertical-align:middle; padding-right:40px; border:0px; }
	.timeline-cell-text-mobile { display:none; border:0px; }
}









/* explore landing */

/*
.bento-explore-west-box { display:block; width:100%; height:400px; background:url('https://img.ctykit.com/cdn/co-boulder/images/west-end-shopping.jpg') center center no-repeat;
 background-size:cover; border:4px solid #fff; margin-top:16px;}
*/

.bento-explore-table { display:block; }
.bento-explore-row { display:block; }
.bento-explore-west { display:block; height:380px; background:url('https://img.ctykit.com/cdn/co-boulder/images/west-end-shopping.jpg') center center no-repeat; background-size:cover; }
.bento-explore-central { display:block; }
.bento-explore-east { display:block; height:380px; background:url('https://img.ctykit.com/cdn/co-boulder/images/east-end-dining.jpg') center center no-repeat; background-size:cover; }

.bento-explore-central-table { display:block; }
.bento-explore-pearl-row { display:block; border-top:1px solid var(--cms-cream-medium); }
.bento-explore-pearl { display:block; height:320px; background:url('https://img.ctykit.com/cdn/co-boulder/images/tulip_e11.jpg') center center no-repeat; background-size:cover; }
.bento-explore-design-row { display:block; border-top:1px solid var(--cms-cream-medium); border-bottom:1px solid var(--cms-cream-medium); }
.bento-explore-design { display:block; height:200px; background:url('https://img.ctykit.com/cdn/co-boulder/images/tr:w-900/heady-bauer-2-2022.jpg') center center no-repeat; background-size:cover;}


@media all and (min-width:992px) {
	.bento-explore-table { display:table; width:100%; height:700px; }
	.bento-explore-row { display:table-row; width:100%; height:700px; }
	.bento-explore-west { display:table-cell; width:32%; height:700px; }
	.bento-explore-central { display:table-cell; width:36%; height:700px; vertical-align:top; border-right:1px solid var(--cms-cream-medium); border-left:1px solid var(--cms-cream-medium);}
	.bento-explore-east { display:table-cell; width:32%; height:700px; vertical-align:top; }		

	.bento-explore-central-table { display:table; width:100%; height:700px; }
	.bento-explore-pearl-row { display:table-row; width:100%; height:500px; border:0; }
	.bento-explore-pearl { display:table-cell; width:100%; height:500px; vertical-align:top; }
	.bento-explore-design-row { display:table-row; width:100%; height:200px; border:0; }
	.bento-explore-design { display:table-cell; width:100%; height:200px; vertical-align:top; border-top:1px solid var(--cms-cream-medium); }

}

.bento-explore-effect { display:table; width:100%; height:100%; background-color:rgba(0,0,0,0.25); 
  box-shadow: inset 0 0 190px rgba(0,0,0,0.5);
  transition: all 0.25s linear 0s;
}
		
.bento-explore-effect:hover { background-color:rgba(0,0,0,0.35); }		
		
.bento-explore-title { display:table-cell; width:100%; height:100%; text-align:center; vertical-align:middle; padding:40px;}
.bento-explore-title a { text-decoration:none; font-weight:500; font-size: 18px; line-height: 24px; text-shadow: 2px 2px 4px #000000;; letter-spacing: 1px; color:white; }
.bento-explore-title a:hover { text-decoration:none; }
.bento-explore-title a span { font-weight:800; }
.bento-explore-title a strong { font-weight:800; font-size: 28px; line-height: 36px; display:block; margin-bottom:4px;}




/* bands on the bricks */

.bob-hold { position:relative; display:block; margin-top:1.5rem; padding-top:45px; }
.bob-date { position:absolute; z-index:2; top:0; left:50%; margin-left:-35px; }
.bob-content { display:block; background-color: #fff; padding:42px 16px 16px 16px;
	box-shadow: 0px 5px 8px 0px rgba(177,158,144,1);
}
.bob-content p { font-family: 'source-serif-4', serif; }
.bob-content-name { font-weight:800; font-size:1.3rem; margin-top:2px; margin-bottom:0.25rem; text-align:center; }
.bob-content-opener { font-weight:700; font-size:0.9rem; text-transform:uppercase; letter-spacing:0.050rem; text-align:center; margin-bottom:0.25rem; }
.bob-content-body { margin-top:1rem; }
.bob-content-body p { font-size:1rem; }

.bob-date-box { display:inline-block; width:70px; height:70px; background-color:var(--cms-green); color:white; box-shadow: 0px 0px 8px 0px rgba(177,158,144,1); }
.bob-date-box span { display:block; text-align:center; font-weight:400; font-size: 0.8rem; line-height: 1; text-transform:uppercase; padding-top:14px; }
.bob-date-box b { display:block; text-align:center; font-weight:700; font-size: 1.5rem; line-height: 1; padding-bottom:10px; padding-top:4px; }

@media all and (min-width:768px) {
	.bob-hold { padding-top:20px; }
	.bob-date { position:absolute; z-index:2; top:0; left:0; margin-left:0px;}
	.bob-content { margin-left:20px; padding:16px 24px; }
	.bob-content-name { padding-left:50px; text-align:left; }
  .bob-content-opener { padding-left:50px; text-align:left; }
}






/* 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: #eee9e5 url('https://img.ctykit.com/cdn/co-boulder/texture-medium.jpg'); border-bottom: 1px solid white; }
.detail-header h1 { margin:0; }

p.header-groups { margin:1rem 0; font-family: 'avenir-next-lt-pro', sans-serif; font-size:0.9rem; font-weight:500; } 
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(16, 31, 171); }
.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; }
.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-green); border:none; transition: all 0.15s linear 0s;}
.sharing-square a:hover { color:white; background-color:var(--cms-green); }
.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; }
}




/* my boulder detail */

.itinerarybox {
  display:block;
  width:100%; 
  margin-top:1rem;
  padding:2rem; 	
  background-color:white; 
  box-shadow: 0px 5px 8px 0px rgba(177,158,144,0.25);
}

.itinerarybox h2 {
  font-size: 1rem;
  font-weight: 500;
  color: var(--cms-black);
  margin-bottom:0.25rem;
}

.itinerarybox p { 
  font-size:1rem;
  color:var(--cms-cream-dark); 
}


/* itinerary map */

.pd-wrap { padding:0; }

.pd-hold { display:block; background-color:white; max-width:1400px; margin: 0 auto; box-shadow: 0px 5px 8px 0px rgba(177,158,144,0.35); }
.pd-map { padding:0;}
.pd-list { padding:1.5rem; }
#perfect-day-map { width:100%; height:60vh; min-height:80px; background-color:#444; border:1px solid white;}

@media all and (min-width: 992px) { 
	.pd-wrap { padding:24px 24px 24px 24px; }
	.pd-map { width:50%; height:550px; float:right;}
	.pd-list { width:50%; height:550px; overflow-y:scroll; }
	#perfect-day-map { height:550px; } 
}

@media all and (min-width: 1200px) { 
	.pd-wrap { padding:60px 30px 60px 30px; }
	.pd-map { width:60%; height:750px; float:right;}
	.pd-list { padding:24px 40px; width:40%; height:750px; overflow-y:scroll; }
	#perfect-day-map { height:750px; } 
}


#perfecttable { margin:30px 0 20px 20px; }
#perfecttable tr { border-left:2px dashed #c6bdb6; vertical-align:top; z-index:1; }
#perfecttable tr:last-child { border-left:none; }
#perfecttable th { padding-right:16px; padding-bottom:16px; z-index:2;}
#perfecttable td { padding-top:0px; padding-bottom:16px; }
#perfecttable td p { margin-top:0px; }

#perfecttable th p {
  background: #7f3315;
  border-radius: 20px;
  color: #ffffff;
  display: inline-block;
  font-size:15px;
  line-height: 40px;
  text-align: center;
  width: 40px; 
  margin-left:-22px;
  margin-top:-2px;
  font-family: 'europa', sans-serif; font-weight:800;
  z-index:3;
}

#perfecttable a.pt-text-link { text-decoration:none; color:#000;}
#perfecttable a.pt-text-link:hover { text-decoration:none; color:#000;}

#perfecttable a.pt-text-link h4 { color:#b24310; margin-top:6px; margin-bottom:9px; font-size:21px; line-height:24px;}
#perfecttable a.pt-text-link h5 { color:#000; margin-top:0px; margin-bottom:3px; text-transform:uppercase;}

#perfecttable a.pt-image-link { display:block; margin:12px 0px 32px 0px;}