.wp-site-blocks > .pp-main-content { margin-block-start: 0; }
/* Existing PinkyPink home and shared chrome, with native block interactions. */
.pp-site-header .pp-site-header__inner {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 6px 24px;
  margin-inline: auto;
  min-height: 195px;
  padding-block: 40px 0;
  width: 80%;
  max-width: 1180px;
}

.pp-site-brand { grid-column: 2; grid-row: 1; min-width: 0; }
.pp-site-brand img { display: block; max-height: 72px; width: auto; }
.pp-site-header nav.pp-primary-navigation { grid-column: 1 / -1; grid-row: 2; min-height: 74px; font-size: 17px; }
.pp-site-header .pp-primary-navigation .wp-block-navigation-item__content { color: inherit; }
.pp-site-header .pp-primary-navigation .pp-mobile-nav-link { display: none; }
.pp-site-header .pp-header-actions { grid-column: 3; grid-row: 1; justify-self: end; gap: 12px; }
.pp-site-header .pp-header-search { display: none; }

.pp-site-header .pp-header-actions .wp-block-woocommerce-customer-account a {
  align-items: center;
  box-sizing: border-box;
  color: var(--wp--preset--color--deep-purple);
  display: inline-flex;
  justify-content: center;
  min-height: 44px;
  min-width: 44px;
  padding: 8px;
}
.pp-site-header .wp-block-woocommerce-customer-account .icon { width: 24px; height: 24px; flex: none; }

.pp-site-header .pp-primary-navigation .wp-block-navigation__submenu-container {
  background: var(--wp--preset--color--menu-pink);
  color: var(--wp--preset--color--soft-pink);
  border: 0;
  box-sizing: border-box;
  min-width: 200px;
  width: 200px;
  gap: 0;
}
.pp-site-header .pp-primary-navigation .wp-block-navigation__submenu-container a { color: inherit; }
.pp-site-header .pp-primary-navigation .wp-block-navigation-item__content,
.pp-site-header .pp-primary-navigation .wp-block-navigation-submenu__toggle,
.pp-site-header .pp-primary-navigation .wp-block-navigation__responsive-container-open,
.pp-site-header .pp-primary-navigation .wp-block-navigation__responsive-container-close {
  box-sizing: border-box;
  min-height: 44px;
}

.pp-site-header .pp-primary-navigation .wp-block-navigation__responsive-container-open,
.pp-site-header .pp-primary-navigation .wp-block-navigation__responsive-container-close { min-width: 44px; }
.pp-site-header :focus-visible,
.pp-footer-main :focus-visible,
.home .three-items :focus-visible { outline: 2px solid var(--wp--preset--color--deep-purple); outline-offset: 3px; }
.pp-site-header .pp-primary-navigation .wp-block-navigation__submenu-container :focus-visible,
.pp-footer-main :focus-visible { outline-color: var(--wp--preset--color--pink); }

