/* Table of Contents
   - - - - - - - - -
   TOP NAV HEADER
   FEATURED IMAGE
   ARTICLE
   	- article content
	- article header - title, byline, share, share top nav
	- article embedded content (iframes, oembed, videos, etc)
		- responsive videos
		- tweets
	- article embeded images
	- article topics
	- article right rail
   COMMENTS
   ADS
   HELPER STYLES
   PRINT STYLES
   CUSTOM TEMPLATE STYLES
    - full-width featured image template
	- sponsored template
	- editorial obits template
	- big read template
	- amp
	- full-width content
	- political cartoon
    BUFFALO MAGAZINE
    BUFFALO BRIDES
	RESPONSIVE STYLES
   - - - - - - - - -
 */

 /*** TOP NAV HEADER ***/
 .custom-logo {
	 max-height: 36px;
 }

 /*** FEATURED IMAGE ***/
.featured-image .featured-image-wrapper {
	max-height: 800px;
    overflow: hidden;
}
.featured-image img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
.featured-image-caption {
	font-weight: 400;
	margin-top: 10px;
	font-style: italic;
	font-family: 'Lora', Georgia, serif;
	color: #777;
	font-size: 16px;
}

/*** ARTICLE ***/
/* article content */
article {
    overflow: hidden;
}
.the-content-wrapper{
	width: calc( 100% - 340px);
	float: left;
}
.the-content p,
.the-content ul li{
	margin: 0 0 23px;
    color: #000;
    font-size: 16px;
    line-height: 25px;
}
.the-content img {
	width: 100%;
	height: auto;
}
div.the-content h3 {
	font-size: 20px;
	font-weight: 700;
}
.alignleft {
	margin-right: 20px;
	float: left;
	max-width: 300px;
}
.alignright {
	margin-left: 20px;
	float: right;
	max-width: 300px;
}
/* article header */
article header {
	margin-bottom: 20px;
}
.the-title {
	font-size: 50px;
    line-height: 55px;
	max-width: 90%;
	margin-bottom: 20px;
}
.byline {
	border-top: 1px solid #888;
	border-bottom: 1px solid #888;
	padding: 13px 0;
	font-style: italic;
	font-size: 16px;
}
.byline .author {
	font-weight: 700;
}
.byline .author a {
	font-weight: 700;
	color: #000 !important;
}
.paid-content-icon {
    margin-top: -5px;
    margin-right: 2px;
}
.time {
	color: #777;
}
.time .divider {
	padding: 0 7px;
	font-style: normal;
}
.share {
	margin: 24px 0 0 0;
}
.share li {
	padding: 5px 14px;
	color: #fff;
	text-transform: uppercase;
	font-family: Arial, sans-serif;
	font-style: normal;
	font-size: 12px;
	margin-right: 7px;
}

@media screen and (min-width:720px) {
	#social-modal .share li:nth-child(-n+3) {
		display: none;
	}
}

