/* Viešas pagrindinis puslapis (index.html). Visi selektoriai su prefiksu hp-,
   kad neveiktų registracijos, prisijungimo ir prisijungusių vartotojų puslapių. */

:root {
	--hp-navy: #14233c;
	--hp-text: #2b3344;
	--hp-muted: #5d6676;
	--hp-teal: #67d1d4;
	--hp-teal-hover: #52c4c8;
	--hp-cream: #faf6ef;
	--hp-line: #e2e5ea;
	--hp-icon: #17324d;
	/* Fraunces netinka: Google Fonts versijoje „ū“ ir „Ū“ brūkšnelis atvaizduojamas ne vietoje */
	--hp-serif: 'Literata', Georgia, 'Times New Roman', serif;
	--hp-sans: 'Plus Jakarta Sans', 'Segoe UI', Arial, sans-serif;
}

/* Bendri elementai: perrašomos globalios stiliai.css ir bootstrap.css taisyklės */
.hp-header, .hp-hero, .hp-section, .hp-footer {font-family: var(--hp-sans); color: var(--hp-text); line-height: 1.5;}
:where(.hp-header, .hp-hero, .hp-section, .hp-footer) :is(ul, ol) {list-style: none; margin: 0; padding: 0; line-height: inherit;}
:where(.hp-header, .hp-hero, .hp-section, .hp-footer) a,
:where(.hp-header, .hp-hero, .hp-section, .hp-footer) a:hover,
:where(.hp-header, .hp-hero, .hp-section, .hp-footer) a:focus {text-decoration: none;}
:where(.hp-header, .hp-hero, .hp-section, .hp-footer) svg {display: block; flex-shrink: 0;}
.hp-header :focus-visible, .hp-hero :focus-visible, .hp-section :focus-visible, .hp-footer :focus-visible {outline: 3px solid var(--hp-navy); outline-offset: 3px; border-radius: 6px;}
/* Desktop ir mobile teksto variantai (mobile – trumpesnis, kaip maketuose) */
.hp-m {display: none;}

