/* Final polish layer for custom Qunelle sections. */

html,
body,
#allrecords,
.t-records,
.t-rec,
.tn-atom,
.t-descr,
.t-title,
.t-name,
.t-text,
button,
input,
textarea,
select {
  font-family: "TildaSans", Arial, sans-serif !important;
}

.t360__progress .t360__bar,
.t360__bar {
  background-color: #2d9828 !important;
}

#rec562744165 .t396__artboard,
#rec562744165 .t396__filter,
#rec562744165 .t396__carrier {
  height: 44px !important;
  min-height: 0 !important;
}

.qunelle-system-modern,
.qunelle-catalog-modern,
.qunelle-delivery-modern,
.qunelle-payment-modern,
.qunelle-request-modern,
.qunelle-info-modern,
.qunelle-durability-modern {
  --qunelle-radius-lg: 26px;
  --qunelle-radius-md: 18px;
}

.qsys-title,
.qcat-title,
.qdm-title,
.qpay-title,
.qreq-title,
.qinfo-title,
.qdur-title {
  letter-spacing: -0.025em;
}

.qsys-btn,
.qcat-btn,
.qdm-cta,
.qpay-btn,
.qreq-submit,
.qinfo-submit,
.qdur-button,
.qunelle-home-catalog__btn {
  border-radius: 14px;
}

.qsys-btn,
.qsys-btn:visited,
.qsys-btn:hover,
.qcat-btn,
.qcat-btn:visited,
.qcat-btn:hover,
.qdm-cta,
.qdm-cta:visited,
.qdm-cta:hover,
.qpay-btn,
.qpay-btn:visited,
.qpay-btn:hover,
.qreq-submit,
.qinfo-submit,
.qdur-button,
.qdur-button:visited,
.qdur-button:hover,
.qunelle-home-catalog__btn,
.qunelle-home-catalog__btn:visited,
.qunelle-home-catalog__btn:hover {
  color: #fff !important;
}

.qsys-panel,
.qcat-panel,
.qdm-panel,
.qpay-panel,
.qreq-panel,
.qinfo-card,
.qdur-card {
  border-radius: var(--qunelle-radius-lg);
}

.qsys-part-float img,
.qsys-card img {
  filter: grayscale(1) saturate(0) brightness(1.04) contrast(.98);
}

.qdm-card,
.qpay-card,
.qpay-benefit,
.qdm-care,
.qdm-cta-wrap,
.qsys-card,
.qunelle-home-catalog__card {
  border-radius: var(--qunelle-radius-md);
}

