/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/
:root {
  --koharu-main: #d66f61;
  --koharu-main-dark: #ad4f43;
  --koharu-bg: #fffaf6;
  --koharu-text: #333333;
  --koharu-muted: #666666;
}

body {
  color: var(--koharu-text);
  line-height: 1.8;
  background: var(--koharu-bg);
}

.site-header {
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 2px 14px rgba(0, 0, 0, 0.06);
}

.site-body {
  background: #fffaf6;
}

.entry-body {
  max-width: 960px;
  margin: 0 auto;
  font-size: 16px;
}

.entry-body h1,
.entry-body h2,
.entry-body h3 {
  color: #2f2f2f;
  font-weight: 700;
  line-height: 1.35;
}

.entry-body h1 {
  font-size: clamp(2rem, 4vw, 3.4rem);
  margin-bottom: 0.5em;
}

.entry-body h2 {
  margin-top: 3em;
  margin-bottom: 1em;
  padding-bottom: 0.35em;
  border-bottom: 2px solid rgba(214, 111, 97, 0.25);
}

.entry-body p {
  color: var(--koharu-muted);
}

a {
  color: var(--koharu-main);
}

a:hover {
  color: var(--koharu-main-dark);
}

.wp-block-button__link,
.vk_button_link,
.btn {
  border-radius: 999px;
  background: var(--koharu-main);
  color: #fff !important;
  font-weight: 700;
  padding: 0.8em 1.6em;
  box-shadow: 0 8px 18px rgba(214, 111, 97, 0.22);
}

.wp-block-button__link:hover,
.vk_button_link:hover,
.btn:hover {
  background: var(--koharu-main-dark);
  color: #fff !important;
  transform: translateY(-1px);
}

.wp-block-group,
.wp-block-columns,
.vk_post,
.vk_posts,
.card {
  border-radius: 8px;
}

.wp-block-image img {
  border-radius: 8px;
}

