/* ==========================================================================
   Blog header & footer — include/blog-header.php + include/blog-footer.php
   Loaded ONLY by the WordPress blog (theme functions.php). No Bootstrap and
   independent of css/styleyoga.min.css: every rule is scoped to a kya- class,
   so it can't leak into blog content and the main site can't leak into it.
   ========================================================================== */

:root {
   --kya-red: #e83b3b;
   --kya-ink: #000;
   --kya-text: #737272;
   --kya-white: #fff;
   --kya-light: #f8f9fa;
   --kya-line: #d8d9da;
   --kya-font: 'Montserrat Alternates', sans-serif;
   --kya-header-top: var(--wp-admin--admin-bar--height, 0px);
}

/* ---- Local reset (scoped) ---- */
.kya-header,
.kya-header *,
.kya-contact,
.kya-contact *,
.kya-footer,
.kya-footer *,
.kya-bottom-bar,
.kya-bottom-bar * {
   box-sizing: border-box;
}
.kya-header,
.kya-contact,
.kya-footer,
.kya-bottom-bar {
   font-family: var(--kya-font);
   line-height: 1.5;
}
.kya-header ul,
.kya-footer ul {
   list-style: none;
   margin: 0;
   padding: 0;
}
.kya-header p,
.kya-contact p,
.kya-footer p,
.kya-bottom-bar p {
   margin: 0;
}
.kya-header img,
.kya-footer img {
   display: block;
   max-width: 100%;
   height: auto;
}

/* ---- Button ---- */
.kya-btn {
   display: inline-block;
   padding: 6px 21px;
   border: 1px solid var(--kya-red);
   border-radius: 25px;
   background-color: var(--kya-red);
   color: var(--kya-white);
   font-size: 14px;
   font-weight: 500;
   text-decoration: none;
   transition: background-color .3s, color .3s;
}
.kya-btn:hover,
.kya-btn:focus-visible {
   background-color: var(--kya-white);
   color: var(--kya-red);
}

/* ==========================================================================
   Header
   ========================================================================== */
.kya-header {
   position: sticky;
   top: var(--kya-header-top);
   z-index: 999;
   width: 100%;
   background-color: var(--kya-white);
   transition: box-shadow .3s;
}
.kya-header.is-scrolled {
   box-shadow: 0 0 3px 1px #d3d3d3;
}
.kya-header__bar {
   display: flex;
   align-items: center;
   justify-content: space-between;
   flex-wrap: wrap;
   padding: 5px 46px;
   transition: padding .3s;
}
.kya-header.is-scrolled .kya-header__bar {
   padding-top: 3px;
   padding-bottom: 3px;
}
.kya-header__brand {
   display: block;
   flex-shrink: 0;
}
.kya-header__logo {
   width: 190px;
   transition: width .3s;
}
.kya-header.is-scrolled .kya-header__logo {
   width: 145px;
}

/* Hamburger — mobile only */
.kya-header__toggle {
   display: none;
   padding: 8px 4px 4px;
   border: 0;
   background: none;
   color: var(--kya-red);
   font-size: 25px;
   line-height: 1;
   cursor: pointer;
}

/* Nav (desktop ≥ 1200px) */
.kya-nav__list {
   display: flex;
   align-items: center;
}
.kya-nav__item {
   position: relative;
   margin: 0 5px;
}
.kya-nav__link {
   display: block;
   padding: 8px;
   border: 0;
   background: none;
   color: var(--kya-ink);
   font-family: inherit;
   font-size: 14px;
   font-weight: 500;
   line-height: 1.5;
   text-decoration: none;
   cursor: pointer;
   transition: color .3s;
}
.kya-nav__link:hover,
.kya-nav__link:focus-visible {
   color: var(--kya-red);
}
.kya-nav__toggle::after {
   content: "";
   display: inline-block;
   margin-left: 6px;
   vertical-align: 3px;
   border-top: 5px solid currentColor;
   border-right: 4px solid transparent;
   border-left: 4px solid transparent;
   transition: transform .3s;
}
.kya-nav__item--cta {
   margin-left: 10px;
}