@media (max-width: 720px) {
  #rec562744165 .t396__artboard,
  #rec562744165 .t396__filter,
  #rec562744165 .t396__carrier {
    height: 22px !important;
  }

  .qunelle-system-modern,
  .qunelle-catalog-modern,
  .qunelle-delivery-modern,
  .qunelle-payment-modern,
  .qunelle-request-modern,
  .qunelle-info-modern,
  .qunelle-durability-modern {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .qunelle-delivery-modern,
  .qunelle-payment-modern {
    padding-top: 0 !important;
    padding-bottom: 32px !important;
  }

  .qdm-panel,
  .qpay-panel {
    border-radius: 22px !important;
  }

  .qdm-hero,
  .qpay-hero {
    min-height: 0 !important;
    padding: 22px 18px 18px !important;
    gap: 14px !important;
  }

  .qdm-title,
  .qpay-title {
    margin-bottom: 10px !important;
    font-size: 32px !important;
    line-height: 1.04 !important;
  }

  .qdm-subtitle,
  .qpay-subtitle {
    font-size: 15px !important;
    line-height: 1.42 !important;
  }

  .qdm-hero-features,
  .qpay-mini {
    gap: 8px !important;
    margin-top: 14px !important;
  }

  .qdm-feature,
  .qpay-mini-card {
    min-height: 58px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
  }

  .qdm-feature strong,
  .qpay-mini-card strong {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }

  .qdm-feature span,
  .qpay-mini-card span {
    font-size: 12px !important;
  }

  .qdm-visual {
    min-height: 150px !important;
    padding: 0 !important;
  }

  .qdm-delivery-image {
    max-height: 170px !important;
  }

  .qpay-visual {
    min-height: 120px !important;
    padding: 0 !important;
  }

  .qpay-visual img {
    max-height: 150px !important;
  }

  .qdm-content,
  .qpay-cards {
    gap: 12px !important;
    padding: 14px !important;
  }

  .qdm-card,
  .qpay-card {
    padding: 15px !important;
    border-radius: 17px !important;
  }

  .qdm-card-head,
  .qpay-card h3 {
    margin-bottom: 10px !important;
  }

  .qdm-card-head h3,
  .qpay-card h3 {
    font-size: 18px !important;
    line-height: 1.15 !important;
  }

  .qdm-price-grid,
  .qdm-region-list,
  .qpay-list {
    gap: 8px !important;
  }

  .qdm-row,
  .qdm-region-item {
    min-height: 50px !important;
    padding: 10px 11px !important;
    border-radius: 13px !important;
  }

  .qdm-row-text,
  .qdm-region-text,
  .qpay-list li {
    font-size: 13px !important;
    line-height: 1.3 !important;
  }

  .qdm-price {
    font-size: 14px !important;
  }

  .qdm-care,
  .qpay-cta,
  .qpay-benefits {
    margin-top: 12px !important;
  }

  .qdm-care {
    padding: 14px !important;
  }

  .qdm-care-title {
    margin-bottom: 10px !important;
    font-size: 18px !important;
  }

  .qdm-care-item,
  .qpay-benefit {
    min-height: 58px !important;
    padding: 11px !important;
  }

  .qdm-cta-wrap,
  .qpay-cta {
    padding: 15px !important;
    border-radius: 18px !important;
  }

  .qdm-cta-wrap h3,
  .qpay-cta h3,
  .qsys-cta h3,
  .qcat-cta h3 {
    font-size: 20px !important;
    line-height: 1.15 !important;
  }

  .qdm-cta-wrap p,
  .qpay-cta p,
  .qsys-cta p,
  .qcat-cta p {
    font-size: 13px !important;
    line-height: 1.35 !important;
  }

  .qdm-cta,
  .qpay-btn,
  .qsys-btn,
  .qcat-btn {
    min-height: 46px !important;
    font-size: 14px !important;
  }

  .qsys-title,
  .qcat-title,
  .qreq-title,
  .qinfo-title,
  .qdur-title {
    font-size: 30px !important;
    line-height: 1.06 !important;
  }

  .qsys-lead,
  .qcat-lead,
  .qreq-lead,
  .qinfo-text,
  .qdur-text {
    font-size: 15px !important;
    line-height: 1.43 !important;
  }

  .qunelle-home-catalog__thumb img {
    object-position: 38% center !important;
  }
}

@media (max-width: 420px) {
  #rec562744165 .t396__artboard,
  #rec562744165 .t396__filter,
  #rec562744165 .t396__carrier {
    height: 18px !important;
  }

  .qdm-title,
  .qpay-title,
  .qsys-title,
  .qcat-title,
  .qreq-title,
  .qinfo-title,
  .qdur-title {
    font-size: 28px !important;
  }
}

@media (max-width: 560px) {
  .qinfo-visual {
    min-height: 230px !important;
    padding: 10px 0 22px !important;
  }

  .qinfo-visual img {
    width: 100% !important;
    max-width: 340px !important;
    height: 220px !important;
    object-fit: cover !important;
  }
}

@media (max-width: 420px) {
  .qinfo-visual {
    min-height: 222px !important;
  }

  .qinfo-visual img {
    max-width: 318px !important;
    height: 214px !important;
  }
}

.qunelle-footer {
  font-family: "TildaSans", Arial, sans-serif;
  background: #f7faf8;
  color: #111916;
  padding: 42px 20px 28px;
  box-sizing: border-box;
}

.qunelle-footer * {
  box-sizing: border-box;
}

.qunelle-footer a,
.qunelle-footer a:visited {
  color: inherit !important;
}

