/* Make text look crisper and more legible in all browsers */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Focus state style for keyboard navigation for the focusable elements */
*[tabindex]:focus-visible,
input[type="file"]:focus-visible {
  outline: 0.125rem solid #4d65ff;
  outline-offset: 0.125rem;
}

/* Set color style to inherit */
.inherit-color * {
  color: inherit;
}

/* Get rid of top margin on first element in any rich text element */
.w-richtext > :not(div):first-child,
.w-richtext > div:first-child > :first-child {
  margin-top: 0 !important;
}

/* Get rid of bottom margin on last element in any rich text element */
.w-richtext > :last-child,
.w-richtext ol li:last-child,
.w-richtext ul li:last-child {
  margin-bottom: 0 !important;
}

/* Make sure containers never lose their center alignment */
.container-medium,
.container-small,
.container-large {
  margin-right: auto !important;
  margin-left: auto !important;
}

/* 
Make the following elements inherit typography styles from the parent and not have hardcoded values. 
Important: You will not be able to style for example "All Links" in Designer with this CSS applied.
Uncomment this CSS to use it in the project. Leave this message for future hand-off.
*/
/*
a,
.w-input,
.w-select,
.w-tab-link,
.w-nav-link,
.w-dropdown-btn,
.w-dropdown-toggle,
.w-dropdown-link {
  color: inherit;
  text-decoration: inherit;
  font-size: inherit;
}
*/