.share li i {
	padding: 0 4px;
	color: #fff;
	margin-top: 0px !important;
}
.share li label {
	margin-bottom: 0;
	cursor: pointer;
	cursor: hand;
}
.share li a {
	color: #fff !important;
	display: flex;
	justify-content: center;
	align-items: center;
}
.share .facebook {
	background: #3b5998;
}
.share .twitter {
	background: #55acee;
}
.share .email {
	background: #444;
}
.share .more {
	background: #888;
    padding: 5px;
}
.share .pinterest {
	background: #cc2127;
}
.share .linkedin {
	background: #007bb6;
}
.share .reddit {
	background: #ff5700;
}
.share .whatsapp {
	background: #25d366;
}
/* share modal window */
.lightbox-share {
	margin: 0;
	width: 250px;
	max-width: 250px;
}
.lightbox-share li {
	width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
	text-align: center;
	height: 42px;
	line-height: 34px;
}
.lightbox-share i {
    margin-top: -6px !important;
	font-size: 24px;
}
.lightbox-share i.fa-envelope {
	font-size: 18px;
    margin-right: 4px;
}
.modal-button {
  -webkit-transition: 0.3s all ease-in-out;
  transition: 0.3s all ease-in-out;
}
.close-share-modal {
	font-size: 24px;
	position: absolute;
    right: 20px;
    top: 20px;
	cursor: pointer;
	cursor: hand;
}
.state {
  position: absolute;
  top: 0;
  left: -100vw;
}
.state:checked ~ .content {
  -webkit-transform: none;
          transform: none;
}
.state:checked ~ .backdrop {
  bottom: 0;
  opacity: 1;
  z-index: 1;
}
.lightbox {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  height: 0;
  padding: 0 20px;
}
.lightbox .content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
  position: relative;
  z-index: 2;
  max-width: 500px;
  max-height: 95vh;
  margin: 20px auto;
  padding: 20px;
  background: #fff;
  -webkit-transform: translateY(-200%);
          transform: translateY(-200%);
  -webkit-transition: 0.3s -webkit-transform ease-in-out;
  transition: 0.3s -webkit-transform ease-in-out;
  transition: 0.3s transform ease-in-out;
  transition: 0.3s transform ease-in-out, 0.3s -webkit-transform ease-in-out;
  border: 1px solid rgba(0, 0, 0, 0.1);
}
.lightbox .header,
.lightbox .footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.lightbox .header .button:not(:first-child),
.lightbox .footer .button:not(:first-child) {
  margin-left: auto;
}
.lightbox .header {
	padding-bottom: 10px;
	max-width: 330px;
	margin: 0 auto;
}
.lightbox .footer {
  padding-top: 20px;
}
.lightbox .main {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  overflow: scroll;
  max-width: 330px;
  margin: 0 auto;
}
.lightbox .backdrop {
  position: fixed;
  z-index: -1;
  top: 0;
  right: 0;
  bottom: 100%;
  left: 0;
  opacity: 0;
  background: rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.3s opacity ease-in-out;
  transition: 0.3s opacity ease-in-out;
}
.close-modal {
	position: absolute;
    right: 20px;
    top: 10px;
    font-size: 24px;
	cursor: pointer;
    cursor: hand;
}
/* Share top navigation slide down */
.navbar-share-logo {
	display: none;
}
.share-top-nav {
	position: absolute;
    z-index: 10001;
    width: auto;
    right: 20px;
	background: #222;
}
.share-top-nav .top_nav {
	margin: 0;
    padding: 11px 0 12px 0;
}
.navbar-share-logo img {
	max-width: 225px;
	float: left;
	margin-right: 12px;
	padding-top: 7px;
}
/* article embedded content*/
/* -- responsive containers */
.responsive-embed,
.embed-container {
	overflow:hidden;
	padding-bottom:56.25%;
	position:relative;
	height:0;
	max-width: 100%;
}
.responsive-embed iframe,
.embed-container iframe {
	left:0;
	top:0;
	height:100%;
	width:100%;
	position:absolute;
}
.buffalo-news-oembed {
	border-bottom: 1px solid #888;
	border-top: 1px solid #888;
}
/* -- tweets */

/* -- oembed iframe */
iframe.wp-embedded-content {
	width: 100%;
	height: auto;
}
/* article embeded images */
.wp-caption-text {
    padding: 10px 0;
    font-size: 14px !important;
    line-height: 18px !important;
    font-style: italic;
	border-bottom: 1px solid #c9c8c8;
	color: #727272 !important;
}
/* article topics */
.topics,
.topics a {
	font-size: 16px;
	margin-bottom: 30px;
}
.topics:blank {
	margin-bottom: 0;
}
/* article right rail */
.right-rail {
	width: 300px;
	float: left;
	margin-left: 40px;
}

.hide {
    display: none;
}