.qfooter-shell {
  width: min(1180px, 100%);
  margin: 0 auto;
  border: 1px solid rgba(17, 25, 22, .1);
  border-radius: 28px;
  background: linear-gradient(180deg, #fff, #fbfdfb);
  box-shadow: 0 24px 70px rgba(20, 47, 31, .08);
  overflow: hidden;
}

.qfooter-grid {
  display: grid;
  grid-template-columns: 1.15fr .9fr 1.05fr 1fr;
  gap: 48px;
  padding: 44px 58px;
}

.qfooter-brand {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 26px;
  color: #080d0b !important;
  text-decoration: none;
  font-size: 29px;
  line-height: 1;
  font-weight: 950;
  letter-spacing: .02em;
}

.qfooter-brand:visited {
  color: #080d0b !important;
}

.qfooter-brand span {
  color: #2d9828 !important;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0;
}

.qfooter-text {
  max-width: 280px;
  margin: 0;
  color: rgba(17, 25, 22, .78);
  font-size: 17px;
  line-height: 1.55;
}

.qfooter-socials {
  display: flex;
  gap: 14px;
  margin-top: 30px;
}

.qfooter-social {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #eaf8e8;
  color: #2d9828 !important;
  text-decoration: none;
}

.qfooter-social svg {
  width: 23px;
  height: 23px;
  fill: currentColor;
}

.qfooter-social:visited {
  color: #2d9828 !important;
}

.qfooter-title {
  margin: 0 0 26px;
  color: #080d0b;
  font-size: 24px;
  line-height: 1.15;
  font-weight: 900;
}

.qfooter-list {
  display: grid;
  gap: 17px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.qfooter-list a {
  position: relative;
  display: inline-flex;
  color: rgba(17, 25, 22, .86) !important;
  font-size: 16px;
  line-height: 1.35;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.qfooter-list a:visited,
.qfooter-contact:visited {
  color: rgba(17, 25, 22, .86) !important;
}

.qfooter-list li {
  position: relative;
  padding-left: 26px;
}

.qfooter-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #39aa35;
}

.qfooter-anchor {
  display: block;
  margin-top: 3px;
  color: #2d9828 !important;
  font-size: 14px;
  line-height: 1.2;
}

.qfooter-contact-text {
  margin: 0 0 24px;
  color: rgba(17, 25, 22, .78);
  font-size: 16px;
  line-height: 1.55;
}

.qfooter-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  min-height: 58px;
  margin-bottom: 24px;
  border-radius: 14px;
  background: linear-gradient(180deg, #0aa889, #159f45);
  color: #fff !important;
  font-size: 16px;
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 14px 26px rgba(21, 159, 69, .2);
}

.qunelle-footer .qfooter-cta,
.qunelle-footer .qfooter-cta:visited,
.qunelle-footer .qfooter-cta:hover {
  color: #fff !important;
  background: linear-gradient(180deg, #0aa889, #159f45) !important;
}

.qfooter-cta:visited {
  color: #fff !important;
}

.qfooter-cta *,
.qfooter-cta:visited *,
.qfooter-cta:hover * {
  color: #fff !important;
}

.qfooter-contacts {
  display: grid;
  gap: 15px;
}

.qfooter-contact {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  color: rgba(17, 25, 22, .86) !important;
  font-size: 16px;
  text-decoration: none;
}

.qfooter-contact svg {
  width: 23px;
  height: 23px;
  color: #3a3f3d;
  fill: currentColor;
}

.qfooter-bottom {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 20px;
  align-items: center;
  padding: 22px 58px 24px;
  border-top: 1px solid rgba(17, 25, 22, .1);
  color: rgba(17, 25, 22, .72);
  font-size: 15px;
}

.qfooter-bottom-note {
  text-align: center;
}

.qfooter-docs {
  display: flex;
  justify-content: flex-end;
  gap: 18px;
  flex-wrap: wrap;
}

.qfooter-docs a {
  color: #2d9828 !important;
  text-decoration: none;
}

.qfooter-docs a:visited {
  color: #2d9828 !important;
}

.qfooter-mobile-toggle {
  display: none;
}

@media (max-width: 920px) {
  .qfooter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px;
    padding: 34px;
  }

  .qfooter-bottom {
    grid-template-columns: 1fr;
    text-align: left;
    padding: 22px 34px 26px;
  }

  .qfooter-bottom-note,
  .qfooter-docs {
    text-align: left;
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  .qunelle-footer {
    padding: 28px 14px 22px;
  }

  .qfooter-shell {
    border-radius: 22px;
    border-color: rgba(17, 25, 22, .09);
    background: transparent;
    box-shadow: none;
  }

  .qfooter-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 0;
  }

  .qfooter-col {
    padding: 22px;
    border: 1px solid rgba(17, 25, 22, .1);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(20, 47, 31, .06);
  }

  .qfooter-brand {
    margin-bottom: 20px;
    font-size: 24px;
  }

  .qfooter-text {
    font-size: 15px;
  }

  .qfooter-socials {
    margin-top: 22px;
  }

  .qfooter-title {
    margin-bottom: 18px;
    font-size: 20px;
  }

  .qfooter-list {
    gap: 14px;
  }

  .qfooter-list a,
  .qfooter-contact-text,
  .qfooter-contact {
    font-size: 15px;
  }

  .qfooter-cta {
    min-height: 52px;
    margin-bottom: 18px;
  }

  .qfooter-bottom {
    margin-top: 12px;
    padding: 20px 22px;
    border: 1px solid rgba(17, 25, 22, .1);
    border-radius: 20px;
    background: #fff;
    font-size: 14px;
  }

  .qfooter-docs {
    display: grid;
    gap: 10px;
  }
}


/* Mobile bottom navigation: custom replacement for the old Tilda bar. */
.qunelle-mobile-nav {
  display: none;
}

@media (max-width: 980px) {
  .qunelle-mobile-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99990;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    min-height: 64px;
    padding: 6px 6px calc(6px + env(safe-area-inset-bottom, 0px));
    background: linear-gradient(90deg, #0aa889, #159f45);
    box-shadow: 0 -8px 26px rgba(10, 168, 137, .18);
    font-family: "TildaSans", Arial, sans-serif;
  }

  .qunelle-mobile-nav,
  .qunelle-mobile-nav * {
    box-sizing: border-box;
  }

  .qunelle-mobile-nav__item,
  .qunelle-mobile-nav__item:visited,
  .qunelle-mobile-nav__item:hover {
    display: grid;
    place-items: center;
    align-content: center;
    gap: 4px;
    min-width: 0;
    min-height: 52px;
    border-radius: 14px;
    color: #fff !important;
    text-decoration: none !important;
    font-size: 12px;
    line-height: 1.05;
    font-weight: 700;
    letter-spacing: 0;
    -webkit-tap-highlight-color: transparent;
  }

  .qunelle-mobile-nav__item:active {
    background: rgba(255, 255, 255, .14);
  }

  .qunelle-mobile-nav__icon {
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    color: #fff;
  }

  .qunelle-mobile-nav__icon svg {
    display: block;
    width: 22px;
    height: 22px;
    fill: currentColor;
  }

  body {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
  }
}

/* Restore delivery/payment illustration proportions after compact mobile pass. */
.qdm-visual,
.qpay-visual {
  overflow: hidden !important;
}

.qdm-delivery-image,
.qpay-visual img {
  height: auto !important;
  object-fit: contain !important;
  transform: none !important;
}

@media (max-width: 720px) {
  .qunelle-delivery-modern,
  .qunelle-payment-modern {
    padding-bottom: 46px !important;
  }

  .qdm-hero,
  .qpay-hero {
    gap: 18px !important;
  }

  .qdm-visual {
    min-height: 230px !important;
    height: auto !important;
    padding: 8px 0 0 !important;
    border-radius: 20px !important;
    align-items: flex-end !important;
  }

  .qdm-delivery-image {
    width: min(128%, 520px) !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 -14% -5% !important;
  }

  .qpay-visual {
    min-height: 215px !important;
    height: auto !important;
    padding: 10px 0 4px !important;
    border-radius: 20px !important;
  }

  .qpay-visual img {
    width: min(112%, 430px) !important;
    max-width: 430px !important;
    max-height: none !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 420px) {
  .qdm-visual {
    min-height: 215px !important;
  }

  .qdm-delivery-image {
    width: 132% !important;
    margin: 0 -16% -4% !important;
  }

  .qpay-visual {
    min-height: 205px !important;
  }

  .qpay-visual img {
    width: 112% !important;
  }
}

/* Delivery/payment: loosen mobile layout back after over-compression. */
@media (max-width: 720px) {
  .qunelle-delivery-modern,
  .qunelle-payment-modern {
    padding-bottom: 60px !important;
  }

  .qdm-hero,
  .qpay-hero {
    padding: 28px 18px 22px !important;
    gap: 22px !important;
  }

  .qdm-visual {
    min-height: 260px !important;
    height: 260px !important;
  }

  .qdm-delivery-image {
    width: 140% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 -20% -5% !important;
  }

  .qpay-visual {
    min-height: 195px !important;
    height: 195px !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .qpay-visual img {
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-width: 285px !important;
    max-height: 168px !important;
    object-fit: contain !important;
  }

  .qdm-card,
  .qpay-card {
    padding-top: 2px !important;
  }

  .qdm-price-grid,
  .qdm-region-list,
  .qpay-list {
    gap: 12px !important;
  }

  .qdm-row,
  .qdm-region-item {
    min-height: 64px !important;
  }
}

@media (max-width: 420px) {
  .qdm-visual {
    min-height: 248px !important;
    height: 248px !important;
  }

  .qpay-visual {
    min-height: 178px !important;
    height: 178px !important;
  }

  .qpay-visual img {
    width: auto !important;
    max-width: 255px !important;
    max-height: 150px !important;
  }
}


/* Restore readable labels in the homepage catalog buttons. */
.qunelle-home-catalog__actions .qunelle-home-catalog__btn:not(.qunelle-home-catalog__btn--secondary),
.qunelle-home-catalog__actions .qunelle-home-catalog__btn:not(.qunelle-home-catalog__btn--secondary):visited {
  color: #111916 !important;
  background: #ffffff !important;
  border-color: rgba(17, 25, 22, .14) !important;
}
.qunelle-home-catalog__actions .qunelle-home-catalog__btn--secondary,
.qunelle-home-catalog__actions .qunelle-home-catalog__btn--secondary:visited {
  color: #ffffff !important;
  background: linear-gradient(180deg, #0aa889, #159f45) !important;
  border-color: #0e8a6a !important;
}
.qunelle-home-catalog__actions .qunelle-home-catalog__btn:hover,
.qunelle-home-catalog__actions .qunelle-home-catalog__btn--secondary:hover {
  color: #ffffff !important;
  background: #0e8a6a !important;
  border-color: #0e8a6a !important;
}

/* Homepage hero actions: catalog + calculator. */
#rec566389251 {
  position: relative;
}

#rec566389251 .tn-elem[data-elem-id="1678819510836"],
#rec566389251 .tn-elem[data-elem-id="1678722288376"] {
  display: none !important;
}

#rec566389251 .qunelle-hero-cta,
#rec566389251 .qunelle-hero-calc {
  position: absolute !important;
  top: 450px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 204px !important;
  height: 40px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  font-family: "TildaSans", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  z-index: 12 !important;
  box-sizing: border-box !important;
  box-shadow: 0 12px 24px rgba(0, 0, 0, .08) !important;
}

#rec566389251 .qunelle-hero-cta {
  left: calc(50% - 600px + 69px) !important;
  background: #93e48d !important;
  color: #000000 !important;
}

#rec566389251 .qunelle-hero-calc {
  left: calc(50% - 600px + 287px) !important;
  background: #ffffff !important;
  color: #111916 !important;
  border: 1px solid rgba(17, 25, 22, .14) !important;
}

