/*
Theme Name: Каравай
Theme URI: https://karaway.by/
Description: Дочерняя тема Childit для студии «Каравай»: контакты в админке, оптимизация PageSpeed.
Author: Каравай
Template: childit
Version: 1.0.3
Text Domain: karaway
*/

/* Parent ChildIt CSS is intentionally not imported — the site uses the Karaway template CSS. */

/* Old Karaway body face is Google Sans (parent header.php). Inter stays on --font for buttons. */
@font-face {
  font-family: "Google Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("assets/fonts/google-sans-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: "Google Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("assets/fonts/google-sans-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Google Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("assets/fonts/google-sans-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Google Sans";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("assets/fonts/google-sans-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

body {
  font-family: "Google Sans", var(--font, Inter, -apple-system, BlinkMacSystemFont, sans-serif);
  color: var(--black, #4f453d);
  background: var(--page-bg, #fffae7);
}

.s-intro--home video.main-bg {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
  object-position: top center !important;
}

@media (max-width: 1024px) {
  .s-intro--home video.main-bg {
    display: none;
  }
  .s-intro--home .intro__img-wrap {
    background: var(--yellow);
  }
}

.arrow-with-dots__dec {
  width: 78px;
  height: 70px;
}

/* Homepage trigger cards: pin artwork to the right (and bottom) edge. */
.s-intro-triggers .intro-trigger-banner {
  overflow: hidden !important;
}

.s-intro-triggers .intro-trigger-banner__img {
  left: auto !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  margin-left: auto;
  width: auto !important;
  height: auto !important;
  max-width: 48% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: right bottom !important;
  transform-origin: right bottom;
}

/* Trolls cutout PNG has empty transparent padding on the right (~8%). */
.s-intro-triggers a[href="/kvesty/"] .intro-trigger-banner__img {
  transform: translateX(8%);
}

.s-intro-triggers .intro-trigger-banner:hover .intro-trigger-banner__img,
.s-intro-triggers .intro-trigger-banner:active .intro-trigger-banner__img {
  transform: scale3d(0.96, 0.96, 1);
}

.s-intro-triggers a[href="/kvesty/"]:hover .intro-trigger-banner__img,
.s-intro-triggers a[href="/kvesty/"]:active .intro-trigger-banner__img {
  transform: translateX(8%) scale3d(0.96, 0.96, 1);
}

@media (max-width: 1024px) {
  .s-intro-triggers .intro-trigger-banner__img {
    max-width: 44% !important;
  }
}

@media (max-width: 750px) {
  .s-intro-triggers .intro-trigger-banner__img {
    left: auto !important;
    right: 0 !important;
    height: auto !important;
    max-width: 46% !important;
    max-height: 100% !important;
  }
}

/* -------------------------------------------------------------------------
   SearchWP form + live suggestions — Karaway (cream / brown / pills / cards)
   ------------------------------------------------------------------------- */
.s-header .socs .searchwp-form,
.s-header .header__right .searchwp-form {
  margin: 0;
  width: 220px;
  min-width: 180px;
  max-width: 260px;
  font-family: "Google Sans", var(--font, Inter, sans-serif);
}

.mob-panel .searchwp-form {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.s-header .searchwp-form .swp-flex--row,
.s-header .searchwp-form .searchwp-form-input-container,
.mob-panel .searchwp-form .swp-flex--row,
.mob-panel .searchwp-form .searchwp-form-input-container,
.search .searchwp-form .swp-flex--row,
.search .searchwp-form .searchwp-form-input-container {
  width: 100%;
  gap: 0;
}

.s-header .searchwp-form input.swp-input,
.s-header .searchwp-form input.swp-input--search,
.s-header #searchwp-form-1 input[type="search"],
.mob-panel .searchwp-form input.swp-input,
.mob-panel .searchwp-form input.swp-input--search,
.mob-panel #searchwp-form-1 input[type="search"],
.search .searchwp-form input.swp-input,
.search .searchwp-form input.swp-input--search {
  box-sizing: border-box;
  width: 100%;
  height: 45px;
  margin: 0;
  padding: 0 42px 0 18px;
  border: 1.5px solid rgba(79, 69, 61, 0.18) !important;
  border-radius: 16px;
  background-color: #fff !important;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' fill='none'%3E%3Cpath fill='%234F453D' d='M6.068 12.136c1.31 0 2.533-.426 3.527-1.136l3.74 3.74c.174.173.402.26.64.26.512 0 .883-.395.883-.9a.87.87 0 0 0-.253-.63L10.89 9.744a6.04 6.04 0 0 0 1.247-3.677C12.136 2.73 9.406 0 6.068 0 2.722 0 0 2.73 0 6.068s2.722 6.068 6.068 6.068m0-1.31c-2.612 0-4.758-2.154-4.758-4.758S3.456 1.31 6.068 1.31c2.604 0 4.758 2.154 4.758 4.758s-2.154 4.758-4.758 4.758'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  background-size: 15px auto !important;
  color: var(--black, #4f453d) !important;
  caret-color: var(--black, #4f453d);
  font-family: "Google Sans", var(--font, Inter, sans-serif);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.3;
  box-shadow: none;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

@media (max-width: 1550px) {
  .s-header .socs .searchwp-form,
  .s-header .header__right .searchwp-form {
    width: 180px;
    min-width: 150px;
  }
  .s-header .searchwp-form input.swp-input--search,
  .s-header #searchwp-form-1 input[type="search"] {
    height: 40px;
    font-size: 14px;
    border-radius: 14px;
    padding-right: 38px;
  }
}

.s-header .searchwp-form input.swp-input--search::placeholder,
.s-header #searchwp-form-1 input::placeholder,
.mob-panel .searchwp-form input.swp-input--search::placeholder,
.search .searchwp-form input.swp-input--search::placeholder {
  color: rgba(79, 69, 61, 0.5) !important;
  opacity: 1;
  font-weight: 500;
}

.s-header .searchwp-form input.swp-input--search:hover,
.mob-panel .searchwp-form input.swp-input--search:hover,
.search .searchwp-form input.swp-input--search:hover {
  border-color: rgba(79, 69, 61, 0.35) !important;
}

.s-header .searchwp-form input.swp-input--search:focus,
.s-header #searchwp-form-1 input[type="search"]:focus,
.mob-panel .searchwp-form input.swp-input--search:focus,
.search .searchwp-form input.swp-input--search:focus {
  border-color: var(--yellow, #ffcf01) !important;
  box-shadow: 0 0 0 3px var(--yellow, #ffcf01);
  background-color: #fff !important;
}

.s-header .searchwp-form input[type="submit"],
.s-header .searchwp-form button,
.s-header .searchwp-form .swp-input--button,
.mob-panel .searchwp-form input[type="submit"],
.mob-panel .searchwp-form button {
  font-family: var(--font, Inter, sans-serif);
  background: var(--yellow, #ffcf01);
  color: var(--black, #4f453d);
  border: none;
  border-radius: 50px;
}

.mob-panel .searchwp-form input.swp-input--search,
.mob-panel #searchwp-form-1 input[type="search"] {
  height: 48px;
  border-radius: 16px;
  background-color: var(--page-bg, #fffae7) !important;
  font-size: 16px;
}

/* Live suggestions dropdown */
.searchwp-live-search-results {
  box-sizing: border-box;
  min-width: 280px !important;
  max-width: min(420px, calc(100vw - 24px));
  min-height: 0 !important;
  max-height: min(70vh, 420px) !important;
  padding: 8px;
  overflow: auto;
  background: #fff !important;
  border: 1.5px solid rgba(79, 69, 61, 0.08);
  border-radius: var(--br-40, 24px) !important;
  box-shadow: 0 20px 80px rgba(79, 69, 61, 0.16) !important;
  font-family: "Google Sans", var(--font, Inter, sans-serif);
  color: var(--black, #4f453d);
}

.searchwp-live-search-result {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: none;
  border-radius: 16px;
  color: var(--black, #4f453d);
  text-decoration: none;
  transition: background 0.15s ease;
}

.searchwp-live-search-result:last-child {
  border-bottom: none;
}

.searchwp-live-search-result a,
.searchwp-live-search-result--title,
.searchwp-live-search-result--title a {
  color: var(--black, #4f453d) !important;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.25;
  letter-spacing: -0.03em;
  text-decoration: none;
}

.searchwp-live-search-result--desc {
  color: var(--gray-text, #7c7570);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
}

.searchwp-live-search-result:hover,
.searchwp-live-search-result.searchwp-live-search-result--focused,
.searchwp-live-search-result[aria-selected="true"] {
  background: var(--beige-gradient, #fff6ea) !important;
}

.searchwp-live-search-result:hover .searchwp-live-search-result--title,
.searchwp-live-search-result.searchwp-live-search-result--focused .searchwp-live-search-result--title {
  color: var(--black, #4f453d) !important;
}

.searchwp-live-search-no-results,
.searchwp-live-search-result--no-results {
  padding: 16px 14px;
  color: var(--gray-text, #7c7570);
  font-weight: 500;
}

/* Search results page */
.search .main-container {
  padding: 48px 0 80px;
  background: var(--page-bg, #fffae7);
}

.search .main-container > .container {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.search .main-container > .container > hr,
.search article hr {
  display: none;
}

.search-card {
  margin: 0;
  background: #fff;
  border-radius: var(--br-40, 24px);
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(79, 69, 61, 0.06);
  transition: box-shadow 0.25s ease, transform 0.2s ease;
}

.search-card:hover {
  box-shadow: 0 18px 50px rgba(79, 69, 61, 0.12);
}

.search-card__link {
  display: flex;
  align-items: stretch;
  gap: 20px;
  padding: 16px 20px;
  color: inherit;
  text-decoration: none;
}

.search-card__media {
  flex: 0 0 120px;
  width: 120px;
  min-height: 88px;
  border-radius: 16px;
  overflow: hidden;
  background: var(--panels, #efe9e9);
}

.search-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.search-card__body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
}

.search-card__pill {
  display: inline-block;
  align-self: flex-start;
  padding: 4px 12px 5px;
  border-radius: 14px;
  background: var(--yellow, #ffcf01);
  color: var(--black, #4f453d);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1;
}

.search-card__title {
  margin: 0;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.15;
  color: var(--black, #4f453d);
}

.search-card__excerpt {
  margin: 0;
  color: var(--gray-text, #7c7570);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
}

.search .nav-links,
.search .posts-navigation {
  display: flex;
  gap: 10px;
  margin-top: 24px;
}

.search .nav-links a,
.search .posts-navigation a {
  display: inline-flex;
  align-items: center;
  padding: 0.7em 1.4em;
  border-radius: 50px;
  background: var(--yellow, #ffcf01);
  color: var(--black, #4f453d);
  font-family: var(--font, Inter, sans-serif);
  font-weight: 600;
  text-decoration: none;
}

.search .nav-links a:hover,
.search .posts-navigation a:hover {
  background: var(--yellow-hover, #f5d90b);
}

@media (max-width: 680px) {
  .search-card__link {
    flex-direction: column;
    gap: 12px;
    padding: 14px;
  }
  .search-card__media {
    width: 100%;
    flex-basis: auto;
    height: 160px;
  }
  .search-card__title {
    font-size: 18px;
  }
}

/* -------------------------------------------------------------------------
   Program cards (any slug: malysham, media-igry, programmy-dlya-devochek…).
   Parent Childit CSS is dequeued. Super Mario keeps Elementor tabs (#edf6f9).
   Pages without tabs (Kapibara etc.) still need price pills + readable text.
   ------------------------------------------------------------------------- */
.s-anim-about .elementor-widget-text-editor,
.s-anim-about .elementor-tab-content,
.elementor-widget-tabs .elementor-tab-content {
  color: var(--black, #4f453d);
  font-family: "Google Sans", var(--font, Inter, sans-serif);
  font-size: 1.15rem;
  line-height: 1.45;
}

.elementor-widget-tabs .elementor-tab-content {
  color: var(--black, #4f453d) !important;
  min-height: 430px;
}

.s-anim-about .elementor-widget-text-editor p,
.s-anim-about .elementor-widget-text-editor ul,
.s-anim-about .elementor-widget-text-editor li,
.s-anim-about .elementor-tab-content p,
.s-anim-about .elementor-tab-content ul,
.s-anim-about .elementor-tab-content li,
.elementor-widget-tabs .elementor-tab-content p,
.elementor-widget-tabs .elementor-tab-content ul,
.elementor-widget-tabs .elementor-tab-content li {
  color: inherit;
  font-size: 1.15rem;
}

.elementor-widget-tabs .elementor-tab-content p,
.elementor-widget-tabs .elementor-tab-content ul {
  padding-top: 1.5rem;
}

.s-anim-about .elementor-widget-text-editor a,
.s-anim-about .elementor-tab-content a,
.elementor-widget-tabs .elementor-tab-content a {
  color: var(--black, #4f453d);
}

.s-anim-about .block-price,
.elementor-widget-tabs .block-price {
  padding: 1px 5px;
  margin-bottom: 15px;
  border-radius: 35px;
}

.s-anim-about .block-price p,
.elementor-widget-tabs .block-price p {
  position: relative;
  margin: 5px;
  height: 50px;
  border-radius: 35px;
  padding-top: 0;
}

.s-anim-about .price-left-actor,
.s-anim-about .price-left-time,
.elementor-widget-tabs .price-left-actor,
.elementor-widget-tabs .price-left-time {
  border-radius: 100%;
  cursor: default;
  display: block;
  float: left;
  height: 45px;
  width: 45px;
  line-height: 12px;
  margin: 2px 2px 2px 5px;
  padding-top: 11px;
  text-align: center;
  background-color: #ff8347;
  color: #fff !important;
  font-size: 21px;
}

.s-anim-about .price-left-time,
.elementor-widget-tabs .price-left-time {
  margin-left: 3px;
}

.s-anim-about .price-left-time-min,
.elementor-widget-tabs .price-left-time-min {
  font-size: 11px;
  color: #fff !important;
}

.s-anim-about .price-right,
.elementor-widget-tabs .price-right {
  float: right;
  margin: 16px 20px;
  font-size: 26px;
  position: absolute;
  right: 3rem;
  text-align: right;
  color: #ff8348 !important;
  font-weight: 600;
}

.s-anim-about .tab-service a,
.elementor-widget-tabs .tab-service a {
  background: #fffefb;
  border-radius: 27px;
  width: 100%;
  padding: 11px 10px;
  color: var(--black, #4f453d);
  display: block;
  margin-bottom: 6px;
  text-align: center;
}

@media (max-width: 767px) {
  .elementor-widget-tabs .elementor-tab-content {
    min-height: 0;
    font-size: 1rem;
  }
  .s-anim-about .price-right,
  .elementor-widget-tabs .price-right {
    font-size: 20px;
    right: 1rem;
  }
}

/* Hide «Советуем посмотреть» when there are no neighbor cards (news / pages). */
.s-animators-slider:not(:has(.anim-preview)) {
  display: none;
}

/* News / tag archives: same cards as program catalogs. */
.s-animators .nav-links,
.s-animators .posts-navigation {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 32px 0 8px;
}
.s-animators .nav-links a,
.s-animators .nav-links span {
  display: inline-flex;
  align-items: center;
  padding: 0.7em 1.4em;
  border-radius: 50px;
  background: var(--yellow, #ffcf01);
  color: var(--black, #4f453d);
  font-family: var(--font, Inter, sans-serif);
  font-weight: 600;
  text-decoration: none;
}
.s-animators .nav-links span.current {
  background: var(--black, #4f453d);
  color: #fff;
}