/*** COMMENTS ***/
.comment .flex {
    /*max-width: 1220px;*/
	display:flex;
}
.comment-action {
	background: #555;
	color: #fff;
	padding: 4px 12px;
	cursor: pointer;
	cursor: hand;
	margin-right: 10px;
	flex: 1 1 auto;
}
.comment-count {
	background: #555;
	color: #fff;
	min-width: 40px;
	padding: 2px 16px;
	position: relative;
	text-align: center;
	flex: 0 0 auto;
}
.comment-count:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
	right: 5px;
	top: 28px;
	border: 4px solid;
	border-color: #555 transparent transparent #555;
}
.the-comments {
	display: none;
	padding-top: 15px;
}

/*** ADS ***/
.adStyling {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 1em 0;
    margin: 1em 0;
    text-align: center;
	clear: both;
}
.adStylingP {
    color: #777 !important;
    font-size: .75em !important;
    text-transform: uppercase;
    font-family: arial, sans-serif;
    margin-bottom: 8px !important;
}
.adStylingP:not(:first-child) {
    display: none;
}
.mid-leaderboard {
	border-bottom: 1px solid #ccc;
	margin: 20px 0;
	padding: 10px 0;
}

#bnAdBlock-boxmedium-1 {
    z-index: 2; /* Ensure it scrolls under the top navbar */
}

/*** HELPER STYLES ***/
.full-width {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}
.relative {
	position: relative;
}
.flex {
  display: flex;
}
.flex-100-percent {
	flex: 0 0 100%;
}
.display-none {
	display: none;
}
.display {
	display: inline-block;
}
#section-title {
    margin-left: 10px;
}
.fixed {
  position:fixed;
  top:0;
  z-index:99999;
}

.fixed {
  position:fixed;
  top:0;
  z-index:99999;
}

/*** RELATED STORY STYLES ***/
.article-wrapper .article-page-recommended-content-contianer {
	display: none;
}

/* Article Page Widget Wrapper */
.article-page-widget-wrapper {
	position: relative;
	margin-bottom: 20px;
	float: right;
	overflow: hidden;
	clear: both;
	margin-left: 20px;
}

.article-page-widget-wrapper p:empty {
	display: none;
}

@media print {
  /* bridal form */
  .page-id-2430189 .approximate_season,
  .page-id-2430189 .approximate_year,
  .page-id-2430189 .town-container,
  .page-id-2430189 .wny-town-container {
    display: block !important;
  }
}

/*** CUSTOM TEMPLATE STYLES ***/
/* full-width featured image template */
body.single-full-width-image #container-main {
	padding-top: 0;
	margin-top: 0;
}
/* sponsored template */
body.single-sponsored .the-title,
body.single-sponsored .the-content,
body.single-sponsored .sponsored-content,
body.single-sponsored .byline {
	font-family: 'Raleway', sans-serif !important;
}
body.single-sponsored .the-title {
	font-weight: 700
}
/* editorial obits template */
.inContentImage img {
	float: left;
	margin: 0 20px 0 0;
	width: 300px;
}

/* big read */
body.big-read #container-main {
	padding-top: 0;
	margin-top: 0;
}

body.big-read .article-page-widget-wrapper {
	margin-right: -320px;
}

body.big-read article > header,
body.big-read .the-content {
	width: 660px;
	margin-left: 300px;
}
body.big-read article > header > h1 {
	text-transform: uppercase;
}

body.big-read .the-content img.size-full,
body.big-read .the-content img.size-full + .wp-caption-text {
	width: 1260px;
    margin-left: -300px;
}

body.big-read .byline {
	border-bottom: 4px solid #222;
}

body.big-read .excerpt {
	font-size: 18px;
	bottom: 10px;
    position: relative;
    margin-bottom: 5px;
}