/* Mygtukai */
.hp-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	height: 46px; padding: 0 26px; border-radius: 999px;
	font: 700 15px/1 var(--hp-sans); color: var(--hp-navy); white-space: nowrap;
	border: 1px solid transparent; cursor: pointer;
	transition: background-color .2s, box-shadow .2s, transform .2s, border-color .2s;
}
.hp-btn:hover {transform: translateY(-1px);}
.hp-btn svg {width: 16px; height: 16px;}
.hp-btn--primary, .hp-btn--primary:hover, .hp-btn--primary:focus {color: var(--hp-navy);}
.hp-btn--primary {background: var(--hp-teal); box-shadow: 0 8px 18px -6px rgba(54, 170, 175, .55);}
.hp-btn--primary:hover {background: var(--hp-teal-hover); box-shadow: 0 10px 22px -6px rgba(54, 170, 175, .6);}
.hp-btn--ghost, .hp-btn--ghost:hover, .hp-btn--ghost:focus {color: var(--hp-navy);}
.hp-btn--ghost {background: #fff; border-color: var(--hp-line); box-shadow: 0 4px 14px -6px rgba(20, 35, 60, .14);}
.hp-btn--ghost:hover {border-color: #c9cfd7; box-shadow: 0 8px 18px -8px rgba(20, 35, 60, .2);}
.hp-btn--sm {height: 40px; padding: 0 20px; font-size: 14px;}

/* Navigacija */
.hp-header {position: relative; z-index: 50; background: #fff; padding: 0; height: auto;}
.hp-header__inner {
	display: flex; align-items: center; gap: 24px;
	max-width: 1332px; height: 72px; margin: 0 auto; padding: 0 24px;
}
.hp-logo {display: inline-flex; align-items: center; gap: 9px; color: var(--hp-navy); margin-right: auto;}
.hp-logo:hover, .hp-logo:focus {color: var(--hp-navy);}
.hp-logo svg {width: 34px; height: 30px;}
.hp-logo span {font: 800 22px/1 var(--hp-sans); letter-spacing: -.035em;}

.hp-nav {display: flex; align-items: center; gap: 26px;}
.hp-nav__list {display: flex; align-items: center; gap: 26px; white-space: nowrap;}
.hp-nav__item {position: relative;}
.hp-nav__link, .hp-nav__link:focus {
	display: inline-flex; align-items: center; gap: 5px; padding: 8px 0;
	font: 600 14px/1.2 var(--hp-sans); color: var(--hp-navy);
	background: none; border: 0; cursor: pointer;
}
.hp-nav__link {position: relative;}
.hp-nav__link::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 2px; height: 2px;
	background: var(--hp-teal); border-radius: 2px; transform: scaleX(0); transition: transform .2s;
}
.hp-nav__link:hover {color: var(--hp-navy);}
.hp-nav__link:hover::after, .hp-nav__toggle[aria-expanded="true"]::after {transform: scaleX(1);}
.hp-nav__toggle svg {width: 10px; height: 10px; transition: transform .2s;}
.hp-nav__toggle[aria-expanded="true"] svg {transform: rotate(180deg);}
.hp-nav__sub {
	position: absolute; top: calc(100% + 10px); left: -18px; min-width: 230px; padding: 8px;
	background: #fff; border-radius: 14px; box-shadow: 0 18px 40px -14px rgba(20, 35, 60, .28);
	opacity: 0; visibility: hidden; transform: translateY(-4px); transition: opacity .18s, transform .18s, visibility .18s;
}
.hp-nav__item--drop:hover .hp-nav__sub,
.hp-nav__item--drop:focus-within .hp-nav__sub,
.hp-nav__toggle[aria-expanded="true"] + .hp-nav__sub {opacity: 1; visibility: visible; transform: none;}
.hp-nav__sub a, .hp-nav__sub a:focus {display: block; padding: 10px 12px; border-radius: 9px; font: 600 14px/1.3 var(--hp-sans); color: var(--hp-navy);}
.hp-nav__sub a:hover {background: var(--hp-cream); color: var(--hp-navy);}
.hp-nav__actions {display: flex; align-items: center; gap: 12px;}

.hp-burger {
	display: none; width: 44px; height: 44px; margin-right: -8px; padding: 0;
	background: none; border: 0; cursor: pointer; color: var(--hp-navy);
}
.hp-burger svg {width: 28px; height: 28px; margin: 0 auto;}
.hp-burger .hp-burger__close, .hp-burger[aria-expanded="true"] .hp-burger__open {display: none;}
.hp-burger[aria-expanded="true"] .hp-burger__close {display: block;}

/* Hero */
.hp-hero {position: relative; overflow: hidden; background: var(--hp-cream);}
.hp-hero__media {position: absolute; top: 0; right: 0; bottom: 0; left: 38%;}
.hp-hero__media img {
	display: block; width: 100%; height: 100%; object-fit: cover; object-position: 100% 30%;
	-webkit-mask-image: linear-gradient(to right, transparent 0, rgba(0, 0, 0, .35) 13%, #000 36%);
	mask-image: linear-gradient(to right, transparent 0, rgba(0, 0, 0, .35) 13%, #000 36%);
}
/* švelni šviesi migla apačioje, ant kurios stovi privalumų eilutė */
.hp-hero__media::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(to top, rgba(250, 246, 239, .94) 0, rgba(250, 246, 239, .7) 15%, rgba(250, 246, 239, 0) 36%);
}
.hp-hero__heart {position: absolute; top: 6%; right: 6%; width: 78px; height: 70px; z-index: 1;}

.hp-hero__inner {position: relative; z-index: 2; max-width: 1228px; margin: 0 auto; padding: 36px 24px 0;}
.hp-hero__content {max-width: 560px;}
.hp-eyebrow {margin: 0; font: 800 12px/1.3 var(--hp-sans); letter-spacing: .07em; text-transform: uppercase; color: var(--hp-navy);}
.hp-hero .hp-hero__title {
	margin: 12px 0 0; padding: 0; background: none; border: 0; text-align: left;
	font: 800 52px/1.04 var(--hp-serif); letter-spacing: -.015em; color: var(--hp-navy);
	font-optical-sizing: auto;
}
.hp-hero__lead {margin: 20px 0 0; max-width: 460px; font: 400 17px/1.5 var(--hp-sans); color: var(--hp-text);}
.hp-hero__ctas {display: flex; flex-wrap: wrap; gap: 16px; margin-top: 26px;}

.hp-benefits {display: flex; justify-content: space-between; gap: 20px; margin-top: 46px; padding: 0 24px 32px 40px;}
.hp-benefit {display: flex; align-items: center; gap: 14px;}
.hp-benefit svg {width: 36px; height: 36px;}
.hp-benefit__text {font: 700 13.5px/1.35 var(--hp-sans); color: var(--hp-navy);}
.hp-benefit__text span {display: block;}
.hp-benefit__text .hp-benefit__sub--light {font-weight: 500;}
.hp-benefit__short {display: none;}

/* Bendros sekcijos */
.hp-section {background: #fff;}
.hp-container {max-width: 1228px; margin: 0 auto; padding: 0 24px;}
.hp-section .hp-h2 {
	margin: 0; padding: 0; background: none; border: 0; text-align: left;
	font: 800 31px/1.2 var(--hp-serif); letter-spacing: -.01em; color: var(--hp-navy);
}
.hp-section__lead {margin: 8px 0 0; font: 400 15.5px/1.55 var(--hp-sans); color: var(--hp-text);}
.hp-swash {width: 112px; height: 12px;}

/* Kokią elgesio problemą norite išspręsti? */
.hp-problems {padding: 64px 0 60px;}
/* Kortelių eilė: desktop – tinklelis, iki 991 px – slenkama juosta (problemos, programos) */
.hp-carousel {position: relative; margin-top: 26px;}
.hp-carousel__track {display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px;}
.hp-carousel__next, .hp-carousel__progress {display: none;}
.hp-problem {
	position: relative; display: block; aspect-ratio: 11 / 8; overflow: hidden; isolation: isolate;
	border-radius: 14px; background: #d9ddd5; box-shadow: 0 12px 26px -16px rgba(20, 35, 60, .55);
	transition: transform .25s, box-shadow .25s;
}
.hp-problem img {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s;}
.hp-problem::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(to bottom, rgba(14, 22, 16, 0) 36%, rgba(14, 22, 16, .38) 60%, rgba(14, 22, 16, .84) 100%);
}
.hp-problem__title {
	position: absolute; left: 18px; right: 58px; bottom: 15px; z-index: 1;
	font: 700 16px/1.22 var(--hp-sans); color: #fff; text-shadow: 0 1px 8px rgba(0, 0, 0, .3);
}
.hp-problem__arrow {
	position: absolute; right: 14px; bottom: 14px; z-index: 1;
	display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%;
	background: #fff; color: var(--hp-navy); box-shadow: 0 4px 12px rgba(0, 0, 0, .2); transition: background-color .25s;
}
.hp-problem__arrow svg {width: 14px; height: 14px;}
.hp-problem:hover {transform: translateY(-3px); box-shadow: 0 18px 32px -16px rgba(20, 35, 60, .6);}
.hp-problem:hover img {transform: scale(1.05);}
.hp-problem:hover .hp-problem__arrow {background: var(--hp-teal);}

/* Ko galite išmokyti savo šunį? */
.hp-teach {padding: 4px 24px 76px;}
.hp-teach__panel {
	display: grid; grid-template-columns: 322px 1fr; gap: 38px; align-items: center;
	max-width: 1348px; margin: 0 auto; padding: 22px 26px 22px 52px;
	background: linear-gradient(135deg, #ebf7f5 0%, #dff2ef 100%); border-radius: 24px;
}
.hp-teach__intro .hp-swash {margin-top: 12px;}
.hp-teach__intro .hp-section__lead {margin-top: 16px;}
.hp-teach__intro .hp-btn {margin-top: 26px;}
.hp-teach__list {display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px;}
.hp-skill {
	display: flex; flex-direction: column; height: 100%; overflow: hidden; color: var(--hp-text);
	background: #fff; border-radius: 16px; box-shadow: 0 12px 28px -18px rgba(20, 35, 60, .45);
	transition: transform .25s, box-shadow .25s;
}
.hp-skill img {display: block; width: 100%; height: auto; aspect-ratio: 7 / 4; object-fit: cover;}
.hp-skill__body {
	position: relative; flex: 1; display: grid; grid-template-columns: 34px 1fr; column-gap: 12px; row-gap: 10px; align-content: start;
	margin-top: -12px; padding: 16px 16px 18px; background: #fff; border-radius: 14px 14px 0 0;
}
.hp-skill__icon {width: 34px; height: 34px; align-self: center;}
.hp-skill__title {align-self: center; font: 700 15px/1.25 var(--hp-sans); color: var(--hp-navy);}
.hp-skill__text {grid-column: 1 / -1; font: 400 13.5px/1.5 var(--hp-sans); color: var(--hp-muted);}
.hp-skill__chevron {display: none;}
.hp-skill:hover {transform: translateY(-3px); box-shadow: 0 18px 32px -18px rgba(20, 35, 60, .5);}

/* Kaip veikia mūsų dresūros programa? */
.hp-how {padding: 46px 0 44px; background: linear-gradient(90deg, #faf6ef 0%, #fdfbf7 55%, #faf6ef 100%);}
.hp-how__inner {display: grid; grid-template-columns: 342px 1fr; column-gap: 26px; align-items: center;}
.hp-how__intro .hp-swash {margin-top: 12px;}
.hp-how__steps {display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px;}
.hp-step__text strong {font-weight: 700; color: var(--hp-navy);}
.hp-step {position: relative; display: grid; grid-template-columns: 26px 1fr; column-gap: 10px; row-gap: 8px; align-content: start;}
.hp-step__num {
	display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%;
	background: var(--hp-teal); color: var(--hp-navy); font: 800 13px/1 var(--hp-sans);
	box-shadow: 0 4px 10px -4px rgba(54, 170, 175, .7);
}
.hp-section .hp-step__title {align-self: center; margin: 0; padding: 0; background: none; font: 700 14.5px/1.3 var(--hp-sans); color: var(--hp-navy);}
.hp-step__text {grid-column: 1 / -1; margin: 0; font: 400 13.5px/1.5 var(--hp-sans); color: var(--hp-muted);}
.hp-step__arrow {position: absolute; top: 5px; right: -26px; width: 20px; height: 16px; color: var(--hp-navy);}
.hp-how__note {
	grid-column: 2; display: flex; align-items: center; gap: 8px; margin: 22px 0 0;
	font: 500 13px/1.45 var(--hp-sans); color: var(--hp-muted);
}
.hp-how__note svg {width: 16px; height: 16px; color: #2aa4a8;}

/* Dresūros programos pagal jūsų poreikius */
.hp-programs {padding: 64px 0 76px;}
.hp-programs__head {display: flex; align-items: flex-end; justify-content: space-between; gap: 24px;}
.hp-link {
	display: inline-flex; align-items: center; gap: 8px; padding: 6px 0; background: none; border: 0; cursor: pointer;
	font: 700 14.5px/1.2 var(--hp-sans); color: #137f84; white-space: nowrap;
}
.hp-link svg {width: 16px; height: 16px; transition: transform .2s;}
.hp-link:hover svg {transform: translateX(3px);}
.hp-programs__all-toggle[aria-expanded="true"] svg {transform: rotate(90deg);}
.hp-programs .hp-carousel__track {grid-template-columns: repeat(6, 1fr); gap: 18px;}
.hp-program {
	display: flex; flex-direction: column; height: 100%; overflow: hidden; background: #fbf9f5;
	border-radius: 14px; box-shadow: 0 12px 26px -18px rgba(20, 35, 60, .5); transition: transform .25s, box-shadow .25s;
}
.hp-program picture {display: block;}
.hp-program img {display: block; width: 100%; height: auto; aspect-ratio: 2 / 1; object-fit: cover;}
.hp-program__title {
	position: relative; flex: 1; margin-top: -10px; padding: 13px 14px 14px; border-radius: 12px 12px 0 0; background: #fbf9f5;
	font: 700 14.5px/1.25 var(--hp-sans); color: var(--hp-navy);
}
.hp-program:hover {transform: translateY(-3px); box-shadow: 0 18px 32px -18px rgba(20, 35, 60, .55);}

.hp-programs__all {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px 36px; margin-top: 30px; padding: 30px 34px;
	background: var(--hp-cream); border-radius: 20px;
}
.hp-programs__all[hidden] {display: none;}
.hp-section .hp-programs__cat {margin: 0 0 12px; padding: 0; background: none; font: 700 15.5px/1.3 var(--hp-sans); color: var(--hp-navy);}
.hp-programs__lessons {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 18px;}
.hp-programs__all > div:nth-child(2) .hp-programs__lessons {grid-template-columns: 1fr;}
.hp-programs__lessons li {position: relative; padding-left: 14px; font: 400 14px/1.45 var(--hp-sans); color: var(--hp-text);}
.hp-programs__lessons li::before {content: ""; position: absolute; left: 0; top: .6em; width: 6px; height: 6px; border-radius: 50%; background: var(--hp-teal);}
.hp-programs__all-foot {
	grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 24px;
	padding-top: 22px; border-top: 1px solid #ebe4d6;
}
.hp-programs__all-foot p {margin: 0; font: 500 14px/1.45 var(--hp-sans); color: var(--hp-muted);}

/* Dresavimas – ne tik paklusnumas */
.hp-why {padding: 28px 0 72px;}
.hp-why__inner {display: grid; grid-template-columns: 1fr 1.05fr; gap: 56px; align-items: center;}
.hp-why__photo {position: relative; margin: 0; overflow: hidden; aspect-ratio: 16 / 11; border-radius: 22px; box-shadow: 0 22px 44px -26px rgba(20, 35, 60, .55);}
.hp-why__photo img {display: block; width: 100%; height: 100%; object-fit: cover; object-position: 40% 40%;}
.hp-why__photo::after {content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(14, 22, 16, .78) 0, rgba(14, 22, 16, .3) 34%, rgba(14, 22, 16, 0) 58%);}
.hp-why__photo figcaption {
	position: absolute; left: 30px; right: 30px; bottom: 30px; z-index: 1; max-width: 330px;
	font: 800 27px/1.18 var(--hp-serif); color: #fff;
}
.hp-why__photo figcaption::after {content: ""; display: block; width: 58px; height: 4px; margin-top: 14px; border-radius: 4px; background: var(--hp-teal);}
.hp-why__content .hp-h2 {margin-top: 10px;}
.hp-why__content .hp-section__lead {margin-top: 16px; max-width: 560px;}
.hp-why__points {display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 28px; padding: 16px; border-radius: 18px; background: var(--hp-cream);}
.hp-why__points li {display: flex; align-items: center; gap: 12px; font: 400 13.5px/1.4 var(--hp-sans); color: var(--hp-muted);}
.hp-why__points strong {display: block; font-weight: 700; color: var(--hp-navy);}
.hp-why__icon {display: flex; flex: none; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: #fff; box-shadow: 0 6px 14px -8px rgba(20, 35, 60, .35);}
.hp-why__icon svg {width: 26px; height: 26px;}

/* Pozityvi metodika ir praktinis mokymasis */
.hp-trust {padding: 68px 0 72px; background: linear-gradient(135deg, #ebf7f5 0%, #e2f3f0 100%);}
.hp-trust__head {max-width: 680px; margin: 0 auto; text-align: center;}
.hp-trust__head .hp-h2 {text-align: center;}
.hp-trust__head .hp-swash {margin: 12px auto 0;}
.hp-trust__head .hp-section__lead {margin-top: 14px;}
.hp-trust__list {display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-top: 36px;}
.hp-trust__item {padding: 24px 22px 24px; border-radius: 18px; background: #fff; box-shadow: 0 12px 28px -20px rgba(20, 35, 60, .45);}
.hp-trust__item svg {width: 40px; height: 40px;}
.hp-section .hp-trust__title {margin: 16px 0 0; padding: 0; background: none; text-align: left; font: 700 16px/1.3 var(--hp-sans); color: var(--hp-navy);}
.hp-trust__item p {margin: 8px 0 0; font: 400 14px/1.55 var(--hp-sans); color: var(--hp-muted);}

/* Šunų dresūra namuose: nuo ko pradėti? */
.hp-seo {padding: 76px 0 56px;}
/* Įvadas, praktiniai žingsniai ir straipsniai – trys atskiri blokai */
.hp-seo__intro {max-width: 800px;}
.hp-seo__intro .hp-h2 {margin-top: 10px;}
.hp-seo__intro .hp-swash {margin-top: 12px;}
.hp-seo__intro > p:last-child {margin: 18px 0 0; font: 400 16.5px/1.7 var(--hp-sans); color: var(--hp-text);}
.hp-seo__grid {display: grid; grid-template-columns: 1.35fr 1fr; gap: 24px; margin-top: 34px; align-items: stretch;}
.hp-seo__card {padding: 28px 30px 14px; border: 1px solid #e6e9ed; border-radius: 20px; background: #fff; box-shadow: 0 14px 30px -24px rgba(20, 35, 60, .45);}
.hp-section .hp-seo__card-title {margin: 0 0 10px; padding: 0; background: none; text-align: left; font: 800 21px/1.3 var(--hp-serif); color: var(--hp-navy);}
.hp-seo__steps {margin-top: 18px; counter-reset: hp-seo;}
.hp-seo__steps li {
	position: relative; padding: 0 0 16px 44px; counter-increment: hp-seo;
	font: 400 15px/1.6 var(--hp-sans); color: var(--hp-text);
}
.hp-seo__steps li::before {
	content: counter(hp-seo); position: absolute; left: 0; top: 0;
	display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%;
	background: var(--hp-cream); border: 2px solid var(--hp-teal); font: 800 13px/1 var(--hp-sans); color: var(--hp-navy);
}
.hp-seo__steps strong {color: var(--hp-navy);}
.hp-seo__articles {padding: 28px 28px 24px; border-radius: 20px; background: var(--hp-cream);}
.hp-seo__articles li {border-bottom: 1px solid #ebe4d6;}
.hp-seo__articles li a {
	display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 0;
	font: 600 14.5px/1.4 var(--hp-sans); color: var(--hp-navy);
}
.hp-seo__articles li a::after {
	content: ""; flex: none; width: 8px; height: 8px; margin-right: 4px;
	border-top: 2px solid currentColor; border-right: 2px solid currentColor; transform: rotate(45deg);
}
.hp-seo__articles li a:hover {color: #137f84;}
.hp-seo__articles .hp-link {margin-top: 14px;}

/* DUK */
.hp-faq {padding: 56px 0 72px;}
.hp-faq__head {display: flex; align-items: flex-end; justify-content: space-between; gap: 24px;}
.hp-faq__cols {display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; margin-top: 26px; align-items: start;}
.hp-faq__item {margin-bottom: 12px; border: 1px solid #e3e6ea; border-radius: 14px; background: #fff; transition: border-color .2s, box-shadow .2s;}
.hp-faq__item[open] {border-color: #bfe6e7; box-shadow: 0 10px 24px -18px rgba(20, 35, 60, .4);}
.hp-faq__item summary {
	position: relative; display: block; padding: 17px 52px 17px 20px; list-style: none; cursor: pointer;
	font: 600 15px/1.4 var(--hp-sans); color: var(--hp-navy);
}
.hp-faq__item summary::-webkit-details-marker {display: none;}
.hp-faq__item summary::after {
	content: ""; position: absolute; right: 22px; top: 50%; width: 9px; height: 9px; margin-top: -7px;
	border-right: 2px solid var(--hp-navy); border-bottom: 2px solid var(--hp-navy); transform: rotate(45deg); transition: transform .2s;
}
.hp-faq__item[open] summary::after {margin-top: -2px; transform: rotate(-135deg);}
.hp-faq__item summary:focus-visible {outline-offset: -3px; border-radius: 14px;}
.hp-faq__item p {margin: 0; padding: 0 20px 18px; font: 400 14.5px/1.6 var(--hp-sans); color: var(--hp-muted);}

/* Galutinis CTA */
.hp-cta {padding: 8px 24px 76px; background: #fff;}
.hp-cta__panel {
	display: grid; grid-template-columns: 300px 1fr 250px; gap: 40px; align-items: center;
	max-width: 1348px; margin: 0 auto; padding: 36px 48px 36px 36px; border-radius: 28px;
	background: linear-gradient(120deg, #14233c 0%, #1b3550 100%); color: #fff;
}
.hp-cta__media {overflow: hidden; aspect-ratio: 4 / 3; border-radius: 20px;}
.hp-cta__media img {display: block; width: 100%; height: 100%; object-fit: cover; object-position: 55% 40%;}
.hp-section .hp-cta__content .hp-h2 {font-size: 32px; color: #fff;}
.hp-cta__lead {margin: 12px 0 0; font: 400 16px/1.6 var(--hp-sans); color: rgba(255, 255, 255, .82);}
.hp-cta__actions {display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; margin-top: 24px;}
.hp-cta__login {margin: 0; font: 500 14px/1.4 var(--hp-sans); color: rgba(255, 255, 255, .78);}
.hp-cta__login a, .hp-cta__login a:hover, .hp-cta__login a:focus {color: var(--hp-teal); font-weight: 700; text-decoration: underline; text-underline-offset: 3px;}
.hp-cta__checks {display: grid; gap: 12px;}
.hp-cta__checks li {
	position: relative; padding-left: 32px; font: 600 14.5px/1.4 var(--hp-sans); color: #fff;
}
.hp-cta__checks li::before {
	content: ""; position: absolute; left: 0; top: -1px; width: 22px; height: 22px; border-radius: 50%;
	background: var(--hp-teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.3l2.6 2.6L12 5.5' fill='none' stroke='%2314233c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px no-repeat;
}
.hp-cta :focus-visible {outline-color: #fff;}

/* Poraštė */
.hp-footer {padding: 52px 0 26px; background: #fbf8f2; border-top: 1px solid #efe8da;}
.hp-footer__top {display: grid; grid-template-columns: 1.2fr 2fr; gap: 48px;}
.hp-footer__brand p {max-width: 330px; margin: 14px 0 0; font: 400 14px/1.6 var(--hp-sans); color: var(--hp-muted);}
.hp-footer__social {display: flex; gap: 10px; margin-top: 18px;}
.hp-footer__social a {
	display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%;
	background: #fff; border: 1px solid #e6e0d3; color: var(--hp-navy); transition: background-color .2s, border-color .2s;
}
.hp-footer__social a:hover {background: var(--hp-teal); border-color: var(--hp-teal); color: var(--hp-navy);}
.hp-footer__social svg {width: 20px; height: 20px;}
.hp-footer__nav {display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px;}
.hp-footer .hp-footer__title {
	margin: 4px 0 14px; padding: 0; background: none; text-align: left;
	font: 800 12.5px/1.3 var(--hp-sans); letter-spacing: .07em; text-transform: uppercase; color: var(--hp-navy);
}
.hp-footer__nav li + li {margin-top: 10px;}
.hp-footer__nav a, .hp-footer__bottom a {font: 500 14.5px/1.4 var(--hp-sans); color: var(--hp-text);}
.hp-footer__nav a:hover, .hp-footer__bottom a:hover {color: #137f84;}
.hp-footer__bottom {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px;
	margin-top: 40px; padding-top: 20px; border-top: 1px solid #ebe4d6;
}
.hp-footer__bottom p {margin: 0; font: 400 13.5px/1.4 var(--hp-sans); color: var(--hp-muted);}
.hp-footer__bottom ul {display: flex; flex-wrap: wrap; gap: 8px 22px;}
.hp-footer__bottom a {font-size: 13.5px;}

@media (max-width: 1379px) {
	.hp-header__inner {gap: 18px;}
	.hp-nav, .hp-nav__list {gap: 18px;}
	.hp-nav__actions {gap: 10px;}
}

/* Planšetė ir siauresnis desktop: navigacija į meniu mygtuką */
@media (max-width: 1279px) {
	.hp-burger {display: block;}
	.hp-js .hp-nav {
		position: absolute; top: 100%; left: 0; right: 0; display: none;
		flex-direction: column; align-items: stretch; gap: 0; padding: 8px 22px 22px;
		background: #fff; box-shadow: 0 22px 34px -18px rgba(20, 35, 60, .3);
	}
	.hp-js .hp-nav.is-open {display: flex;}
	.hp-nav {flex-wrap: wrap;}
	.hp-nav__list {flex-direction: column; align-items: stretch; gap: 0;}
	.hp-nav__list > li {border-bottom: 1px solid #eef0f3;}
	.hp-nav__link, .hp-nav__link:focus {display: flex; width: 100%; padding: 15px 2px; font-size: 16px;}
	.hp-nav__link::after {display: none;}
	.hp-nav__toggle {justify-content: space-between;}
	.hp-nav__sub {position: static; min-width: 0; padding: 0 0 10px 12px; box-shadow: none; opacity: 1; visibility: visible; transform: none; display: none;}
	.hp-nav__toggle[aria-expanded="true"] + .hp-nav__sub {display: block;}
	.hp-nav__item--drop:hover .hp-nav__sub {opacity: 1;}
	.hp-nav__actions {flex-direction: column; align-items: stretch; gap: 10px; margin-top: 18px;}
	.hp-nav__actions .hp-btn {height: 48px; font-size: 15px;}
}

/* Planšetė: mobili hero kompozicija, platesnė */
@media (max-width: 991px) {
	.hp-hero {background: linear-gradient(to bottom, var(--hp-cream) 0, var(--hp-cream) 70%, #fff 100%);}
	.hp-hero__media {left: auto; bottom: auto; width: 58%; height: 360px;}
	.hp-hero__media img {
		object-position: 85% 30%;
		-webkit-mask-image: linear-gradient(to right, transparent 0, #000 46%), linear-gradient(to bottom, #000 60%, transparent 100%);
		-webkit-mask-composite: source-in;
		mask-image: linear-gradient(to right, transparent 0, #000 46%), linear-gradient(to bottom, #000 60%, transparent 100%);
		mask-composite: intersect;
	}
	.hp-hero__media::after {display: none;}
	.hp-hero__heart {top: 8%; right: 5%; width: 58px; height: 52px;}
	.hp-hero__inner {padding-top: 30px;}
	.hp-hero__content {max-width: none;}
	.hp-hero .hp-hero__title {font-size: 42px; max-width: 420px;}
	.hp-hero__lead {max-width: 400px; font-size: 16px;}
	.hp-hero__ctas {margin-top: 30px;}
	.hp-benefits {justify-content: space-around; margin-top: 30px; padding: 0 0 28px;}
	.hp-benefit {flex-direction: column; gap: 8px; text-align: center;}
	.hp-benefit__long {display: none;}
	.hp-benefit__short {display: block;}
}

/* Planšetė: aprašymas su Plus Jakarta Sans užima 4 eilutes, atsarginiu šriftu – 3.
   Rezervuojame 4 eilučių aukštį, kad šriftui užsikrovus turinys nepasislinktų (CLS). */
@media (min-width: 768px) and (max-width: 991px) {
	.hp-hero__lead {min-height: 6em;}
}

/* Telefonas */
@media (max-width: 767px) {
	.hp-header__inner {height: 64px; padding: 0 22px;}
	.hp-logo svg {width: 30px; height: 27px;}
	.hp-logo span {font-size: 20px;}

	/* Tvarka: antraštė → aprašymas → CTA → fotografija → privalumai */
	.hp-hero {display: flex; flex-direction: column; background: var(--hp-cream);}
	.hp-hero__inner {display: contents;}
	.hp-hero__content {order: 1; padding: 28px 22px 0;}
	.hp-hero__media {order: 2; position: relative; inset: auto; width: 100%; height: auto; aspect-ratio: 4 / 3; margin-top: 18px;}
	.hp-hero__media img {
		object-position: 50% 40%;
		-webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 18%, #000 76%, transparent 100%);
		mask-image: linear-gradient(to bottom, transparent 0, #000 18%, #000 76%, transparent 100%);
	}
	.hp-hero__heart {top: 11%; right: 4%; width: 44px; height: 40px;}
	.hp-eyebrow {font-size: 11px; letter-spacing: .05em;}
	.hp-hero .hp-hero__title {margin-top: 10px; font-size: 29px; line-height: 1.12; letter-spacing: -.015em;}
	.hp-hero__lead {margin-top: 14px; max-width: none; font-size: 15px; line-height: 1.55;}
	.hp-d {display: none;}
	.hp-m {display: inline;}
	.hp-hero__ctas {flex-direction: column; gap: 12px; margin-top: 24px;}
	.hp-hero__ctas .hp-btn {width: 100%; height: 54px; font-size: 16px;}
	.hp-hero__ctas .hp-btn--ghost {height: 50px;}
	.hp-benefits {order: 3; display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin: 0; padding: 0 12px 30px;}
	.hp-benefit--wide {display: none;}
	.hp-benefit svg {width: 34px; height: 34px;}
	.hp-benefit__text {font-size: 12.5px; line-height: 1.3;}
}

@media (max-width: 359px) {
	.hp-hero__content {padding-left: 18px; padding-right: 18px;}
	.hp-hero .hp-hero__title {font-size: 25px;}
	.hp-hero__lead {font-size: 14.5px;}
	.hp-hero__ctas .hp-btn {gap: 8px; padding: 0 16px; font-size: 14.5px;}
	.hp-benefit__text {font-size: 11.5px;}
}

/* Sekcijos: planšetė */
@media (max-width: 1199px) {
	.hp-teach__panel {grid-template-columns: 1fr; gap: 28px; padding: 36px;}
	.hp-teach__intro {max-width: 620px;}
}

@media (max-width: 991px) {
	/* Kortelių eilė – horizontaliai slenkama juosta */
	.hp-carousel {margin: 22px -24px 0;}
	.hp-carousel__track {
		display: flex; gap: 14px; overflow-x: auto; overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory; scroll-padding: 0 24px; padding: 4px 24px 16px; scrollbar-width: none;
	}
	.hp-carousel__track::-webkit-scrollbar {display: none;}
	.hp-carousel__track > li {flex: 0 0 210px; scroll-snap-align: start;}
	.hp-carousel__next {
		position: absolute; top: 50%; right: 12px; z-index: 2; transform: translateY(-58%);
		display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0;
		border: 0; border-radius: 50%; background: #fff; color: var(--hp-navy); cursor: pointer;
		box-shadow: 0 6px 18px rgba(20, 35, 60, .24);
	}
	.hp-carousel__next svg {width: 18px; height: 18px;}
	.hp-carousel__next[hidden] {display: none;}
	.hp-carousel__track:focus-visible {outline-offset: -3px;}
	/* Slinkimo indikatorius: rodo, kokia juostos dalis matoma */
	.hp-carousel__progress {display: block; width: 76px; height: 4px; margin: 4px auto 0; overflow: hidden; border-radius: 4px; background: #e2e6ea;}
	.hp-carousel__progress span {display: block; width: 40%; height: 100%; border-radius: 4px; background: var(--hp-teal);}
	.hp-programs .hp-carousel__track > li {flex-basis: 230px;}
	.hp-teach__list {grid-template-columns: repeat(2, 1fr);}
}

/* Sekcijos: telefonas */
@media (max-width: 767px) {
	.hp-container {padding: 0 22px;}
	.hp-section .hp-h2 {font-size: 23px; line-height: 1.22;}
	.hp-problems {padding: 44px 0 36px;}
	.hp-problems__lead {display: none;}
	.hp-carousel {margin: 18px -22px 0;}
	.hp-carousel__track {gap: 10px; scroll-padding: 0 22px; padding: 2px 22px 14px;}
	/* matosi apie 2,5 kortelės – nukirsta trečioji rodo, kad juostą galima slinkti */
	.hp-carousel__track > li {flex-basis: calc((100vw - 42px) / 2.45);}
	.hp-carousel__next {right: 8px; width: 40px; height: 40px;}
	.hp-problem {aspect-ratio: 20 / 21; border-radius: 12px;}
	.hp-problem__title {left: 10px; right: 8px; bottom: 10px; font-size: 13.5px; line-height: 1.2;}
	.hp-problem__arrow {display: none;}

	.hp-teach {padding: 0 10px 52px;}
	.hp-teach__panel {gap: 16px; padding: 26px 12px 14px; border-radius: 22px;}
	.hp-teach__intro {padding: 0 4px;}
	.hp-teach .hp-h2 {font-size: 22px;}
	.hp-teach__intro .hp-swash, .hp-teach__intro .hp-section__lead, .hp-teach__intro .hp-btn {display: none;}
	.hp-teach__list {grid-template-columns: 1fr; gap: 12px;}
	.hp-skill {flex-direction: row; align-items: center; gap: 14px; padding: 10px 14px 10px 10px; border-radius: 16px; box-shadow: 0 6px 18px -14px rgba(20, 35, 60, .5);}
	.hp-skill img {flex: none; width: 74px; height: 62px; aspect-ratio: auto; border-radius: 11px;}
	.hp-skill__body {display: block; min-width: 0; margin: 0; padding: 0 4px 0 0; border-radius: 0;}
	.hp-skill__icon {display: none;}
	.hp-skill__title {display: block; font-size: 15px;}
	.hp-skill__text {display: block; margin-top: 3px; font-size: 13px; line-height: 1.4;}
	.hp-skill__chevron {display: block; flex: none; width: 18px; height: 18px; margin-left: auto; color: var(--hp-navy);}
}

/* Kaip veikia ir programos: planšetė ir telefonas */
@media (max-width: 1199px) {
	.hp-how__inner {grid-template-columns: 1fr; row-gap: 28px;}
	.hp-how__note {grid-column: 1;}
	.hp-programs__all {grid-template-columns: 1fr 1fr;}
	.hp-programs__all > div:nth-child(3) {grid-column: 1 / -1;}
	.hp-programs__all > div:nth-child(3) .hp-programs__lessons {grid-template-columns: repeat(3, minmax(0, 1fr));}
}

@media (max-width: 991px) {
	.hp-how__steps {grid-template-columns: repeat(2, 1fr); gap: 26px 40px;}
	.hp-step__arrow {display: none;}
}

@media (max-width: 767px) {
	.hp-how {padding: 44px 0 40px;}
	.hp-how__inner {row-gap: 22px;}
	/* Žingsniai – vertikali seka su jungiančia linija */
	.hp-how__steps {grid-template-columns: 1fr; gap: 0;}
	.hp-step {column-gap: 14px; row-gap: 4px; padding-bottom: 22px;}
	.hp-step:last-child {padding-bottom: 0;}
	.hp-step::before {content: ""; position: absolute; left: 12px; top: 30px; bottom: 4px; border-left: 2px dashed #b9e5e6;}
	.hp-step:last-child::before {display: none;}
	.hp-step__text {grid-column: 2;}
	.hp-section .hp-step__title {font-size: 15.5px;}
	.hp-step__text {font-size: 14px;}
	.hp-how__note {align-items: flex-start; margin-top: 4px; padding: 12px 14px; background: #fff; border-radius: 12px; font-size: 13px;}
	.hp-how__note svg {margin-top: 1px;}

	.hp-programs {padding: 44px 0 52px;}
	.hp-programs__head {flex-direction: column; align-items: flex-start; gap: 6px;}
	/* programų kortelės mobiliame – 4:3 nuotraukos, matosi ~1,6 kortelės */
	.hp-programs .hp-carousel__track > li {flex-basis: calc((100vw - 42px) / 1.6);}
	.hp-program img {aspect-ratio: 4 / 3;}
	.hp-program__title {font-size: 14.5px;}
	.hp-programs__all {grid-template-columns: 1fr; gap: 22px; margin-top: 18px; padding: 22px 18px;}
	.hp-programs__all > div:nth-child(3) {grid-column: auto;}
	.hp-programs__all > div:nth-child(3) .hp-programs__lessons {grid-template-columns: repeat(2, minmax(0, 1fr));}
	.hp-programs__all-foot .hp-btn {width: 100%; height: 50px;}
}

/* Apatinės sekcijos: planšetė ir telefonas */
@media (max-width: 1199px) {
	.hp-why__inner {gap: 40px;}
	.hp-why__points {grid-template-columns: 1fr; gap: 12px;}
	.hp-trust__list {grid-template-columns: repeat(2, 1fr);}
	.hp-cta__panel {grid-template-columns: 260px 1fr; gap: 28px 36px; padding: 32px;}
	.hp-cta__checks {grid-column: 2; grid-template-columns: 1fr 1fr;}
}

@media (max-width: 991px) {
	.hp-why__inner {grid-template-columns: 1fr; gap: 32px;}
	.hp-seo__grid {grid-template-columns: 1fr; gap: 18px;}
	.hp-why__photo {aspect-ratio: 16 / 10;}
	.hp-why__points {grid-template-columns: repeat(3, 1fr);}
	.hp-faq__cols {grid-template-columns: 1fr;}
	.hp-cta__panel {grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 28px;}
	.hp-cta__media {aspect-ratio: 16 / 9;}
	.hp-cta__checks {grid-column: auto;}
	.hp-footer__top {grid-template-columns: 1fr; gap: 32px;}
}

@media (max-width: 767px) {
	.hp-why {padding: 8px 0 48px;}
	.hp-why__inner {gap: 26px;}
	.hp-why__photo {aspect-ratio: 4 / 3; border-radius: 18px;}
	.hp-why__photo figcaption {left: 20px; right: 20px; bottom: 20px; font-size: 21px;}
	.hp-why__points {grid-template-columns: 1fr; gap: 12px; margin-top: 22px; padding: 14px;}

	.hp-trust {padding: 52px 0;}
	.hp-trust__head, .hp-trust__head .hp-h2 {text-align: left;}
	.hp-trust__head .hp-swash {margin-left: 0;}
	/* kompaktiškas 2 × 2 tinklelis su trumpesniais tekstais */
	.hp-trust__list {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 24px;}
	.hp-trust__item {padding: 16px 14px; border-radius: 16px;}
	.hp-trust__item svg {width: 34px; height: 34px;}
	.hp-section .hp-trust__title {margin-top: 10px; font-size: 14.5px; line-height: 1.3;}
	.hp-trust__item p {margin-top: 6px; font-size: 13px; line-height: 1.45;}

	.hp-seo {padding: 52px 0 40px;}
	.hp-seo__intro > p:last-child {font-size: 15px;}
	.hp-seo__grid {margin-top: 24px; gap: 14px;}
	.hp-seo__card {padding: 22px 18px 8px;}
	.hp-section .hp-seo__card-title {font-size: 19px;}
	.hp-seo__steps li {padding-left: 40px; font-size: 14.5px;}
	.hp-seo__articles {padding: 22px 18px 18px;}

	.hp-faq {padding: 44px 0 52px;}
	.hp-faq__head {flex-direction: column; align-items: flex-start; gap: 6px;}
	.hp-faq__cols {margin-top: 20px;}
	.hp-faq__item summary {padding: 16px 46px 16px 16px; font-size: 14.5px;}
	.hp-faq__item summary::after {right: 18px;}
	.hp-faq__item p {padding: 0 16px 16px; font-size: 14px;}

	.hp-cta {padding: 0 10px 52px;}
	.hp-cta__panel {padding: 14px 14px 26px; border-radius: 22px; gap: 22px;}
	.hp-cta__content, .hp-cta__checks {padding: 0 8px;}
	.hp-section .hp-cta__content .hp-h2 {font-size: 25px;}
	.hp-cta__lead {font-size: 15px;}
	.hp-cta__actions .hp-btn {width: 100%; height: auto; min-height: 52px; padding: 12px 18px; white-space: normal; text-align: center;}
	.hp-cta__checks {grid-template-columns: 1fr; gap: 10px;}

	.hp-footer {padding: 40px 0 22px;}
	.hp-footer__nav {grid-template-columns: 1fr 1fr; gap: 26px 20px;}
	.hp-footer__bottom {flex-direction: column; align-items: flex-start; margin-top: 30px;}
}

@media (max-width: 359px) {
	.hp-trust__item {padding: 14px 12px;}
	.hp-section .hp-trust__title {font-size: 14px;}
	.hp-trust__item p {font-size: 12.5px;}
	.hp-teach {padding-left: 8px; padding-right: 8px;}
	.hp-teach__panel {padding-left: 8px; padding-right: 8px;}
	.hp-skill {gap: 10px; padding: 8px 10px 8px 8px;}
	.hp-skill img {width: 58px; height: 52px; border-radius: 9px;}
	.hp-skill__title {font-size: 14px;}
	.hp-skill__text {font-size: 12.5px;}
	.hp-skill__chevron {width: 16px; height: 16px;}
}

@media (prefers-reduced-motion: reduce) {
	.hp-btn, .hp-nav__link::after, .hp-nav__sub, .hp-nav__toggle svg, .hp-problem, .hp-problem img, .hp-skill, .hp-program, .hp-link svg, .hp-faq__item, .hp-faq__item summary::after, .hp-footer__social a {transition: none;}
	.hp-btn:hover, .hp-problem:hover, .hp-skill:hover, .hp-program:hover {transform: none;}
	.hp-problem:hover img {transform: none;}
}