/* Dropdown */
.kya-nav__sub {
   display: none;
   position: absolute;
   top: 100%;
   left: 0;
   z-index: 1000;
   min-width: 230px;
   padding: 8px 0;
   border: 1px solid rgba(0, 0, 0, .15);
   border-radius: 4px;
   background-color: var(--kya-white);
   box-shadow: 0 6px 18px rgba(0, 0, 0, .08);
}
.kya-nav__sub a {
   display: block;
   padding: 6px 24px;
   color: #212529;
   font-size: 13px;
   white-space: nowrap;
   text-decoration: none;
   transition: background-color .3s, color .3s;
}
.kya-nav__sub a:hover,
.kya-nav__sub a:focus-visible {
   background-color: var(--kya-red);
   color: var(--kya-white);
}
.kya-nav__item--has-sub.is-open > .kya-nav__sub {
   display: block;
}

@media (min-width: 1200px) {
   .kya-nav__item--has-sub:hover > .kya-nav__sub,
   .kya-nav__item--has-sub:focus-within > .kya-nav__sub {
      display: block;
      animation: kya-fade-in .4s both;
   }
}

@keyframes kya-fade-in {
   from { opacity: 0; }
   to   { opacity: 1; }
}

/* Mobile / tablet (< 1200px): collapsible menu */
@media (max-width: 1199.98px) {
   .kya-header__bar {
      padding: 10px 15px;
   }
   .kya-header__logo {
      width: 160px;
   }
   .kya-header.is-scrolled .kya-header__logo {
      width: 140px;
   }
   .kya-header__toggle {
      display: block;
   }
   .kya-nav {
      display: none;
      flex-basis: 100%;
      max-height: calc(100vh - 80px);
      overflow-y: auto;
   }
   .kya-header.is-menu-open .kya-nav {
      display: block;
   }
   .kya-nav__list {
      display: block;
      padding: 10px 0 15px;
   }
   .kya-nav__item {
      margin: 0;
      padding: 2px 12px;
      border-bottom: 1px dotted #c1c1c1;
   }
   .kya-nav__item:last-child {
      border-bottom: 0;
   }
   .kya-nav__link {
      width: 100%;
      padding: 8px 0;
      text-align: left;
      font-size: 15px;
   }
   .kya-nav__item--has-sub.is-open > .kya-nav__toggle::after {
      transform: rotate(180deg);
   }
   .kya-nav__sub {
      position: static;
      min-width: 0;
      margin-bottom: 8px;
      border: 0;
      box-shadow: none;
      background-color: var(--kya-light);
   }
   .kya-nav__sub a {
      padding: 8px 15px;
      border-bottom: 1px dotted #c1c1c1;
      white-space: normal;
   }
   .kya-nav__sub li:last-child a {
      border-bottom: 0;
   }
   .kya-nav__item--cta {
      margin: 10px 0 0;
      padding-top: 10px;
   }
}

/* ==========================================================================
   Contact strip
   ========================================================================== */
.kya-contact {
   padding: 70px 15px;
   background-color: var(--kya-white);
}
.kya-contact__grid {
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   gap: 30px;
   max-width: 1140px;
   margin: 0 auto;
}
.kya-contact__card {
   display: flex;
   align-items: center;
   gap: 15px;
   min-height: 150px;
   padding: 20px 20px 20px 45px;
   border: 1px solid var(--kya-red);
   border-radius: 90px 0;
   transition: background-color .4s, border-radius .4s;
}
.kya-contact__card > i {
   flex-shrink: 0;
   color: var(--kya-red);
   font-size: 20px;
   transition: color .4s;
}
.kya-contact__head {
   margin-bottom: 6px !important;
   color: #242424;
   font-size: 20px;
   font-weight: 700;
}
.kya-contact__card p:not(.kya-contact__head),
.kya-contact__card a {
   color: var(--kya-red);
   font-size: 13px;
   word-break: break-word;
   text-decoration: none;
   transition: color .4s;
}
.kya-contact__card:hover {
   border-radius: 0 90px;
   background-color: var(--kya-red);
}
.kya-contact__card:hover > i,
.kya-contact__card:hover p,
.kya-contact__card:hover a {
   color: var(--kya-white);
}