body.big-read .byline .author:nth-child(n+2) {
    margin-left: 25px;
}
/* amp */
body.amp h1 {
	-webkit-margin-before: 10px;
    -webkit-margin-after: 10px;
}
body.amp .article-wrapper article {
	padding: 10px;
}
body.amp .article-wrapper .wp-caption {
	width: 100%;
}
body.amp .the-content-wrapper {
	width: 100%;
}
body.amp .featured-image-caption {
	display: block;
	margin: 10px 10px 0px 10px;
	font-size: 14px;
	line-height: 19px;
}
body.amp .byline {
	font-size: 13px;
	line-height: 22px;
}
body.amp #header {
	background-color: #222;
	border-color: #080808;
	top: 0;
	border-width: 0 0 1px;
	position: fixed;
	right: 0;
	left: 0;
	z-index: 1030;
	min-height: 50px;
	margin-bottom: 20px;
	border: 1px solid transparent;
}
body.amp #header .brand { top: 25%; }
body.amp #header .brand img{
	display: block;
	margin: auto;
	z-index: 1;
}
body.amp .center_dfp {
	max-width: 700px;
	display: block;
	margin: auto;
}
body.amp .social-box {
	margin-top: 20px;
	width: 100%;
}
body.amp amp-social-share {
	max-width: 100px;
    padding: 2px 10px;
    max-height: 27px;
}
body.amp amp-social-share[type="pinterest"] {
}
body.amp .footer {
	background: #222;
	color: #fff;
	padding: 10px;
	clear: both;
	font-size: 12px;
}
body.amp .embed-container {
	position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%;
}
body.amp .embed-container iframe, .embed-container object, .embed-container embed {
	position: absolute; top: 0; left: 0; width: 100%; height: 100%;
}
/* full-width content */
body.single-full-width-content .the-content-wrapper {
	width: 100%;
    float: none;
}

/* political cartoon */
body.single-political-cartoon article {
		max-width: 930px;
		overflow: auto;
		margin: 0 auto;
}
body.single-political-cartoon .featured-image {
		max-width: 930px;
		margin: 0 auto;
}
body.single-political-cartoon .featured-image .featured-image-wrapper {
    max-height: 100%;
    overflow: visible;
}

/*** BUFFALO MAGAZINE STYLES ***/
body[data-section='buffalo-magazine'] #container-main {
    margin-top: 20px;
    padding: 20px;
    margin-bottom: 20px;
}
[data-section='buffalo-magazine'] #section-title {
    margin-left: 0;
}
[data-section='buffalo-magazine'] .article-wrapper,
[data-section='buffalo-magazine'] .title-font,
[data-section='buffalo-magazine'] .title-font a,
[data-section='buffalo-magazine'] .headline,
[data-section='buffalo-magazine'] .headline a,
[data-section='buffalo-magazine'] .featured-image-caption {
    font-family: 'EB Garamond', sans-serif;
}
[data-section='buffalo-magazine'] .article-wrapper {
    padding: 0;
}
[data-section='buffalo-magazine'] .title-font,
[data-section='buffalo-magazine'] .title-font a {
    font-weight: 600;
}
[data-section='buffalo-magazine'] .article-wrapper .the-content ul li {
    font-size: 20px !important;
		line-height: 29px !important;
}
[data-section='buffalo-magazine'] .article-wrapper .the-content p{
    font-size: 20px ;
		line-height: 29px ;
}
[data-section='buffalo-magazine'] .wp-caption .wp-caption-text {
    padding: 10px 0;
    font-size: 16px !important;
    line-height: 20px !important;
    font-style: italic;
    border-bottom: 1px solid #c9c8c8;
    color: #727272 !important;
}
[data-section='buffalo-magazine'] div.the-content h3 {
    font-size: 28px;
		line-height: 32px;
    font-weight: 700;
		font-family: 'EB Garamond', sans-serif;
}
[data-section='buffalo-magazine'] .comment {
    margin-bottom: 30px;
}
[data-section='buffalo-magazine'] #updatedTime {
    display: none;
}
[data-section='buffalo-magazine'] span.published {
    display: none
}

