/* Generated by vite-plugin-svg-spritemap */
.rating {
  display: inline-block;
}
.rating__items {
  display: inline-flex;
  align-items: center;
  gap: 0.125rem;
}
.rating__item {
  flex: 0 0 1rem;
  width: 1rem;
  height: 1rem;
  position: relative;
}
.rating__item::before {
  font-size: 1rem;
  color: #ced3d9;
  line-height: 1;
  display: block;
}
.rating__item--active::before {
  color: #fdcd00;
}
.rating__item span {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  overflow: hidden;
}
.rating__item span::before {
  font-size: 1rem;
  color: #fdcd00;
  line-height: 1;
  display: block;
  white-space: nowrap;
}/* Generated by vite-plugin-svg-spritemap */
.review-block {
  background-color: #fff;
  border-radius: 1.25rem;
  padding: 1.5625rem;
}
.review-block__top {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.review-block__name-wrapper {
  display: flex;
  align-items: center;
  gap: 0.9375rem;
}
.review-block__logo {
  width: 2.5rem;
  height: 2.5rem;
}
.review-block__logo img {
  width: 100%;
  height: 100%;
}
.review-block__name-stars {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.review-block__name {
  font-weight: 600;
}
.review-block__date {
  opacity: 0.5;
  font-size: 0.875rem;
}
.review-block__text p {
  line-height: 120%;
}
.review-block__text p:not(:last-child) {
  margin-bottom: 0.9375rem;
}
.review-block__btn {
  display: flex;
  flex-direction: row-reverse;
  align-items: baseline;
  justify-content: flex-end;
  gap: 0.5rem;
  color: #0a2242;
  font-weight: 600;
  font-family: "Lato";
}
.review-block__btn {
  line-height: 120%;
}
.review-block__btn::before {
  font-size: 0.75rem;
  transition: 0.2s;
}/* Generated by vite-plugin-svg-spritemap */
.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.pagination .swiper-pagination-bullet {
  cursor: pointer;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background-color: #fff;
  opacity: 1;
  margin: 0;
  transition: 0.25s;
}
.pagination .swiper-pagination-bullet-active {
  background-color: #d7b67a;
}/* Generated by vite-plugin-svg-spritemap */
.news-block {
  background-color: #fff;
  border-radius: 1.25rem;
}
.news-block__img {
  border-radius: 1.25rem;
  overflow: hidden;
  aspect-ratio: 380/212;
}
.news-block__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-block__title {
  font-weight: 700;
}
.news-block__title {
  line-height: 1.35;
  transition: 0.2s;
}
.news-block__text {
  line-height: 1.375;
}
.news-block__btn {
  margin: 1.25rem 0rem 0rem 0rem;
}/* Generated by vite-plugin-svg-spritemap */
.hero__top {
  position: relative;
  display: flex;
  gap: 1.5rem;
}
.hero__main {
  flex: 0 0 72%;
  position: relative;
  overflow: hidden;
}
.hero__main-slider {
  height: 100%;
  position: relative;
}
.hero__main-slide {
  border-radius: 2rem;
  overflow: hidden;
  position: relative;
  display: flex;
}
.hero__main-slide img,
.hero__main-slide picture {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
  z-index: 0;
}
.hero__main-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(270deg, rgba(12, 7, 61, 0) 21.71%, rgba(3, 0, 33, 0.5) 55.3%);
  z-index: 1;
}
.hero__main-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
}
.hero__main-content p {
  line-height: 1.375;
  color: #fff;
}
.hero p.hero__title {
  line-height: 128%;
  font-weight: 600;
  color: #ffffff;
  max-width: 46.25rem;
}
.hero__btn {
  align-self: flex-start;
  background-color: #fff;
  padding: 1.5rem 2.5rem;
}
.hero__main-pagination {
  position: absolute;
  z-index: 3;
}
.hero__main-buttons-wrapper {
  position: absolute;
  z-index: 3;
}
.hero__main-buttons-wrapper {
  display: flex;
  gap: 0.75rem;
  pointer-events: none;
}
.hero__main-btn-prev, .hero__main-btn-next {
  pointer-events: all;
}
.hero__slider-wrapper {
  min-width: 0;
  position: relative;
  flex: 1 1 100%;
  display: flex;
  flex-direction: column;
}
.hero__slider-wrapper {
  padding-right: 1.375rem;
}
.hero__slider-wrapper .arrow-button {
  background-color: #ced3d9;
}
.hero__slider {
  width: 100%;
  overflow: hidden;
  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}