@media (max-width: 991.98px) {
   .kya-contact__grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }
}
@media (max-width: 575.98px) {
   .kya-contact {
      padding: 50px 15px;
   }
   .kya-contact__grid {
      grid-template-columns: 1fr;
      gap: 15px;
   }
}

/* ==========================================================================
   Footer
   ========================================================================== */
.kya-footer {
   padding: 60px 60px 50px;
   border-top: 1px solid rgba(0, 0, 0, .05);
   background-color: var(--kya-light);
}
.kya-footer__grid {
   display: grid;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   gap: 30px;
}
.kya-footer__col--about {
   text-align: center;
}
.kya-footer__logo {
   width: 165px;
   margin: 0 auto 10px;
}
.kya-footer p,
.kya-footer a {
   color: #212529;
   font-size: 12px;
}
.kya-footer__col--about > p {
   text-align: left;
}
.kya-footer__badges {
   display: flex;
   align-items: center;
   gap: 20px;
   margin-top: 15px;
}
.kya-footer__badges img {
   width: 100px;
   height: 100px;
   object-fit: contain;
}
.kya-footer__heading {
   margin-bottom: 8px !important;
   color: var(--kya-ink) !important;
   font-size: 20px !important;
   font-weight: 700;
}
.kya-footer__links {
   line-height: 2.2;
}
.kya-footer__links a {
   text-decoration: none;
   transition: color .3s;
}
.kya-footer__links a:hover,
.kya-footer__links a:focus-visible {
   color: var(--kya-red);
}

.kya-bottom-bar {
   padding: 10px 15px;
   border-top: 1px solid var(--kya-line);
   background-color: var(--kya-light);
   text-align: center;
}
.kya-bottom-bar p {
   color: #212529;
   font-size: 14px;
}
.kya-bottom-bar a {
   color: inherit;
   text-decoration: none;
}
.kya-bottom-bar a:hover {
   color: var(--kya-red);
}

@media (max-width: 1199.98px) {
   .kya-footer__grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }
   .kya-footer__badges img {
      width: 85px;
      height: 85px;
   }
}
@media (max-width: 767.98px) {
   .kya-footer {
      padding: 40px 30px 30px;
   }
   .kya-footer__grid {
      grid-template-columns: 1fr;
      text-align: center;
   }
   .kya-footer__col--about > p,
   .kya-footer__links {
      text-align: center;
   }
   .kya-footer__badges {
      justify-content: center;
   }
   .kya-footer__badges img {
      width: 65px;
      height: 65px;
   }
}

/* ==========================================================================
   Floating buttons
   ========================================================================== */
.kya-to-top {
   position: fixed;
   right: 24px;
   bottom: 85px;
   z-index: 99;
   display: flex;
   align-items: center;
   justify-content: center;
   width: 48px;
   height: 48px;
   border-radius: 50%;
   background-color: var(--kya-red);
   color: var(--kya-white) !important;
   font-size: 18px;
   text-decoration: none;
   opacity: 0;
   visibility: hidden;
   transition: opacity .4s, visibility .4s;
}
.kya-to-top.is-visible {
   opacity: 1;
   visibility: visible;
}
.kya-to-top:hover > i {
   transform: translateY(-4px);
}
.kya-to-top > i {
   transition: transform .4s;
}
.kya-whatsapp {
   position: fixed;
   right: 23px;
   bottom: 21px;
   z-index: 99;
}
.kya-whatsapp img {
   display: block;
   width: 50px;
   height: 50px;
   object-fit: contain;
}

@media (max-width: 480px) {
   .kya-to-top {
      right: 24px;
      bottom: 100px;
      width: 42px;
      height: 42px;
   }
   .kya-whatsapp {
      right: 20px;
      bottom: 45px;
   }
}

@media (prefers-reduced-motion: reduce) {
   .kya-header,
   .kya-header *,
   .kya-contact__card,
   .kya-to-top {
      animation: none !important;
      transition: none !important;
   }
}