/*** BUFFALO BRIDES STYLES ***/
/* wedding planner form page --> change page ID to match live page ID */
.page-id-2430189 .planner-wrapper {
  max-width: 600px;
  margin: 0 auto;
  margin-bottom: 40px;
}
.page-id-2430189 .entry-content-image {
  width: 230px;
  height: auto;
}
.page-id-2430189 h3 {
  margin-bottom: 20px;
}
.page-id-2430189 li {
  margin-bottom: 12px;
}
.page-id-2430189 .nf-form-fields-required {
  padding-left: 35%;
  margin-bottom: 20px;
}
.page-id-2430189 .label-left .nf-field-label {
    text-align: left !important;
    width: 30%;
}
.page-id-2430189 .ninja-forms-field {
    border:  1px solid #ccc !important;
    padding: 5px 10px;
}
.page-id-2430189 .nf-field-element select option {
  font-family: Georgia, serif;
}
.page-id-2430189 .nf-error .ninja-forms-field {
  border: 0px !important;
  border-bottom: 1px solid #e80000 !important;
}
.page-id-2430189 hr.ninja-forms-field {
  margin-top: -40px;
  border: 0px !important;
  border-bottom: 1px solid #ccc !important;
}
.page-id-2430189 .nf-field .list-radio-wrap .nf-field-element li {
    float: left;
    display: inline-block;
    margin-right: 15px !important ;
  }
.page-id-2430189 .nf-before-form-content {
    display: none;
  }
.page-id-2430189 input:focus,
.page-id-2430189 select:focus,
.page-id-2430189 textarea:focus,
.page-id-2430189 button:focus {
    outline: none;
}
.page-id-2430189 input:-webkit-autofill,
.page-id-2430189 input:-webkit-autofill:hover,
.page-id-2430189 input:-webkit-autofill:focus,
.page-id-2430189 input:-webkit-autofill:active {
    transition: background-color 5000s ease-in-out 0s;
}
.page-id-2430189 .exact_wedding-date,
.page-id-2430189 .wny-town-container  {display: block; }
.page-id-2430189 .approximate_season,
.page-id-2430189 .approximate_year,
.page-id-2430189 .town-container {display: none; }

/*** RESPONSIVE STYLES ***/
@media only screen and (max-width: 1024px) {
   /*general layout*/
	/*.right-rail {
		display: none;
	}*/
    .right-rail.fluid-sponsored{
		display: block !important;
        width: 100%;
        margin-left: 0;
	}
	.the-content-wrapper {
		width: 100%;
		float: none;
		margin: 0 auto;
	}
	.the-content img.alignnone { /* full-width */
        width: 100vw;
	    position: relative;
	    left: 50%;
	    right: 50%;
	    margin-left: -50vw;
	    margin-right: -50vw;
	}
	/* obits template */
	body.editorial-obituary .inContentImage img  { /*overrides the default full-width seetings for .the-content img */
		margin: 0 20px 0 0;
		float: left;
		width: 300px;
		left: initial;
		right: initial;
	}
	/* big read */
	body.big-read .article-page-widget-wrapper {
		margin-right: 0px;
		margin-bottom: 20px;
	}
	body.big-read article > header,
	body.big-read .the-content,
	body.big-read .the-content img.size-full {
		width: 100%;
		margin-left: 0px;
	}
	body.big-read .byline .author {
	    margin-left: 0px !important;
	}
	body.big-read .byline {
		text-align: center;
	}
}

/* tablet */
@media only screen and (max-width: 991px) {
  /*sticky ad on mobile*/
  #bnAdBlock-boxmedium-1.fixed {
    position: initial;
  }
	/*share tools*/
	.share .facebook {
	    padding: 5px 8px !important;
	}
	.share .twitter {
	    padding: 5px 5px !important;
	}
	.share .email {
	    padding: 5px 5px !important;
	}
	.share-top-nav .top_nav {
		float: right;
	}
	.share-top-nav {
	    right: 10px;
	}
}

