/* ==========================================================================
   Sparkling Pink Pandas - Custom Styles
   ========================================================================== */

/* ---------------------------------
   1. PRIMARY STYLES
--------------------------------- */

html { font-size: 100%; height: 100%; overflow-x: hidden; }

body {
  font-size: 15px;
  font-family: 'Roboto', sans-serif;
  width: 100%;
  margin: 0;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  word-wrap: break-word;
  color: #000;
}

h1, h2, h3, h4, h5, h6, p, a, ul, span, li, img, input, button { margin: 0; padding: 0; }
h1, h2, h3, h4, h5, h6 { line-height: 1.5; font-weight: inherit; }

p {
  line-height: 1.6;
  font-size: 1.05em;
  font-family: 'Maven Pro', sans-serif;
  font-weight: 400;
  color: #555;
}

h1 { font-size: 4em; line-height: 1; }
h2 { font-size: 2.8em; line-height: 1.1; }
h3 { font-size: 1.8em; }
h4 { font-size: 1.5em; }
h5 { font-size: 1.2em; }
h6 { font-size: .9em; letter-spacing: 1px; }

a, button { display: inline-block; text-decoration: none; color: inherit; transition: all .3s; }

a:focus, a:active, a:hover,
button:focus, button:active, button:hover { text-decoration: none; color: #ff4df0; }

b { font-weight: 500; }
img { width: 100%; }
li { list-style: none; display: inline-block; }
span { display: inline-block; }
button { outline: 0; border: 0; background: none; cursor: pointer; }

/* ---------------------------------
   2. COMMONS
--------------------------------- */

.btn {
  font-size: .9em;
  padding: 15px 30px;
  border-radius: 1px;
  letter-spacing: 2px;
  border: 1px solid #ff4df0;
  background: #ff4df0;
  color: #fff;
}

.btn:hover { color: #ff4df0; background: none; }
.btn-2 { background: none; color: #ff4df0; }
.btn-2:hover { background: #ff4df0; color: #fff; }
.btn--small { font-size: .8em; }

.section { padding: 70px 0 40px; }
.section .heading { padding-bottom: 70px; }
.center-text { text-align: center; }
.card { background: transparent; border: 0; }
.left-area { float: left; }
.right-area { float: right; }

/* Color utilities */
.color-white { color: #fff; }
.color-black { color: #000; }
.color-dark { color: #333; }
.color-pink { color: #ff4df0; }
.color-muted { color: #666; }

/* Spacing utilities */
.mt-section { margin-top: 30px; }
.mb-section { margin-bottom: 30px; }
.mt-content { margin-top: 20px; }
.mt-back-link { margin-top: 40px; }

/* ---------------------------------
   3. HEADER / MENU
--------------------------------- */

header {
  position: relative;
  left: 0;
  right: 0;
  top: 0;
  z-index: 1000;
  font-size: .95em;
  box-shadow: 0px 2px 10px rgba(0,0,0,.3);
  background: #fff;
}

header .top-menu {
  width: 100%;
  height: 40px;
  line-height: 40px;
  overflow: hidden;
  font-size: .9em;
  font-style: italic;
}

header .top-menu ul.welcome-area { padding-left: 20px; }
header .top-menu ul.welcome-area > li { margin: 0 10px; padding: 0 10px; border-left: 1px solid #ddd; }
header .top-menu ul > li:first-child { border-left: 0; }
header .top-menu ul.social-icons { display: inline-block; padding: 0 20px; color: #aaa; }
header .top-menu ul.social-icons > li > a { padding: 0 10px; }

/* Middle area */
header .middle-menu { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
header .logo { padding: 15px 0; height: 100px; }
header .logo img { height: 100%; width: auto; }

.site-title { font-size: 20px; color: #000; width: 100%; }
.site-title .pink { color: rgb(240, 80, 255); }

/* Bottom area / Nav */
header .bottom-area { text-align: center; }
header .main-menu { font-weight: 500; }
header .main-menu > li > a { height: 50px; line-height: 50px; padding: 0 20px; }
header .main-menu > li > a:hover { background: #eee; }

.menu-nav-icon {
  display: none;
  height: 50px;
  width: 50px;
  text-align: center;
  line-height: 50px;
  cursor: pointer;
  font-size: 1.8em;
  color: rgb(255, 86, 227);
}

/* ---------------------------------
   4. HERO / SLIDER
--------------------------------- */

.slider-area .single-slider {
  background-size: cover;
  background-position: center;
}

.slider-height2 { min-height: 250px; }

.hero-cap h2 {
  font-size: 2.5em;
  font-weight: 700;
  color: #fff;
}

.slider_area_hero {
  background-image: url('../img/hero1.jpg');
  box-shadow: inset 0 0 0 2000px rgba(255, 0, 157, 0.473);
}

.slider_area_page {
  background-image: url('../img/hero1.jpg');
  box-shadow: inset 0 0 0 2000px rgba(255, 0, 157, 0.473);
}

/* ---------------------------------
   5. BLOG POSTS
--------------------------------- */

.blog-posts .single-post { margin-bottom: 60px; }
.single-post .icons { overflow: hidden; line-height: 30px; margin: 30px 0 10px; }
.single-post .title { margin: 20px 0 15px; }
.single-post .date { color: #999; }

.single-post .read-more-btn {
  clear: both;
  margin-top: 30px;
  box-shadow: 1px 10px 15px rgba(0,0,0,.15);
  border: 1px solid #1b1b1b;
  background: #fff;
  color: #1b1b1b;
}

.single-post .read-more-btn:hover {
  box-shadow: 1px 3px 15px rgba(0,0,0,.15);
  background: #1b1b1b;
  color: #fff;
}

.author-badge { color: #fff; }
.post-content { margin-top: 20px; }

/* ---------------------------------
   6. BLOG AREA
--------------------------------- */

.blog_item { margin-bottom: 30px; }
.blog_item_img { position: relative; overflow: hidden; }
.blog_item_img img { width: 100%; }

.blog_item_date {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #ff4df0;
  color: #fff;
  padding: 10px 20px;
  text-align: center;
}

.blog_item_date h3 { margin: 0; color: #fff; font-size: 1.5em; }
.blog_item_date p { margin: 0; color: #fff; font-size: .9em; }
.blog_item_date--past { background: #888; }
.blog_item_date--time { left: auto; margin-left: 100px; }

.blog_details { padding: 20px 0; }
.blog_details--padded { padding: 30px 0; }
.blog_details h2 { font-size: 1.5em; margin-bottom: 10px; color: #333; }
.blog_details p { color: #666; }

/* Content heading */
.content-heading { color: #000; }

/* Sidebar */
.blog_right_sidebar .single_sidebar_widget { margin-bottom: 30px; padding: 20px; background: #f9f9f9; }

.widget_title {
  font-size: 1.2em;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid #ff4df0;
}

.newsletter_widget {
  background: rgb(255, 86, 213) !important;
  color: #fff;
}

.newsletter_widget .widget_title { color: #fff; border-bottom-color: #fff; }
.newsletter_widget p { color: #fff; }

.btn_1.boxed-btn {
  background: #ff4df0;
  border: 1px solid #ff4df0;
  color: #fff;
  padding: 10px 20px;
  border-radius: 0;
  cursor: pointer;
  display: inline-block;
  text-decoration: none;
}

.btn_1.boxed-btn:hover { background: #e040d0; color: #fff; }

/* Recent posts sidebar */
.post_item { margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px solid #eee; }
.post_item .media-body h3 { font-size: 1em; margin-bottom: 5px; }
.post_item .media-body p { font-size: .85em; color: #999; }

.l-post-image {
  height: 90px;
  max-width: 90px;
  min-width: 90px;
  margin-right: 15px;
  overflow: hidden;
}

.l-post-image img { height: 100%; object-fit: cover; }

/* Sidebar connect list */
.connect-list { padding: 0; }
.connect-list li { display: block; margin-bottom: 10px; }

/* ---------------------------------
   7. GALLERY
--------------------------------- */

.gallery_area { margin-top: 30px; }
.single_photography { margin-bottom: 0; overflow: hidden; }
.single_photography .thumb { overflow: hidden; }
.single_photography .thumb img { transition: all .4s; height: 200px; object-fit: cover; }
.single_photography .thumb:hover img { transform: scale(1.1); }

.gallery-img { height: 250px; object-fit: cover; }
.gallery-meta { margin-top: 8px; font-size: .85em; color: #666; }
.gallery-meta p { margin-bottom: 2px; }
.gallery-credit { font-style: italic; }
.gallery-insta-link { color: #999; font-size: .9em; }

.section-subtitle { color: #ff4df0; }
.section-subtitle a { color: #ff4df0; }

/* ---------------------------------
   8. FOOTER
--------------------------------- */

.footer-area {
  background-color: rgb(20, 20, 20);
  padding: 60px 0 30px;
}

.footer-logo img { width: 100px; }
.footer-pera p { color: white !important; font-size: .95em; }

.footer-tittle h4 { color: white; margin-bottom: 20px; }
.footer-tittle ul { padding: 0; }
.footer-tittle ul li { display: block; margin-bottom: 10px; }
.footer-tittle ul li a { color: white; }
.footer-tittle ul li a:hover { color: #ff4df0; }

.footer-copy-right p { color: #888; font-size: .85em; }

.footer-social a {
  color: #888;
  font-size: 1.2em;
  margin: 0 10px;
  transition: all .3s;
}

.footer-social a:hover { color: #ff4df0; }

.footer-bottom { margin-top: 30px; padding-top: 20px; border-top: 1px solid #333; }

/* ---------------------------------
   9. ABOUT PAGE
--------------------------------- */

.about-details { padding: 50px 0; }
.about-details-cap { margin-bottom: 40px; }
.about-details-cap h4 { margin-bottom: 15px; color: #333; font-weight: 600; }
.about-details-cap p { margin-bottom: 15px; }

/* ---------------------------------
   10. VIDEO AREA
--------------------------------- */

.video-area { margin-bottom: 60px; }

.video-wrap {
  position: relative;
  background: #1b1b1b;
  height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.play-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #ff4df0;
  color: #fff;
  font-size: 1.5em;
  transition: all .3s;
}

.play-btn a:hover {
  background: #e040d0;
  color: #fff;
  transform: scale(1.1);
}

.video-grid { margin-bottom: 30px; }

/* ---------------------------------
   11. EVENT CARDS
--------------------------------- */

.event-card { margin-bottom: 30px; }
.event-card .card-img { border-radius: 0; }

.event-date-badge {
  background: #ff4df0;
  color: #fff;
  padding: 10px 20px;
  text-align: center;
  display: inline-block;
}

.event-date-badge h3 { color: #fff; margin: 0; }
.event-date-badge p { color: #fff; margin: 0; }

.event-placeholder-img {
  background: linear-gradient(135deg, #ff4df0, #ff0099);
  min-height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.event-placeholder-img--tall { min-height: 200px; }

.event-placeholder-img--past {
  background: linear-gradient(135deg, #999, #666);
}

.event-placeholder-icon {
  font-size: 3em;
  color: rgba(255,255,255,0.5);
}

.event-placeholder-icon--lg {
  font-size: 4em;
  color: rgba(255,255,255,0.4);
}

.event-placeholder-icon--past {
  color: rgba(255,255,255,0.3);
}

.event-past { opacity: 0.85; }

.events-section-heading {
  margin-bottom: 30px;
  color: #333;
}

.events-past-divider {
  margin-bottom: 30px;
  margin-top: 40px;
  padding-top: 30px;
  border-top: 2px solid #eee;
  color: #333;
}

.events-no-upcoming { margin-bottom: 40px; }

/* ---------------------------------
   12. CONTENT PAGE
--------------------------------- */

.page-content { padding: 40px 0; }
.page-content p { margin-bottom: 15px; }
.section-padding { padding: 50px 0; }

/* Follow us section */
.follow-section { margin-bottom: 60px; }
.follow-section h4 { margin-bottom: 20px; }

.social-icons-lg { font-size: 1.5em; }
.social-icons-lg a { margin: 0 15px; }

/* ---------------------------------
   RESPONSIVE
--------------------------------- */

/* Widen container on large desktops */
@media (min-width: 1400px) {
  .container { max-width: 1320px; }
}

@media (min-width: 1600px) {
  .container { max-width: 1500px; }
}

@media only screen and (max-width: 992px) {
  h1 { font-size: 3em; }
  h2 { font-size: 2.5em; }

  header .top-menu ul.welcome-area { padding: 0; }
  header .top-menu ul.welcome-area > li { border: 0; }
  header .top-menu .hello-blog { display: none; }
}

@media only screen and (max-width: 767px) {
  p { line-height: 1.4; }
  h1 { font-size: 2.5em; }
  h2 { font-size: 2em; }
  h3 { font-size: 1.5em; }

  .section { padding: 40px 0 10px; }

  header .top-menu { display: none; }
  header .right-area { float: none; }
  header .logo { padding: 10px 0; height: 80px; }

  header .main-menu {
    text-align: left;
    display: none;
    float: none;
    clear: both;
    max-height: 400px;
    overflow: auto;
    border-top: 1px solid #ccc;
  }

  header .main-menu > li { display: block; float: none; border-bottom: 1px solid #ddd; }
  header .main-menu > li:last-child { border-bottom: 0; }
  header .main-menu > li > a { display: block; line-height: 1; height: auto; padding: 15px; background: none; }

  .menu-nav-icon { display: inline-block; }

  .slider-height2 { min-height: 150px; }

  .hero-cap h2 { font-size: 1.8em; }

  .social-icons-lg a { margin: 0 10px; }
}

@media only screen and (max-width: 479px) {
  body { font-size: 14px; }
  .left-area, .right-area { float: none; }
}
