/* ==========================================================================
   Harper's Bazaar Digital Cover - Kendall Jenner Stylesheet
   ========================================================================== */

/* Base & Typography */
body {
  font-family: proxima-nova, sans-serif;
  margin: 0;
  padding: 0;
  color: #242424;
  background-color: #ffffff;
}

h1 {
  font-size: 45px;
  margin: 0;
  font-weight: 700;
  line-height: 1.3;
}

h2 {
  margin: 0;
  font-family: linotype-didot, serif;
}

h3 {
  font-size: 18px;
  line-height: 1.7;
}

a {
  color: #000;
  text-decoration: none;
}

a:link {
  color: #000;
  text-decoration: none;
}

/* Layout Containers & Elements */
.breaker-ad-text,
hr,
picture,
figcaption,
.image-credit,
.pullquote,
.body-dropcap,
h3,
.body-text {
  max-width: 800px;
  margin: 10px auto !important;
  display: block;
}

/* Header & Meta */
.longform-header-inner {
  text-align: center;
  max-width: 1200px;
  margin: 20px auto;
}

.longform-dek {
  font-size: 1.2rem;
  line-height: 1.75;
  text-align: center;
  color: #242424;
  font-weight: 400;
  font-family: open sans, sans-serif;
  margin: 20px auto;
}

.byline {
  margin: 12px;
  font-family: proxima-nova, sans-serif;
  font-size: 15px;
  color: #888;
}

/* Body Text & Captions */
p.body-text {
  line-height: 1.5;
  letter-spacing: 0px;
  font-size: 18px;
  padding: 5px 0;
  font-family: proxima-nova, sans-serif;
  font-weight: 400 !important;
}

p.body-akreditasi {
  line-height: 1.5;
  letter-spacing: 0px;
  font-size: 13px;
  font-family: proxima-nova, sans-serif;
  text-align: center;
  margin-bottom: 30px;
  color: #888;
  text-transform: uppercase;
}

p.body-akreditasi-float {
  line-height: 1.5;
  letter-spacing: 0px;
  font-size: 13px;
  font-family: proxima-nova, sans-serif;
  text-align: left;
  margin-bottom: 30px;
  color: #888;
  width: 325px;
  text-transform: uppercase;
}

p.body-dropcap {
  line-height: 1.5;
  letter-spacing: 0.2px;
  font-size: 20px;
  padding: 15px 0;
  font-weight: bold;
}

figcaption {
  line-height: 1.5;
  letter-spacing: 0.2px;
  font-size: 15px;
  padding: 20px 0;
  color: #999;
  text-align: center;
}

/* Blockquote & Stylized Quotes */
.content-body blockquote {
  position: relative;
  margin-top: 1.316em;
  margin-bottom: 1.316em;
  margin-left: 0;
  margin-right: 0;
  padding: 1.579em 0;
  text-align: center;
  font-family: linotype-didot, serif;
  font-size: 1.5em;
  font-weight: 400;
  text-shadow: 0 0 0 #242424, 0 0 .01em transparent;
  line-height: 1.7;
}

.content-body blockquote:before,
.content-body blockquote:after {
  content: '';
  position: absolute;
  width: 50px;
  height: 20px;
  background: #fff;
  font-size: 50px;
  line-height: 1;
  left: calc(50% - 25px);
  z-index: 1;
}

.content-body blockquote:after {
  content: '\201D';
  top: 0;
}

.content-body blockquote:before {
  content: '\201C';
  bottom: 0;
}

.content-body blockquote span {
  position: relative;
  display: block;
}

.content-body blockquote span:before,
.content-body blockquote span:after {
  content: '';
  position: absolute;
  width: 50%;
  border-bottom: 1px solid #242424;
  font-size: 50px;
  line-height: 1;
  left: calc(25%);
}

.content-body blockquote span:before {
  top: -.579em;
}

.content-body blockquote span:after {
  bottom: -.579em;
}

/* Image & Video Alignment */
.imgl {
  display: block;
  margin: 15px 20px 0 0 !important;
  float: left;
}

.imgl img {
  max-width: 350px;
  width: 100%;
  height: auto;
  display: block;
}

.imgr {
  display: block;
  margin: 15px 0 20px 20px !important;
  float: right;
}

.imgr img {
  max-width: 350px;
  width: 100%;
  height: auto;
  display: block;
}

.imgr video {
  max-width: 300px;
}

.p1 {
  padding-bottom: 80px;
}

.space1 {
  margin-bottom: 125px;
}

/* Footer */
.footer {
  font-family: proxima-nova, sans-serif;
  font-size: 14px;
  text-align: left;
}

.footer b {
  font-size: 14px;
}

/* Responsive Styles (Mobile) */
@media only screen and (max-width: 600px) {
  .site-content {
    margin: 0px 25px 0px 25px;
  }

  p.body-text {
    font-size: 18px;
  }

  .p1 {
    padding-bottom: 0;
  }

  .longform-dek {
    font-size: 16px;
  }

  .imgr video {
    max-width: 100%;
  }

  .space1 {
    margin-bottom: 30px;
  }

  h1 {
    font-size: 35px;
    margin: 0;
  }

  .imgl img {
    margin: 0;
    max-width: 100%;
    width: 100%;
    float: none;
  }

  .imgr img {
    max-width: 100%;
    width: 100%;
    margin: 0;
    float: none;
  }

  .imgl {
    display: block;
    margin: 0 !important;
    float: none;
  }

  .imgr {
    display: block;
    margin: 0 !important;
    float: none;
  }
}
