/* LV lesson family: approved service typography, surfaces, measures and density.
   Loaded only for /berniem/, /pieaugusajiem/ and /pasniedzeji/. */
:is(.lesson-page,.info-page--trust-about) {
 --lesson-paper: #f3f0e9;
 --lesson-stone: #e8e6e1;
 --lesson-charcoal: #191a18;
 --lesson-rule: #d8d0c2;
 --lesson-warm-gold: #bea16b;
 --lesson-measure: 44rem;
 --lesson-width: 76rem;
 --lesson-edge: 2rem;
 color: #2b2925; background: var(--lesson-paper);
}
:is(.lesson-page,.info-page--trust-about) :is(.lesson-container,.info-container) { width: min(calc(100% - 2 * var(--lesson-edge)),var(--lesson-width)); margin-inline: auto; }
:is(.lesson-page,.info-page--trust-about) :is(:is(h1:where(:not([data-heading-display])), :where([data-heading-display="1"])),:is(h2:where(:not([data-heading-display])), :where([data-heading-display="2"])),:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"])),:is(h4:where(:not([data-heading-display])), :where([data-heading-display="4"])),:is(h5:where(:not([data-heading-display])), :where([data-heading-display="5"]))) { font-family: var(--font-secondary); font-weight: 400; }
:is(.lesson-page,.info-page--trust-about) :is(p,li) { font-family: Roboto,Arial,sans-serif; font-size: 1rem; line-height: 1.75; }
.lesson-page .lesson-intro-composition { min-height: 26rem; padding: 2.5rem 0; display: flex; flex-direction: column; justify-content: center; color: #e9e4da; background-size: cover; background-position: center; }
.lesson-page--children-lessons .lesson-intro-composition { background-image: linear-gradient(90deg,#080908de 5%,#080908b8 35%,#08090844 75%,#08090810),var(--children-hero-art); }
.lesson-page--adult-lessons .lesson-intro-composition { background-position: center 65%; background-image: linear-gradient(90deg,#080908de 5%,#080908b8 35%,#08090844 75%,#08090810),var(--adult-hero-art,url('/assets/images/lesson/adult-lesson-hero.jpg')); }
.lesson-page .lesson-page-title { min-height: 0; padding: 0; border: 0; background: none; }
.lesson-page .lesson-page-title .lesson-container { display: block; text-align: left; }
.lesson-page .lesson-page-title img { display: none; }
.lesson-page .lesson-page-title :is(h1:where(:not([data-heading-display])), :where([data-heading-display="1"])) { max-width: 23ch; color: #f3f0e9; font-size: clamp(2.15rem,3vw,3.1rem); line-height: 1.17; letter-spacing: -.02em; text-wrap: balance; }
.lesson-page .lesson-intro-composition .lesson-hero { display: block; min-height: 0; padding: 0; background: none; text-align: left; }
.lesson-page .lesson-intro-composition .lesson-hero .lesson-container { max-width: none; }
.lesson-page .lesson-intro-composition .lesson-hero :is(h2:where(:not([data-heading-display])), :where([data-heading-display="2"])),
.lesson-page .lesson-intro-composition .lesson-hero :is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"])) { max-width: 43rem; margin: 1rem 0 0; color: #e5d3af; font-size: 1.3rem; line-height: 1.4; letter-spacing: 0; text-transform: none; }
.lesson-page .lesson-intro-composition .lesson-hero :is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"])) { color: #e9e4da; font-size: 1rem; line-height: 1.65; }
.lesson-page .lesson-features { padding: 2rem 0; background: var(--lesson-paper); }
.lesson-page .lesson-grid { gap: 2.5rem; }
.lesson-page .lesson-features article,
.lesson-page .lesson-pricing article { display: block; min-height: 0; padding: 1rem 0 0; border: 0; border-top: 1px solid #c6bda9; border-radius: 0; background: none; box-shadow: none; text-align: left; }
.lesson-page .lesson-features article:hover,
.lesson-page .lesson-pricing article:hover { transform: none; box-shadow: none; }
.lesson-page .lesson-features img,
.lesson-page .lesson-title-band img,
.lesson-page .lesson-improvisation-feature img { display: none; }
.lesson-page .lesson-features :is(:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"])),:is(h4:where(:not([data-heading-display])), :where([data-heading-display="4"]))) { margin: 0; color: #36322c; font-size: 1.3rem; line-height: 1.35; }
.lesson-page .lesson-features p { max-width: var(--lesson-measure); margin-top: .8rem; color: #615c53; font-size: 1rem; line-height: 1.7; }
.lesson-page .lesson-title-band { padding: 1.5rem 0 0; background: var(--lesson-stone); color: #302e29; box-shadow: none; }
.lesson-page .lesson-title-band .lesson-container { display: block; text-align: left; }
.lesson-page .lesson-title-band :is(:is(h2:where(:not([data-heading-display])), :where([data-heading-display="2"])),:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"]))) { font-size: clamp(1.6rem,2.1vw,1.9rem); line-height: 1.3; text-transform: none; }
.lesson-page .lesson-pricing { padding: 1.25rem 0; background: var(--lesson-stone); }
.lesson-page .lesson-pricing :is(:is(h4:where(:not([data-heading-display])), :where([data-heading-display="4"])),:is(h5:where(:not([data-heading-display])), :where([data-heading-display="5"]))) { font-size: clamp(1.5rem,2.4vw,2.15rem); color: #302e29; line-height: 1.5; }
.lesson-page .lesson-primary-cta { padding: 0 max(var(--lesson-edge),calc((100% - var(--lesson-width))/2)) 1.75rem; background: var(--lesson-stone); text-align: left; }
:is(.lesson-page,.info-page--trust-about) :is(.lesson-button,.privacy-embed button) { display: inline-flex; align-items: center; justify-content: center; min-height: 2.75rem; padding: .65rem 1.1rem; border: 1px solid #a98c56; border-radius: .35rem; color: #e5d3af; background: #20231d; box-shadow: none; font-size: .9rem; font-weight: 500; line-height: 1.3; letter-spacing: .02em; text-decoration: none; }
:is(.lesson-page,.info-page--trust-about) :is(.lesson-button,.privacy-embed button):hover { color: #fff4dc; background: #34392c; transform: none; }
:is(.lesson-page,.info-page--trust-about) a:focus-visible { outline: 2px solid #a98c56; outline-offset: 3px; }
.lesson-page .lesson-improvisation-composition { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); column-gap: 2.5rem; row-gap: .75rem; padding: 2.125rem max(var(--lesson-edge),calc((100% - var(--lesson-width))/2)); background: var(--lesson-charcoal); }
.lesson-page .lesson-improvisation-composition::after { content: ''; grid-column: 2; grid-row: 1 / 3; background-size: cover; background-position: center; min-height: 15rem; }
.lesson-page--children-lessons .lesson-improvisation-composition::after { background-image: linear-gradient(90deg,#191a1855,#191a1800 35%),var(--children-improvisation-art); }
.lesson-page--adult-lessons .lesson-improvisation-composition::after { background-image: linear-gradient(90deg,#191a1855,#191a1800 35%),var(--adult-improvisation-art); }
.lesson-page .lesson-improvisation-composition .lesson-title-band { grid-column: 1; grid-row: 1; padding: 0; color: #f3f0e9; background: none; }
.lesson-page .lesson-improvisation-composition .lesson-hero { display: block; grid-column: 1; grid-row: 2; padding: 0; min-height: 0; text-align: left; background: none; }
.lesson-page .lesson-improvisation-composition .lesson-container { width: 100%; max-width: none; margin: 0; }
.lesson-page .lesson-improvisation-composition .lesson-hero :is(:is(h2:where(:not([data-heading-display])), :where([data-heading-display="2"])),:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"]))) { margin: 0; color: #e9e4da; font-size: 1.13rem; line-height: 1.55; letter-spacing: 0; text-transform: none; }
.lesson-page .lesson-improvisation-composition .lesson-hero :is(:is(h2:where(:not([data-heading-display])), :where([data-heading-display="2"])),:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"]))) + :is(:is(h2:where(:not([data-heading-display])), :where([data-heading-display="2"])),:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"]))) { margin-top: .75rem; }
.lesson-page .lesson-improvisation-feature { padding: 1.75rem 0; text-align: left; background: var(--lesson-paper); }
.lesson-page .lesson-improvisation-feature :is(h4:where(:not([data-heading-display])), :where([data-heading-display="4"])) { margin: 0; max-width: var(--lesson-measure); padding-top: 1rem; border-top: 1px solid #c6bda9; color: #36322c; font-size: 1.3rem; }
.lesson-page .lesson-improvisation-feature p { max-width: var(--lesson-measure); margin-top: .8rem; color: #615c53; }
.lesson-page .lesson-flowkey-logo { padding: 1rem max(var(--lesson-edge),calc((100% - var(--lesson-width))/2)); background: var(--lesson-stone); text-align: left; }
.lesson-page .lesson-flowkey-logo img { width: 8rem; height: 3rem; }
.lesson-page .lesson-flowkey-promo { padding: .5rem 0 2rem; background: var(--lesson-stone); text-align: left; }
.lesson-page .lesson-flowkey-promo p { max-width: var(--lesson-measure); margin-bottom: 1.25rem; color: #615c53; }
.lesson-page .lesson-flowkey-promo__images { gap: 1.25rem; margin-bottom: 1.25rem; }
.lesson-page .lesson-flowkey-promo__images img { border: 0; border-radius: 0; box-shadow: none; object-fit: contain; background: transparent; }
.lesson-page .lesson-flowkey-promo__images img:hover { transform: none; }
/* Teacher route: retain its existing service-linked heading semantics and profile. */
.info-page--trust-about .teacher-intro-composition { padding: 2rem 0; color: #f3f0e9; background: var(--lesson-charcoal); }
.info-page--trust-about .teacher-intro-composition :is(h1:where(:not([data-heading-display])), :where([data-heading-display="1"])) { display: flex; align-items: center; min-height: calc(clamp(2.15rem,3vw,3.1rem) * 1.17); margin: 0; color: var(--lv-crumb-gold, #b6a98f); font-size: clamp(1.35rem,1.8vw,1.86rem); line-height: 1.17; letter-spacing: -.02em; }
.info-page--trust-about .info-title-band { padding: 1.5rem 0 0; color: #302e29; background: var(--lesson-paper); box-shadow: none; }
.info-page--trust-about .info-title-band__inner { justify-content: flex-start; text-align: left; gap: 0; }
.info-page--trust-about .info-title-band img { display: none; }
.info-page--trust-about .info-title-band :is(:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"])),:is(h4:where(:not([data-heading-display])), :where([data-heading-display="4"]))) { padding: 0; border: 0; color: inherit; font-size: clamp(1.6rem,2.1vw,1.9rem); line-height: 1.3; }
.info-page--trust-about .teacher-intro-composition .info-title-band { padding: 0; color: #e5d3af; background: none; }
.info-page--trust-about .trust-services { padding: 1.25rem 0 0; background: none; }
.info-page--trust-about .trust-services .info-container { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem 2.5rem; }
.info-page--trust-about .trust-services :is(h1:where(:not([data-heading-display])), :where([data-heading-display="1"])) { max-width: 26ch; color: #f3f0e9; font-size: clamp(1.5rem,2.5vw,2.15rem); line-height: 1.3; text-shadow: none; }
.info-page--trust-about .trust-services a:hover :is(h1:where(:not([data-heading-display])), :where([data-heading-display="1"])) { color: #e5d3af; transform: none; }
.info-page--trust-about .teacher-profile { padding: 1.5rem 0 2rem; background: var(--lesson-paper); }
.info-page--trust-about .teacher-profile__grid { grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 2.5rem; align-items: start; }
.info-page--trust-about .teacher-profile img { width: min(100%,26rem); border: 0; border-radius: 0; box-shadow: none; filter: none; aspect-ratio: 1; object-fit: cover; margin: 0; }
.info-page--trust-about .teacher-profile :is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"])) { color: #36322c; font-size: clamp(1.6rem,2.1vw,1.9rem); line-height: 1.3; }
.info-page--trust-about .teacher-profile :is(h6:where(:not([data-heading-display])), :where([data-heading-display="6"])) { margin: .8rem 0 .6rem; color: #78603c; font-size: .95rem; letter-spacing: .02em; line-height: 1.5; }
.info-page--trust-about .teacher-profile p { max-width: var(--lesson-measure); color: #615c53; }
.info-page--trust-about .teacher-profile details { margin-top: 1rem; padding: .75rem 0; border-color: #c6bda9; }
.info-page--trust-about .teacher-profile summary { min-height: 2.75rem; color: #78603c; }
.info-page--trust-about .teacher-profile summary :is(h6:where(:not([data-heading-display])), :where([data-heading-display="6"])) { display: inline; margin: 0; }
.info-page--trust-about .teacher-profile li { margin-bottom: .65rem; color: #615c53; }
.info-page--trust-about .info-video-gallery { padding: 1.5rem 0 2rem; background: var(--lesson-paper); }
.info-page--trust-about .info-video-gallery__grid { gap: 2rem; }
.info-page--trust-about .privacy-embed { min-height: 18rem; border: 0; border-radius: 0; box-shadow: none; }
.info-page--trust-about .privacy-embed:hover { box-shadow: none; }
@media (max-width:1023px) and (min-width:768px) {
 :is(.lesson-page,.info-page--trust-about) { --lesson-edge: 1.5rem; }
 .lesson-page .lesson-improvisation-composition { column-gap: 1.5rem; }
 .info-page--trust-about .teacher-profile__grid { gap: 1.5rem; }
}
@media (max-width:767px) {
 :is(.lesson-page,.info-page--trust-about) { --lesson-edge: 1rem; }
 .lesson-page .lesson-intro-composition { min-height: 25rem; padding-block: 2rem; background-position: 60% center; }
 .lesson-page .lesson-page-title :is(h1:where(:not([data-heading-display])), :where([data-heading-display="1"])) { font-size: clamp(2rem,8.2vw,3rem); line-height: 1.2; }
 .lesson-page .lesson-intro-composition .lesson-hero :is(h2:where(:not([data-heading-display])), :where([data-heading-display="2"])) { font-size: 1.13rem; }
 .lesson-page .lesson-intro-composition .lesson-hero :is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"])) { font-size: .96rem; }
 .lesson-page .lesson-grid--2 { grid-template-columns: 1fr; gap: 1.25rem; }
 .lesson-page .lesson-features { padding-block: 1.75rem; }
 .lesson-page .lesson-features :is(:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"])),:is(h4:where(:not([data-heading-display])), :where([data-heading-display="4"]))) { font-size: 1.13rem; }
 .lesson-page .lesson-title-band :is(:is(h2:where(:not([data-heading-display])), :where([data-heading-display="2"])),:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"]))) { font-size: 1.5rem; }
 .lesson-page .lesson-improvisation-composition { grid-template-columns: 1fr; gap: 1rem; padding-block: 1.875rem; }
 .lesson-page .lesson-improvisation-composition .lesson-hero { grid-row: 3; }
 .lesson-page .lesson-improvisation-composition::after { grid-column: 1; grid-row: 2; min-height: 0; aspect-ratio: 16/9; }
 .lesson-page .lesson-flowkey-promo__images { grid-template-columns: 1fr; }
 .info-page--trust-about .trust-services .info-container { grid-template-columns: 1fr; gap: .8rem; }
 .info-page--trust-about .teacher-intro-composition { padding-block: 1.875rem; }
 .info-page--trust-about .teacher-profile__grid { grid-template-columns: 1fr; gap: 1.5rem; }
 .info-page--trust-about .teacher-profile img { width: min(100%,26rem); }
 .info-page--trust-about .info-video-gallery__grid { grid-template-columns: 1fr; gap: 1.5rem; }
}
/* Clear the remaining legacy heading/alignment and 768px stack rules. */
.lesson-page .lesson-grid--2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.lesson-page .lesson-features article { place-items: normal; align-content: normal; }
.lesson-page .lesson-features :is(:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"])),:is(h4:where(:not([data-heading-display])), :where([data-heading-display="4"])),p) { width: 100%; text-align: left; }
.lesson-page .lesson-title-band :is(:is(h2:where(:not([data-heading-display])), :where([data-heading-display="2"])),:is(h3:where(:not([data-heading-display])), :where([data-heading-display="3"]))) { color: inherit; }
.lesson-page .lesson-flowkey-promo__images { grid-template-columns: repeat(3,minmax(0,1fr)); }
.info-page--trust-about .info-title-band__inner { display: block; }
@media (max-width:767px) {
 .lesson-page .lesson-grid--2,
 .lesson-page .lesson-flowkey-promo__images { grid-template-columns: 1fr; }
}

/* Crop the existing square logo canvas to its wordmark, without editing the file. */
.lesson-page .lesson-flowkey-logo img { object-fit: cover; object-position: center; }
@media (max-width:1024px) {
 .lesson-page--children-lessons .lesson-intro-composition {
  background-image: linear-gradient(90deg,#080908de,#080908b8 65%,#08090899),var(--children-hero-art);
 }
}

/* Current teachers route belongs to the existing lesson navigation group. */
.site-header--lv .desktop-nav > .nav__list > .nav__item > .nav__dropdown-toggle[aria-current="true"] { color: #fff3d2; }
.site-header--lv .nav__dropdown-toggle[aria-current="true"]::before { left: 0; right: 0; }
.site-header--lv .mobile-nav__group-toggle[aria-current="true"] { color: #e5d3af; }

/* Supplied children photographs: responsive backgrounds preserve the approved DOM and gradients. */
 .lesson-page--children-lessons { --children-hero-art: url('/assets/images/lesson/children-practice-hero-1920.webp'); --children-improvisation-art: url('/assets/images/lesson/children-practice-improvisation-768.webp'); }
 @supports (background-image: image-set(url('image.avif') type('image/avif'))) {
  .lesson-page--children-lessons { --children-hero-art: image-set(url('/assets/images/lesson/children-practice-hero-1920.avif') type('image/avif') 1x, url('/assets/images/lesson/children-practice-hero-1920.webp') type('image/webp') 1x, url('/assets/images/lesson/children-practice-hero-1920.avif') type('image/avif') 2x, url('/assets/images/lesson/children-practice-hero-1920.webp') type('image/webp') 2x); --children-improvisation-art: image-set(url('/assets/images/lesson/children-practice-improvisation-768.avif') type('image/avif') 1x, url('/assets/images/lesson/children-practice-improvisation-768.webp') type('image/webp') 1x, url('/assets/images/lesson/children-practice-improvisation-1200.avif') type('image/avif') 2x, url('/assets/images/lesson/children-practice-improvisation-1200.webp') type('image/webp') 2x); }
 }
@media (max-width:1440px) {
 .lesson-page--children-lessons { --children-hero-art: url('/assets/images/lesson/children-practice-hero-1440.webp'); --children-improvisation-art: url('/assets/images/lesson/children-practice-improvisation-768.webp'); }
 @supports (background-image: image-set(url('image.avif') type('image/avif'))) {
  .lesson-page--children-lessons { --children-hero-art: image-set(url('/assets/images/lesson/children-practice-hero-1440.avif') type('image/avif') 1x, url('/assets/images/lesson/children-practice-hero-1440.webp') type('image/webp') 1x, url('/assets/images/lesson/children-practice-hero-1920.avif') type('image/avif') 2x, url('/assets/images/lesson/children-practice-hero-1920.webp') type('image/webp') 2x); --children-improvisation-art: image-set(url('/assets/images/lesson/children-practice-improvisation-768.avif') type('image/avif') 1x, url('/assets/images/lesson/children-practice-improvisation-768.webp') type('image/webp') 1x, url('/assets/images/lesson/children-practice-improvisation-1200.avif') type('image/avif') 2x, url('/assets/images/lesson/children-practice-improvisation-1200.webp') type('image/webp') 2x); }
 }
}
@media (max-width:1024px) {
 .lesson-page--children-lessons { --children-hero-art: url('/assets/images/lesson/children-practice-hero-1440.webp'); --children-improvisation-art: url('/assets/images/lesson/children-practice-improvisation-480.webp'); }
 @supports (background-image: image-set(url('image.avif') type('image/avif'))) {
  .lesson-page--children-lessons { --children-hero-art: image-set(url('/assets/images/lesson/children-practice-hero-1440.avif') type('image/avif') 1x, url('/assets/images/lesson/children-practice-hero-1440.webp') type('image/webp') 1x, url('/assets/images/lesson/children-practice-hero-1920.avif') type('image/avif') 2x, url('/assets/images/lesson/children-practice-hero-1920.webp') type('image/webp') 2x); --children-improvisation-art: image-set(url('/assets/images/lesson/children-practice-improvisation-480.avif') type('image/avif') 1x, url('/assets/images/lesson/children-practice-improvisation-480.webp') type('image/webp') 1x, url('/assets/images/lesson/children-practice-improvisation-768.avif') type('image/avif') 2x, url('/assets/images/lesson/children-practice-improvisation-768.webp') type('image/webp') 2x); }
 }
}
@media (max-width:767px) {
 .lesson-page--children-lessons { --children-hero-art: url('/assets/images/lesson/children-practice-hero-mobile-768.webp'); --children-improvisation-art: url('/assets/images/lesson/children-practice-improvisation-480.webp'); }
 @supports (background-image: image-set(url('image.avif') type('image/avif'))) {
  .lesson-page--children-lessons { --children-hero-art: image-set(url('/assets/images/lesson/children-practice-hero-mobile-768.avif') type('image/avif') 1x, url('/assets/images/lesson/children-practice-hero-mobile-768.webp') type('image/webp') 1x, url('/assets/images/lesson/children-practice-hero-mobile-1200.avif') type('image/avif') 2x, url('/assets/images/lesson/children-practice-hero-mobile-1200.webp') type('image/webp') 2x); --children-improvisation-art: image-set(url('/assets/images/lesson/children-practice-improvisation-480.avif') type('image/avif') 1x, url('/assets/images/lesson/children-practice-improvisation-480.webp') type('image/webp') 1x, url('/assets/images/lesson/children-practice-improvisation-768.avif') type('image/avif') 2x, url('/assets/images/lesson/children-practice-improvisation-768.webp') type('image/webp') 2x); }
 }
}
@media (max-width:767px) { .lesson-page--children-lessons .lesson-intro-composition { background-position: 44% center; } }
@media (min-width:1441px) { .lesson-page--children-lessons .lesson-intro-composition { background-position: center 20%; } }

/* Supplied adult improvisation photograph: preserve the existing image box and split. */
.lesson-page--adult-lessons { --adult-improvisation-art: url('/assets/images/lesson/adult-improvisation-final-768.webp'); }
.lesson-page--adult-lessons .lesson-improvisation-composition::after { background-position: 80% center; }
@supports (background-image: image-set(url('image.avif') type('image/avif'))) {
 .lesson-page--adult-lessons { --adult-improvisation-art: image-set(url('/assets/images/lesson/adult-improvisation-final-768.avif') type('image/avif') 1x, url('/assets/images/lesson/adult-improvisation-final-768.webp') type('image/webp') 1x, url('/assets/images/lesson/adult-improvisation-final-1200.avif') type('image/avif') 2x, url('/assets/images/lesson/adult-improvisation-final-1200.webp') type('image/webp') 2x); }
}
@media (max-width:340px) {
 .lesson-page--adult-lessons { --adult-improvisation-art: url('/assets/images/lesson/adult-improvisation-final-480.webp'); }
 @supports (background-image: image-set(url('image.avif') type('image/avif'))) {
  .lesson-page--adult-lessons { --adult-improvisation-art: image-set(url('/assets/images/lesson/adult-improvisation-final-480.avif') type('image/avif') 1x, url('/assets/images/lesson/adult-improvisation-final-480.webp') type('image/webp') 1x, url('/assets/images/lesson/adult-improvisation-final-768.avif') type('image/avif') 2x, url('/assets/images/lesson/adult-improvisation-final-768.webp') type('image/webp') 2x); }
 }
}

/* Adult Flowkey: modest mobile image density, retaining complete image content. */
.lesson-page--adult-lessons .lv-responsive-photo { display: contents; }
.lesson-page--adult-lessons .lv-responsive-photo > source { display: none; }
@supports (background-image: image-set(url('image.avif') type('image/avif'))) {
 @media (max-width:767px) {
  .lesson-page--adult-lessons { --adult-hero-art: image-set(url('/assets/images/lesson/responsive/adult-lesson-hero-1280.avif') type('image/avif'),url('/assets/images/lesson/adult-lesson-hero.jpg') type('image/jpeg')); }
 }
}
@media (max-width:767px) {
 .lesson-page--adult-lessons .lesson-flowkey-promo__images { gap: 1rem; margin-bottom: 1rem; }
 .lesson-page--adult-lessons .lesson-flowkey-promo__images img { max-width: 20rem; justify-self: center; }
}

/* Compact layout for the teachers pages. */
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-intro-composition { padding-block: .9rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-intro-composition h1 { min-height: 0; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile { padding-block: 1.5rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__grid {
  grid-template-columns: minmax(0, 280px) minmax(0, 1fr);
  gap: clamp(1.25rem, 4vw, 3rem);
}
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__grid > div {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  align-self: center;
  align-items: baseline;
  gap: .45rem 1rem;
  max-width: 38rem;
}
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__grid > div > :is(h3:not([data-heading-display]), [data-heading-display="3"], details) { grid-column: 1 / -1; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__grid > div > :is(h3:not([data-heading-display]), [data-heading-display="3"]) { margin-bottom: .55rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__grid > div > :is(p, h6, [data-heading-display="6"]) { margin: 0; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__grid > div > p { font-size: .875rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile details { margin-top: .6rem; padding-block: 0; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile summary { line-height: 2.75rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) [data-info-section="video-intro"] { min-height: 0; padding-block: .6rem .45rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .info-video-gallery { padding-block: .55rem 1.75rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .info-video-gallery__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .privacy-embed--video {
  min-height: 0;
  aspect-ratio: 16 / 9;
  gap: .55rem;
  padding: .75rem;
}
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .privacy-embed--video strong { font-size: clamp(.9rem, 1.6vw, 1.15rem); }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .privacy-embed--video::before { background: linear-gradient(180deg, rgb(0 0 0 / 18%), rgb(0 0 0 / 66%)); }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .privacy-embed--video button { min-height: 44px; padding: .45rem 1rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .privacy-embed--video iframe { position: absolute; inset: 0; height: 100%; min-height: 0; }

@media (max-width: 767px) {
  .info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__grid,
  .info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .info-video-gallery__grid { grid-template-columns: minmax(0, 1fr); }
  .info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile img { width: min(100%, 224px); }
  .info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__grid > div { gap: .5rem .7rem; }
}

.lesson-pricing-compact {
  padding-block: 1rem;
  border-block: 1px solid var(--lesson-rule);
  background: var(--lesson-stone);
}
.lesson-pricing-compact .lesson-container {
  display: grid;
  gap: .75rem 1.5rem;
  align-items: center;
}
.lesson-pricing-compact h2 {
  margin: 0;
  font-size: 1.35rem;
  line-height: 1.2;
  letter-spacing: .06em;
}
.lesson-pricing-compact__prices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.lesson-page .lesson-pricing-compact__prices p {
  margin: 0;
  color: #302e29;
  font: 500 clamp(1rem, 2vw, 1.35rem)/1.35 Roboto, Arial, sans-serif;
  text-align: center;
  white-space: nowrap;
}
.lesson-pricing-compact__prices p + p {
  border-inline-start: 1px solid #c6bda9;
}
.lesson-pricing-compact .lesson-button { gap: .55rem; }

@media (min-width: 1024px) {
  .lesson-pricing-compact .lesson-container {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }
  .lesson-pricing-compact__prices {
    border-inline: 1px solid #c6bda9;
  }
}
.lesson-pricing-compact img { display: none; }

html :is(.lesson-page--children-lessons, .lesson-page--adult-lessons:is(:lang(lv), :lang(en), :lang(ru))) .lesson-intro-composition .lesson-hero p {
  max-width: 36rem;
  margin: 1rem 0 0;
  color: #f3f0e9;
  line-height: 1.55;
}
html :is(.lesson-page--children-lessons, .lesson-page--adult-lessons:is(:lang(lv), :lang(en), :lang(ru))) .lesson-hero .lesson-button--hero {
  gap: .75rem;
  margin-top: 1.125rem;
  color: #20180e;
  background: #d6b475;
  font-weight: 600;
}
html :is(.lesson-page--children-lessons, .lesson-page--adult-lessons:is(:lang(lv), :lang(en), :lang(ru))) .lesson-hero .lesson-button--hero:hover {
  background: #e5c88f;
}
html :is(.lesson-page--children-lessons, .lesson-page--adult-lessons:is(:lang(lv), :lang(en), :lang(ru))) .lesson-features__title,
.lesson-page--adult-lessons:is(:lang(lv), :lang(en), :lang(ru)) .lesson-flowkey-promo #lesson-flowkey-external {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}
html :is(.lesson-page--children-lessons, .lesson-page--adult-lessons:is(:lang(lv), :lang(en), :lang(ru))) .lesson-improvisation-composition p {
  margin: 0;
  color: #e9e4da;
  font-size: 1.125rem;
  line-height: 1.55;
}
html .lesson-page .lesson-pricing-compact .lesson-button:focus-visible {
  outline: 3px solid #674b1e;
}

@supports (background-image: image-set(url('image.avif') type('image/avif'))) {
  @media (width <= 767px) and (resolution <= 1dppx) {
    .lesson-page--adult-lessons:is(:lang(lv), :lang(en), :lang(ru)) {
      --adult-hero-art: image-set(url('/assets/images/lesson/responsive/adult-hero-896.avif') type('image/avif'), url('/assets/images/lesson/adult-lesson-hero.jpg') type('image/jpeg'));
    }
  }
  @media (767px < width <= 1920px) and (resolution <= 1dppx) {
    .lesson-page--adult-lessons:is(:lang(lv), :lang(en), :lang(ru)) {
      --adult-hero-art: image-set(url('/assets/images/lesson/responsive/adult-hero-1920.avif') type('image/avif'), url('/assets/images/lesson/adult-lesson-hero.jpg') type('image/jpeg'));
    }
  }
}

.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-intro-composition {
  background: var(--lesson-paper);
  color: #302e29;
  border-bottom: 1px solid var(--lesson-rule);
}
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-intro-composition h1 { color: inherit; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__grid > div > * { grid-column: 1 / -1; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile h2 { margin: 0; font-size: clamp(1.65rem, 2.6vw, 2.125rem); line-height: 1.2; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__facts {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: .25rem .8rem;
  margin: .3rem 0;
  font-size: .9rem;
}
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile__facts dd { margin: 0; color: #674b1e; font-weight: 600; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile .teacher-profile__cta {
  justify-self: start;
  gap: .55rem;
  background: #d6b475;
  color: #20180e;
  font-weight: 600;
}
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile .teacher-profile__cta:hover { background: #e5c88f; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile summary { min-height: 44px; line-height: 1.4; padding-block: .72rem; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .teacher-profile summary:focus-visible { outline: 2px solid #674b1e; outline-offset: 2px; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) [data-info-section="video-intro"] h2 { margin: 0; font-size: clamp(1.5rem, 2vw, 1.9rem); }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .privacy-embed--video {
  align-content: end;
  justify-content: start;
  justify-items: start;
  text-align: left;
  border-radius: .45rem;
}
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .privacy-embed--video button { justify-self: start; }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .privacy-embed--video::before { background: linear-gradient(180deg, #0002, #000d); }
.info-page--trust-about:is(:lang(lv), :lang(en), :lang(ru)) .privacy-embed--video h3 { margin: 0; color: #fff; font-size: clamp(1rem, 1.6vw, 1.2rem); }
.info-page--trust-about .privacy-embed--video[data-embed-active] iframe { height: calc(100% - 2rem); }
.info-page--trust-about .privacy-embed--video[data-embed-active] > a {
  position: absolute;
  inset-inline-start: .75rem;
  inset-block-end: .25rem;
  line-height: 1.5rem;
}
.info-page--trust-about .privacy-embed--video[data-embed-active]:focus,
.info-page--trust-about .privacy-embed--video :focus-visible { outline: 2px solid #d6b475; outline-offset: 2px; }
