

:root {

  --color-primary: #00A6B4;
  --color-dark:    #073047;
  --color-glow:    #6EE7F2;
  --color-bg:      #EAFBFF;
  --color-white:   #FFFFFF;
  --color-text:    #073047;
  --color-muted:   #5D7280;
  --color-border:  rgba(7, 48, 71, 0.12);

  --tj-color-theme-primary: #00A6B4;
  --tj-color-theme-dark:    #073047;
  --tj-color-heading-primary: #073047;
  --tj-color-theme-bg:      #EAFBFF;
  --tj-color-theme-bg-2:    #D8F5FB;
  --tj-color-border-1:      #00A6B4;
  --ys-lime:        #00A6B4;
  --ys-lime-light:  #6EE7F2;
  --ys-lime-dark:   #073047;
  --ys-forest:      #073047;
  --ys-forest-light:#00A6B4;
  --ys-green:       #00A6B4;
  --ys-dark:        #052436;
  --ys-dark-2:      #073047;
}

.heroStack .hero-bg,
.hero-gradient {
  background: linear-gradient(153.92deg, #052436 30%, #073047 70%, #0a4a63 124%) !important;
}

.tj-footer-area,
.footer-1,
.iv-dark {
  background-color: #073047 !important;
}

.tj-page-header { background-color: #073047 !important; }
.tj-page-header::before { background-color: rgba(7, 48, 71, 0.45) !important; }

.h9-contact-section::after { background-color: rgba(0, 166, 180, 0.10) !important; }
.h9-contact-section::before { background-color: transparent !important; }
.hero-lead-form::before {
  background-image: linear-gradient(135deg, rgba(110, 231, 242, 0.18), rgba(0, 0, 0, 0) 50%) !important;
}

.tj-footer-area a:hover,
.footer-1 a:hover { color: #6EE7F2 !important; }

.tj-primary-btn:hover { --ys-lime: #073047; }

.tj-primary-btn .btn_inner .btn_text,
.tj-primary-btn .btn_inner .btn_text > span,
.tj-primary-btn:hover .btn_inner .btn_text,
.tj-primary-btn:hover .btn_inner .btn_text > span {
  color: #ffffff !important;
}

.tj-primary-btn .btn_inner .btn_text {
  position: relative;
  z-index: 3;
  text-shadow: 0 23px 0 currentColor;
}

.tj-primary-btn .btn_inner .btn_icon {
  z-index: 4;
}

.iv-hero .iv-hero-btn-2:not(:hover) .btn_inner .btn_text,
.iv-hero .iv-hero-btn-2:not(:hover) .btn_inner .btn_text > span {
  color: #073047 !important;
}

.iv-hero .iv-hero-btn-2:hover .btn_inner .btn_text,
.iv-hero .iv-hero-btn-2:hover .btn_inner .btn_text > span {
  color: #ffffff !important;
}

.iv-logo-img { height: 52px; width: auto; display: block; }
.mobile_logo .iv-logo-img { height: 46px; }
@media (max-width: 575px){ .iv-logo-img { height: 44px; } }

.footer-logo-link {
  display: inline-flex;
  align-items: center;
  margin-bottom: 18px;
}

.footer-1 .footer-logo-link .footer-logo-img.iv-logo-img {
  height: 52px !important;
  width: auto !important;
}

.footer-1 .footer-logo-img--white {
  filter: brightness(0) invert(1);
  opacity: 0.96;
}

@media (max-width: 575px) {
  .footer-1 .footer-logo-link .footer-logo-img.iv-logo-img {
    height: 46px !important;
  }
}

.iv-wordmark {
  font-family: var(--tj-ff-heading, 'Libre Franklin', sans-serif);
  font-weight: 700;
  font-size: 1.65rem;
  letter-spacing: -0.02em;
  line-height: 1;
  white-space: nowrap;
  display: inline-flex;
  align-items: baseline;
}
.iv-wordmark .wm-iv   { color: #00A6B4; }
.iv-wordmark .wm-rest { color: #FFFFFF; }
.iv-wordmark .wm-dot  { color: #6EE7F2; }

.header-sticky .iv-wordmark .wm-rest { color: #073047; }
@media (max-width: 575px){
  .iv-wordmark { font-size: 1.35rem; }
}

body:not(.page-home) .header-absolute {
  position: relative;
  background: #ffffff;
  box-shadow: 0 1px 12px rgba(7,48,71,0.08);
}

body:not(.page-home) .header-absolute .header-topbar {
  background: #073047;
}

body:not(.page-home) .header-absolute .mainmenu a { color: #073047; }
body:not(.page-home) .header-absolute .mainmenu a:hover,
body:not(.page-home) .header-absolute .mainmenu .active > a,
body:not(.page-home) .header-absolute .mainmenu .current-menu-item > a { color: #00A6B4; }

.iv-mobile-cta {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 9990;
  display: none;
  background: #073047;
  padding: 9px 12px;
  box-shadow: 0 -2px 14px rgba(7,48,71,0.25);
  gap: 10px;
}
.iv-mobile-cta a {
  flex: 1 1 0;
  text-align: center;
  font-family: var(--tj-ff-heading, 'Libre Franklin', sans-serif);
  font-weight: 700;
  font-size: 15px;
  padding: 13px 8px;
  border-radius: 8px;
  text-decoration: none;
  line-height: 1;
}
.iv-mobile-cta .cta-call  { background: rgba(255,255,255,0.12); color: #fff; }
.iv-mobile-cta .cta-quote { background: #00A6B4; color: #fff; }
@media (max-width: 991px){
  .iv-mobile-cta { display: flex; }
  body { padding-bottom: 64px; }
}

.iv-bg-soft { background: #EAFBFF; }

body.page-home .wow,
body.page-home .text-anim,
body.page-home .hero-text-anim,
body.page-home .wow *,
body.page-home .text-anim *,
body.page-home .hero-text-anim * {
  opacity: 1 !important;
  visibility: visible !important;
}

body.page-home .wow:not(.swiper-wrapper):not(.swiper-slide),
body.page-home .text-anim:not(.swiper-wrapper):not(.swiper-slide),
body.page-home .hero-text-anim:not(.swiper-wrapper):not(.swiper-slide),
body.page-home .wow *:not(.swiper-wrapper):not(.swiper-slide),
body.page-home .text-anim *:not(.swiper-wrapper):not(.swiper-slide),
body.page-home .hero-text-anim *:not(.swiper-wrapper):not(.swiper-slide) {
  transform: none !important;
  translate: none !important;
  rotate: none !important;
  scale: none !important;
}

body.page-home .nice-select .list {
  opacity: 0 !important;
  visibility: hidden !important;
}
body.page-home .nice-select.open .list {
  opacity: 1 !important;
  visibility: visible !important;
}

.contact-form-one .nice-select.open,
.hero-lead-form .nice-select.open {
  z-index: 50;
}

.h6-hero-carousel-only-30460028 .slider-img {
  position: relative;
  isolation: isolate;
}
.h6-hero-carousel-only-30460028 .slider-img img {
  display: block;
}
.h6-hero-carousel-only-30460028 .slider-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #00A6B4;
  opacity: 0.25;
  mix-blend-mode: multiply;
  border-radius: inherit;
  pointer-events: none;
  z-index: 1;
}

ul.iv-check { list-style: none; padding: 0; margin: 0; }
ul.iv-check li {
  position: relative;
  padding: 7px 0 7px 32px;
  color: var(--color-text);
}
ul.iv-check li::before {
  content: "\e93a";
  position: absolute; left: 0; top: 7px;
  color: #00A6B4; font-weight: 700;
}

ul.iv-check li.has-icon::before { content: none; }
ul.iv-check li .tji-check,
ul.iv-check li i {
  position: absolute; left: 0; top: 9px; color: #00A6B4; font-size: 15px;
}
.iv-card--dark ul.iv-check li { color: rgba(255,255,255,0.9); }
.iv-card--dark ul.iv-check li i { color: #6EE7F2; }
.iv-dark ul.iv-check li i { color: #6EE7F2; }

.iv-step-num {
  width: 56px; height: 56px;
  border: 2px solid var(--color-primary);
  border-radius: 50%;
  color: var(--color-primary);
  font-family: var(--tj-ff-heading, 'Libre Franklin', sans-serif);
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1;
  display: inline-flex; align-items: center; justify-content: center;
}
.iv-dark .iv-step-num { border-color: #6EE7F2; color: #6EE7F2; }

.iv-dark,
.iv-dark p,
.iv-dark li,
.iv-dark span:not(.wm-iv):not(.wm-dot),
.iv-dark .h1, .iv-dark .h2, .iv-dark .h3, .iv-dark .h4, .iv-dark .h5,
.iv-dark h1, .iv-dark h2, .iv-dark h3, .iv-dark h4, .iv-dark h5 {
  color: #ffffff;
}
.iv-dark .text-muted, .iv-dark .iv-muted { color: rgba(255,255,255,0.72) !important; }

.iv-muted { color: var(--color-muted); }

.iv-select { color: #073047; }
.iv-select:required:invalid,
.iv-select option[value=""] { color: #9ca3af; }
.iv-select option { color: #073047; }

.iv-form-note { font-size: 12.5px; color: var(--color-muted); margin: 10px 0 0; text-align: center; }
.hero-lead-form .iv-form-note { color: var(--color-muted); }

.iv-dark .hero-lead-form,
.iv-dark .hero-lead-form .h3,
.iv-dark .hero-lead-form p,
.iv-dark .hero-lead-form span,
.iv-dark .hero-lead-form li,
.iv-dark .hero-lead-form label,
.iv-dark .hero-lead-form .nice-select,
.iv-dark .hero-lead-form .nice-select .current,
.iv-dark .hero-lead-form .nice-select .option {
  color: #073047;
}
.iv-dark .hero-lead-form .iv-lead-form-sub,
.iv-dark .hero-lead-form .iv-form-note {
  color: var(--color-muted);
}

.iv-dark .hero-lead-form .tj-primary-btn span,
.iv-dark .hero-lead-form .tj-primary-btn .btn_text span {
  color: #fff;
}
.hero-lead-form .h3 { color: #073047; }
.iv-lead-form-sub { font-size: 14px; color: var(--color-muted); margin-bottom: 18px; }

.hero-lead-form .nice-select {
  width: 100%;
  height: 45px;
  min-height: 45px;
  line-height: 1.5;
  padding: 10px 36px 10px 2px;
  margin: 0;
  border: 1px solid #dee2e6;
  border-radius: 0.375rem;
  background-color: #fff;
  font-size: 1rem;
  display: flex;
  align-items: center;
}
.hero-lead-form .nice-select .current { line-height: 1.5; }
.hero-lead-form .nice-select::after { right: 16px; }
.hero-lead-form .nice-select .list { width: 100%; }

.contact-form-one .nice-select {
  width: 100%;
  height: auto;
  line-height: 1.6;
  padding: 0 24px 15px 0;
  margin: 0;
  border: none;
  border-bottom: 1.2px solid #676e7a;
  border-radius: 0;
  background-color: transparent;
  color: #fff;
  font-size: 16px;
  display: flex;
  align-items: center;
}
.contact-form-one .nice-select .current { color: #fff; line-height: 1.6; }
.contact-form-one .nice-select::after {
  right: 4px;
  border-bottom-color: rgba(255, 255, 255, 0.7);
  border-right-color: rgba(255, 255, 255, 0.7);
}
.contact-form-one .nice-select.open { border-bottom-color: var(--tj-color-theme-primary, #a0d63a); }
.contact-form-one .nice-select .list { width: 100%; }
.contact-form-one .nice-select .option { color: #073047; }

.pricing__box.active { background: #073047 !important; }
.pricing__box.active .pricing__package-name,
.pricing__box.active .pricing__package-desc,
.pricing__box.active .pricing__package-desc *,
.pricing__box.active .pricing__features-list li,
.pricing__box.active .pricing__features-list span { color: #fff !important; }
.pricing__box.active .price-number { color: #6EE7F2 !important; }
.pricing__box.active .pricing__features-list i { color: #6EE7F2 !important; }

.header-sticky .mainmenu a.active,
.header-sticky .mainmenu .current-menu-item a { color: #073047; }

.iv-hero { position: relative; padding: 150px 0 90px; }
@media (max-width: 991px){ .iv-hero { padding: 120px 0 60px; } }
.iv-hero .iv-hero-trust li { padding: 6px 0 6px 30px; }

.iv-hero .container { position: relative; z-index: 2; }
.iv-hero .hero-content .hero-title,
.iv-hero .hero-content .desc p { color: #073047; }
.iv-hero .hero-content .price-highlight {
  background: rgba(255,255,255,.85);
  border-color: rgba(0,166,180,.45);
  color: #073047;
}
.iv-hero .hero-content .price-highlight i { color: #00A6B4; }

.iv-hero .iv-hero-btn-2 { background: #ffffff !important; border: 1px solid var(--color-border); }
.iv-hero .iv-hero-btn-2 .btn_text span { color: #073047 !important; }
.iv-hero .iv-hero-btn-2:hover { background: #073047 !important; border-color: #073047; }
.iv-hero .iv-hero-btn-2:hover .btn_text span { color: #ffffff !important; }

.hero-title { overflow-wrap: break-word; word-break: break-word; }
@media (max-width: 991px){ .hero-title { font-size: 2.2rem; } }
@media (max-width: 575px){ .hero-title { font-size: 1.9rem; } }

.iv-svg { display: inline-block; vertical-align: middle; color: #00A6B4; }
.feature-icon .iv-svg { width: 54px; height: 54px; }
.iv-dark .feature-icon .iv-svg { color: #6EE7F2; }

.iv-media {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 8px 30px rgba(7,48,71,0.10);
  line-height: 0;
}
.iv-media img { width: 100%; height: auto; display: block; }

.tj-faq-section .accordion-button:not(.collapsed) { background: #EAFBFF; color: #073047; }
.tj-faq-section .accordion-button:focus { box-shadow: 0 0 0 .15rem rgba(0,166,180,.25); }

body.page-home .footer-curve { display: none; }

body.page-yhteystiedot .tj-cta-section { mix-blend-mode: normal; }

body.page-yhteystiedot .footer-curve { display: none; }
body.page-yhteystiedot .footerStack { background-color: #073047; }

body.page-yhteystiedot .tj-cta-section::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 34px;
  background-color: #073047;
  -webkit-mask: url(/assets/images/curve-1.png.webp) center / 100% 100% no-repeat;
          mask: url(/assets/images/curve-1.png.webp) center / 100% 100% no-repeat;
  z-index: 2;
  pointer-events: none;
}

.pricing-hinnasto-11000003 .price-number {
  line-height: 1.15;
  display: inline-block;
}

.progress-section-89367471 .proggess-item {
  display: flex;
  flex-direction: column;
  align-items: center;
}