@media (max-width: 767px) {
  .entry-body {
    font-size: 15px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .entry-body h1 {
    font-size: 2rem;
  }

  .entry-body h2 {
    font-size: 1.45rem;
  }

  .wp-block-button__link,
  .vk_button_link,
  .btn {
    width: 100%;
    text-align: center;
  }
}
/* Koharu top page polish */
.kw-hero {
  background: linear-gradient(135deg, #fff7f0 0%, #fff 52%, #eef8f4 100%) !important;
  padding: 88px 20px 72px !important;
}

.kw-hero h1,
.kw-hero-title {
  color: #262626 !important;
  font-size: clamp(34px, 6vw, 64px) !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
  margin-bottom: 18px !important;
}

.kw-hero p,
.kw-hero-lead {
  color: #555 !important;
  font-size: clamp(16px, 2vw, 20px) !important;
  line-height: 1.9 !important;
}

.kw-container {
  max-width: 1120px !important;
}

.kw-section-title {
  color: #282828 !important;
  font-size: clamp(28px, 4vw, 42px) !important;
  letter-spacing: 0 !important;
}

.kw-section-lead {
  color: #666 !important;
  font-size: 17px !important;
}

.kw-service-card,
.kw-work-card,
.kw-pricing-card,
.kw-contact-card,
.kw-flow-item,
.kw-profile-inner {
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid rgba(120, 90, 70, 0.12) !important;
  box-shadow: 0 14px 34px rgba(60, 45, 35, 0.08) !important;
}

.kw-pricing-recommend {
  border: 2px solid #d66f61 !important;
  box-shadow: 0 18px 42px rgba(214, 111, 97, 0.18) !important;
}

.kw-pricing-badge,
.kw-cta,
.kw-button,
.kw-contact-mail {
  background: #d66f61 !important;
  color: #fff !important;
}

.kw-contact-line {
  background: #18b663 !important;
  color: #fff !important;
}

.kw-line-float-main {
  background: #18b663 !important;
  color: #fff !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 28px rgba(24, 182, 99, 0.28) !important;
}

.kw-work-card a,
.kw-contact-card {
  text-decoration: none !important;
}

.kw-work-card:hover,
.kw-service-card:hover,
.kw-pricing-card:hover,
.kw-contact-card:hover {
  transform: translateY(-3px);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.kw-pricing-num {
  color: #d66f61 !important;
}

@media (max-width: 767px) {
  .kw-hero {
    padding: 56px 16px 48px !important;
  }

  .kw-section-title {
    font-size: 28px !important;
  }

  .kw-service-card,
  .kw-work-card,
  .kw-pricing-card,
  .kw-contact-card,
  .kw-flow-item,
  .kw-profile-inner {
    border-radius: 12px !important;
  }

  .kw-line-float-main {
    left: 16px !important;
    right: 16px !important;
    bottom: 16px !important;
    text-align: center !important;
  }

}

/* Koharu homepage redesign - added by Codex */
body.home .entry-body {
  max-width: none !important;
  padding: 0 !important;
}

body.home .site-body {
  background: #fffaf6 !important;
}

body.home .entry-body .kw-hero {
  background:
    radial-gradient(circle at 15% 20%, rgba(214, 111, 97, 0.16), transparent 34%),
    linear-gradient(135deg, #fff7f0 0%, #ffffff 50%, #eef8f4 100%) !important;
  padding: 96px 20px 80px !important;
  border: none !important;
}

body.home .entry-body .kw-hero-inner {
  max-width: 980px !important;
}

body.home .entry-body .kw-hero-title {
  color: #232323 !important;
  font-size: clamp(38px, 6vw, 68px) !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
  margin-bottom: 20px !important;
}

body.home .entry-body .kw-hero-accent {
  color: #c85f52 !important;
}

body.home .entry-body .kw-hero-sub {
  max-width: 760px !important;
  margin: 0 auto 34px !important;
  color: #4f4f4f !important;
  font-size: clamp(16px, 2vw, 20px) !important;
  line-height: 1.9 !important;
}

body.home .entry-body .kw-hero-tags span,
body.home .entry-body .kw-typeflip-badge {
  background: #ffffff !important;
  color: #2f2f2f !important;
  border: 1px solid rgba(214, 111, 97, 0.22) !important;
  box-shadow: 0 8px 22px rgba(60, 45, 35, 0.08) !important;
}

body.home .entry-body .kw-container {
  max-width: 1120px !important;
}

body.home .entry-body .kw-section-title {
  color: #262626 !important;
  font-size: clamp(30px, 4vw, 44px) !important;
  letter-spacing: 0 !important;
}

body.home .entry-body .kw-section-lead {
  color: #666 !important;
  font-size: 17px !important;
}

body.home .entry-body .kw-pain,
body.home .entry-body .kw-pricing,
body.home .entry-body .kw-profile {
  background: #fffaf6 !important;
}

body.home .entry-body .kw-solution,
body.home .entry-body .kw-works,
body.home .entry-body .kw-flow,
body.home .entry-body .kw-contact {
  background: #ffffff !important;
}

body.home .entry-body .kw-service-card,
body.home .entry-body .kw-work-card,
body.home .entry-body .kw-pricing-card,
body.home .entry-body .kw-contact-card,
body.home .entry-body .kw-flow-item,
body.home .entry-body .kw-profile-inner {
  border-radius: 16px !important;
  border: 1px solid rgba(120, 90, 70, 0.14) !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 18px 44px rgba(60, 45, 35, 0.09) !important;
}

body.home .entry-body .kw-pricing-recommend {
  border: 2px solid #d66f61 !important;
  transform: translateY(-6px) !important;
}

body.home .entry-body .kw-pricing-badge {
  background: #d66f61 !important;
  color: #fff !important;
}

body.home .entry-body .kw-pricing-num {
  color: #c85f52 !important;
}

body.home .entry-body .kw-contact-mail {
  background: #d66f61 !important;
  color: #fff !important;
}

body.home .entry-body .kw-contact-line,
body.home .kw-line-float-main {
  background: #18b663 !important;
  color: #fff !important;
}

body.home .kw-line-float-main {
  border-radius: 999px !important;
  box-shadow: 0 14px 32px rgba(24, 182, 99, 0.3) !important;
}

body.home .site-footer-copyright p:last-child {
  display: none !important;
}

@media (max-width: 767px) {
  body.home .entry-body .kw-hero {
    padding: 58px 16px 52px !important;
  }

  body.home .entry-body .kw-hero-title {
    font-size: 34px !important;
  }

  body.home .entry-body .kw-pricing-recommend {
    transform: none !important;
  }

  body.home .kw-line-float-main {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
    text-align: center !important;
  }
}