@media screen and (max-width: 1199px) {
  #rec566389251 .qunelle-hero-cta {
    top: 365px !important;
    left: calc(50% - 480px + 50px) !important;
    width: 173px !important;
  }

  #rec566389251 .qunelle-hero-calc {
    top: 365px !important;
    left: calc(50% - 480px + 235px) !important;
    width: 173px !important;
  }
}

@media screen and (max-width: 959px) {
  #rec566389251 .qunelle-hero-cta {
    top: 520px !important;
    left: calc(50% - 320px + 42px) !important;
    width: 210px !important;
  }

  #rec566389251 .qunelle-hero-calc {
    top: 520px !important;
    left: calc(50% - 320px + 266px) !important;
    width: 210px !important;
  }
}

@media screen and (max-width: 639px) {
  #rec566389251 .qunelle-hero-cta,
  #rec566389251 .qunelle-hero-calc {
    width: 220px !important;
  }

  #rec566389251 .qunelle-hero-cta {
    top: 418px !important;
    left: calc(50% - 240px + 20px) !important;
  }

  #rec566389251 .qunelle-hero-calc {
    top: 466px !important;
    left: calc(50% - 240px + 20px) !important;
    background: #93e48d !important;
    color: #000000 !important;
    border-color: #93e48d !important;
  }
}

@media screen and (max-width: 479px) {
  #rec566389251 .qunelle-hero-cta,
  #rec566389251 .qunelle-hero-calc {
    min-width: 0 !important;
    width: 220px !important;
    height: 40px !important;
    padding: 0 12px !important;
    font-size: 11px !important;
  }

  #rec566389251 .qunelle-hero-cta {
    top: 376px !important;
    left: 15px !important;
  }

  #rec566389251 .qunelle-hero-calc {
    top: 424px !important;
    left: 15px !important;
    background: #93e48d !important;
    color: #000000 !important;
    border-color: #93e48d !important;
  }
}
