.icon{font-size:var(--icon-size,1em);width:auto;height:auto;line-height:1;vertical-align:middle;flex:none}.site-header{background:transparent;border:0;box-shadow:none;padding:12px 0;position:fixed;top:0}.site-header .header-container{width:min(1180px,100% - 64px);background:color-mix(in srgb,var(--paper) 84%,transparent);border:1px solid var(--line);border-radius:50px;box-shadow:0 12px 30px #0000001c;padding:5px 24px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.site-header.is-scrolled .header-container{background:color-mix(in srgb,var(--paper) 78%,transparent)}.site-header .header-inner{min-height:64px}.desktop-nav{background:transparent;border:0;box-shadow:none;border-radius:0;padding-inline:8px}.desktop-nav .nav-link{border-radius:999px;padding-inline:16px}.desktop-nav .nav-link:hover,.desktop-nav .nav-link.is-active{background:color-mix(in srgb,var(--copper) 10%,transparent)}.desktop-nav .nav-link:after{inset-inline-start:16px;inset-inline-end:16px;left:auto;right:auto;transform:scaleX(0);transform-origin:0 50%;transition:transform .25s ease}.desktop-nav .nav-link:hover:after,.desktop-nav .nav-link.is-active:after{right:auto;transform:scaleX(1)}[dir=rtl] .desktop-nav .nav-link:after{transform-origin:100% 50%}.mobile-panel{top:100%;border-radius:0 0 24px 24px}.home-hero{height:100svh;min-height:620px}.home-hero-content{height:100%;min-height:0;padding-bottom:clamp(180px,21vh,245px)}.home-hero-products{width:min(52vw,820px);right:clamp(28px,2.5vw,60px);bottom:clamp(150px,26vh,270px)}.home-hero-product img{max-height:40vh}.home-hero-lower{z-index:6;display:grid;gap:8px;position:absolute;bottom:clamp(14px,2.5vh,30px);inset-inline:0}.home-hero-lower .home-capabilities{background:transparent;border:0;margin:0;padding:0;position:relative;z-index:1}.home-capabilities .capabilities-grid{grid-template-columns:repeat(4,minmax(0,1fr));background:var(--paper-2);border:1px solid var(--line);border-radius:30px;box-shadow:0 18px 42px #00000026;min-height:clamp(118px,14vh,160px);overflow:hidden;padding:22px 28px}.home-capabilities .capability-item{min-width:0;min-height:74px;padding:6px 24px;transition:transform .25s ease,background-color .25s ease}.home-capabilities .capability-item:hover{background:color-mix(in srgb,var(--copper) 7%,transparent);transform:translateY(-2px)}.home-capabilities .capability-item>.icon{background:color-mix(in srgb,var(--copper) 12%,transparent);border-radius:50%;font-size:18px;padding:10px;width:42px;height:42px}.home-capabilities .capability-item h2{margin-top:2px}.home-capabilities .capability-item p{max-width:190px}.home-hero-lower .home-hero-scroll{color:var(--hero-ink,var(--ink));display:flex;align-items:center;justify-content:center;gap:4px;font-size:clamp(.8rem,1.1vw,1rem);position:static;left:auto;bottom:auto;translate:none;transform:none}.home-hero-lower .home-hero-scroll-arrow{display:inline-flex;align-items:center;color:var(--hero-accent,var(--copper));font-size:16px}.home-hero .home-hero-actions .button{border-radius:999px;min-height:52px;padding-inline:25px;gap:14px;box-shadow:0 10px 24px #0000001c}.home-hero .home-hero-actions .button:focus-visible{outline:2px solid var(--copper);outline-offset:4px}.home-hero .home-hero-actions .button-primary{box-shadow:0 12px 26px #00000026}.home-hero .home-hero-actions .button-ghost{background:var(--paper-2);border-color:var(--line);box-shadow:0 10px 24px #0000001c}.home-hero-actions{gap:12px;flex-wrap:wrap}.site-footer{background:var(--paper-2);padding-top:clamp(70px,8vw,110px)}.site-footer .footer-grid{background:color-mix(in srgb,var(--paper) 80%,transparent);border:1px solid var(--line);border-radius:32px;box-shadow:0 16px 36px #0000001c;padding:36px 38px 48px}.footer-newsletter-form{border-radius:999px}.footer-newsletter-form button{border-radius:50%}.footer-label{display:flex;align-items:center;gap:8px}.footer-label:before{content:"";background:var(--copper);width:18px;height:1px}.footer-bottom{padding-top:25px}.icon-button,.menu-button,.floating-language-toggle{min-width:44px;min-height:44px}.floating-language-toggle .icon{font-size:16px}@media (min-width:901px) and (max-width:1100px){.site-header .header-container{width:min(100% - 38px,1180px);padding-inline:16px}.header-inner{gap:20px}.desktop-nav{gap:0}.desktop-nav .nav-link{padding-inline:10px;font-size:11px}.header-tools{gap:10px}}@media (max-width:900px){.site-header{padding:10px 0}.site-header .header-container{width:min(100% - 38px,720px);padding:6px 14px}.site-header .header-inner{min-height:56px}.desktop-nav{display:none}.mobile-panel{top:100%;left:0;right:0}.home-hero{height:100svh;min-height:700px}.home-hero-content{height:100%;padding-top:112px;padding-bottom:220px}.home-hero-products{width:auto;bottom:clamp(175px,23vh,220px);left:14%;right:0}.home-hero-product img{max-height:25vh}.home-hero-lower{bottom:12px}.home-capabilities .capabilities-grid{grid-template-columns:repeat(4,minmax(0,1fr));border-radius:26px;min-height:116px;padding:18px 10px}.home-capabilities .capability-item{align-items:center;border-bottom:0!important;border-inline-end:1px solid var(--line)!important;flex-direction:column;gap:7px;justify-content:center;min-height:78px;padding:4px 8px!important;text-align:center}.home-capabilities .capability-item:last-child{border:0!important}.home-capabilities .capability-item>.icon{font-size:15px;padding:8px;width:32px;height:32px}.home-capabilities .capability-item h2{font-size:10px;line-height:1.1;margin:0}.home-capabilities .capability-item p{font-size:8px;line-height:1.2;max-width:115px}.home-hero-lower .home-hero-scroll{font-size:.82rem}.home-hero .hero-actions{gap:9px}.home-hero .hero-actions .button{min-height:50px;width:min(290px,100%)}}@media (max-width:560px){.site-header .header-container{padding-inline:10px}.home-hero{min-height:640px}.home-hero-content{padding-top:96px;padding-bottom:210px}.home-hero-copy h1{font-size:clamp(2.8rem,12vw,3.8rem)}.home-hero-products{bottom:clamp(178px,25vh,210px);left:4%;right:0}.home-hero-product img{max-height:18vh}.home-capabilities .capabilities-grid{border-radius:22px;padding:14px 5px}.home-capabilities .capability-item{gap:5px;padding-inline:3px!important}.home-capabilities .capability-item>.icon{font-size:13px;padding:7px;width:28px;height:28px}.home-capabilities .capability-item h2{font-size:8px}.home-capabilities .capability-item p{font-size:7px;line-height:1.15}.home-hero-lower .home-hero-scroll{font-size:.72rem}.site-footer .footer-grid{border-radius:24px;padding:27px 20px 34px}}@media (prefers-reduced-motion:reduce){.desktop-nav .nav-link:after{transition:none}.desktop-nav .nav-link:hover:after,.desktop-nav .nav-link.is-active:after{transform:scaleX(1)}.home-hero-lower .home-hero-scroll-arrow,.home-hero .home-hero-actions .button,.home-capabilities .capability-item{animation:none;transition:none}.home-hero .home-hero-actions .button:hover,.home-capabilities .capability-item:hover{transform:none}}
.floating-language-flag{align-items:center;border:none;display:inline-flex;font-size:1.15rem;height:24px;justify-content:center;line-height:1;overflow:visible;width:24px}.floating-language-flag img{display:block;height:100%;max-width:none;object-fit:contain;width:100%}

/* ── home-certificate-list: no white bg, copper-tinted images, no span ── */
.home-certificate-card {
  background: transparent;
  border: 1px solid var(--copper);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  grid-template-rows: unset;
}
.home-certificate-card img {
  background: transparent;
  filter: sepia(1) saturate(2.5) hue-rotate(340deg) brightness(0.9);
  max-height: 130px;
  object-fit: contain;
  width: 100%;
  height: auto;
  transition: filter 0.25s, transform 0.25s;
}
.home-certificate-card:hover img {
  filter: sepia(1) saturate(3) hue-rotate(340deg) brightness(1.05);
}
.home-certificate-card span { display: none; }

/* ── home-process-timeline: responsive ── */

/* Desktop & tablet (>=561px): horizontal single row, no scroll */
@media (min-width: 561px) {
  .home-process-timeline {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    overflow: visible;
    padding-top: 42px;
  }
  .timeline-step {
    text-align: center;
    border-inline-end: 1px solid var(--line);
    padding: 0 14px;
    position: relative;
    min-width: 0;
  }
  .timeline-step:last-child { border: 0; }
  .timeline-step p { max-width: 100%; margin: 0 auto; }
}

/* Mobile (<=560px): vertical, number+line on left, h3+p wider on right */
@media (max-width: 560px) {
  .home-process-timeline {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 30px;
    overflow: visible;
  }
  .timeline-step {
    display: grid;
    grid-template-columns: 49px 1fr;
    grid-template-rows: auto 1fr;
    column-gap: 18px;
    border-inline-end: 0;
    padding: 0 0 28px 0;
    text-align: left;
    position: relative;
  }
  /* Remove horizontal connector */
  .timeline-step:before { display: none; }
  /* Vertical connector line down left column */
  .timeline-step:not(:last-child):after {
    content: '';
    position: absolute;
    left: 24px;
    top: 49px;
    bottom: 0;
    width: 1px;
    background: var(--copper);
    opacity: 0.45;
    transform: translateX(-50%);
  }
  /* Number circle in left column, spanning both rows */
  .timeline-number {
    grid-column: 1;
    grid-row: 1 / 3;
    align-self: start;
    margin: 0 auto;
    width: 49px;
    height: 49px;
  }
  /* h3 in right column, row 1 */
  .timeline-step h3 {
    grid-column: 2;
    grid-row: 1;
    margin-bottom: 6px;
    font-size: 1.15rem;
  }
  /* p in right column, row 2 — full width */
  .timeline-step p {
    grid-column: 2;
    grid-row: 2;
    max-width: 100%;
    margin: 0;
    font-size: 13px;
    line-height: 1.5;
  }
}

/* ── home-certificate-list: no white bg, copper-tinted images, no span ── */
.home-certificate-card {
  background: transparent;
  border: 1px solid var(--copper);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  grid-template-rows: unset;
}
.home-certificate-card img {
  background: transparent;
  filter: sepia(1) saturate(2.5) hue-rotate(340deg) brightness(0.9);
  max-height: 130px;
  object-fit: contain;
  width: 100%;
  height: auto;
  transition: filter 0.25s, transform 0.25s;
}
.home-certificate-card:hover img {
  filter: sepia(1) saturate(3) hue-rotate(340deg) brightness(1.05);
}
.home-certificate-card span { display: none; }

/* ── home-process-timeline: responsive ── */
@media (min-width: 561px) {
  .home-process-timeline {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    overflow: visible;
    padding-top: 42px;
  }
  .timeline-step {
    text-align: center;
    border-inline-end: 1px solid var(--line);
    padding: 0 14px;
    position: relative;
    min-width: 0;
  }
  .timeline-step:last-child { border: 0; }
  .timeline-step p { max-width: 100%; margin: 0 auto; }
}
@media (max-width: 560px) {
  .home-process-timeline {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 30px;
    overflow: visible;
  }
  .timeline-step {
    display: grid;
    grid-template-columns: 49px 1fr;
    grid-template-rows: auto 1fr;
    column-gap: 18px;
    border-inline-end: 0;
    padding: 0 0 28px 0;
    text-align: left;
    position: relative;
  }
  .timeline-step:before { display: none; }
  .timeline-step:not(:last-child):after {
    content: '';
    position: absolute;
    left: 24px;
    top: 49px;
    bottom: 0;
    width: 1px;
    background: var(--copper);
    opacity: 0.45;
    transform: translateX(-50%);
  }
  .timeline-number {
    grid-column: 1;
    grid-row: 1 / 3;
    align-self: start;
    margin: 0 auto;
    width: 49px;
    height: 49px;
  }
  .timeline-step h3 {
    grid-column: 2;
    grid-row: 1;
    margin-bottom: 6px;
    font-size: 1.15rem;
  }
  .timeline-step p {
    grid-column: 2;
    grid-row: 2;
    max-width: 100%;
    margin: 0;
    font-size: 13px;
    line-height: 1.5;
  }
}

/* ════════════════════════════════════════════════════════════════
   HOME HERO — v4
   ─────────────────────────────────────────────────────────────
   > 900px   copy LEFT · products RIGHT (side-by-side)
   ≤ 900px   copy FULL WIDTH at top · products BOTTOM (no overlap)
   ════════════════════════════════════════════════════════════════ */


/* ── Global / Desktop (all sizes base) ───────────────────────── */

.home-hero {
  height: 100svh;
  min-height: 660px;
}

/* Overlay — a softer half-ellipse behind the copy, leaving the image open
 * across the rest of the hero. Mirror it for RTL layouts. */
@media (min-width: 901px) {
  /* Shared page heroes: keep the same strong copy-side treatment as Home,
   * but use a clean directional fade so inner pages never form a circle. */
  .page-hero .hero-overlay {
    background: linear-gradient(
      to right,
      color-mix(in srgb, var(--paper) 96%, transparent) 0%,
      color-mix(in srgb, var(--paper) 90%, transparent) 30%,
      color-mix(in srgb, var(--paper) 72%, transparent) 50%,
      color-mix(in srgb, var(--paper) 42%, transparent) 60%,
      transparent 65%
    );
  }

  [dir="rtl"] .page-hero .hero-overlay {
    background: linear-gradient(
      to left,
      color-mix(in srgb, var(--paper) 96%, transparent) 0%,
      color-mix(in srgb, var(--paper) 90%, transparent) 30%,
      color-mix(in srgb, var(--paper) 72%, transparent) 50%,
      color-mix(in srgb, var(--paper) 42%, transparent) 60%,
      transparent 65%
    );
  }

  .home-hero .hero-overlay {
    background: radial-gradient(
      ellipse 105% 125% at 0% 50%,
      color-mix(in srgb, var(--paper) 96%, transparent) 0%,
      color-mix(in srgb, var(--paper) 90%, transparent) 30%,
      color-mix(in srgb, var(--paper) 72%, transparent) 50%,
      color-mix(in srgb, var(--paper) 42%, transparent) 60%,
      transparent 65%
    );
  }

  [dir="rtl"] .home-hero .hero-overlay {
    background: radial-gradient(
      ellipse 105% 125% at 100% 50%,
      color-mix(in srgb, var(--paper) 96%, transparent) 0%,
      color-mix(in srgb, var(--paper) 90%, transparent) 30%,
      color-mix(in srgb, var(--paper) 72%, transparent) 50%,
      color-mix(in srgb, var(--paper) 42%, transparent) 60%,
      transparent 65%
    );
  }
}

/* Content shell */
.home-hero-content {
  height: 100%;
  min-height: 0;
  align-items: flex-start;
  padding-top: clamp(100px, 14vh, 160px);
  padding-bottom: clamp(200px, 26vh, 290px);
}

/* Copy — desktop: left column, natural width */
.home-hero-copy {
  max-width: min(600px, 54%);
}

.home-hero-copy h1 {
  font-size: clamp(3.4rem, 4.4vw, 5.8rem);
  margin-bottom: 18px;
  line-height: 1.03;
}

.home-hero-support {
  font-size: clamp(0.95rem, 1.05vw, 1.1rem);
  line-height: 1.9;
  margin-bottom: 32px;
}

/* Buttons — always a row, pill-shaped */
.home-hero-actions,
.home-hero .home-hero-actions {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;   /* side-by-side, no wrapping unless very tight */
  gap: 12px;
  align-items: center;
}

.home-hero .home-hero-actions .button {
  border-radius: 999px;
  min-height: 52px;
  padding-inline: 26px;
  gap: 14px;
  white-space: nowrap;
  box-shadow: 0 10px 24px rgba(0,0,0,.14);
}

.home-hero .home-hero-actions .button-primary {
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}

.home-hero .home-hero-actions .button-ghost {
  background: color-mix(in srgb, var(--paper-2) 65%, transparent);
  border-color: var(--line);
  box-shadow: 0 8px 20px rgba(0,0,0,.10);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

/* Products — desktop: right side */
.home-hero-products {
  position: absolute;
  width: min(50vw, 820px);
  right: clamp(20px, 2vw, 56px);
  left: auto;
  bottom: clamp(155px, 27vh, 280px);
}

.home-hero-product img {
  max-height: 42vh;
}

/* Lower bar */
.home-hero-lower {
  z-index: 6;
  position: absolute;
  bottom: clamp(12px, 2vh, 28px);
  inset-inline: 0;
  display: grid;
  gap: 8px;
}


/* ── Tablet & small laptop  561px–900px ──────────────────────── */
@media (min-width: 561px) and (max-width: 900px) {

  .home-hero {
    height: 100svh;
    min-height: 680px;
  }

  /*
   * Overlay: top-heavy opacity so copy text is always legible;
   * bottom fades out to reveal the field/factory photo behind products
   */
  .home-hero .hero-overlay {
    background: linear-gradient(
      180deg,
      color-mix(in srgb, var(--paper) 96%, transparent)  0%,
      color-mix(in srgb, var(--paper) 82%, transparent) 35%,
      color-mix(in srgb, var(--paper) 40%, transparent) 62%,
      color-mix(in srgb, var(--paper) 10%, transparent) 100%
    );
  }

  .home-hero-content {
    height: 100%;
    align-items: flex-start;
    padding-top: 108px;
    /* bottom padding = clear of the product images sitting at the bottom */
    padding-bottom: clamp(230px, 34vh, 350px);
  }

  /*
   * Copy: FULL WIDTH — no side cap.
   * Products are at the BOTTOM so there is no left/right fight.
   */
  .home-hero-copy {
    max-width: 100%;
    min-width: 0;
  }

  .home-hero-copy h1 {
    font-size: clamp(2.6rem, 5.2vw, 4rem);
  }

  .home-hero-support {
    font-size: 15px;
    line-height: 1.85;
    margin-bottom: 26px;
  }

  /* Buttons: side by side, no wrap on tablet */
  .home-hero .home-hero-actions {
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 12px;
  }

  .home-hero .home-hero-actions .button {
    min-height: 50px;
    padding-inline: 22px;
  }

  /*
   * Products: BOTTOM of hero, centered across full width.
   * left:0 + right:0 + margin:auto centres them.
   */
  .home-hero-products {
    position: absolute;
    width: auto;
    max-width: 100%;
    left: 0;
    right: 0;
    bottom: clamp(140px, 19vh, 210px);
    display: flex;
    justify-content: center;
    gap: 4px;
  }

  .home-hero-product img {
    max-height: 22vh;
  }

  .home-hero-lower { bottom: 10px; }
}


/* ── Mobile  ≤ 560px ─────────────────────────────────────────── */
@media (max-width: 560px) {

  .home-hero {
    height: 100svh;
    min-height: 590px;
  }

  .home-hero .hero-overlay {
    background: linear-gradient(
      180deg,
      color-mix(in srgb, var(--paper) 96%, transparent)  0%,
      color-mix(in srgb, var(--paper) 80%, transparent) 38%,
      color-mix(in srgb, var(--paper) 30%, transparent) 66%,
      color-mix(in srgb, var(--paper) 10%, transparent) 100%
    );
  }

  .home-hero-content {
    height: 100%;
    align-items: flex-start;
    padding-top: 90px;
    padding-bottom: clamp(195px, 32vh, 260px);
  }

  /* Copy: full width, tight */
  .home-hero-copy {
    max-width: 100%;
    min-width: 0;
  }

  .home-hero-copy h1 {
    font-size: clamp(2.4rem, 10.5vw, 3.3rem);
    margin-bottom: 12px;
    line-height: 1.05;
  }

  .home-hero-support {
    font-size: 13px;
    line-height: 1.75;
    margin-bottom: 20px;
  }

  .home-hero-eyebrow {
    font-size: 9px;
    letter-spacing: .17em;
    margin-bottom: 10px;
  }

  /*
   * Buttons: side by side on phone.
   * flex: 1 means both buttons share available width equally.
   * wrap: wrap as last resort on very tiny phones (<340px).
   */
  .home-hero .home-hero-actions {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
  }

  .home-hero .home-hero-actions .button {
    flex: 1 1 120px;     /* grow & share, min 120px before wrapping */
    max-width: 210px;
    min-height: 44px;
    padding-inline: 14px;
    gap: 8px;
    font-size: 11px;
    justify-content: center;
    white-space: nowrap;
    box-shadow: 0 8px 18px rgba(0,0,0,.16);
  }

  /* Products: bottom, full width, centred */
  .home-hero-products {
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    bottom: clamp(148px, 22vh, 196px);
    display: flex;
    justify-content: flex-end;
    gap: 2px;
  }

  .home-hero-product img {
    max-height: 16vh;
    max-width: 110px;
  }

  .home-hero-lower { bottom: 6px; }
}


/* ── site-header: keep full bar transparent on scroll ─────────── */
.site-header.is-scrolled { background: transparent !important; }