/* Apply "..." after 3 lines of text */
.text-style-3lines {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

/* Apply "..." after 2 lines of text */
.text-style-2lines {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* Adds inline flex display */
.display-inlineflex {
  display: inline-flex;
}

/* These classes are never overwritten */
.hide {
  display: none !important;
}

@media screen and (max-width: 991px) {
  .hide,
  .hide-tablet {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .hide-mobile-landscape {
    display: none !important;
  }
}
@media screen and (max-width: 479px) {
  .hide-mobile {
    display: none !important;
  }
}

.margin-0 {
  margin: 0rem !important;
}

.padding-0 {
  padding: 0rem !important;
}

.spacing-clean {
  padding: 0rem !important;
  margin: 0rem !important;
}

.margin-top {
  margin-right: 0rem !important;
  margin-bottom: 0rem !important;
  margin-left: 0rem !important;
}

.padding-top {
  padding-right: 0rem !important;
  padding-bottom: 0rem !important;
  padding-left: 0rem !important;
}

.margin-right {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
  margin-left: 0rem !important;
}

.padding-right {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
  padding-left: 0rem !important;
}

.margin-bottom {
  margin-top: 0rem !important;
  margin-right: 0rem !important;
  margin-left: 0rem !important;
}

.padding-bottom {
  padding-top: 0rem !important;
  padding-right: 0rem !important;
  padding-left: 0rem !important;
}

.margin-left {
  margin-top: 0rem !important;
  margin-right: 0rem !important;
  margin-bottom: 0rem !important;
}

.padding-left {
  padding-top: 0rem !important;
  padding-right: 0rem !important;
  padding-bottom: 0rem !important;
}

.margin-horizontal {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
}

.padding-horizontal {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
}

.margin-vertical {
  margin-right: 0rem !important;
  margin-left: 0rem !important;
}

.padding-vertical {
  padding-right: 0rem !important;
  padding-left: 0rem !important;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.sidebar::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.sidebar {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

.spacer * {
  padding: 0;
}

.img-carousel__face-front {
  --b: 1px;
  --b2: 0.5px; /* border thickness */
  --r: 1px; /* radius */
  --top: #fff; /* top border color */
  --side: #fff; /* side start color */

  border-radius: var(--r);

  background:
    /* TOP border (solid white) */
    linear-gradient(var(--top), var(--top)) top / 100% var(--b)
      no-repeat,
    /* LEFT border (white -> transparent downward) */
    linear-gradient(to bottom, var(--side), transparent) left /
      var(--b2) 100% no-repeat,
    /* RIGHT border (white -> transparent downward) */
    linear-gradient(to bottom, var(--side), transparent) right /
      var(--b2) 100% no-repeat,
    /* Fill */ transparent; /* your actual background */
}

/* Keep FAQ CTA card fixed when accordion items expand */
.faqq_wrap {
  align-items: flex-start;
}

.faqq_header {
  justify-content: flex-start;
  align-self: flex-start;
}

.faq_float {
  position: sticky;
  top: 6rem;
}

/* Reliable FAQ accordion (replaces broken shared Webflow IX) */
.faq_bottom {
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition:
    height 0.35s ease,
    opacity 0.25s ease;
}

.faq_item.is-open .faq_bottom {
  opacity: 1;
}

.faq_item .container-icon .is-animated {
  transition: transform 0.3s ease;
  transform-origin: center;
}

.faq_item.is-open .container-icon .is-animated {
  transform: rotate(90deg);
}

/* Legal pages */
.section_legal {
  min-height: 60vh;
}

.section_legal h1,
.section_legal h1 span {
  color: #000;
}

.legal-content p {
  margin: 0 0 1rem;
  line-height: 1.7;
}

.legal-content p:last-child {
  margin-bottom: 0;
}

.footer_bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .footer_bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Contact form: side-by-side fields + footer visible on load */
.form_form .form_row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--_sizes---fixed--medium, 1rem);
}

.hero-contact_form .form_input.is-text-area {
  min-height: 7.5rem;
}

@media screen and (max-width: 767px) {
  .form_form .form_row {
    grid-template-columns: 1fr;
  }
}

body.page-contact .page-wrapper {
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

body.page-contact .main-wrapper {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

body.page-contact .sec_hero-contact {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

body.page-contact .sec_hero-contact > .container-full {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

body.page-contact .hero-contact_layout {
  flex: 1 1 auto;
  height: auto !important;
  min-height: 0;
  align-items: stretch;
}

body.page-contact .hero-contact_left,
body.page-contact .hero-contact_right {
  min-height: 100%;
  height: 100%;
}

body.page-contact .footer {
  flex-shrink: 0;
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

/* Hero rotating headline */
.hero-rotate {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.12em;
}

.hero-rotate-mask {
  display: block;
  overflow: hidden;
  line-height: 1.15;
  width: 100%;
}

.hero-rotate-mask.is-sub {
  margin-top: 0;
}
.letter-spacing-normal{
  letter-spacing: normal;
}
.hero-rotate-title,
.hero-rotate-sub {
  display: block;
  will-change: transform, opacity;
  line-height: normal;
  transition: opacity 0.4s ease, transform 0.4s ease;
}

.hero-rotate-title.is-out,
.hero-rotate-sub.is-out {
  opacity: 0;
  transform: translateY(100%);
}

@media (prefers-reduced-motion: reduce) {
  .hero-rotate-title,
  .hero-rotate-sub {
    transition: opacity 0.25s ease;
  }

  .hero-rotate-title.is-out,
  .hero-rotate-sub.is-out {
    transform: none;
  }
}

/* CTA only: compact side-by-side cards (does not affect about hero) */
.section_cta .cta_widgets {
  min-height: 18rem;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.section_cta .cta_widgets .visual_wrap-first {
  transform: none;
  width: 17rem;
  min-height: 16rem;
  position: relative;
  justify-content: center;
  align-items: center;
}

.section_cta .cta_widgets .ecard.is-only {
  top: -38%;
  left: -28%;
  transform: scale(0.9) rotate(-6deg);
  z-index: 1;
}

.section_cta .cta_widgets .vcard.is-only {
  position: relative;
  z-index: 2;
  width: 15.5rem;
  height: 16.5rem;
  transform: rotate(6deg) scale(1.08);
  color: #111;
}

.section_cta .cta_widgets .vcard.is-only .vcard_text-label,
.section_cta .cta_widgets .vcard.is-only .vcard_text-amount,
.section_cta .cta_widgets .vcard.is-only .vcard_text-price {
  color: #111;
}

.section_cta .cta_widgets .vcard.is-only .vcard_text-amount-muted,
.section_cta .cta_widgets .vcard.is-only .vcard_text-date {
  color: #6b6b6b;
}

/* CTA backgrounds: missing cta-bg.avif (index uses cta-wrap, other pages use cta_wrap) */
.section_cta .cta-wrap,
.section_cta .cta_wrap {
  background-image:
    linear-gradient(115deg, rgba(10, 14, 12, 0.72) 0%, rgba(20, 32, 24, 0.45) 55%, rgba(10, 14, 12, 0.55) 100%),
    url("../images/695d72acdc993af5fc0d6e4c_h-service.avif") !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* About hero panel: missing img-h-ab.avif */
.h-about_img {
  background-image:
    linear-gradient(160deg, rgba(10, 14, 12, 0.15) 0%, rgba(10, 14, 12, 0.35) 100%),
    url("../images/693671b05ed33655d4b7ce17_card-about-img.avif") !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* Unused/legacy about wrap + call-to card (same deleted assets) */
.h-abou_wrap {
  background-image:
    linear-gradient(115deg, rgba(10, 14, 12, 0.55) 0%, rgba(10, 14, 12, 0.35) 100%),
    url("../images/693671b05ed33655d4b7ce17_card-about-img.avif") !important;
  background-position: center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

.call-to_card:not(.bg-black) {
  background-image:
    linear-gradient(#0000 50%, #0003),
    url("../images/695d72acdc993af5fc0d6e4c_h-service.avif") !important;
  background-position: 0 0, 50% !important;
  background-repeat: repeat, no-repeat !important;
  background-size: auto, cover !important;
}

/* Services hero: continuous card marquee (no Webflow half-loop jump) */
.sec_h-services .loop_img.is-cards {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  opacity: 1 !important;
  visibility: visible !important;
  margin-top: 2rem;
}

.sec_h-services .loop_img.is-cards .loop_img-track {
  display: flex;
  width: max-content;
  will-change: transform;
  animation: services-cards-marquee 45s linear infinite;
}

.sec_h-services .loop_img.is-cards .loop_img-group {
  display: flex;
  flex: none;
  gap: 1.25rem;
  padding-right: 1.25rem;
}

.sec_h-services .loop_ui-card {
  flex: none;
  width: 15rem;
  height: 15rem;
  border-radius: 1rem;
  overflow: hidden;
  box-sizing: border-box;
  border: 0.3125rem solid var(--grey--grey-100, #e8e8e8);
  display: flex;
  flex-direction: column;
}

.sec_h-services .loop_ui-card.is-dark {
  background: var(--bg-color--bg-dark, #111);
  color: #fff;
  justify-content: center;
  padding: 0.25rem;
}

.sec_h-services .loop_ui-card.is-dark .ecard_inner {
  max-width: none;
  width: 100%;
  height: 100%;
  padding: 1rem;
}

.sec_h-services .loop_ui-card.is-light {
  background: #fff;
  color: #111;
  padding: 0.315rem;
}

.sec_h-services .loop_ui-card.is-light .vcard_inner,
.sec_h-services .loop_ui-card.is-light .vcard_text-label,
.sec_h-services .loop_ui-card.is-light .vcard_text-amount,
.sec_h-services .loop_ui-card.is-light .vcard_text-amount-muted,
.sec_h-services .loop_ui-card.is-light .vcard_text-date,
.sec_h-services .loop_ui-card.is-light .vcard_text-price {
  color: inherit;
}

.sec_h-services .loop_ui-card.is-light .vcard_text-amount-muted,
.sec_h-services .loop_ui-card.is-light .vcard_text-date {
  color: #6b6b6b;
}

.sec_h-services .loop_ui-card.is-light .vcard_inner {
  height: 100%;
}

.sec_h-services .loop_ui-card.is-perf,
.sec_h-services .loop_ui-card.is-grow {
  background: #fff;
  color: #111;
  padding: 1rem;
  justify-content: space-between;
}

.sec_h-services .loop_ui-card.is-perf .pcard_text-title,
.sec_h-services .loop_ui-card.is-grow .pcard_text-title,
.sec_h-services .loop_ui-card.is-perf .pcard_text-value,
.sec_h-services .loop_ui-card.is-grow .pcard_text-value {
  color: #111;
}

.sec_h-services .loop_ui-card.is-perf .pcard_text-muted,
.sec_h-services .loop_ui-card.is-grow .pcard_text-muted {
  color: #6b6b6b;
}

.sec_h-services .loop_ui-card.is-perf .pcard_inner,
.sec_h-services .loop_ui-card.is-grow .pcard_inner {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

@keyframes services-cards-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .sec_h-services .loop_img.is-cards .loop_img-track {
    animation: none;
  }
}

/* Homepage hero 3D wheel — HTML UI cards instead of AVIF images */
.section_hero ._3d .img3d {
  width: 8rem;
}

.section_hero ._3d .hero3d-card {
  aspect-ratio: 1;
  width: 100%;
  box-sizing: border-box;
  border-radius: 0.55rem;
  overflow: hidden;
  backface-visibility: hidden;
  transform-style: preserve-3d;
  position: relative;
  transform: rotateX(90deg) rotateY(0) rotate(0);
  border: 0.12rem solid transparent;
  box-shadow: 0 0.3rem 0.9rem rgba(0, 0, 0, 0.2);
}

.section_hero ._3d .hero3d-card.is-ink {
  background: #141414;
  color: #f5f5f5;
  border-color: #2a2a2a;
}

.section_hero ._3d .hero3d-card.is-navy {
  background: #1a2f45;
  color: #f2f6fa;
  border-color: #27405a;
}

.section_hero ._3d .hero3d-card.is-forest {
  background: #1b3a2f;
  color: #eef7f2;
  border-color: #2b5344;
}

.section_hero ._3d .hero3d-card.is-mint {
  background: #d9efe6;
  color: #143028;
  border-color: #b7dccb;
}

.section_hero ._3d .hero3d-card.is-sky {
  background: #d7e7f6;
  color: #152536;
  border-color: #b5cce3;
}

.section_hero ._3d .hero3d-card.is-sand {
  background: #efe4c8;
  color: #2a2416;
  border-color: #ddcfa8;
}

.section_hero ._3d .hero3d-card_inner {
  height: 100%;
  padding: 0.65rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.12rem;
}

.section_hero ._3d .hero3d-card_inner.is-stack {
  justify-content: space-between;
}

.section_hero ._3d .hero3d-card_title,
.section_hero ._3d .hero3d-card_label,
.section_hero ._3d .hero3d-card_value,
.section_hero ._3d .hero3d-card_muted,
.section_hero ._3d .hero3d-card_amount {
  margin: 0;
  line-height: 1.15;
}

.section_hero ._3d .hero3d-card_title,
.section_hero ._3d .hero3d-card_label {
  font-size: 0.7rem;
  font-weight: 600;
}

.section_hero ._3d .hero3d-card_value {
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.section_hero ._3d .hero3d-card_amount {
  display: flex;
  align-items: baseline;
  gap: 0.08rem;
  font-size: 1.15rem;
  font-weight: 600;
  letter-spacing: -0.02em;
}

.section_hero ._3d .hero3d-card_muted {
  font-size: 0.6rem;
  font-weight: 500;
  opacity: 0.62;
}

.section_hero ._3d .hero3d-card.is-ink .hero3d-card_muted,
.section_hero ._3d .hero3d-card.is-navy .hero3d-card_muted,
.section_hero ._3d .hero3d-card.is-forest .hero3d-card_muted {
  opacity: 0.48;
}

.section_hero ._3d .hero3d-card_bar {
  margin-top: 0.35rem;
  height: 0.24rem;
  border-radius: 999px;
  background: rgba(20, 48, 40, 0.15);
  overflow: hidden;
}

.section_hero ._3d .hero3d-card_bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #1b3a2f;
}

@media screen and (max-width: 767px) {
  .section_hero ._3d .img3d {
    width: 6.75rem;
  }

  .section_hero ._3d .hero3d-card_value {
    font-size: 1.1rem;
  }

  .section_hero ._3d .hero3d-card_amount {
    font-size: 1rem;
  }
}

/* Partner logo marquee under hero */
.section_loop .logo {
  height: 2rem;
  width: auto;
  max-width: 8.5rem;
  object-fit: contain;
  flex: none;
  display: block;
  opacity: 0.95;
}

/* Brand logos in referral / expertise cards */
.testimonials-logo {
  object-fit: contain;
  background: #fff;
  border-radius: 0.35rem;
  padding: 0;
}

.ocard_pill-avatar .img,
.scard_avatar .img {
  object-fit: contain;
  background: #fff;
}

.avatars-wrap .avatar-item .img {
  object-fit: contain;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 50%;
  padding: 0.35rem;
}

.testi-service_card_img .img.is-brand-logo {
  object-fit: cover;
  background: #f4f4f4;
  padding: 0;
}

/* Services referral cards — restore original scale, logos fill frame */
.sec_testi-services .testi-service_card {
  width: 22rem;
  flex: none;
  margin-right: 0 !important;
}

.sec_testi-services .testi-service_card_img,
.sec_testi-services .testi-service_card_img.is-sm {
  position: relative;
  width: 100%;
  border-radius: var(--_sizes---fixed--small, 0.75rem);
  overflow: clip;
}

.sec_testi-services .testi-service_card_img {
  padding-top: 112%;
}

.sec_testi-services .testi-service_card_img.is-sm {
  padding-top: 91%;
}

.sec_testi-services .testi-service_card_img .img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  background: #f4f4f4;
  padding: 0;
}

/* Services testimonials marquee — full-bleed, seamless loop (no end gap) */
.sec_testi-services .testi_loop {
  display: block !important;
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  overflow: hidden;
}

.sec_testi-services .testi_loop-track {
  display: flex !important;
  width: max-content;
  align-items: stretch;
  gap: 0;
  padding: 0;
  margin: 0;
  will-change: transform;
  animation: services-testi-marquee 36s linear infinite;
}

.sec_testi-services .testi-services_cards {
  display: flex !important;
  flex: none;
  align-items: stretch;
  gap: 1.25rem;
  /* trailing gap baked into each set so -33.33% loops cleanly */
  padding: 0 1.25rem 0 0 !important;
  margin: 0 !important;
}

.sec_testi-services .testi-services_cards .testi-service_card {
  margin-right: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
  .sec_testi-services .testi_loop-track {
    animation: none;
  }
}

/* 3 equal sets (each includes trailing gap) → exact seamless reset */
@keyframes services-testi-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-33.333333%);
  }
}

/* Extra services (4+) span full width under the classic 3-card grid */
.serv-services_layout > .serv-service_card.is-extra {
  grid-column: 1 / -1;
}

/* Brand green + button contrast */
:root {
  --base--green: #49b06b;
  --bg-color--bg-green: #49b06b;
}

.button {
  color: #fff;
}

.button:hover {
  color: #111;
}

.button:hover:where(.w-variant-3876fb3c-f589-169e-8f41-073b5a3f3902) {
  color: #fff;
}

.button:where(.w-variant-3876fb3c-f589-169e-8f41-073b5a3f3902) {
  color: #fff;
}

.button:where(.w-variant-e7c0edd3-8276-a3ba-3d91-2abb3afb4c44) {
  color: #fff;
}

.button:where(.w-variant-e7c0edd3-8276-a3ba-3d91-2abb3afb4c44):hover {
  color: #fff;
}

.button:where(.w-variant-29a3d87d-0352-056f-f3fc-7e15705035cc) {
  color: #111;
}

.button:hover:where(.w-variant-29a3d87d-0352-056f-f3fc-7e15705035cc) {
  color: #111;
}

.button-arrow {
  color: #fff;
}

.button-arrow .text_button {
  color: #fff;
}

.button-arrow.is-black {
  color: #fff;
}

.button_container-arrow.is-black {
  color: #fff;
}

.bg-green {
  background-color: #49b06b;
  color: #fff;
}

.container-icon.bg-green,
.container-big-icon.bg-green,
.container-icon-sm.bg-green {
  color: #fff;
}

.container-icon.bg-green img,
.container-big-icon.bg-green img,
.container-icon-sm.bg-green img,
.bg-green > img.icon-1x1-medium,
.bg-green > img.icon-1x1-xlarge,
.bg-green > img.icon-1x1-large {
  filter: brightness(0) invert(1);
}

.container-icon.bg-green svg,
.container-big-icon.bg-green svg,
.bg-green svg {
  color: #fff;
  fill: currentColor;
}

/* Blog filters + pagination */
.blog-filters {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.blog-filters_row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.75rem 1rem;
}
.blog-filters_label {
  font-size: 0.875rem;
  color: var(--grey--grey-500, #6b6b6b);
  min-width: 4.5rem;
}
.blog-filters_links,
.blog-meta-tax,
.blog-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 0.65rem;
  align-items: center;
}
.blog-filter,
.blog-page {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: #1a1a1a;
  font-size: 0.9375rem;
  line-height: 1.2;
  padding: 0.35rem 0;
  border-bottom: 1px solid transparent;
  transition: color 0.2s ease, border-color 0.2s ease;
}
.blog-filter:hover,
.blog-page:hover {
  color: #49b06b;
}
.blog-filter.is-active,
.blog-page.is-active {
  color: #49b06b;
  border-bottom-color: #49b06b;
  font-weight: 600;
}
.blog-pagination {
  justify-content: center;
  gap: 0.85rem;
}
.blog-page {
  min-width: 1.5rem;
  justify-content: center;
}
.blog-meta-tax {
  margin-top: 0.25rem;
}

/* Blog article body — readable sizes (override display headings) */
.sec_internal-blog .rich-content {
  color: #3a3a3a;
  font-size: 1.0625rem;
  line-height: 1.75;
  text-align: left;
}
.sec_internal-blog .rich-content > *:first-child {
  margin-top: 0;
}
.sec_internal-blog .rich-content p {
  margin: 0 0 1.15rem;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}
.sec_internal-blog .rich-content h2,
.sec_internal-blog .rich-content h3,
.sec_internal-blog .rich-content h4 {
  color: #111;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.35;
  margin: 2rem 0 0.85rem;
  max-width: none;
}
.sec_internal-blog .rich-content h2 {
  font-size: 1.375rem !important;
}
.sec_internal-blog .rich-content h3 {
  font-size: 1.2rem !important;
}
.sec_internal-blog .rich-content h4 {
  font-size: 1.0625rem !important;
}
.sec_internal-blog .rich-content ul,
.sec_internal-blog .rich-content ol {
  margin: 0 0 1.25rem;
  padding-left: 1.25rem;
}
.sec_internal-blog .rich-content li {
  margin: 0.35rem 0;
  line-height: 1.65;
}
.sec_internal-blog .rich-content li::marker {
  color: #49b06b;
}
.sec_internal-blog .rich-content strong {
  color: #111;
  font-weight: 600;
}
.sec_internal-blog .rich-content a {
  color: #49b06b;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.sec_internal-blog .rich-content blockquote {
  margin: 1.5rem 0;
  padding: 0.85rem 0 0.85rem 1.15rem;
  border-left: 3px solid #49b06b;
  color: #222;
  font-style: normal;
}
.sec_internal-blog .rich-content img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 0.75rem;
  margin: 1.5rem 0;
}

.blog-detail-footer {
  display: flex;
  justify-content: flex-start;
  margin-top: 0.5rem;
}
.blog-back-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: #111;
  text-decoration: none;
  font-size: 0.95rem;
  font-weight: 500;
  padding: 0.35rem 0;
  border-bottom: 1px solid transparent;
  transition: color 0.2s ease, border-color 0.2s ease;
}
.blog-back-link:hover {
  color: #49b06b;
  border-bottom-color: #49b06b;
}
.blog-back-link svg {
  width: 1rem;
  height: 1rem;
  flex: none;
}

/* Service detail testimonials — keep visible even if IX scroll anim fails */
.section_testimonia,
.section_testimonia .slider_two,
.section_testimonia .testimonia_card {
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
}
.section_testimonia .slider_two.w-slider {
  height: auto;
  background: transparent;
}

/* Header dropdown / submenu */
.nav-dropdown {
  position: relative;
  display: flex;
  align-items: center;
}
.nav-dropdown_toggle {
  display: inline-flex !important;
  align-items: center;
  gap: 0.35rem;
}
.nav-dropdown_chevron {
  width: 0.45rem;
  height: 0.45rem;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  opacity: 0.75;
  transition: transform 0.2s ease;
}
.nav-dropdown.is-open .nav-dropdown_chevron {
  transform: rotate(225deg) translateY(-1px);
}
@media screen and (min-width: 992px) {
  .nav-dropdown:hover .nav-dropdown_chevron {
    transform: rotate(225deg) translateY(-1px);
  }
}
.nav-dropdown_list {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  min-width: 13rem;
  padding: 0.9rem 0 0; /* hover bridge — menü ile panel arası boşlukta kapanmaz */
  border-radius: 0;
  background: transparent;
  color: #111;
  box-shadow: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.15s ease, visibility 0.15s ease;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}
.nav-dropdown_list::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0.9rem;
  bottom: 0;
  background: #fff;
  border-radius: 0.75rem;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
  z-index: -1;
}
.nav-dropdown:hover .nav-dropdown_list,
.nav-dropdown:focus-within .nav-dropdown_list,
.nav-dropdown.is-open .nav-dropdown_list {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.nav-dropdown_link {
  display: block;
  position: relative;
  z-index: 1;
  margin: 0 0.5rem;
  padding: 0.7rem 0.85rem;
  border-radius: 0.5rem;
  color: #222;
  text-decoration: none;
  font-family: var(--_typography---font-family--alternate, inherit);
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 0.02em;
  white-space: nowrap;
  transition: background 0.15s ease, color 0.15s ease;
}
.nav-dropdown_link:first-child {
  margin-top: 0.35rem;
}
.nav-dropdown_link:last-child {
  margin-bottom: 0.35rem;
}
.nav-dropdown_link:hover,
.nav-dropdown_link.is-active {
  background: rgba(73, 176, 107, 0.12);
  color: #1f7a42;
}

@media screen and (max-width: 991px) {
  .nav-dropdown {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }
  .nav-dropdown_list {
    position: static;
    transform: none;
    left: auto;
    min-width: 0;
    width: 100%;
    box-shadow: none;
    background: transparent;
    padding: 0.15rem 0 0.35rem 0;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    display: none;
  }
  .nav-dropdown_list::before {
    display: none;
  }
  .nav-dropdown.is-open .nav-dropdown_list {
    display: flex;
  }
  .nav-dropdown_link {
    color: inherit;
    white-space: normal;
    margin: 0;
    padding: 0.65rem 0.25rem 0.65rem 0.85rem;
    text-align: left;
  }
  .padding-section-large{
    padding-top: 2rem !important;
  }
  .footer_bottom > .text-color-on-secondary{
    font-size:14px !important;
  }
  .footer_right{
    display: flex !important;
    justify-content: space-between;
    align-items: flex-start !important;
  }
  .nav-dropdown_link:first-child,
  .nav-dropdown_link:last-child {
    margin: 0;
  }
  .nav-dropdown_toggle {
    width: 100%;
    justify-content: space-between;
  }
  /* Touch devices keep :hover sticky — only .is-open may flip chevron */
  .nav-dropdown_chevron {
    transform: rotate(45deg) translateY(-1px) !important;
  }
  .nav-dropdown.is-open .nav-dropdown_chevron {
    transform: rotate(225deg) translateY(-1px) !important;
  }

  /* Mobile logo */
  .navbar .navbar_logo-link {
    width: 120px !important;
    height: auto !important;
    min-height: 0;
    padding-right: 0 !important;
  }
  .navbar .navbar_logo,
  .navbar .navbar_logo.is-black {
    width: 120px !important;
    max-width: 120px !important;
    height: auto !important;
    max-height: none !important;
  }

  /* Sticky header on mobile */
  .navbar.w-nav {
    position: sticky !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 1200 !important;
    background-color: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }
  .navbar.w-nav:not(.w-variant-b70328b2-1dfd-ba7a-c1d1-5c2a5b388d0d):not([data-wf--navbar--variant="secondary"]) {
    background-color: rgba(12, 18, 14, 0.94);
  }

  .navbar .menu-button.w-nav-button {
    position: relative;
    z-index: 1100;
    cursor: pointer;
    pointer-events: auto;
  }

  /* Position menu under header (logo is 120px — old inset:5rem was too high) */
  .navbar .nav_wrap,
  .navbar .navbar_content,
  .navbar .container-large,
  .navbar .padding-global.is-navbar {
    position: static;
  }
  .navbar .w-nav-menu[data-nav-menu-open],
  .navbar.w--nav-open .nav_mobile.w-nav-menu {
    display: flex !important;
    position: absolute !important;
    inset: unset !important;
    top: 100% !important;
    left: 1rem !important;
    right: 1rem !important;
    bottom: auto !important;
    width: auto !important;
    margin: 0.5rem 0 0 !important;
    padding: 0.85rem 1rem !important;
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    flex-flow: column nowrap !important;
    background: #fff !important;
    color: #142018 !important;
    border-radius: 1rem;
    box-shadow: 0 16px 40px rgba(15, 23, 19, 0.14);
    z-index: 1201;
  }
  .navbar .w-nav-menu[data-nav-menu-open] .navbar_list,
  .navbar.w--nav-open .navbar_list,
  .navbar .w-nav-menu[data-nav-menu-open] .navbar_list.w-variant-b70328b2-1dfd-ba7a-c1d1-5c2a5b388d0d,
  .navbar.w--nav-open .navbar_list.w-variant-b70328b2-1dfd-ba7a-c1d1-5c2a5b388d0d {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: 100% !important;
    gap: 0.15rem !important;
    color: inherit !important;
  }
  .navbar .w-nav-menu[data-nav-menu-open] .nav_links,
  .navbar.w--nav-open .nav_links,
  .navbar .w-nav-menu[data-nav-menu-open] .nav_links.w-nav-link,
  .navbar.w--nav-open .nav_links.w-nav-link {
    width: 100% !important;
    justify-content: flex-start !important;
    text-align: left !important;
    color: inherit !important;
    border-radius: 0.5rem;
    font-weight: 500 !important;
    transition: background 0.15s ease, color 0.15s ease;
  }
  .navbar .w-nav-menu[data-nav-menu-open] .nav_links:hover,
  .navbar.w--nav-open .nav_links:hover,
  .navbar .w-nav-menu[data-nav-menu-open] .nav_links.w--current,
  .navbar.w--nav-open .nav_links.w--current,
  .navbar .w-nav-menu[data-nav-menu-open] .nav-dropdown.is-current > .nav_links,
  .navbar.w--nav-open .nav-dropdown.is-current > .nav_links {
    background: rgba(73, 176, 107, 0.12) !important;
    color: #1f7a42 !important;
    opacity: 1 !important;
  }
}

/* Language switcher dropdown (header, left of contact CTA) */
.lang-switch {
  position: relative;
  margin-right: 0.65rem;
  z-index: 30;
}
.lang-switch_toggle {
  display: inline-flex;
  color: #fff;
  align-items: center;
  gap: 0.35rem;
  padding: 0.4rem 0.65rem;
  border: 0;
  border-radius: 999px;
  background: rgba(15, 23, 19, 0.06);
  font: inherit;
  font-size: 0.75rem;
  font-weight: 650;
  letter-spacing: 0.02em;
  line-height: 1;
  cursor: pointer;
}
.navbar.w-variant-b70328b2-1dfd-ba7a-c1d1-5c2a5b388d0d .lang-switch_toggle,
.navbar[data-wf--navbar--variant="secondary"] .lang-switch_toggle {
  background: rgba(255, 255, 255, 0.12);
  color: inherit;
}
.lang-switch_chevron {
  width: 0;
  height: 0;
  margin-left: 0.1rem;
  border-left: 3.5px solid transparent;
  border-right: 3.5px solid transparent;
  border-top: 4.5px solid currentColor;
  opacity: 0.7;
  transition: transform 0.15s ease;
}
.lang-switch.is-open .lang-switch_chevron {
  transform: rotate(180deg);
}
.lang-switch_menu {
  position: absolute;
  top: calc(100% + 0.35rem);
  right: 0;
  min-width: 100%;
  padding: 0.3rem;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(15, 23, 19, 0.14);
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}
.lang-switch_menu[hidden] {
  display: none !important;
}
.lang-switch_option {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.5rem 0.65rem;
  border-radius: 8px;
  text-decoration: none;
  color: #142018;
  font-size: 0.75rem;
  font-weight: 650;
  white-space: nowrap;
}
.lang-switch_option:hover {
  background: rgba(15, 23, 19, 0.06);
  text-decoration: none;
}
.lang-switch_option.is-active {
  background: rgba(73, 176, 107, 0.14);
}
.lang-switch_flag {
  font-size: 0.95rem;
  line-height: 1;
}
.lang-switch_code {
  font-family: inherit;
}
.nav_buttons-wrap {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .lang-switch {
    margin-right: 0.4rem;
  }
}

/* Footer link columns */
.footer_col-title {
  font-family: var(--_typography---font-family--alternate, inherit);
  font-size: 0.72rem;
  font-weight: 650;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.92);
  margin: 0 0 0.15rem;
  padding: var(--_sizes---fixed--small, 0.5rem);
  padding-bottom: 0.1rem;
}
.footer_right {
  grid-template-columns: 1fr 1.35fr !important;
  align-items: start;
  gap: 1.5rem 2rem;
}
.footer_right .footer_links {
  min-width: 0;
}
@media screen and (max-width: 767px) {
  .footer_right {
    grid-template-columns: 1fr 1fr !important;
    gap: 1.5rem 1rem;
  }
}
@media screen and (max-width: 479px) {
  .footer_right {
    grid-template-columns: 1fr !important;
  }
}

/* Contact link only in mobile hamburger (desktop uses CTA button) */
@media screen and (min-width: 992px) {
  .nav_links.is-mobile-nav-only,
  .is-mobile-nav-only {
    display: none !important;
  }
}

/* Contact Calendly embed */
.contact-calendly {
  width: 100%;
  min-height: 640px;
  border-radius: 1rem;
  overflow: hidden;
  background: #fff;
}
.contact-calendly .calendly-inline-widget {
  width: 100% !important;
}
@media screen and (max-width: 767px) {
  .contact-calendly {
    min-height: 720px;
  }
  .contact-calendly .calendly-inline-widget {
    height: 720px !important;
  }
}

/* Contact form CTA: short label on mobile only */
.contact-btn-short {
  display: none;
}
@media screen and (max-width: 767px) {
  .contact-btn-full {
    display: none !important;
  }
  .contact-btn-short {
    display: inline !important;
  }
}

/* Footer newsletter: keep “Gönder” readable (was white-on-light / hidden on mobile) */
.footer .button-arrow,
.footer .button-arrow .text_button {
  color: #111 !important;
}
.footer .button-arrow_text {
  display: block !important;
}

/* Service detail hero image: no padded frame, larger on mobile */
.hero-service_right {
  padding: 0 !important;
  border: 0 !important;
  outline: none !important;
  background: transparent !important;
  overflow: hidden;
}
.hero-service_right .img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  border: 0 !important;
  border-radius: inherit;
}
@media screen and (max-width: 991px) {
  .hero-service_right {
    width: 100%;
    min-height: 22rem;
  }
  .hero-service_right .img {
    min-height: 22rem;
    width: 100%;
    height: auto;
    object-fit: cover;
  }
}
@media screen and (max-width: 479px) {
  .hero-service_right {
    min-height: 18rem;
  }
  .hero-service_right .img {
    min-height: 18rem;
  }
}