/* mobile */
@media only screen and (max-width: 767px) {
	/*override header to allow sharing tool drop down*/
   #header .brand {
	    left: 0px;
		width: 36%;
		height: 50%;
		top: 7px;
		position: absolute;
		text-align: center;
		margin-left: 45px;
		line-height: 35px;
   }
   .custom-logo {
	   float: left;
   }
	/*content*/
	.the-title {
		font-size: 42px !important;
	    line-height: 46px !important;
	}
	/*article embedded content*/
	/* -- tweets */
	.twitter-tweet {
	    float: none;
	    margin-right: 0px;
	    margin: 0 auto;
	}
	/* -- oembed buffalonews urls */
	.wp-embed {
	    padding: 0px !important;
	    font-size: 14px;
	    font-weight: 400;
	    line-height: 1.5;
	    color: #82878c;
	    background: #fff;
	    border: 0px !important;
	    -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.05);
	    box-shadow: 0 1px 1px rgba(0,0,0,.05);
	    overflow: auto;
	    zoom: 1;
	}
	.wp-embed, .wp-embed-share-input {
	    font-family: 'Lora',serif !important;
	}
	/*sharing tools*/
	.email.visible-xs span {
		display: inline-block !important;
	}
	/* default template */
	body.post-template-default .featured-image .featured-image-wrapper {
		width: 100vw;
	    position: relative;
	    left: 50%;
	    right: 50%;
	    margin-left: -50vw;
	    margin-right: -50vw;
	}
	/* obits template */
	body.editorial-obituary .inContentImage img  { /*overrides the default full-width seetings for .the-content img */
		width: 225px;
	}
	/*amp template*/
	body.amp #header .brand {
		width: 100%;
		margin: 0px;
	}
    /*buffalo magazine*/
    [data-section='buffalo-magazine'] .article-wrapper {
        background: white;
        padding: 15px;
        padding-top: 0;
    }
    body[data-section='buffalo-magazine'] #container-main {
        padding: 0px;
    }
    /*sticky ad on mobile*/
    #bnAdBlock-boxmedium-1.fixed {
      position: initial;
    }
}

/* small mobile */
@media only screen and (max-width: 500px) {
	/* widget wrapper */
    .article-page-widget-wrapper {
		float: none;
		margin: 0;
		width: 100%;
        margin-bottom: 30px;
        overflow: visible;
    }
	.article-page-widget-wrapper > section {
		margin: 0 auto;
	}
	/*content*/
	.the-title {
		font-size: 28px !important;
	    line-height: 32px !important;
		margin-top: 10px;
		margin-bottom: 15px;
	}
	.alignleft,
	.alignright {
		float: none;
		margin: 0;
		max-width: 100%;
	}
	.alignleft img,
	.alignright img {
		width: 100%;
		height: auto;
	}
	/*share tools*/
	.share li {
		margin-right: 5px;
	}
	.navbar-share-logo img {
		max-width: 200px;
	}
	/* big read */
	body.big-read article > header > h1 {
		font-size: 32px !important;
		max-width: 100%;
		text-align: center;
	}
	body.big-read #updatedTime {
		display: block;
	}
	body.big-read #updatedTime > .divider {
		display: none;
	}
	/* editorial-obituary */
	body.editorial-obituary .inContentImage img {
		float: none;
	}
	/*amp*/
	body.amp amp-social-share {
		max-width: 45px;
	    padding: 2px 10px;
	    max-height: 25px;
	}
  /* wedding planner form page --> change page ID to match live page ID */
  .page-id-2430189 .entry-content-image {
    width: 100%;
    margin-bottom: 20px;
  }
}

/* tiny mobile */
@media only screen and (max-width: 414px) {
	/*override header to allow sharing tool drop down*/
	#header .brand img.tbn_image {
	    width: 145%;
	}
	.custom-logo {
		width: 100% !important;
	}
	/*share tools*/
	.navbar-share-logo img {
		max-width: 175px;
	}
	.share .twitter {
	    padding: 4px 3px !important;
	}
	.share .facebook {
	    padding: 4px 6px !important;
	}
	.share .more {
	    padding: 4px;
	}
	.share li {
	    font-size: 11px;
	    margin-right: 3px;
	}
	/* obits template */
	body.editorial-obituary .inContentImage img  { /*overrides the default full-width seetings for .the-content img */
		width: 100%;
	}
}
