/*
Theme Name:        Signature
Theme URI:         https://dinovahq.com
Author:            Quikdin
Author URI:        https://quikdin.com
Description:       Signature is a refined, conversion-focused Divi child theme designed for coaches, consultants, social media marketers, and personal brands who are ready to stand out. With a warm, editorial aesthetic — elegant serif headings, hand-script accents, and a soft, modern color palette — Signature helps experts turn a forgettable online presence into a client-attracting machine.
Version:           1.0.0
Template:          Divi
License:           GPL-2.0+
License URI:       https://www.gnu.org/licenses/gpl-2.0.html
Text Domain:       signature

Generated by Dinova Packager on 2026-05-25T01:29:09+00:00.
*/

/* ===== Custom CSS (from Design step) ===== */

/* ==========================================================================
   1. IMAGES
   ========================================================================== */

/* Decorative bordered image with asymmetric radius */
.qds-img {
  max-width: 350px;
  padding: 10px;
  border: 1px solid var(--gcid-primary-color);
  border-radius: 80px 15px 80px 15px;
}

.qds-img img {
  border-radius: 80px 15px 80px 15px;
}

/* Square cropped images */
.qds-img-fit .et_pb_image_wrap img {
  aspect-ratio: 1 / 1;
  max-height: 220px;
  object-fit: cover;
}


/* ==========================================================================
   2. MODULE HEADER — HIGHLIGHTED TEXT
   ========================================================================== */

.et_pb_module_header span,
.et_pb_module_header em {
  padding: 0 5px;
  font-size: calc(100% - 10%);
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 65%,
    var(--gcid-hbh2wwivb1) 65%
  );
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}


/* ==========================================================================
   3. POPUP — RIPPLE ANIMATION
   ========================================================================== */

.qds-popup {
  transform: scale(1);
  transition: all 0.3s ease-in-out;
  animation: ripple 1s linear infinite;
}

@keyframes ripple {
  0% {
    box-shadow:
      0 0 0 0   rgba(255, 255, 255, 0.2),
      0 0 0 5px  rgba(255, 255, 255, 0.2),
      0 0 0 20px rgba(255, 255, 255, 0.2),
      0 0 0 35px rgba(255, 255, 255, 0.2);
  }
  100% {
    box-shadow:
      0 0 0 5px  rgba(255, 255, 255, 0.2),
      0 0 0 20px rgba(255, 255, 255, 0.2),
      0 0 0 35px rgba(255, 255, 255, 0.2),
      0 0 0 45px rgba(255, 255, 255, 0);
  }
}


/* ==========================================================================
   4. ACHIEVEMENT — NUMBER COUNTER UNDERLINE
   ========================================================================== */

.qds-achievement .et_pb_number_counter::after {
  content: "";
  display: block;
  width: 40px;
  height: 3px;
  margin: 16px auto 0;
  background: var(--gcid-primary-color);
  border-radius: 2px;
}


/* ==========================================================================
   5. TOGGLE MODULE
   ========================================================================== */

.et_pb_toggle_open > .et_pb_toggle_title:before {
  content: "\3a";
}


/* ==========================================================================
   6. PARTNER LOGO
   ========================================================================== */

.qds-partner-logo .et_pb_image {
  width: 130px;
  max-width: 130px;
  padding: 20px;
  background: var(--gcid-ed1d6g2v1w);
  border-radius: 10px;
}


/* ==========================================================================
   7. BLOG GRID
   ========================================================================== */

.qds-blog .et_pb_post {
  overflow: hidden;
  background: #fff;
  border: none;
  border-radius: 20px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}

.qds-blog .et_pb_post:hover {
  transform: translateY(-5px);
}

/* Image crop + zoom on hover */
.qds-blog .et_pb_image_container img {
  aspect-ratio: 4 / 2.5;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.qds-blog .et_pb_post:hover img {
  transform: scale(1.03);
}

/* Truncate post titles to a single line */
.qds-blog .et_pb_post .entry-title,
.qds-blog .et_pb_post .entry-title a {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}


/* ==========================================================================
   8. NAVIGATION — DESKTOP
   ========================================================================== */

.et_pb_menu .et-menu-nav > ul ul {
  padding: 0;
}

.et_pb_menu_0_tb_header.et_pb_menu ul li a {
  background: transparent;
}

.et-menu li li a {
  width: 100%;
  padding: 10px 20px;
}

.nav li li {
  width: 100%;
  padding: 0;
}


/* ==========================================================================
   9. NAVIGATION — MOBILE (≤ 980px)
   ========================================================================== */

@media (max-width: 980px) {

  /* Reset Divi mobile menu padding */
  .et_pb_menu .et_mobile_menu {
    padding: 0;
  }

  /* Full-width fly-out menu */
  #page-container .et_mobile_menu {
    display: none !important;
  }

  #page-container .mobile_nav.opened .et_mobile_menu {
    display: block !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: calc(100dvh - var(--sbf-header-h, 80px)) !important;
    margin-left: calc(50% - 50vw) !important;
    padding: 20px 24px 0 30px !important;
    border: none !important;
    overflow-y: auto !important;
  }

  /* Hamburger -> close icon when open */
  .mobile_nav.opened .mobile_menu_bar:before {
    content: "\4d" !important;
  }

  .et_mobile_menu li li {
    padding-left: 0;
  }


  /* ---- Mobile submenu collapse ---- */

  /* Hide all submenus by default */
  .qds-header .et_mobile_menu ul.sub-menu {
    display: none !important;
  }

  /* Reveal the active submenu */
  .qds-header .et_mobile_menu li.active > ul.sub-menu {
    display: block !important;
  }

  /* Parent item is the positioning context */
  .qds-header .et_mobile_menu li.menu-item-has-children {
    position: relative;
  }

  /* Reserve space for the toggle icon */
  .qds-header .et_mobile_menu li.menu-item-has-children > a {
    position: relative;
    padding-right: 50px;
  }

  /* Toggle button hit area */
  .qds-header .submenu-toggle {
    position: absolute;
    top: 50%;
    right: 7%;
    width: 32px;
    height: 32px;
    transform: translateY(-50%);
    cursor: pointer;
  }

  /* Toggle icon */
  .qds-header .submenu-toggle::before {
    content: "\33";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 28px;
    height: 28px;
    font-family: ETmodules;
    line-height: 28px;
    text-align: center;
    color: #fff;
    background: var(--gcid-primary-color);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: 0.3s ease;
  }

  /* Rotate icon when submenu is open */
  .qds-header li.active > a > .submenu-toggle::before {
    transform: translate(-50%, -50%) rotate(180deg);
  }

}