.hero__swiper {
  width: 100%;
  flex: 1;
}
.hero .slide-card .slide-card__img-block img {
  max-height: 12.125rem;
}
.hero__slider-buttons-wrapper {
  position: absolute;
  z-index: 3;
  top: 50%;
  transform: translateY(-50%);
}
.hero__slider-buttons-wrapper {
  right: 0;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
}
.hero__slider-btn-prev, .hero__slider-btn-next {
  pointer-events: all;
}
.hero__pagination {
  margin-top: 1rem;
}
.hero__bottom {
  overflow: auto;
  display: flex;
  margin: 0.75rem 0rem 0rem 0rem;
}
.hero__bottom-block {
  flex: 1;
  background-color: #ced3d9;
  border-radius: 1.25rem;
  position: relative;
  overflow: hidden;
  display: flex;
  padding: 1.5rem;
  height: 9.4375rem;
  transition: 0.2s;
}
.hero__bottom-block p {
  z-index: 1;
}
.hero__bottom-block p {
  font-weight: 600;
  line-height: 1.3;
}
.hero__bottom-block img {
  transform-origin: bottom right;
  position: absolute;
  right: 0;
  bottom: 0;
  object-fit: contain;
  flex-shrink: 0;
}
.hero__bottom-block:nth-child(3) img {
  scale: 0.8;
}
.about {
  display: flex;
  gap: 1.875rem;
}
.about__img-block {
  position: relative;
  flex: 0 0 50%;
  border-radius: 1.75rem;
  overflow: hidden;
}
.about__img-block img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.about__text {
  margin-bottom: 1.5625rem;
}
.about__text p {
  line-height: 1.35;
}
.about__text p:not(:last-child) {
  margin-bottom: 1.25rem;
}
.info-blocks {
  padding: 1.75rem;
  background-color: #ced3d9;
  border-radius: 1.75rem;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1.25rem;
}
.info-blocks__block {
  background-color: #fff;
  border-radius: 1.25rem;
  padding: 1.25rem;
}
.info-blocks__icon {
  background-color: #f1f2f4;
  border-radius: 0.75rem;
  width: 3.75rem;
  height: 3.75rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.info-blocks__icon::before {
  color: #0a2242;
}
.info-blocks__title {
  line-height: 1.35;
  font-weight: 700;
}
.info-blocks__text {
  line-height: 1.375;
  text-align: justify;
}
@media (max-width: 92.5em) {
  .hero__bottom-block img {
    scale: 0.9;
  }
  .hero__bottom-block:nth-child(3) img {
    scale: 0.65;
  }
}
@media (max-width: 91.875em) {
  .info-blocks {
    grid-template-columns: repeat(6, 1fr);
  }
  .info-blocks .info-blocks__block:nth-child(1), .info-blocks .info-blocks__block:nth-child(2), .info-blocks .info-blocks__block:nth-child(3) {
    grid-column: span 2;
  }
  .info-blocks .info-blocks__block:nth-child(4), .info-blocks .info-blocks__block:nth-child(5) {
    grid-column: span 3;
  }
}
@media (max-width: 83.125em) {
  .hero__main {
    flex: 0 0 65%;
  }
}
@media (max-width: 80em) {
  .hero__slider-wrapper {
    padding-left: 6.25e-8rem;
  }
  .hero__slider-buttons-wrapper {
    left: -1.375rem;
  }
}
@media (max-width: 75em) {
  .hero__top {
    flex-direction: column;
  }
  .hero__slider-wrapper {
    padding: 0 0 1.25rem;
  }
  .hero__slider-wrapper .arrow-button {
    background-color: #fff;
  }
  .hero__slider-buttons-wrapper {
    top: auto;
    left: 0;
    transform: translateY(0);
    bottom: 0;
  }
  .hero__pagination {
    margin: 2.75rem 0rem 0rem 0rem;
  }
}
@media (max-width: 62.5em) {
  .hero__bottom-block {
    min-width: 14.5625rem;
  }
  .hero__bottom-block p {
    font-size: 1.25rem;
  }
  .about {
    flex-direction: column-reverse;
  }
  .about__img-block img {
    position: relative;
  }
}
@media (max-width: 55em) {
  .info-blocks {
    grid-template-columns: repeat(2, 1fr);
  }
  .info-blocks .info-blocks__block:nth-child(1), .info-blocks .info-blocks__block:nth-child(2), .info-blocks .info-blocks__block:nth-child(3), .info-blocks .info-blocks__block:nth-child(4) {
    grid-column: span 1;
  }
  .info-blocks .info-blocks__block:nth-child(5) {
    grid-column: span 2;
  }
}
@media (max-width: 50em) {
  .hero__main-pagination {
    left: 50%;
    transform: translateX(-50%);
  }
  .hero__main-buttons-wrapper {
    justify-content: space-between;
  }
}
@media (max-width: 35.625em) {
  .info-blocks {
    grid-template-columns: 1fr;
  }
  .info-blocks .info-blocks__block {
    grid-column: span 1 !important;
  }
}
@media (max-width: 20em) {
  .review-block__name {
    font-size: 0.875rem;
  }
  .review-block__text {
    margin-top: 0.5rem;
  }
  .review-block__text p {
    font-size: 0.875rem;
  }
  .review-block__btn {
    margin-top: 1.25rem;
  }
  .review-block__btn {
    font-size: 1rem;
  }
  .news-block {
    padding: 0.75rem;
  }
  .news-block__title {
    margin-top: 0.875rem;
  }
  .news-block__title {
    margin-bottom: 0.75rem;
  }
  .news-block__title {
    font-size: 1.125rem;
  }
  .news-block__text {
    font-size: 0.875rem;
  }
  .hero {
    margin-top: 1.25rem;
  }
  .hero__main-slide {
    padding-top: 1.875rem;
  }
  .hero__main-slide {
    padding-bottom: 3rem;
  }
  .hero__main-slide {
    padding-left: 1.5rem;
  }
  .hero__main-slide {
    padding-right: 1.5rem;
  }
  .hero__main-content p {
    font-size: 1rem;
  }
  .hero__main-content p {
    margin-bottom: 1.25rem;
  }
  .hero p.hero__title {
    margin-bottom: 1.25rem;
  }
  .hero p.hero__title {
    font-size: 1.75rem;
  }
  .hero__main-pagination {
    bottom: 2.5rem;
  }
  .hero__main-buttons-wrapper {
    bottom: 1.25rem;
  }
  .hero__main-buttons-wrapper {
    right: 1.5rem;
  }
  .hero__main-buttons-wrapper {
    left: 1.5rem;
  }
  .hero__bottom {
    gap: 0.75rem;
  }
  .about {
    padding-top: 2.5rem;
  }
  .about__text {
    margin-top: 1.25rem;
  }
  .about__text p {
    font-size: 0.875rem;
  }
  .info-blocks {
    margin-top: 1.75rem;
  }
  .info-blocks__title {
    margin-top: 1.5rem;
  }
  .info-blocks__title {
    margin-bottom: 0.75rem;
  }
  .info-blocks__title {
    font-size: 1.125rem;
  }
  .info-blocks__text {
    font-size: 0.875rem;
  }
}
@media (min-width: 20em) and (max-width: 93.375em) {
  .review-block__name {
    font-size: clamp( 0.875rem , 0.84092844974375rem  +  0.1703577513vw , 1rem );
  }
  .review-block__text {
    margin-top: clamp( 0.5rem , 0.4318568994875rem  +  0.3407155026vw , 0.75rem );
  }
  .review-block__text p {
    font-size: clamp( 0.875rem , 0.8068568994875rem  +  0.3407155026vw , 1.125rem );
  }
  .review-block__btn {
    margin-top: clamp( 1.25rem , 1.1818568994875rem  +  0.3407155026vw , 1.5rem );
  }
  .review-block__btn {
    font-size: clamp( 1rem , 0.96592844974375rem  +  0.1703577513vw , 1.125rem );
  }
  .news-block {
    padding: clamp( 0.75rem , 0.54557069846875rem  +  1.0221465077vw , 1.5rem );
  }
  .news-block__title {
    margin-top: clamp( 0.875rem , 0.77278534923125rem  +  0.5110732538vw , 1.25rem );
  }
  .news-block__title {
    margin-bottom: clamp( 0.75rem , 0.6818568994875rem  +  0.3407155026vw , 1rem );
  }
  .news-block__title {
    font-size: clamp( 1.125rem , 1.09092844974375rem  +  0.1703577513vw , 1.25rem );
  }
  .news-block__text {
    font-size: clamp( 0.875rem , 0.84092844974375rem  +  0.1703577513vw , 1rem );
  }
  .hero {
    margin-top: clamp( 1.25rem , 1.079642248725rem  +  0.8517887564vw , 1.875rem );
  }
  .hero__main-slide {
    padding-top: clamp( 1.875rem , 1.704642248725rem  +  0.8517887564vw , 2.5rem );
  }
  .hero__main-slide {
    padding-left: clamp( 1.5rem , 1.057069846675rem  +  2.2146507666vw , 3.125rem );
  }
  .hero__main-slide {
    padding-right: clamp( 1.5rem , 1.057069846675rem  +  2.2146507666vw , 3.125rem );
  }
  .hero__main-content p {
    font-size: clamp( 1rem , 0.9318568994875rem  +  0.3407155026vw , 1.25rem );
  }
  .hero__main-content p {
    margin-bottom: clamp( 1.25rem , 1.079642248725rem  +  0.8517887564vw , 1.875rem );
  }
  .hero p.hero__title {
    margin-bottom: clamp( 1.25rem , 1.079642248725rem  +  0.8517887564vw , 1.875rem );
  }
  .hero p.hero__title {
    font-size: clamp( 1.75rem , 1.5114991482125rem  +  1.1925042589vw , 2.625rem );
  }
  .hero__main-pagination {
    bottom: clamp( 2.5rem , 2.15928449744375rem  +  1.7035775128vw , 3.75rem );
  }
  .hero__main-buttons-wrapper {
    bottom: clamp( 1.25rem , 0.90928449744375rem  +  1.7035775128vw , 2.5rem );
  }
  .hero__bottom {
    gap: clamp( 0.75rem , 0.613713798975rem  +  0.6814310051vw , 1.25rem );
  }
  .about {
    padding-top: clamp( 2.5rem , 2.15928449744375rem  +  1.7035775128vw , 3.75rem );
  }
  .about__text {
    margin-top: clamp( 1.25rem , 1.1818568994875rem  +  0.3407155026vw , 1.5rem );
  }
  .about__text p {
    font-size: clamp( 0.875rem , 0.77278534923125rem  +  0.5110732538vw , 1.25rem );
  }
  .info-blocks {
    margin-top: clamp( 1.75rem , 1.54557069846875rem  +  1.0221465077vw , 2.5rem );
  }
  .info-blocks__title {
    margin-top: clamp( 1.5rem , 1.329642248725rem  +  0.8517887564vw , 2.125rem );
  }
  .info-blocks__title {
    margin-bottom: clamp( 0.75rem , 0.6818568994875rem  +  0.3407155026vw , 1rem );
  }
  .info-blocks__title {
    font-size: clamp( 1.125rem , 1.09092844974375rem  +  0.1703577513vw , 1.25rem );
  }
  .info-blocks__text {
    font-size: clamp( 0.875rem , 0.84092844974375rem  +  0.1703577513vw , 1rem );
  }
}
@media (min-width: 20em) and (max-width: 75em) {
  .hero__main-slide {
    padding-bottom: clamp( 3rem , 2.54545454541875rem  +  2.2727272727vw , 4.25rem );
  }
}
@media (min-width: 20em) and (max-width: 50em) {
  .hero__main-buttons-wrapper {
    right: clamp( 1.5rem , 0.83333333333125rem  +  3.3333333333vw , 2.5rem );
  }
  .hero__main-buttons-wrapper {
    left: clamp( 1.5rem , 0.83333333333125rem  +  3.3333333333vw , 2.5rem );
  }
}
@media (min-width: 50em) and (max-width: 91.875em) {
  .hero__main-pagination {
    left: clamp( 0.9375rem , -3.91324626865625rem  +  9.7014925373vw , 5rem );
  }
  .hero__main-buttons-wrapper {
    right: clamp( 0.9375rem , -3.91324626865625rem  +  9.7014925373vw , 5rem );
  }
}
@media (min-width: 62.5em) and (max-width: 91.875em) {
  .hero__bottom-block p {
    font-size: clamp( 1.25rem , 0.98404255319375rem  +  0.4255319149vw , 1.375rem );
  }
  .about__text {
    margin-bottom: clamp( 6.25rem , 1.59574468085rem  +  7.4468085106vw , 8.4375rem );
  }
}
@media (min-width: 75em) and (max-width: 91.875em) {
  .hero__main-slide {
    padding-bottom: clamp( 5.625rem , 2.847222222225rem  +  3.7037037037vw , 6.25rem );
  }
}
@media (min-width: 80em) and (max-width: 91.875em) {
  .hero__slider-wrapper {
    padding-left: clamp( 6.25e-8rem , -9.26315741118125rem  +  11.5789468421vw , 1.375rem );
  }
  .hero__slider-buttons-wrapper {
    left: clamp( -1.375rem , -10.6381583157875rem  +  11.5789478947vw , 6.25e-8rem );
  }
}
@media (min-width: 91.875em) {
  .hero__main-slide {
    padding-bottom: 6.25rem;
  }
  .hero__main-pagination {
    left: 5rem;
  }
  .hero__main-buttons-wrapper {
    right: 5rem;
  }
  .hero__slider-wrapper {
    padding-left: 1.375rem;
  }
  .hero__slider-buttons-wrapper {
    left: 6.25e-8rem;
  }
  .hero__bottom-block p {
    font-size: 1.375rem;
  }
  .about__text {
    margin-bottom: 8.4375rem;
  }
}
@media (min-width: 93.375em) {
  .review-block__name {
    font-size: 1rem;
  }
  .review-block__text {
    margin-top: 0.75rem;
  }
  .review-block__text p {
    font-size: 1.125rem;
  }
  .review-block__btn {
    margin-top: 1.5rem;
  }
  .review-block__btn {
    font-size: 1.125rem;
  }
  .news-block {
    padding: 1.5rem;
  }
  .news-block__title {
    margin-top: 1.25rem;
  }
  .news-block__title {
    margin-bottom: 1rem;
  }
  .news-block__title {
    font-size: 1.25rem;
  }
  .news-block__text {
    font-size: 1rem;
  }
  .hero {
    margin-top: 1.875rem;
  }
  .hero__main-slide {
    padding-top: 2.5rem;
  }
  .hero__main-slide {
    padding-left: 3.125rem;
  }
  .hero__main-slide {
    padding-right: 3.125rem;
  }
  .hero__main-content p {
    font-size: 1.25rem;
  }
  .hero__main-content p {
    margin-bottom: 1.875rem;
  }
  .hero p.hero__title {
    margin-bottom: 1.875rem;
  }
  .hero p.hero__title {
    font-size: 2.625rem;
  }
  .hero__main-pagination {
    bottom: 3.75rem;
  }
  .hero__main-buttons-wrapper {
    bottom: 2.5rem;
  }
  .hero__bottom {
    gap: 1.25rem;
  }
  .about {
    padding-top: 3.75rem;
  }
  .about__text {
    margin-top: 1.5rem;
  }
  .about__text p {
    font-size: 1.25rem;
  }
  .info-blocks {
    margin-top: 2.5rem;
  }
  .info-blocks__title {
    margin-top: 2.125rem;
  }
  .info-blocks__title {
    margin-bottom: 1rem;
  }
  .info-blocks__title {
    font-size: 1.25rem;
  }
  .info-blocks__text {
    font-size: 1rem;
  }
}
@media (any-hover: hover) {
  .review-block__btn:hover::before {
    transform: translateX(0.25rem);
  }
  .news-block__title:hover {
    color: #d7b67a;
  }
  .hero__slider-wrapper .arrow-button:hover {
    background-color: #0a2242;
  }
  .hero__slider-wrapper .arrow-button:hover::before {
    color: #ffffff;
  }
  .hero__bottom-block:hover {
    box-shadow: 0 0.375rem 1.5rem rgba(10, 34, 66, 0.1);
  }
}


/* Blog grid layout */
.catalog__main:has(.news-block) {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

@media (max-width: 1024px) {
  .catalog__main:has(.news-block) {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .catalog__main:has(.news-block) {
    grid-template-columns: 1fr;
  }
}

.news-block {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.news-block__text {
  flex-grow: 1;
}

/* Text content styles - only for pages and blog posts, NOT for home */
body.single-post .white-bg,
body.page:not(.home):not(.woocommerce-page) .white-bg {
  background-color: #ffffff;
  padding: 3rem 0;
  margin-top: 2rem;
}

body.single-post .white-bg .page__container,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container {
  max-width: 900px;
  margin: 0 auto;
}

body.single-post .white-bg .page__container,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container,
body.single-post .single-post__content,
body.single-post .seo__content {
  font-size: 1.125rem;
  line-height: 1.8;
  color: #333333;
}

body.single-post .white-bg .page__container p,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container p,
body.single-post .single-post__content p,
body.single-post .seo__content p {
  margin-bottom: 1.5rem;
}

body.single-post .white-bg .page__container p:last-child,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container p:last-child,
body.single-post .single-post__content p:last-child,
body.single-post .seo__content p:last-child {
  margin-bottom: 0;
}

body.single-post .white-bg .page__container h2,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container h2,
body.single-post .single-post__content h2,
body.single-post .seo__content h2 {
  font-size: 1.75rem;
  font-weight: 700;
  margin-top: 2.5rem;
  margin-bottom: 1.25rem;
  color: #0a2242;
}

body.single-post .white-bg .page__container h3,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container h3,
body.single-post .single-post__content h3,
body.single-post .seo__content h3 {
  font-size: 1.5rem;
  font-weight: 700;
  margin-top: 2rem;
  margin-bottom: 1rem;
  color: #0a2242;
}

body.single-post .white-bg .page__container ul,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container ul,
body.single-post .white-bg .page__container ol,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container ol,
body.single-post .single-post__content ul,
body.single-post .single-post__content ol,
body.single-post .seo__content ul,
body.single-post .seo__content ol {
  margin-bottom: 1.5rem;
  padding-left: 2rem;
}

body.single-post .white-bg .page__container li,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container li,
body.single-post .single-post__content li,
body.single-post .seo__content li {
  margin-bottom: 0.75rem;
  line-height: 1.7;
}

body.single-post .white-bg .page__container a,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container a,
body.single-post .single-post__content a,
body.single-post .seo__content a {
  color: #d7b67a;
  text-decoration: underline;
  transition: color 0.2s ease;
}

body.single-post .white-bg .page__container a:hover,
body.page:not(.home):not(.woocommerce-page) .white-bg .page__container a:hover,
body.single-post .single-post__content a:hover,
body.single-post .seo__content a:hover {
  color: #c9a56a;
}

body.single-post .single-post__meta {
  margin-bottom: 2rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #e5e5e5;
  color: #666666;
  font-size: 0.95rem;
}

@media (max-width: 768px) {
  body.single-post .white-bg,
  body.page:not(.home):not(.woocommerce-page) .white-bg {
    padding: 2rem 0;
  }
  
  body.single-post .white-bg .page__container,
  body.page:not(.home):not(.woocommerce-page) .white-bg .page__container,
  body.single-post .single-post__content,
  body.single-post .seo__content {
    font-size: 1rem;
  }
  
  body.single-post .white-bg .page__container h2,
  body.page:not(.home):not(.woocommerce-page) .white-bg .page__container h2,
  body.single-post .single-post__content h2,
  body.single-post .seo__content h2 {
    font-size: 1.5rem;
  }
  
  body.single-post .white-bg .page__container h3,
  body.page:not(.home):not(.woocommerce-page) .white-bg .page__container h3,
  body.single-post .single-post__content h3,
  body.single-post .seo__content h3 {
    font-size: 1.25rem;
  }
}

/* =========================================
FIX: hero-slider initial render (pre-Swiper).
Show ONLY first slide as a full-size banner,
hide the duplicated slides that otherwise
stack up "сжатыми" before JS init on `load`.
Auto-disabled when Swiper adds .swiper-initialized.
Height comes from the flex row (.hero__main),
so no hardcoded min-height / no layout shift.
========================================= */
.hero__main-slider:not(.swiper-initialized) .hero__main-slide:first-child {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  display: flex !important;
}
.hero__main-slider:not(.swiper-initialized) .hero__main-slide:not(:first-child) {
  display: none !important; /* <img> inside display:none is NOT fetched -> no interference */
}
.hero__main-slider:not(.swiper-initialized) ~ .hero__main-buttons-wrapper,
.hero__main-slider:not(.swiper-initialized) ~ .hero__main-pagination,
.hero__main-slider:not(.swiper-initialized) ~ .pagination.hero__main-pagination {
  opacity: 0;
  pointer-events: none;
}


/* === FIX: Сжатые картинки hero до init Swiper === */
.hero__main-slider:not(.swiper-initialized){min-height:clamp(18rem,45vw,30rem);overflow:hidden}
.hero__main-slider:not(.swiper-initialized) .hero__main-slide:first-child{position:relative!important;width:100%!important;height:100%!important;margin:0!important;display:flex!important}
.hero__main-slider:not(.swiper-initialized) .hero__main-slide:not(:first-child){display:none!important}
.hero__main-slider:not(.swiper-initialized) .hero__main-slide:first-child img,
.hero__main-slider:not(.swiper-initialized) .hero__main-slide:first-child picture{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
.hero__main-slider:not(.swiper-initialized)~.hero__main-buttons-wrapper,
.hero__main-slider:not(.swiper-initialized)~.hero__main-pagination,
.hero__main-slider:not(.swiper-initialized) .hero__main-buttons-wrapper,
.hero__main-slider:not(.swiper-initialized) .hero__main-pagination{opacity:0;pointer-events:none}

/* === FIX: Скрытие элементов баннера при открытом меню === */
[data-menu-open] .hero__main-pagination,
[data-menu-open] .hero__main-buttons-wrapper,
[data-menu-open] .hero__slider-buttons-wrapper,
[data-menu-open] .hero__pagination,
[data-menu-open] .slider__slider-buttons-wrapper,
[data-menu-open] .slider__pagination{opacity:0!important;pointer-events:none!important;z-index:0!important;transition:opacity .2s ease}
@media (max-width:73.75em){[data-menu-open] .menu__body{z-index:200}}

/* seafood fix: нижний ряд карточки в секциях slider--40 и slider--blue на десктопе >=1200px (карточки стали уже при slidesPerView 4.5) */
@media (min-width:75em){
.slider--40 .slide-card__bottom,.slider--blue .slide-card__bottom{flex-wrap:wrap;row-gap:.5rem}
.slider--40 .slide-card__price,.slider--blue .slide-card__price{width:100%;margin:0}
}

/* seafood fix: нижний ряд карточки в секциях slider--40 и slider--blue на десктопе >=1200px (карточки стали уже при slidesPerView 4.5) */
@media (min-width:75em){
.slider--40 .slide-card__bottom,.slider--blue .slide-card__bottom{flex-wrap:wrap;row-gap:.5rem}
.slider--40 .slide-card__price,.slider--blue .slide-card__price{width:100%;margin:0}
}
/* seafood fix: заголовки преимуществ — 1.1rem, центрированы */
.info-blocks__title{font-size:1.1rem;text-align:center}