.home .pp-main-content > .wp-block-post-content {
  box-sizing: border-box;
  margin-block-start: 144px;
  max-width: 1180px;
  width: 80%;
}
.home .three-items, .home .three-items .col-full { max-width: none; padding-inline: 0; width: 100%; }
.home .pp-main-content .section-title { font-size: 34.3728px !important; margin-top: 0; }
.home .three-items .course-container { align-items: start; column-gap: 0; row-gap: 0; padding-inline: 0; font-size: 1.1em; }
/* Source cards occupy 31.3% + 1% margins; retain this geometry inside grid tracks. */
.home .three-items ul.course-container > li.course { position: relative; width: 93.9%; margin-inline: 3%; }
.home .three-items .course-content { margin-bottom: 1.618em; }
.home .three-items .course-container img.wp-post-image { margin-bottom: 1.618em; }
.home .three-items .course-products { display: none; }
.home .three-items .course-title { color: var(--wp--preset--color--purple); font-size: 27.5088px !important; font-weight: 400; margin-top: 0; }
.home .three-items .entry p:not(.pp-home-lesson-count) { margin: 0 0 1.3em; }
.home .three-items .course-title a,
.pp-home-journal .wp-block-post-title a { font-weight: 300; }
.home .three-items .pp-home-lesson-count {
  position: absolute;
  top: 0;
  right: 0;
  margin: 2em 2.3em;
  background: color-mix(in srgb, var(--wp--preset--color--pink) 85%, transparent);
  color: var(--wp--preset--color--white);
  padding: 2px 6px;
  font-size: .9em;
  line-height: 1.45;
  text-transform: capitalize;
}
.home .three-items .button {
  background: var(--wp--preset--color--pink);
  border: 0;
  border-radius: .236em;
  box-sizing: border-box;
  color: var(--wp--preset--color--white);
  cursor: pointer;
  display: inline-block;
  font: inherit;
  font-size: inherit;
  font-weight: 600;
  max-width: 100%;
  min-height: 44px;
  padding: .618047em 1.41575em;
  text-decoration: none;
}
.home .three-items .button:hover { background: var(--wp--preset--color--purple); color: white; }
.home .three-items button.button { font-family: var(--wp--preset--font-family--course-button); line-height: 1.618; }
.home .three-items .button ins { text-decoration: none; }
.home .three-items .button del,
.home .three-items .button ins { white-space: nowrap; }
/* Home selections share the source bubble/author hierarchy; archives stay separate. */
:is(.home, .editor-styles-wrapper) .pp-testimonials-random { margin: 0; max-width: none; width: 100%; font-size: 17.6px; -webkit-font-smoothing: antialiased; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-testimonials-grid { gap: 0; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card { background: transparent; border: 0; border-radius: 0; margin: 0 10px; overflow: visible; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__quote { position: relative; background: white; border: 1px solid #e8e2e2; border-radius: 6px; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__quote::before,
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__quote::after { content: ""; position: absolute; width: 0; height: 0; border-left: 19px solid transparent; border-right: 19px solid transparent; border-top: 19px solid #e8e2e2; bottom: -19px; left: 21px; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__quote::after { border-left-width: 18px; border-right-width: 18px; border-top: 18px solid white; bottom: -18px; left: 22px; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__media { margin: 0; border-radius: 5px 5px 0 0; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__body { padding: 0; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__text { color: inherit; font-size: 14.08px; line-height: 1.45; padding-inline: 10px; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__text p { margin: 0; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__text a { color: var(--wp--preset--color--pink); }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__author { margin: 22px 0 40px; padding: 0; gap: 8px; min-height: 80px; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__avatar { flex-basis: 80px; height: 80px; width: 80px; border: 1px solid #e8e2e2; box-sizing: border-box; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__identity { min-width: 0; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__name { display: block; font-size: 22px; font-weight: 400; line-height: 1.2; overflow-wrap: anywhere; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-review-card__nickname { display: block; color: var(--wp--preset--color--pink); font-weight: 400; overflow-wrap: anywhere; }
:is(.home, .editor-styles-wrapper) .pp-testimonials-random .pp-testimonials__archive-link { text-align: center; margin: 0; }
.home .featured-courses-more { margin-top: 0; font-size: 17.6px; }
.home .featured-courses-more a,
.home .pp-testimonials-random .pp-testimonials__archive-link a {
  align-items: center;
  border-bottom: 2px solid currentColor;
  display: inline-flex;
  gap: 4px;
  font-size: 17.6px;
  font-weight: 600;
  line-height: 1.45;
  padding: 0 0 2px;
  text-decoration: none;
  -webkit-font-smoothing: antialiased;
}
.home .featured-courses-more a:hover,
.home .pp-testimonials-random .pp-testimonials__archive-link a:hover,
.home .featured-courses-more a:focus-visible,
.home .pp-testimonials-random .pp-testimonials__archive-link a:focus-visible { color: var(--wp--preset--color--deep-purple); }
.home .featured-courses-more a:focus-visible,
.home .pp-testimonials-random .pp-testimonials__archive-link a:focus-visible { outline: 2px solid var(--wp--preset--color--deep-purple); outline-offset: 4px; }
/* Use the same decorative arrow on both links instead of mixing icon markup. */
.home .featured-courses-more i { display: none; }
.home .featured-courses-more a::after,
.home .pp-testimonials-random .pp-testimonials__archive-link a::after { content: ""; display: block; flex: none; width: 18px; height: 14px; background: currentColor; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 14'%3E%3Cpath d='M0 6h13L9 2l2-2 7 7-7 7-2-2 4-4H0z'/%3E%3C/svg%3E") center / contain no-repeat; }

@media (max-width: 900px) {
  .home .three-items .course-container { column-gap: 2%; padding-inline: 1%; }
  .home .three-items ul.course-container > li.course { width: 100%; margin-inline: 0; }
}

.pp-home-journal { width: 80%; max-width: 1180px; margin-block: 109.656px 0; -webkit-font-smoothing: antialiased; }
.pp-home-journal > .wp-block-heading { margin-bottom: 31.248px; }
.pp-home-journal > .wp-block-query { margin-top: 0; }
.pp-home-journal .wp-block-post-template { gap: 4.347826%; align-items: start; }
.pp-home-journal .wp-block-post-title { font-size: 26.7795px !important; text-align: center; letter-spacing: -1px; margin: 0 0 22.186px; }
.pp-home-journal .wp-block-post-title a { color: var(--wp--preset--color--pink); }
.pp-home-journal .wp-block-post-featured-image { margin: 0 0 24.4046px; }
.pp-home-journal .wp-block-post-featured-image img { object-fit: contain; border-radius: 3px; }
.pp-home-journal .wp-block-post-excerpt { margin-top: 0; font-size: 15.0832px; text-align: center; }
.pp-home-journal .wp-block-post-excerpt p { margin: 0 0 1.3em; }
.pp-home-journal .wp-block-post-excerpt p:last-child { margin-bottom: 0; }
.pp-home-journal .wp-block-post-excerpt a { font-weight: 500; text-decoration: underline; text-underline-offset: 5px; }
.pp-home-journal .wp-block-post-excerpt .more-link { border-bottom: 0; }
.pp-home-journal .wp-block-post { padding-bottom: 107.8723px; }
.pp-footer-main { margin-top: 0; color: var(--wp--preset--color--footer-text); -webkit-font-smoothing: antialiased; }
.pp-footer-main > .wp-block-columns,
.pp-footer-main > p { width: 80vw; max-width: 1180px; margin-inline: auto; }
.pp-footer-main > .wp-block-columns { display: grid; grid-template-columns: minmax(0, 20.0454%) minmax(0, 1fr) minmax(0, 30.4348%); gap: 4.3478%; margin-bottom: 0; }
.pp-footer-main .wp-block-navigation,
.pp-footer-main .wp-block-navigation__container { gap: 0; }
.pp-footer-main .has-text-align-right { text-align: left; }
.pp-footer-main .wp-block-navigation,
.pp-footer-main .has-small-font-size { font-size: 16px !important; }
.pp-footer-main .wp-block-navigation .wp-block-navigation-item__content { color: #ffc2c2 !important; }
.pp-footer-main p { color: var(--wp--preset--color--footer-text); }
.pp-footer-main > p { margin-top: 43.3012px; }
.pp-footer-main a { font-weight: 400; }
.pp-footer-main p a { color: #ffc2c2; }
.pp-footer-main .wp-block-search { max-width: 100%; }
.pp-footer-main .wp-block-search__inside-wrapper { position: relative; border: 0; padding: 0; }
.pp-footer-main .wp-block-search__input { min-height: 44px; width: 100%; padding-left: 41.8868px; color: var(--wp--preset--color--purple); }
.pp-footer-main .wp-block-search__button { position: absolute; left: 0; top: 0; min-height: 44px; min-width: 44px; padding: 8px; margin: 0; background: transparent; border: 0; color: var(--wp--preset--color--deep-purple); }
.pp-footer-main .wp-block-search__button svg { width: 24px; height: 24px; transform: scaleX(-1); }

/* Match the source desktop menu while keeping native hover/click/keyboard actions. */
@media (min-width: 783px) {
  .pp-site-header .pp-header-actions .pp-mobile-account { display: none; }
  .pp-site-header .pp-header-actions { margin-inline-end: -42px; }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation__container { gap: 4px; font-size: inherit; width: 100%; justify-content: space-between; }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item { align-items: center; }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
    align-items: center;
    display: inline-flex;
    min-height: 74px;
    padding: 0 16px;
    font: inherit;
  }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation__container > .has-child > .wp-block-navigation-item__content { padding-right: 0; }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation__container > .has-child > .wp-block-navigation-submenu__toggle {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    padding: 0;
    margin: 0 16px 0 8px;
    min-height: 44px;
    width: 16px;
    color: inherit;
    background: transparent;
    border: 0;
  }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation-submenu__toggle svg { transform: none; }
  /* Core copies mobile overlay colors onto desktop submenus. */
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation__submenu-container {
    background: var(--wp--preset--color--menu-pink) !important;
    color: inherit !important;
  }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation__container > .has-child:hover > .wp-block-navigation-submenu__toggle { color: var(--wp--preset--color--deep-purple); }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content {
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
    padding: 12.25px 19.82px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;
  }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation-item__content:focus-visible { color: var(--wp--preset--color--deep-purple); }
  .pp-site-header nav.pp-primary-navigation .wp-block-navigation__submenu-container :focus-visible { outline-color: var(--wp--preset--color--deep-purple); }
}

@media (min-width: 783px) and (max-width: 1100px) {
  .pp-site-header .pp-header-actions { margin-inline-end: -5vw; }
}

@media (max-width: 782px) {
  body { padding-bottom: 64px; }
  .pp-site-header { min-height: 130px; padding-block: 0; }
  .pp-site-header .pp-site-header__inner {
    grid-template-columns: 1fr auto;
    gap: 12px;
    min-height: 130px;
    padding-block: 24px;
    width: calc(100% - 32px);
  }
  .pp-site-brand { grid-column: 1; grid-row: 1; }
  .pp-site-header nav.pp-primary-navigation { grid-column: 2; grid-row: 1; min-height: 44px; }
  .pp-site-header .pp-primary-navigation .pp-mobile-nav-link { display: flex; }
  .pp-site-header .pp-primary-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
  .pp-site-header .pp-primary-navigation .wp-block-navigation__responsive-container-open {
    align-items: center;
    border: 1px solid currentColor;
    border-radius: 4px;
    display: flex;
    gap: 8px;
    padding: 8px 12px;
  }
  .pp-site-header .pp-primary-navigation .wp-block-navigation__responsive-container-open::after { content: "Меню"; font-size: 14px; }
  .pp-site-header .pp-primary-navigation .wp-block-navigation__responsive-container.is-menu-open {
    background: var(--wp--preset--color--soft-pink);
    color: var(--wp--preset--color--deep-purple);
    padding: 24px;
  }
  .pp-site-header .pp-primary-navigation .is-menu-open .wp-block-navigation__responsive-container-content {
    align-items: stretch;
    padding-top: 56px;
  }
  .pp-site-header .pp-primary-navigation .is-menu-open .wp-block-navigation__container { align-items: stretch; gap: 8px; }
  .pp-site-header .pp-primary-navigation .is-menu-open .wp-block-navigation__submenu-container { background: transparent !important; color: var(--wp--preset--color--deep-purple) !important; min-width: 0; width: auto; }
  .pp-site-header .pp-primary-navigation .is-menu-open .wp-block-navigation-item__content { padding-block: 8px; }
  .pp-site-header .pp-header-actions {
    position: fixed;
    inset: auto 0 0;
    z-index: 1000;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    background: var(--wp--preset--color--deep-purple);
    min-height: 64px;
    width: 100%;
    margin-inline-end: 0;
  }
  .pp-site-header .pp-header-actions > * { min-width: 0; justify-self: stretch; margin: 0; }
  .pp-site-header .pp-header-actions .wp-block-woocommerce-customer-account { justify-content: center; height: 64px; }
  .pp-site-header .pp-header-actions .wp-block-woocommerce-customer-account a,
  .pp-site-header .pp-header-actions .pp-cart-link { color: var(--wp--preset--color--soft-pink); min-height: 64px; width: 100%; }
  .pp-site-header .pp-header-search { display: flex; align-items: center; justify-content: center; }
  .pp-site-header .pp-header-search .wp-block-search__inside-wrapper { border: 0; padding: 0; }
  .pp-site-header .pp-header-search .wp-block-search__button { background: transparent; color: var(--wp--preset--color--soft-pink); margin: 0; min-width: 44px; min-height: 44px; padding: 8px; }
  .pp-site-header .pp-header-search .wp-block-search__button svg { width: 24px; height: 24px; }
  .pp-site-header .pp-header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__inside-wrapper {
    position: absolute;
    inset: auto 16px 76px;
    display: flex;
    background: white;
    border: 2px solid var(--wp--preset--color--purple);
    padding: 6px;
  }
  .pp-site-header .pp-header-search:not(.wp-block-search__searchfield-hidden) .wp-block-search__button { background: var(--wp--preset--color--purple); }
  .pp-site-header .pp-header-search .wp-block-search__input { min-width: 0; min-height: 44px; }
  .pp-site-header .pp-header-actions :focus-visible { outline-color: var(--wp--preset--color--pink); }
  body:has(.pp-site-header .pp-primary-navigation .is-menu-open) .pp-site-header .pp-header-actions { visibility: hidden; }
  #cookie-notice { bottom: 64px; }
  .home .pp-main-content > .wp-block-post-content,
  .pp-home-journal { width: calc(100% - 32px); }
  .search .pp-page-shell { box-sizing: border-box; padding-inline: 16px; }
  .pp-home-journal .wp-block-post-template { grid-template-columns: minmax(0, 1fr); gap: 48px; }
  .pp-home-journal .wp-block-post { padding-bottom: 0; }
  .pp-home-journal { margin-block: 72px 64px; }
  .pp-footer-main { padding: 32px 16px !important; }
  .pp-footer-main > .wp-block-columns,
  .pp-footer-main > p { width: 100%; }
  .pp-footer-main > .wp-block-columns { grid-template-columns: minmax(0, 1fr); gap: 27.3012px; }
  .pp-footer-main > p { margin-top: 43.3012px; }
  .pp-footer-main .wp-block-search { max-width: 100%; }
}

/* Keep the existing Cookie Notice text and source rectangular consent button. */
#cookie-notice #cn-accept-cookie { border-radius: 3px !important; }
#cookie-notice #cn-notice-text a { color: var(--wp--preset--color--pink); }
