/*
 Theme Name:   CityMatic DevFactory
 Theme URI:    https://citymatic.ro/
 Description:  Child theme pentru Twenty Twenty-Five
 Author:       DevFactory
 Template:     twentytwentyfive
 Version:      1.0.98
 Text Domain:  citymatic
*/

/******************************
  GENERAL
*******************************/
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
  --color-white: #FFFFFF;
  --color-black: #1a1a1a;
  --color-yellow: #fbc40e;
  --color-red: #e82735;

--font-family: 'Inter', sans-serif;
--font-family-display: 'Inter', sans-serif;

  --font-12: 12px;
  --font-14: 14px;
  --font-15: 15px;
  --font-16: 16px;
  --font-18: 18px;
  --font-20: 20px;
  --font-22: 22px;
  --font-24: 24px;
  --font-28: 28px;
  --font-30: 30px;
  --font-32: 32px;
  --font-36: 36px;
  --font-40: 40px;
  --font-48: 48px;
  --font-49: 49px;
  --font-50: 50px;
  --font-54: 54px;
  --font-60: 60px;
  --font-80: 80px;

  --line-height-12: 12px;
  --line-height-14: 14px;
  --line-height-16: 16px;
  --line-height-18: 18px;
  --line-height-20: 20px;
  --line-height-22: 22px;
  --line-height-24: 24px;
  --line-height-29: 29px;
  --line-height-30: 30px;
  --line-height-32: 32px;
  --line-height-35: 35px;
  --line-height-40: 40px;
  --line-height-48: 48px;
  --line-height-49: 53px;
  --line-height-50: 50px;
  --line-height-54: 54px;
  --line-height-60: 60px;
  --line-height-72: 72px;
  --line-height-80: 80px;
  --line-height-95: 95px;

  --weight-100: 100;
  --weight-200: 200;
  --weight-300: 300;
  --weight-400: 400;
  --weight-500: 500;
  --weight-600: 600;
  --weight-700: 700;
  --weight-800: 800;
  --weight-900: 900;
}

@media (max-width: 1200px) {
  :root {
    --font-24: 22px;
    --font-28: 26px;
    --font-30: 27px;
    --font-32: 27px;
    --font-36: 33px;
    --font-40: 30px;
    --font-48: 36px;
    --font-49: 36px;
    --font-50: 40px;
    --font-54: 42px;
    --font-60: 45px;
    --font-80: 60px;

    --line-height-29: 24px;
    --line-height-32: 30px;
    --line-height-35: 32px;
    --line-height-40: 33px;
    --line-height-48: 36px;
    --line-height-49: 39px;
    --line-height-50: 44px;
    --line-height-54: 42px;
    --line-height-60: 48px;
    --line-height-72: 52px;
    --line-height-80: 60px;
    --line-height-95: 65px;
  }
}

@media (max-width: 992px) {
  :root {
    --font-14: 12px;
    --font-16: 16px;
    --font-18: 18px;
    --font-20: 18px;
    --font-22: 20px;
    --font-24: 22px;
    --font-28: 24px;
    --font-30: 25px;
    --font-32: 21px;
    --font-36: 26px;
    --font-40: 28px;
    --font-48: 28px;
    --font-49: 34px;
    --font-50: 30px;
    --font-54: 32px;
    --font-60: 35px;
    --font-80: 40px;

    --line-height-12: 12px;
    --line-height-14: 12px;
    --line-height-16: 14px;
    --line-height-18: 16px;
    --line-height-20: 20px;
    --line-height-22: 22px;
    --line-height-24: 22px;
    --line-height-29: 24px;
    --line-height-30: 25px;
    --line-height-32: 27px;
    --line-height-35: 29px;
    --line-height-40: 29px;
    --line-height-48: 28px;
    --line-height-49: 36px;
    --line-height-50: 32px;
    --line-height-54: 32px;
    --line-height-60: 35px;
    --line-height-72: 40px;
    --line-height-80: 40px;
    --line-height-95: 45px;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

html:has(body.single-product) {
  scroll-behavior: auto;
}

body {
  font-family: var(--font-family, 'Open Sans', sans-serif);
}

.wp-block-group:not(.sf-woocommerce-cart):not(.sf-woocommerce-checkout):not(.sf-woocommerce-account):not(.sf-404):not(.sf-blog):not(.sf-custom-blog-archive):not(.sf-custom-single-post):not(.sf-legal):not(.sf-return-request) {
  margin: 0 !important;
  padding: 0 !important;
}

/******************************
  FULL BLEED BLOCK
*******************************/
.sf-full-bleed {
  width: 100vw;
  max-width: none !important;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/*
 * Evita scroll orizontal pe continut, fara a bloca position:sticky pe header.
 * overflow pe html/body dezactiveaza sticky pe orice stramos.
 */
.wp-site-blocks > main,
.wp-site-blocks > footer {
  overflow-x: clip;
  max-width: 100%;
}

@supports not (overflow: clip) {
  .wp-site-blocks > main,
  .wp-site-blocks > footer {
    overflow-x: hidden;
  }
}

html,
body {
  max-width: 100%;
}

.wp-site-blocks > main.sf-woocommerce-cart.wp-block-group.has-global-padding,
.wp-site-blocks > main.sf-woocommerce-checkout.wp-block-group.has-global-padding,
.wp-site-blocks > main.sf-woocommerce-account.wp-block-group.has-global-padding,
.wp-site-blocks > main.sf-404.wp-block-group.has-global-padding,
.wp-site-blocks > main.sf-blog.wp-block-group.has-global-padding,
.wp-site-blocks > main.sf-custom-blog-archive.wp-block-group.has-global-padding,
.wp-site-blocks > main.sf-custom-single-post,
.wp-site-blocks > main.sf-legal.wp-block-group.has-global-padding,
.wp-site-blocks > main.sf-return-request.wp-block-group.has-global-padding,
main.sf-woocommerce-cart.wp-block-group,
main.sf-woocommerce-checkout.wp-block-group,
main.sf-woocommerce-account.wp-block-group,
main.sf-404.wp-block-group,
main.sf-blog.wp-block-group,
main.sf-custom-blog-archive.wp-block-group,
main.sf-custom-single-post,
main.sf-legal.wp-block-group,
main.sf-return-request.wp-block-group {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1920px;
  overflow-x: clip;
  padding-bottom: 48px !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
  padding-top: 32px !important;
  width: 100% !important;
}

main.sf-legal.wp-block-group,
main.sf-return-request.wp-block-group {
  padding-bottom: 20px !important;
  padding-top: 10px !important;
}

/******************************
  WORDPRESS BLOCK RESET
*******************************/
.wp-site-blocks > main.wp-block-group.has-global-padding:not(.sf-woocommerce-cart):not(.sf-woocommerce-checkout):not(.sf-woocommerce-account):not(.sf-404):not(.sf-blog):not(.sf-custom-blog-archive):not(.sf-custom-single-post):not(.sf-legal):not(.sf-return-request),
.wp-site-blocks main.wp-block-group.has-global-padding:not(.sf-woocommerce-cart):not(.sf-woocommerce-checkout):not(.sf-woocommerce-account):not(.sf-404):not(.sf-blog):not(.sf-custom-blog-archive):not(.sf-custom-single-post):not(.sf-legal):not(.sf-return-request),
.wp-block-post-content.has-global-padding,
.entry-content.has-global-padding {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.wp-site-blocks > main.wp-block-group,
.wp-block-post-content > *,
.entry-content > * {
  margin-block-start: 0;
  margin-block-end: 0;
}

.wp-block-post-content > .alignfull,
.entry-content > .alignfull {
  margin-left: 0;
  margin-right: 0;
}

p,
h1,
h2,
h3,
ul,
ol {
  margin: 0;
}

ol,
ul {
  padding: 0 20px;
}

a,
a:link,
a:visited,
a:hover,
a:active,
a:focus,
a:focus-visible {
  outline: none !important;
  border: none;
  box-shadow: none !important;
  text-decoration: none !important;
}

button,
button:hover,
button:active,
button:focus,
button:focus-visible {
  outline: none !important;
  border: none !important;
  box-shadow: none !important;
}

.sf-row {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
}


/******************************
  TEXT
*******************************/

/*** ALIGN ***/
.sf-text-align-center {
  text-align: center;
}

.sf-text-align-left {
  text-align: left;
}

.sf-text-align-right {
  text-align: right;
}

/*** COLOR ***/
.sf-color-white {
  color: var(--color-white);
}

.sf-color-black {
  color: var(--color-black);
}

/*** FONT SIZE ***/
.sf-font-size-12 {
  font-size: var(--font-12);
}

.sf-font-size-14 {
  font-size: var(--font-14);
}

.sf-font-size-15 {
  font-size: var(--font-15);
}

.sf-font-size-16 {
  font-size: var(--font-16);
}

.sf-font-size-18 {
  font-size: var(--font-18);
}

.sf-font-size-20 {
  font-size: var(--font-20);
}

.sf-font-size-22 {
  font-size: var(--font-22);
}

.sf-font-size-24 {
  font-size: var(--font-24);
}

.sf-font-size-28 {
  font-size: var(--font-28);
}

.sf-font-size-30 {
  font-size: var(--font-30);
}

.sf-font-size-32 {
  font-size: var(--font-32);
}

.sf-font-size-36 {
  font-size: var(--font-36);
}

.sf-font-size-40 {
  font-size: var(--font-40);
}

.sf-font-size-48 {
  font-size: var(--font-48);
}

.sf-font-size-49 {
  font-size: var(--font-49);
}

.sf-font-size-50 {
  font-size: var(--font-50);
}

.sf-font-size-54 {
  font-size: var(--font-54);
}

.sf-font-size-60 {
  font-size: var(--font-60);
}

.sf-font-size-80 {
  font-size: var(--font-80);
}

/*** LINE HEIGHT ***/
.sf-line-height-12 {
  line-height: var(--line-height-12);
}

.sf-line-height-14 {
  line-height: var(--line-height-14);
}

.sf-line-height-16 {
  line-height: var(--line-height-16);
}

.sf-line-height-18 {
  line-height: var(--line-height-18);
}

.sf-line-height-20 {
  line-height: var(--line-height-20);
}

.sf-line-height-22 {
  line-height: var(--line-height-22);
}

.sf-line-height-24 {
  line-height: var(--line-height-24);
}

.sf-line-height-29 {
  line-height: var(--line-height-29);
}

.sf-line-height-30 {
  line-height: var(--line-height-30);
}

.sf-line-height-32 {
  line-height: var(--line-height-32);
}

.sf-line-height-35 {
  line-height: var(--line-height-35);
}

.sf-line-height-40 {
  line-height: var(--line-height-40);
}

.sf-line-height-48 {
  line-height: var(--line-height-48);
}

.sf-line-height-49 {
  line-height: var(--line-height-49);
}

.sf-line-height-50 {
  line-height: var(--line-height-50);
}

.sf-line-height-54 {
  line-height: var(--line-height-54);
}

.sf-line-height-60 {
  line-height: var(--line-height-60);
}

.sf-line-height-72 {
  line-height: var(--line-height-72);
}

.sf-line-height-80 {
  line-height: var(--line-height-80);
}

.sf-line-height-95 {
  line-height: var(--line-height-95);
}

/*** FONT WEIGHT ***/
.sf-font-weight-100 {
  font-weight: var(--weight-100);
}

.sf-font-weight-200 {
  font-weight: var(--weight-200);
}

.sf-font-weight-300 {
  font-weight: var(--weight-300);
}

.sf-font-weight-400 {
  font-weight: var(--weight-400);
}

.sf-font-weight-500 {
  font-weight: var(--weight-500);
}

.sf-font-weight-600 {
  font-weight: var(--weight-600);
}

.sf-font-weight-700 {
  font-weight: var(--weight-700);
}

.sf-font-weight-800 {
  font-weight: var(--weight-800);
}

.sf-font-weight-900 {
  font-weight: var(--weight-900);
}

/*** TEXT STYLE ***/
.sf-text-decoration-none {
  text-decoration: none;
}

.sf-text-decoration-underline {
  text-decoration: underline;
}

.sf-font-style-normal {
  font-style: normal;
}

.sf-font-style-italic {
  font-style: italic;
}


/******************************
  BACKGROUND
*******************************/
.sf-background-color-black {
  background-color: var(--color-black);
}

.sf-background-color-white {
  background-color: var(--color-white);
}

.sf-color-yellow {
    color: var(--color-yellow);
}

.sf-background-color-yellow {
  background-color: var(--color-yellow);
}

.sf-color-red {
    color: var(--color-red);
}

.sf-background-color-red {
    background-color: var(--color-red);
}


/******************************
  DISPLAY
*******************************/
.sf-display-block {
  display: block;
}

.sf-display-inline {
  display: inline;
}

.sf-display-inline-block {
  display: inline-block;
}

.sf-display-none {
  display: none;
}

.sf-display-flex {
  display: flex;
}

.sf-display-inline-flex {
  display: inline-flex;
}

.sf-display-grid {
  display: grid;
}

.sf-display-inline-grid {
  display: inline-grid;
}


/******************************
  FLEX
*******************************/
.sf-flex-wrap {
  flex-wrap: wrap;
}

.sf-flex-nowrap {
  flex-wrap: nowrap;
}

.sf-flex-direction-row {
  flex-direction: row;
}

.sf-flex-direction-column {
  flex-direction: column;
}

.sf-flex-reverse,
.sf-flex-direction-row-reverse {
  flex-direction: row-reverse;
}

.sf-flex-direction-column-reverse {
  flex-direction: column-reverse;
}

.sf-align-items-center {
  align-items: center;
}

.sf-align-items-end {
  align-items: flex-end;
}

.sf-align-items-start {
  align-items: flex-start;
}

.sf-align-items-stretch {
  align-items: stretch;
}

.sf-align-self-start {
    align-self: start;
}

.sf-align-self-center {
    align-self: center;
}

.sf-align-self-end {
    align-self: end;
}

.sf-justify-content-center {
  justify-content: center;
}

.sf-justify-content-space-between {
  justify-content: space-between;
}

.sf-justify-content-space-around {
  justify-content: space-around;
}

.sf-justify-content-space-evenly {
  justify-content: space-evenly;
}

.sf-justify-content-flex-start {
  justify-content: flex-start;
}

.sf-justify-content-flex-end {
  justify-content: flex-end;
}

.sf-gap-0 {
  gap: 0;
}

.sf-gap-10 {
  gap: 10px;
}

.sf-gap-15 {
  gap: 15px;
}

.sf-gap-20 {
  gap: 20px;
}

.sf-gap-24 {
  gap: 24px;
}

.sf-gap-30 {
  gap: 30px;
}

.sf-gap-40 {
  gap: 40px;
}

.sf-gap-50 {
  gap: 50px;
}

.sf-gap-60 {
  gap: 60px;
}

.sf-gap-80 {
  gap: 80px;
}

.sf-gap-100 {
  gap: 100px;
}


/******************************
  WIDTH / HEIGHT
*******************************/
.sf-width-auto {
  width: auto;
}

.sf-width-60 {
  width: 60px;
}

.sf-width-85 {
  width: 85px;
}

.sf-width-25p {
  width: 25%;
}

.sf-width-33p {
  width: 33.333%;
}

.sf-width-50p {
  width: 50%;
}

.sf-width-66p {
  width: 66.666%;
}

.sf-width-75p {
  width: 75%;
}

.sf-width-100p {
  width: 100%;
}

.sf-max-width-50 {
  max-width: 50%;
}

.sf-max-width-100p {
  max-width: 100%;
}

.sf-max-width-330 {
  max-width: 330px;
}

.sf-max-width-1320 {
  max-width: 1320px;
}

.sf-max-width-1920 {
  max-width: 1920px;
}

.sf-height-auto {
  height: auto;
}

.sf-height-100p {
  height: 100%;
}

.sf-min-height-100p {
  min-height: 100%;
}

.sf-min-height-100vh {
  min-height: 100vh;
}


/******************************
  POSITION
*******************************/
.sf-position-static {
  position: static;
}

.sf-position-relative {
  position: relative;
}

.sf-position-absolute {
  position: absolute;
}

.sf-position-fixed {
  position: fixed;
}

.sf-position-sticky {
  position: sticky;
}

.sf-top-0 {
  top: 0;
}

.sf-right-0 {
  right: 0;
}

.sf-bottom-0 {
  bottom: 0;
}

.sf-left-0 {
  left: 0;
}


/******************************
  BORDER
*******************************/
.sf-border-style-solid {
  border-style: solid;
}

.sf-border-none {
  border: none;
}

.sf-border-radius-0 {
  border-radius: 0;
}

.sf-border-radius-4 {
  border-radius: 4px;
}

.sf-border-radius-8 {
  border-radius: 8px;
}

.sf-border-radius-10 {
  border-radius: 10px;
}

.sf-border-radius-12 {
  border-radius: 12px;
}

.sf-border-radius-16 {
  border-radius: 16px;
}

.sf-border-radius-20 {
  border-radius: 20px;
}

.sf-border-radius-50p {
  border-radius: 50%;
}


/******************************
  MARGIN
*******************************/
.sf-margin-0 {
  margin: 0;
}

.sf-margin-auto {
  margin: auto;
}

.sf-margin-left-auto {
  margin-left: auto;
}

.sf-margin-right-auto {
  margin-right: auto;
}

/*** MARGIN TOP ***/
.sf-margin-top-0 {
  margin-top: 0;
}

.sf-margin-top-7 {
  margin-top: 7px;
}

.sf-margin-top-10 {
  margin-top: 10px;
}

.sf-margin-top-15 {
  margin-top: 15px;
}

.sf-margin-top-20 {
  margin-top: 20px;
}

.sf-margin-top-24 {
  margin-top: 24px;
}

.sf-margin-top-30 {
  margin-top: 30px;
}

.sf-margin-top-40 {
  margin-top: 40px;
}

.sf-margin-top-45 {
  margin-top: 45px;
}

.sf-margin-top-50 {
  margin-top: 50px;
}

.sf-margin-top-60 {
  margin-top: 60px;
}

.sf-margin-top-65 {
  margin-top: 65px;
}

.sf-margin-top-80 {
  margin-top: 80px;
}

.sf-margin-top-90 {
  margin-top: 90px;
}

.sf-margin-top-145 {
  margin-top: 145px;
}

/*** MARGIN RIGHT ***/
.sf-margin-right-0 {
  margin-right: 0;
}

.sf-margin-right-10 {
  margin-right: 10px;
}

.sf-margin-right-15 {
  margin-right: 15px;
}

.sf-margin-right-20 {
  margin-right: 20px;
}

.sf-margin-right-30 {
  margin-right: 30px;
}

.sf-margin-right-40 {
  margin-right: 40px;
}

/*** MARGIN BOTTOM ***/
.sf-margin-bottom-0 {
  margin-bottom: 0;
}

.sf-margin-bottom-7 {
  margin-bottom: 7px;
}

.sf-margin-bottom-10 {
  margin-bottom: 10px;
}

.sf-margin-bottom-15 {
  margin-bottom: 15px;
}

.sf-margin-bottom-20 {
  margin-bottom: 20px;
}

.sf-margin-bottom-24 {
  margin-bottom: 24px;
}

.sf-margin-bottom-30 {
  margin-bottom: 30px;
}

.sf-margin-bottom-40 {
  margin-bottom: 40px;
}

.sf-margin-bottom-45 {
  margin-bottom: 45px;
}

.sf-margin-bottom-50 {
  margin-bottom: 50px;
}

.sf-margin-bottom-60 {
  margin-bottom: 60px;
}

.sf-margin-bottom-65 {
  margin-bottom: 65px;
}

.sf-margin-bottom-80 {
  margin-bottom: 80px;
}

.sf-margin-bottom-90 {
  margin-bottom: 90px;
}

.sf-margin-bottom-145 {
  margin-bottom: 145px;
}

/*** MARGIN LEFT ***/
.sf-margin-left-0 {
  margin-left: 0;
}

.sf-margin-left-10 {
  margin-left: 10px;
}

.sf-margin-left-15 {
  margin-left: 15px;
}

.sf-margin-left-20 {
  margin-left: 20px;
}

.sf-margin-left-30 {
  margin-left: 30px;
}

.sf-margin-left-40 {
  margin-left: 40px;
}


/******************************
  PADDING
*******************************/
.sf-padding-0 {
  padding: 0;
}

.sf-padding-10 {
  padding: 10px;
}

.sf-padding-15 {
  padding: 15px;
}

.sf-padding-20 {
  padding: 20px;
}

.sf-padding-24 {
  padding: 24px;
}

.sf-padding-30 {
  padding: 30px;
}

.sf-padding-40 {
  padding: 40px;
}

.sf-padding-45 {
  padding: 45px;
}

.sf-padding-60 {
  padding: 60px;
}

/*** PADDING TOP ***/
.sf-padding-top-0 {
  padding-top: 0;
}

.sf-padding-top-7 {
  padding-top: 7px;
}

.sf-padding-top-10 {
  padding-top: 10px;
}

.sf-padding-top-15 {
  padding-top: 15px;
}

.sf-padding-top-16 {
  padding-top: 16px;
}

.sf-padding-top-20 {
  padding-top: 20px;
}

.sf-padding-top-24 {
  padding-top: 24px;
}

.sf-padding-top-30 {
  padding-top: 30px;
}

.sf-padding-top-40 {
  padding-top: 40px;
}

.sf-padding-top-45 {
  padding-top: 45px;
}

.sf-padding-top-60 {
  padding-top: 60px;
}

.sf-padding-top-90 {
  padding-top: 90px;
}

/*** PADDING RIGHT ***/
.sf-padding-right-0 {
  padding-right: 0;
}

.sf-padding-right-10 {
  padding-right: 10px;
}

.sf-padding-right-15 {
  padding-right: 15px;
}

.sf-padding-right-20 {
  padding-right: 20px;
}

.sf-padding-right-24 {
  padding-right: 24px;
}

.sf-padding-right-30 {
  padding-right: 30px;
}

.sf-padding-right-40 {
  padding-right: 40px;
}

/*** PADDING BOTTOM ***/
.sf-padding-bottom-0 {
  padding-bottom: 0;
}

.sf-padding-bottom-10 {
  padding-bottom: 10px;
}

.sf-padding-bottom-15 {
  padding-bottom: 15px;
}

.sf-padding-bottom-20 {
  padding-bottom: 20px;
}

.sf-padding-bottom-24 {
  padding-bottom: 24px;
}

.sf-padding-bottom-30 {
  padding-bottom: 30px;
}

.sf-padding-bottom-40 {
  padding-bottom: 40px;
}

.sf-padding-bottom-45 {
  padding-bottom: 45px;
}

.sf-padding-bottom-60 {
  padding-bottom: 60px;
}

.sf-padding-bottom-90 {
  padding-bottom: 90px;
}

/*** PADDING LEFT ***/
.sf-padding-left-0 {
  padding-left: 0;
}

.sf-padding-left-10 {
  padding-left: 10px;
}

.sf-padding-left-15 {
  padding-left: 15px;
}

.sf-padding-left-20 {
  padding-left: 20px;
}

.sf-padding-left-24 {
  padding-left: 24px;
}

.sf-padding-left-30 {
  padding-left: 30px;
}

.sf-padding-left-40 {
  padding-left: 40px;
}

.sf-padding-x-40 {
  padding-left: 40px;
  padding-right: 40px;
}

.sf-padding-y-20 {
  padding-top: 20px;
  padding-bottom: 20px;
}

@media (max-width: 1200px) {
  .sf-padding-x-40 {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 992px) {
  .sf-padding-x-40 {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (max-width: 576px) {
  .sf-padding-x-40 {
    padding-left: 12px;
    padding-right: 12px;
  }
 

}



/******************************
  OTHER
*******************************/
.sf-cursor-pointer {
  cursor: pointer;
}

.sf-overflow-hidden {
  overflow: hidden;
}

.sf-overflow-auto {
  overflow: auto;
}

a.sf-outline-none,
a.sf-outline-none:active,
a.sf-outline-none:focus,
a.sf-outline-none:focus-visible,
a.sf-outline-none:focus-within,
a.sf-outline-none:hover,
a.sf-outline-none:target {
  outline: none;
}


/******************************
  RESPONSIVE OVERRIDES
*******************************/
@media (max-width: 992px) {
  .sf-padding-60 {
    padding: 30px;
  }

  .sf-margin-bottom-145 {
    margin-bottom: 30px;
  }

  .sf-margin-bottom-60 {
    margin-bottom: 30px;
  }

  .sf-margin-top-60 {
    margin-top: 30px;
  }
}

/******************************************************************************************************************************************************************************************************************************************************************************************************************/
                            /* CITYMATIC */
/******************************************************************************************************************************************************************************************************************************************************************************************************************/


/******************************
  DESIGN TOKENS
*******************************/

:root {

  /* BRAND */
  --citymatic-ink: #0F211E;

  --citymatic-primary: #0E5652;
  --citymatic-primary-dark: #0A403D;
  --citymatic-primary-darker: #082F2D;

  --citymatic-primary-tint: #E7F1EF;
  --citymatic-primary-tint-2: #D3E7E4;

  --citymatic-accent: #A55D27;
  --citymatic-accent-dark: #874C20;
  --citymatic-accent-tint: #FBEADC;

  --citymatic-bg: #F7F7F4;
  --citymatic-surface: #FFFFFF;
  --citymatic-surface-2: #F1F2EE;

  --citymatic-text: #16231F;
  --citymatic-muted: #5B6864;
  --citymatic-muted-2: #66706D;

  --citymatic-border: #E2E4DE;
  --citymatic-border-strong: #CBCFC7;

  --citymatic-success: #2E7D4F;
  --citymatic-danger: #B23B3B;


  /* SEMANTIC */
  --color-primary: var(--citymatic-primary);
  --color-primary-dark: var(--citymatic-primary-dark);
  --color-primary-darker: var(--citymatic-primary-darker);

  --color-secondary: var(--citymatic-primary);

  --color-accent: var(--citymatic-accent);
  --color-accent-dark: var(--citymatic-accent-dark);

  --color-bg: var(--citymatic-bg);
  --color-bg-soft: var(--citymatic-surface-2);

  --color-text: var(--citymatic-text);
  --color-text-light: var(--citymatic-muted);

  --color-border: var(--citymatic-border);
  --color-border-light: var(--citymatic-border);
  --color-border-strong: var(--citymatic-border-strong);

  --color-white: #FFFFFF;
  --color-black: var(--citymatic-ink);

  /*
   * Compatibilitate cu utilitarele vechi.
   * Clasa se numeste yellow, dar va folosi accentul nou.
   */
  --color-yellow: var(--citymatic-accent);

  --color-red: var(--citymatic-danger);


  /* TYPOGRAPHY */
  --font-family: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-family-display: 'Fraunces', Georgia, 'Times New Roman', serif;

  --heading-font-weight: 600;
  --body-font-weight: 400;

  --body-font-size: 16px;
  --body-line-height: 1.6;

  --heading-line-height: 1.15;


  /* RADIUS */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 14px;
  --radius-xl: 18px;


  /* SHADOWS */
  --shadow-sm:
    0 1px 2px rgba(15, 33, 30, .06),
    0 1px 1px rgba(15, 33, 30, .04);

  --shadow-md:
    0 8px 24px rgba(15, 33, 30, .10);

  --shadow-lg:
    0 20px 48px rgba(15, 33, 30, .16);


  /* TRANSITIONS */
  --transition-fast:
    180ms cubic-bezier(.4, 0, .2, 1);

  --transition-base:
    400ms cubic-bezier(.16, 1, .3, 1);


  /* HEADER */
  --header-height: 84px;


  /* Z INDEX */
  --z-dropdown: 100;
  --z-sticky: 500;
  --z-header: 1000;
  --z-modal: 2000;
}


/******************************
  DOCUMENT
*******************************/

body {
  background-color: var(--color-bg);
  color: var(--color-text);

  font-family: var(--font-family);
  font-size: var(--body-font-size);
  font-weight: var(--body-font-weight);
  line-height: var(--body-line-height);

  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  display: block;

  max-width: 100%;
  height: auto;
}


/******************************
  CONTAINER
*******************************/

/*
 * Designul primit foloseste 1280px.
 * Paddingul lateral NU intra pe sf-container.
 * Ramane pe primul div interior prin sf-padding-x-40.
 */

body .sf-container {
  max-width: 1280px;
}


/******************************
  TYPOGRAPHY
*******************************/

h1,
h2 {
  margin: 0 0 .5em;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}

h3,
h4,
h5,
h6 {
  margin: 0 0 .5em;

  color: var(--color-primary-darker);

  font-family: var(--font-family);
  line-height: 1.25;
}

h1 {
  font-size: clamp(38px, 3.4vw, 54px);
}

h2 {
  font-size: clamp(27px, 2.2vw, 37px);
}

h3 {
  font-size: 20px;
  font-weight: 600;
}

h4 {
  font-size: 17px;
  font-weight: 700;
}

h5 {
  font-size: 16px;
  font-weight: 700;
}

h6 {
  font-size: 14px;
  font-weight: 700;
}

.sf-text-lead {
  color: var(--color-text-light);

  font-size: 17px;
  line-height: 1.65;
}

.sf-text-muted {
  color: var(--color-text-light);
}


/******************************
  CITYMATIC COLORS
*******************************/

.sf-color-primary {
  color: var(--color-primary);
}

.sf-color-primary-dark {
  color: var(--color-primary-dark);
}

.sf-color-primary-darker {
  color: var(--color-primary-darker);
}

.sf-color-secondary {
  color: var(--color-secondary);
}

.sf-color-accent {
  color: var(--color-accent);
}

.sf-color-text {
  color: var(--color-text);
}

.sf-color-muted {
  color: var(--color-text-light);
}

.sf-background-color-primary {
  background-color: var(--color-primary);
}

.sf-background-color-primary-dark {
  background-color: var(--color-primary-dark);
}

.sf-background-color-primary-darker {
  background-color: var(--color-primary-darker);
}

.sf-background-color-accent {
  background-color: var(--color-accent);
}

.sf-background-color-soft {
  background-color: var(--color-bg-soft);
}

.sf-background-color-surface {
  background-color: var(--citymatic-surface);
}


/******************************
  SECTION SPACING
*******************************/

/*
 * Pastram regula stabilita:
 * max. 40px vertical.
 */

.sf-section-spacing {
  padding-top: 40px;
  padding-bottom: 40px;
}

.sf-section-spacing-small {
  padding-top: 24px;
  padding-bottom: 24px;
}

.sf-section-spacing-top-0 {
  padding-top: 0;
}

.sf-section-spacing-bottom-0 {
  padding-bottom: 0;
}

@media (max-width: 992px) {

  .sf-section-spacing {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .sf-section-spacing-small {
    padding-top: 20px;
    padding-bottom: 20px;
  }

}

@media (max-width: 576px) {

  .sf-section-spacing {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .sf-section-spacing-small {
    padding-top: 16px;
    padding-bottom: 16px;
  }

}


/******************************
  BUTTONS
*******************************/

.sf-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  gap: 8px;

  min-height: 44px;

  padding: 12px 24px;

  border: 1.5px solid transparent !important;
  border-radius: var(--radius-sm);

  cursor: pointer;

  font-family: var(--font-family);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;

  text-align: center;

  transition:
    background-color var(--transition-fast),
    border-color var(--transition-fast),
    color var(--transition-fast),
    box-shadow var(--transition-fast),
    transform var(--transition-fast);
}

.sf-button:hover {
  transform: translateY(-1px);
}


/* PRIMARY */

.sf-button--primary {
  background-color: var(--color-accent);
  color: var(--color-white);
}

.sf-button--primary:hover {
  background-color: var(--color-accent-dark);
  color: var(--color-white);

  box-shadow: var(--shadow-md);
}


/* DARK */

.sf-button--dark {
  background-color: var(--color-primary);
  color: var(--color-white);
}

.sf-button--dark:hover {
  background-color: var(--color-primary-dark);
  color: var(--color-white);

  box-shadow: var(--shadow-md);
}


/* OUTLINE */

.sf-button--secondary,
.sf-button--outline {
  background-color: transparent;

  border-color: var(--color-border-strong) !important;

  color: var(--color-text);
}

.sf-button--secondary:hover,
.sf-button--outline:hover {
  border-color: var(--color-primary) !important;

  color: var(--color-primary);
}


/* LIGHT OUTLINE */

.sf-button--outline-light {
  background-color: transparent;

  border-color: rgba(255, 255, 255, .5) !important;

  color: var(--color-white);
}

.sf-button--outline-light:hover {
  background-color: rgba(255, 255, 255, .08);

  border-color: var(--color-white) !important;

  color: var(--color-white);
}


/* SMALL */

.sf-button--small {
  min-height: 38px;

  padding: 9px 18px;

  font-size: 14px;
}


/******************************
  CARDS
*******************************/

.sf-card {
  display: flex;
  flex-direction: column;

  overflow: hidden;

  height: 100%;

  background-color: var(--citymatic-surface);

  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);

  transition:
    border-color var(--transition-fast),
    box-shadow var(--transition-fast),
    transform var(--transition-fast);
}

a.sf-card:hover {
  border-color: var(--color-border-strong);

  box-shadow: var(--shadow-md);

  transform: translateY(-3px);
}


/******************************
  FORMS
*******************************/

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="number"],
select,
textarea {
  width: 100%;

  background-color: var(--citymatic-surface);
  color: var(--color-text);

  border: 1.5px solid var(--color-border-strong);
  border-radius: var(--radius-sm);

  font-family: var(--font-family);
  font-size: 15px;
  line-height: 1.4;

  transition:
    border-color var(--transition-fast),
    box-shadow var(--transition-fast);
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="number"],
select {
  min-height: 46px;

  padding: 11px 14px;
}

textarea {
  min-height: 120px;

  padding: 12px 14px;

  resize: vertical;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--color-primary);

  box-shadow: 0 0 0 3px rgba(14, 86, 82, .10);
}


/******************************
  LISTS
*******************************/

.sf-list-reset {
  margin: 0;
  padding: 0;

  list-style: none;
}


/******************************
  ACCESSIBILITY
*******************************/

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--color-accent) !important;
  outline-offset: 2px;
}


@media (prefers-reduced-motion: reduce) {

  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;

    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }

}

/******************************************************************
  CITYMATIC - TOPBAR
******************************************************************/

.sf-citymatic-topbar {
  width: 100%;

  background: var(--color-primary-darker);
  color: #DCEAE7;

  font-size: .82rem;
}

.sf-citymatic-topbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;

  height: 38px;
}

.sf-citymatic-topbar__left,
.sf-citymatic-topbar__right {
  display: flex;
  align-items: center;

  gap: 1.75rem;
}

.sf-citymatic-topbar__item {
  display: inline-flex;
  align-items: center;

  gap: .4rem;

  color: #DCEAE7;

  font-size: .82rem;
  font-weight: 400;
  line-height: 1;

  white-space: nowrap;

  transition: color var(--transition-fast);
}

a.sf-citymatic-topbar__item:hover {
  color: #FFFFFF;
}

.sf-citymatic-topbar__item svg {
  width: 14px;
  height: 14px;

  min-width: 14px;
  min-height: 14px;

  max-width: 14px;
  max-height: 14px;

  flex: 0 0 14px;
}


/******************************************************************
  CITYMATIC - HEADER
******************************************************************/

.sf-citymatic-header {
  position: sticky;
  top: 0;

  width: 100%;

  z-index: 500;

  background: rgba(247, 247, 244, .92);

  border-bottom: 1px solid var(--color-border);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}


/*
 * WordPress admin bar.
 */
body.admin-bar .sf-citymatic-header {
  top: 32px;
}

@media (max-width: 782px) {

  body.admin-bar .sf-citymatic-header {
    top: 46px;
  }

}


.sf-citymatic-header__inner {
  position: relative;

  display: flex;
  align-items: center;
  justify-content: space-between;

  height: 84px;

  gap: 1.25rem;
}


/******************************************************************
  HEADER - LOGO
******************************************************************/

.sf-citymatic-header__logo-link {
  display: flex;
  align-items: center;

  gap: .6rem;

  flex: none;
}

.sf-citymatic-header__logo {
  display: block;

  width: auto;
  height: 44px;

  max-width: none;

  object-fit: contain;
}


/******************************************************************
  HEADER - NAVIGATION
******************************************************************/

.sf-citymatic-header__nav {
  display: flex;
  align-items: center;
  justify-content: center;

  flex: 1;

  min-width: 0;
}

.sf-citymatic-header__menu {
  display: flex;
  align-items: center;

  gap: .15rem;

  margin: 0;
  padding: 0;

  list-style: none;
}

.sf-citymatic-header__menu-item {
  position: relative;

  list-style: none;
}

.sf-citymatic-header__menu-item--wide {
  position: static;
}


/*
 * Aceeasi regula se aplica atat linkurilor,
 * cat si butoanelor Produse / Servicii.
 */
.sf-citymatic-header__menu-link {
  display: flex;
  align-items: center;

  gap: .3rem;

  padding: 1.7rem .75rem;

  background: none !important;

  border: none !important;
  border-bottom: 2px solid transparent !important;

  appearance: none;
  -webkit-appearance: none;

  color: var(--color-text);

  font-family: var(--font-family);
  font-size: .92rem;
  font-weight: 600;
  line-height: 1.2;

  white-space: nowrap;

  cursor: pointer;

  transition: color var(--transition-fast);
}

.sf-citymatic-header__menu-link:hover,
.sf-citymatic-header__menu-link:focus,
.sf-citymatic-header__menu-item.is-open
> .sf-citymatic-header__menu-link {

  background: none !important;

  color: var(--color-primary);
}


/******************************************************************
  HEADER - CARET
******************************************************************/

.sf-citymatic-header__nav-caret {
  display: block;

  width: 9px;
  height: 9px;

  min-width: 9px;

  flex: 0 0 9px;

  transition: transform var(--transition-fast);
}

.sf-citymatic-header__menu-item.is-open
> .sf-citymatic-header__menu-link
.sf-citymatic-header__nav-caret {

  transform: rotate(180deg);
}


/******************************************************************
  HEADER - ACTIONS
******************************************************************/

.sf-citymatic-header__actions {
  display: flex;
  align-items: center;

  gap: 1rem;

  flex: none;
}


/******************************
  HEADER PHONE
*******************************/

.sf-citymatic-header__phone {
  display: flex;
  align-items: center;

  gap: .5rem;

  color: var(--color-primary-darker);

  font-size: .95rem;
  font-weight: 700;
  line-height: 1.2;

  white-space: nowrap;

  transition: color var(--transition-fast);
}

.sf-citymatic-header__phone:hover {
  color: var(--color-primary);
}

.sf-citymatic-header__phone svg {
  display: block;

  width: 18px;
  height: 18px;

  min-width: 18px;
  min-height: 18px;

  max-width: 18px;
  max-height: 18px;

  flex: 0 0 18px;

  color: var(--color-accent);
}

.sf-citymatic-header__phone small {
  display: block;

  margin-top: 1px;

  color: var(--color-text-light);

  font-size: .7rem;
  font-weight: 500;
}


/******************************************************************
  HEADER - CTA
******************************************************************/

.sf-citymatic-header__actions
.sf-button--small {

  min-height: auto;

  padding: .6rem 1.1rem;

  border-radius: var(--radius-sm);

  font-size: .85rem;
  font-weight: 700;
}


/*
 * Dimensiune standard pentru iconitele din butoane.
 *
 * IMPORTANT:
 * regula este GLOBALA, nu doar sub 640px.
 */
.sf-button svg {
  display: block;

  width: 16px;
  height: 16px;

  min-width: 16px;
  min-height: 16px;

  max-width: 16px;
  max-height: 16px;

  flex: 0 0 16px;
}


/******************************************************************
  HEADER - MEGA MENU
******************************************************************/

.sf-citymatic-header__mega {
  position: absolute;

  top: 100%;
  left: 50%;

  padding: 1.75rem;

  background: var(--citymatic-surface);

  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);

  box-shadow: var(--shadow-lg);

  opacity: 0;
  visibility: hidden;

  transform:
    translateX(-50%)
    translateY(8px);

  z-index: 60;

  transition:
    opacity var(--transition-fast),
    transform var(--transition-fast),
    visibility var(--transition-fast);
}

.sf-citymatic-header__menu-item.is-open
> .sf-citymatic-header__mega {

  opacity: 1;
  visibility: visible;

  transform:
    translateX(-50%)
    translateY(0);
}


/******************************
  PRODUCTS MEGA
*******************************/

.sf-citymatic-header__mega--products {
  display: grid;

  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 0 1.75rem;

  width: 1000px;
}


/******************************
  SIMPLE MEGA
*******************************/

.sf-citymatic-header__mega--simple {
  left: 0;

  width: 280px;

  transform:
    translateX(0)
    translateY(8px);
}

.sf-citymatic-header__menu-item.is-open
> .sf-citymatic-header__mega--simple {

  transform:
    translateX(0)
    translateY(0);
}


/******************************
  MEGA COLUMN
*******************************/

.sf-citymatic-header__mega-column {
  min-width: 0;
}

.sf-citymatic-header__mega-title {
  margin-bottom: .85rem;

  color: var(--citymatic-muted-2);

  font-size: .72rem;
  font-weight: 800;
  line-height: 1.3;

  letter-spacing: .08em;
  text-transform: uppercase;
}


/******************************
  MEGA LINKS
*******************************/

.sf-citymatic-header__mega-link {
  display: flex;
  align-items: flex-start;

  gap: .7rem;

  padding: .55rem .4rem;

  border-radius: var(--radius-sm);

  transition: background var(--transition-fast);
}

.sf-citymatic-header__mega-link:hover {
  background: var(--citymatic-primary-tint);
}

.sf-citymatic-header__mega-link svg {
  display: block;

  width: 20px;
  height: 20px;

  min-width: 20px;
  min-height: 20px;

  max-width: 20px;
  max-height: 20px;

  flex: 0 0 20px;

  margin-top: .15rem;

  color: var(--color-primary);
}

.sf-citymatic-header__mega-link > span {
  min-width: 0;
}

.sf-citymatic-header__mega-link strong {
  display: block;

  color: var(--color-text);

  font-size: .9rem;
  font-weight: 700;
  line-height: 1.3;
}

.sf-citymatic-header__mega-link
> span
> span {

  display: block;

  margin-top: .1rem;

  color: var(--color-text-light);

  font-size: .78rem;
  font-weight: 400;
  line-height: 1.35;
}


/******************************
  MEGA FOOTER
*******************************/

.sf-citymatic-header__mega-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;

  grid-column: 1 / -1;

  gap: 1rem;

  margin-top: 1.25rem;
  padding-top: 1.1rem;
}

.sf-citymatic-header__mega-footer p {
  margin: 0;

  color: var(--color-text-light);

  font-size: .82rem;
}


/******************************************************************
  HEADER - MOBILE TOGGLE
******************************************************************/

.sf-citymatic-header__mobile-toggle {
  display: none;
  align-items: center;
  justify-content: center;

  width: 42px;
  height: 42px;

  padding: 0;

  background: none !important;

  border: 1.5px solid var(--color-border-strong) !important;
  border-radius: var(--radius-sm);

  cursor: pointer;

  flex: none;
}

.sf-citymatic-header__mobile-toggle-bars {
  position: relative;

  display: block;

  width: 18px;
  height: 13px;

  flex: none;
}

.sf-citymatic-header__mobile-toggle-bars span {
  position: absolute;
  left: 0;

  width: 100%;
  height: 2px;

  background: var(--color-text);

  border-radius: 2px;

  transition:
    transform .25s ease,
    opacity .2s ease;
}

.sf-citymatic-header__mobile-toggle-bars span:nth-child(1) {
  top: 0;
}

.sf-citymatic-header__mobile-toggle-bars span:nth-child(2) {
  top: 5.5px;
}

.sf-citymatic-header__mobile-toggle-bars span:nth-child(3) {
  top: 11px;
}


/******************************
  HAMBURGER OPEN
*******************************/

body.sf-citymatic-nav-open
.sf-citymatic-header__mobile-toggle-bars
span:nth-child(1) {

  top: 5.5px;

  transform: rotate(45deg);
}

body.sf-citymatic-nav-open
.sf-citymatic-header__mobile-toggle-bars
span:nth-child(2) {

  opacity: 0;
}

body.sf-citymatic-nav-open
.sf-citymatic-header__mobile-toggle-bars
span:nth-child(3) {

  top: 5.5px;

  transform: rotate(-45deg);
}


/******************************************************************
  HEADER - MOBILE ELEMENTS
******************************************************************/

.sf-citymatic-header__mobile-nav-head,
.sf-citymatic-header__mobile-nav-foot {
  display: none;
}

.sf-citymatic-header__mobile-nav-close {
  display: none;
}


/******************************
  OVERLAY
*******************************/

.sf-citymatic-header__overlay {
  position: fixed;

  inset: 0;

  z-index: 490;

  background: rgba(8, 20, 18, .55);

  opacity: 0;

  pointer-events: none;

  transition: opacity .3s ease;
}

.sf-citymatic-header__overlay.is-visible {
  opacity: 1;

  pointer-events: auto;
}

body.sf-citymatic-no-scroll {
  overflow: hidden;
}


/******************************************************************
  MOBILE CTA
******************************************************************/

.sf-citymatic-mobile-cta {
  display: none;
}


/******************************************************************
  DESKTOP INTERMEDIAR
******************************************************************/

@media (max-width: 1280px) and (min-width: 1201px) {

  .sf-citymatic-header__menu-link {
    padding-right: .6rem;
    padding-left: .6rem;

    font-size: .88rem;
  }

  .sf-citymatic-header__actions {
    gap: .75rem;
  }

}


/******************************************************************
  TABLET / MOBILE DRAWER
******************************************************************/

@media (max-width: 1200px) {

  /*
   * Pe layout-ul cu hamburger nu mai afisam topbar-ul.
   * Astfel rezultatul este apropiat de designul de tableta.
   */
  .sf-citymatic-topbar {
    display: none;
  }


  /*
   * Header compact.
   */
  .sf-citymatic-header {
    background: var(--color-bg);

    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  .sf-citymatic-header__inner {
    height: 64px;

    gap: .75rem;
  }

  .sf-citymatic-header__logo {
    height: 34px;

    max-width: 140px;
  }


  /******************************
    HEADER ACTIONS
  *******************************/

  .sf-citymatic-header__actions {
    gap: .6rem;
  }

  .sf-citymatic-header__actions
  > .sf-button--primary {

    display: none;
  }


  /*
   * Telefonul din header devine doar icon.
   */
  .sf-citymatic-header__phone {
    justify-content: center;

    width: 42px;
    height: 42px;

    padding: .5rem;

    border: 1.5px solid var(--color-border-strong) !important;
    border-radius: var(--radius-sm);
  }

  .sf-citymatic-header__phone span {
    display: none;
  }


  /*
   * Hamburger.
   */
  .sf-citymatic-header__mobile-toggle {
    display: flex;
  }


  /****************************************************************
    DRAWER
  ****************************************************************/

  .sf-citymatic-header__nav {
    position: fixed;

    top: 0;
    right: 0;
    bottom: 0;

    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;

    width: min(88vw, 380px);

    min-width: 0;

    padding: 0 0 1.5rem;
    margin: 0;

    background: var(--citymatic-surface);

    overflow-x: hidden;
    overflow-y: auto;

    -webkit-overflow-scrolling: touch;

    box-shadow:
      -12px 0 40px rgba(0, 0, 0, .20);

    transform: translateX(100%);

    z-index: 600;

    transition:
      transform .32s cubic-bezier(.4, 0, .2, 1);
  }

  .sf-citymatic-header__nav.is-open {
    transform: translateX(0);
  }


  /*
   * Admin bar WordPress.
   */
  body.admin-bar
  .sf-citymatic-header__nav {

    top: 32px;
  }


  /****************************************************************
    DRAWER HEAD
  ****************************************************************/

  .sf-citymatic-header__mobile-nav-head {
    position: sticky;

    top: 0;

    display: flex;
    align-items: center;
    justify-content: space-between;

    flex: 0 0 auto;

    width: 100%;

    padding: 1.15rem 1.5rem;

    background: var(--citymatic-surface);

    border-bottom: 1px solid var(--color-border);

    color: var(--color-text-light);

    font-size: .78rem;
    font-weight: 800;
    line-height: 1;

    letter-spacing: .06em;
    text-transform: uppercase;

    z-index: 2;
  }

  .sf-citymatic-header__mobile-nav-close {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 36px;
    height: 36px;

    padding: 0;

    background: none !important;

    color: var(--color-text);

    border: none !important;

    cursor: pointer;
  }

  .sf-citymatic-header__mobile-nav-close svg {
    display: block;

    width: 20px;
    height: 20px;

    min-width: 20px;
    min-height: 20px;

    max-width: 20px;
    max-height: 20px;

    flex: 0 0 20px;
  }


  /****************************************************************
    DRAWER MENU
  ****************************************************************/

  .sf-citymatic-header__menu {
    display: flex;
    flex-direction: column;
    align-items: stretch;

    flex: 0 0 auto;

    width: 100%;

    gap: 0;

    margin: 0;
    padding: 0;
  }

  .sf-citymatic-header__menu-item,
  .sf-citymatic-header__menu-item--wide {

    position: static;

    width: 100%;

    border-bottom: 1px solid var(--color-border);
  }

  .sf-citymatic-header__menu-link {
    justify-content: space-between;

    width: 100%;

    padding: 1rem 1.5rem;

    border: none !important;
    border-bottom: none !important;

    background: none !important;

    color: var(--color-text);

    font-size: 1rem;
    font-weight: 600;
  }

  .sf-citymatic-header__nav-caret {
    width: 11px;
    height: 11px;

    min-width: 11px;

    flex-basis: 11px;
  }


  /****************************************************************
    MOBILE MEGA MENU
  ****************************************************************/

  .sf-citymatic-header__mega,
  .sf-citymatic-header__mega--products,
  .sf-citymatic-header__mega--simple {

    position: static;

    display: block !important;

    width: 100% !important;

    max-height: 0;

    padding: 0;

    background: var(--citymatic-surface-2);

    border: none;
    border-radius: 0;

    box-shadow: none;

    opacity: 1;
    visibility: visible;

    overflow: hidden;

    transform: none !important;

    transition: max-height .35s ease;
  }

  .sf-citymatic-header__menu-item.is-open
  > .sf-citymatic-header__mega {

    max-height: 2400px;
  }


  /******************************
    MEGA COLUMNS
  *******************************/

  .sf-citymatic-header__mega-column {
    padding: 1rem 1.5rem 0;
  }

  .sf-citymatic-header__mega-title {
    margin-top: 0;
  }

  .sf-citymatic-header__mega-link {
    gap: .7rem;

    padding: .65rem .25rem;
  }

  .sf-citymatic-header__mega-link svg {
    display: block !important;

    width: 20px !important;
    height: 20px !important;

    min-width: 20px !important;
    min-height: 20px !important;

    max-width: 20px !important;
    max-height: 20px !important;

    flex: 0 0 20px !important;
  }


  /******************************
    MEGA FOOTER
  *******************************/

  .sf-citymatic-header__mega-footer {
    flex-direction: column;
    align-items: stretch;

    gap: .75rem;

    grid-column: auto;

    margin-top: 0;

    padding: 1.25rem 1.5rem 1.5rem;
  }

  .sf-citymatic-header__mega-footer
  .sf-button {

    width: 100%;
  }


  /****************************************************************
    DRAWER FOOT
  ****************************************************************/

  .sf-citymatic-header__mobile-nav-foot {
    display: flex;
    flex-direction: column;

    flex: 0 0 auto;

    gap: .75rem;

    width: 100%;

    padding: 1.5rem;
  }


  /*
   * IMPORTANT:
   *
   * reset-ul general din tema are:
   * a { border:none !important; }
   *
   * De aceea trebuie suprascris explicit.
   */
  .sf-citymatic-header__mobile-nav-foot
  a.sf-button {

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    min-height: 44px;

    gap: .5rem;

    padding: .85rem 1.5rem;

    font-size: .92rem;
    font-weight: 700;
    line-height: 1.2;

    white-space: nowrap;
  }


  /******************************
    DRAWER PHONE BUTTON
  *******************************/

  .sf-citymatic-header__mobile-nav-foot
  a.sf-button--outline {

    background: transparent !important;

    border:
      1.5px solid
      var(--color-border-strong)
      !important;

    color: var(--color-text) !important;
  }


  /*
   * FIX pentru iconita telefon.
   *
   * Toate dimensiunile sunt fortate la 16px
   * indiferent de viewport.
   */
  .sf-citymatic-header__mobile-nav-foot
  a.sf-button
  svg {

    display: block !important;

    width: 16px !important;
    height: 16px !important;

    min-width: 16px !important;
    min-height: 16px !important;

    max-width: 16px !important;
    max-height: 16px !important;

    flex: 0 0 16px !important;

    margin: 0 !important;
  }


  /******************************
    DRAWER CTA
  *******************************/

  .sf-citymatic-header__mobile-nav-foot
  a.sf-button--primary {

    background: var(--color-accent) !important;

    border:
      1.5px solid
      var(--color-accent)
      !important;

    color: #FFFFFF !important;
  }

}


/******************************************************************
  ADMIN BAR - MOBILE
******************************************************************/

@media (max-width: 782px) {

  body.admin-bar
  .sf-citymatic-header__nav {

    top: 46px;
  }

}


/******************************************************************
  MOBILE
******************************************************************/

@media (max-width: 640px) {

  .sf-citymatic-header__inner {
    height: 60px;
  }

  .sf-citymatic-header__logo {
    height: 34px;

    max-width: 140px;
  }


  /****************************************************************
    MOBILE CTA FIXED
  ****************************************************************/

  .sf-citymatic-mobile-cta {
    position: fixed;

    right: 0;
    bottom: 0;
    left: 0;

    display: flex;

    gap: .6rem;

    padding:
      .7rem
      .9rem
      calc(.7rem + env(safe-area-inset-bottom));

    background: var(--citymatic-surface);

    border-top: 1px solid var(--color-border);

    box-shadow:
      0 -8px 24px rgba(0, 0, 0, .08);

    z-index: 450;
  }

  .sf-citymatic-mobile-cta
  .sf-button {

    flex: 1;

    min-width: 0;

    padding: .8rem .9rem;

    font-size: .88rem;
  }

  .sf-citymatic-mobile-cta
  .sf-button svg {

    display: block !important;

    width: 16px !important;
    height: 16px !important;

    min-width: 16px !important;
    min-height: 16px !important;

    max-width: 16px !important;
    max-height: 16px !important;

    flex: 0 0 16px !important;
  }


  /*
   * Spatiu pentru CTA-ul fixed.
   */
  body {
    padding-bottom: 64px;
  }

}

/******************************************************************
  CITYMATIC - FOOTER
******************************************************************/

.sf-citymatic-footer {
  width: 100%;

  background-color: var(--color-primary-darker);
  color: #B9D2CD;
}


/******************************
  FOOTER INNER
*******************************/

.sf-citymatic-footer__inner {
  padding-top: 40px;
}


/******************************
  FOOTER GRID
*******************************/

.sf-citymatic-footer__grid {
  display: grid;

  grid-template-columns:
    1.4fr
    1fr
    1fr
    1fr
    1.1fr;

  gap: 40px;

  align-items: start;

  padding-bottom: 40px;

  border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.sf-citymatic-footer__grid > * {
  min-width: 0;
}


/******************************
  BRAND
*******************************/

.sf-citymatic-footer__brand {
  min-width: 0;
}


/*
 * In design logo-ul normal este pus
 * pe o placa alba.
 */
.sf-citymatic-footer__logo-plate {
  display: inline-flex;
  align-items: center;

  margin-bottom: 20px;

  padding: 14px 20px;

  background-color: var(--color-white);

  border-radius: var(--radius-md);

  box-shadow:
    0 8px 20px rgba(0, 0, 0, .18);

  transition:
    transform var(--transition-fast),
    box-shadow var(--transition-fast);
}

.sf-citymatic-footer__logo-plate:hover {
  transform: translateY(-1px);

  box-shadow:
    0 10px 24px rgba(0, 0, 0, .22);
}


.sf-citymatic-footer__logo {
  display: block;

  width: auto;
  height: 46px;
  max-width: 150px;

  object-fit: contain;
}


.sf-citymatic-footer__description {
  max-width: 260px;

  margin: 0;

  color: #9FC0BA;

  font-size: 14px;
  font-weight: 400;
  line-height: 1.65;
}


/******************************
  COLUMN HEADINGS
*******************************/

.sf-citymatic-footer__heading {
  margin: 0 0 18px;

  color: var(--color-white);

  font-family: var(--font-family);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.3;

  letter-spacing: .06em;

  text-transform: uppercase;
}


/******************************
  COLUMN LINKS
*******************************/

.sf-citymatic-footer__links {
  display: flex;
  flex-direction: column;

  gap: 10px;
}


.sf-citymatic-footer__links li {
  margin: 0;
  padding: 0;
}


.sf-citymatic-footer__links a {
  color: #B9D2CD;

  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;

  transition: color var(--transition-fast);
}


.sf-citymatic-footer__links a:hover {
  color: var(--color-white);
}


/******************************
  CONTACT
*******************************/

.sf-citymatic-footer__contact {
  display: flex;
  flex-direction: column;

  gap: 10px;
}


.sf-citymatic-footer__contact li {
  display: flex;
  align-items: flex-start;

  gap: 10px;

  margin: 0;
  padding: 0;

  color: #B9D2CD;

  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
}


.sf-citymatic-footer__contact svg {
  flex: 0 0 auto;

  width: 16px;
  height: 16px;

  margin-top: 2px;

  color: #F3C79A;
}


.sf-citymatic-footer__contact a {
  color: #B9D2CD;

  transition: color var(--transition-fast);
}


.sf-citymatic-footer__contact a:hover {
  color: var(--color-white);
}


/******************************
  FOOTER BOTTOM
*******************************/

.sf-citymatic-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 24px;

  padding-top: 24px;
  padding-bottom: 24px;

  color: #82A39D;

  font-size: 13px;
  line-height: 1.5;
}


.sf-citymatic-footer__copyright {
  flex: 0 1 auto;

  color: #82A39D;
}


/******************************
  LEGAL LINKS
*******************************/

.sf-citymatic-footer__legal {
  display: flex;
  align-items: center;

  flex-wrap: wrap;

  gap: 20px;
}


.sf-citymatic-footer__legal a {
  color: #82A39D;

  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;

  white-space: nowrap;

  transition: color var(--transition-fast);
}


.sf-citymatic-footer__legal a:hover {
  color: var(--color-white);
}


/******************************************************************
  FOOTER RESPONSIVE
******************************************************************/

@media (max-width: 1100px) {

  .sf-citymatic-footer__grid {
    grid-template-columns:
      1.4fr
      1fr
      1fr;

    gap: 32px;
  }


  /*
   * Brand-ul ocupa doua randuri suficient de natural,
   * fara sa marim exagerat footer-ul.
   */
  .sf-citymatic-footer__brand {
    grid-row: span 2;
  }

}


@media (max-width: 768px) {

  .sf-citymatic-footer__grid {
    grid-template-columns:
      1fr
      1fr;

    gap: 32px 24px;
  }


  .sf-citymatic-footer__brand {
    grid-column: 1 / -1;
    grid-row: auto;
  }


  .sf-citymatic-footer__description {
    max-width: 460px;
  }


  .sf-citymatic-footer__bottom {
    align-items: flex-start;
    flex-direction: column;

    gap: 12px;
  }


  .sf-citymatic-footer__legal {
    gap: 8px 18px;
  }

}


@media (max-width: 576px) {

  .sf-citymatic-footer__inner {
    padding-top: 32px;
  }


  .sf-citymatic-footer__grid {
    grid-template-columns: 1fr;

    gap: 28px;

    padding-bottom: 32px;
  }


  .sf-citymatic-footer__brand {
    grid-column: auto;
  }


  .sf-citymatic-footer__logo-plate {
    margin-bottom: 16px;

    padding: 12px 16px;
  }


  .sf-citymatic-footer__logo {
    height: 40px;
    max-width: 140px;
  }


  .sf-citymatic-footer__heading {
    margin-bottom: 14px;
  }


  .sf-citymatic-footer__bottom {
    padding-top: 20px;
    padding-bottom: 20px;
  }


  .sf-citymatic-footer__legal {
    flex-direction: column;
    align-items: flex-start;

    gap: 6px;
  }

}


/******************************************************************
  CITYMATIC - LEGAL PAGES
******************************************************************/

.sf-legal-pages {
  width: 100%;

  padding-top: 40px;
  padding-bottom: 40px;

  color: var(--color-text);

  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
}


/******************************
  LEGAL HEADER
*******************************/

.sf-legal-pages__header {
  padding-bottom: 28px;

  border-bottom: 1px solid var(--color-border);
}

.sf-legal-pages__title {
  margin: 0 0 12px;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: clamp(32px, 2.8vw, 44px);
  font-weight: 600;
  line-height: 1.15;
}

.sf-legal-pages__updated {
  margin: 0;

  color: var(--color-text-light);

  font-size: 14px;
  line-height: 1.5;
}

.sf-legal-pages__updated strong {
  color: var(--color-text);

  font-weight: 600;
}


/******************************
  LEGAL SECTIONS
*******************************/

.sf-legal-pages__section {
  padding-top: 32px;
  padding-bottom: 32px;

  border-bottom: 1px solid var(--color-border);
}

.sf-legal-pages__section--last {
  padding-bottom: 0;

  border-bottom: 0;
}


/******************************
  LEGAL TITLES
*******************************/

.sf-legal-pages__section h2 {
  margin: 0 0 20px;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: 28px;
  font-weight: 600;
  line-height: 1.25;
}

.sf-legal-pages__subsection {
  margin-top: 28px;
}

.sf-legal-pages__subsection:first-of-type {
  margin-top: 0;
}

.sf-legal-pages__subsection h3 {
  margin: 0 0 16px;

  color: var(--color-primary-darker);

  font-family: var(--font-family);
  font-size: 19px;
  font-weight: 700;
  line-height: 1.4;
}


/******************************
  LEGAL TEXT
*******************************/

.sf-legal-pages p {
  max-width: 1180px;

  margin: 0 0 16px;

  font-size: 16px;
  line-height: 1.7;
}

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

.sf-legal-pages strong {
  font-weight: 700;
}


/******************************
  LEGAL LISTS
*******************************/

.sf-legal-pages ul,
.sf-legal-pages ol {
  max-width: 1180px;

  margin: 0 0 20px;

  padding-left: 24px;
}

.sf-legal-pages li {
  margin-bottom: 8px;

  font-size: 16px;
  line-height: 1.65;
}

.sf-legal-pages li:last-child {
  margin-bottom: 0;
}


/******************************
  LEGAL LINKS
*******************************/

.sf-legal-pages a {
  color: var(--color-primary);

  font-size: inherit;
  font-weight: 700;

  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px;

  transition: color var(--transition-fast);
}

.sf-legal-pages a:hover {
  color: var(--color-accent-dark);
}


/******************************
  LEGAL COMPANY BOX
*******************************/

.sf-legal-pages__company {
  max-width: 760px;

  margin: 20px 0;

  padding: 20px 24px;

  background-color: var(--citymatic-primary-tint);

  border-left: 3px solid var(--color-accent);
  border-radius: var(--radius-sm);
}

.sf-legal-pages__company p {
  margin-bottom: 10px;
}

.sf-legal-pages__company ul {
  margin-bottom: 0;
}


/******************************
  LEGAL RESPONSIVE
*******************************/

@media (max-width: 992px) {

  .sf-legal-pages {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .sf-legal-pages__header {
    padding-bottom: 24px;
  }

  .sf-legal-pages__section {
    padding-top: 28px;
    padding-bottom: 28px;
  }

  .sf-legal-pages__section h2 {
    font-size: 25px;
  }

}


@media (max-width: 576px) {

  .sf-legal-pages {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .sf-legal-pages__header {
    padding-bottom: 20px;
  }

  .sf-legal-pages__section {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .sf-legal-pages__title {
    font-size: 30px;
  }

  .sf-legal-pages__section h2 {
    margin-bottom: 16px;

    font-size: 23px;
  }

  .sf-legal-pages__subsection {
    margin-top: 24px;
  }

  .sf-legal-pages__subsection h3 {
    font-size: 18px;
  }

  .sf-legal-pages__company {
    padding: 18px;
  }

}

/******************************
  CITYMATIC — BREADCRUMBS
*******************************/

/*
 * Elimină limitările și spațierea automată introduse
 * de wrapperul WordPress/Lazy Blocks.
 */
.wp-block-lazyblock-df-breadcrumbs {
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 0;
}


/*
 * Componenta principală.
 */
.sf-citymatic-breadcrumbs {
  width: 100%;
  margin: 0;
  padding: 0;

  background-color: var(--citymatic-surface);
  border-bottom: 1px solid var(--color-border);

  color: var(--color-text-light);

  font-family: var(--font-family);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;

  box-sizing: border-box;
}


/*
 * Paddingul vertical stă pe div-ul interior.
 * Paddingul orizontal este controlat de sf-padding-x-40.
 */
.sf-citymatic-breadcrumbs__inner {
  width: 100%;
  padding-top: 25px;
  padding-bottom: 25px;

  box-sizing: border-box;
}


/*
 * Lista.
 */
.sf-citymatic-breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;

  gap: 6px;

  width: 100%;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;

  list-style: none !important;
}


/*
 * Element individual.
 */
.sf-citymatic-breadcrumbs__item {
  display: inline-flex;
  align-items: center;

  gap: 6px;

  margin: 0;
  padding: 0;

  list-style: none;
}


/*
 * Elimină eventualele marcatoare adăugate de temă.
 */
.sf-citymatic-breadcrumbs__item::marker {
  content: "";
}


/*
 * Separatorul dintre niveluri.
 */
.sf-citymatic-breadcrumbs__item:not(:last-child)::after {
  content: "/";

  color: var(--color-border-strong);

  font-weight: 400;
}


/*
 * Link.
 */
.sf-citymatic-breadcrumbs__link {
  color: var(--color-text-light);

  font-family: inherit;
  font-size: inherit;
  font-weight: 400;
  line-height: inherit;

  text-decoration: none;

  transition: color var(--transition-fast);
}


.sf-citymatic-breadcrumbs__link:hover {
  color: var(--color-primary);

  text-decoration: none;
}


.sf-citymatic-breadcrumbs__link:focus-visible {
  border-radius: 2px;

  outline: 2px solid var(--color-accent);
  outline-offset: 3px;
}


/*
 * Pagina curentă.
 */
.sf-citymatic-breadcrumbs__current {
  color: var(--color-text);

  font-family: inherit;
  font-size: inherit;
  font-weight: 600;
  line-height: inherit;
}


/******************************
  BREADCRUMBS — RESPONSIVE
*******************************/

@media (max-width: 576px) {

  .sf-citymatic-breadcrumbs {
    font-size: 12px;
  }


  .sf-citymatic-breadcrumbs__inner {
    padding-top: 14px;
    padding-bottom: 14px;
  }


  .sf-citymatic-breadcrumbs__list,
  .sf-citymatic-breadcrumbs__item {
    gap: 5px;
  }
}

/******************************
  CITYMATIC — PAGE HERO
*******************************/

/*
 * Wrapper Lazy Blocks.
 */
.wp-block-lazyblock-df-produse-hero {
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 0;
}


/*
 * Secțiune.
 */
.sf-citymatic-page-hero {
  width: 100%;
  margin: 0;
  padding: 0;

  background-color: var(--citymatic-surface);
  border-bottom: 1px solid var(--color-border);

  box-sizing: border-box;
}


/*
 * Folosim același sf-container și același padding
 * orizontal ca în header și breadcrumbs.
 */
.sf-citymatic-page-hero__inner {
  width: 100%;
  padding-top: 51px;
  padding-bottom: 58px;

  box-sizing: border-box;
}


/*
 * Supratitlu.
 */
.sf-citymatic-page-hero__eyebrow {
  display: inline-flex;
  align-items: center;

  margin: 0 0 14px;

  color: var(--color-accent-dark);

  font-family: var(--font-family);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .09em;
  text-transform: uppercase;
}


/*
 * Titlu.
 */
.sf-citymatic-page-hero__title {
  max-width: 1080px;
  margin: 0 0 11px;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: clamp(38px, 3.4vw, 54px);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}


/*
 * Descriere.
 */
.sf-citymatic-page-hero__lead {
  max-width: 640px;
  margin: 0;

  color: var(--color-text-light);

  font-family: var(--font-family);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.65;
}


/*
 * Link.
 */
.sf-citymatic-page-hero__link {
  display: inline-flex;
  align-items: center;

  gap: 7px;

  margin-top: 16px;

  color: var(--color-primary);

  font-family: var(--font-family);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;

  text-decoration: none;

  transition:
    color var(--transition-fast),
    gap var(--transition-fast);
}


.sf-citymatic-page-hero__link svg {
  display: block;

  flex: 0 0 auto;

  width: 14px;
  height: 14px;

  transition: transform var(--transition-fast);
}


.sf-citymatic-page-hero__link:hover {
  gap: 10px;

  color: var(--color-accent-dark);
  text-decoration: none;
}


.sf-citymatic-page-hero__link:hover svg {
  transform: translateX(2px);
}


.sf-citymatic-page-hero__link:focus-visible {
  border-radius: 2px;

  outline: 2px solid var(--color-accent);
  outline-offset: 4px;
}


/******************************
  PAGE HERO — RESPONSIVE
*******************************/

@media (max-width: 576px) {

  .sf-citymatic-page-hero__inner {
    padding-top: 35px;
    padding-bottom: 38px;
  }


  .sf-citymatic-page-hero__eyebrow {
    margin-bottom: 12px;

    font-size: 11px;
  }


  .sf-citymatic-page-hero__title {
    font-size: clamp(29px, 8vw, 40px);
  }


  .sf-citymatic-page-hero__lead {
    font-size: 16px;
    line-height: 1.6;
  }


  .sf-citymatic-page-hero__link {
    font-size: 15px;
  }
}

.has-global-padding {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/******************************
  CITYMATIC — CATEGORY LIST
*******************************/

.wp-block-lazyblock-df-listare-categorii {
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 0;
}


.sf-citymatic-categories {
  width: 100%;
  margin: 0;
  padding: 0;

  background-color: var(--color-bg);

  box-sizing: border-box;
}


.sf-citymatic-categories__inner {
  width: 100%;
  padding-top: 96px;
  padding-bottom: 96px;

  box-sizing: border-box;
}


.sf-citymatic-categories__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 28px;
}


/******************************
  CATEGORY CARD
*******************************/

.sf-citymatic-category-card {
  display: flex;
  flex-direction: column;

  min-width: 0;
  height: 100%;

  overflow: hidden;

  background-color: var(--citymatic-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);

  color: var(--color-text);

  text-decoration: none;

  transition:
    box-shadow var(--transition-base),
    transform var(--transition-base),
    border-color var(--transition-base);
}


.sf-citymatic-category-card:hover {
  border-color: var(--color-border-strong);

  box-shadow: var(--shadow-md);

  color: var(--color-text);
  text-decoration: none;

  transform: translateY(-3px);
}


.sf-citymatic-category-card:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 4px;
}


/*
 * Imagine.
 */
.sf-citymatic-category-card__media {
  width: 100%;
  aspect-ratio: 4 / 3;

  overflow: hidden;

  background-color: var(--citymatic-surface-2);
}


.sf-citymatic-category-card__image {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;

  transition: transform var(--transition-base);
}


.sf-citymatic-category-card:hover
.sf-citymatic-category-card__image {
  transform: scale(1.045);
}


/*
 * Conținut.
 */
.sf-citymatic-category-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;

  gap: 10px;

  padding: 22px 24px 26px;
}


.sf-citymatic-category-card__tag {
  color: var(--color-primary);

  font-family: var(--font-family);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .06em;
  text-transform: uppercase;
}


.sf-citymatic-category-card__title {
  margin: 0;

  color: var(--color-primary-darker);

  font-family: var(--font-family);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;

  letter-spacing: 0;
}


.sf-citymatic-category-card__description {
  flex: 1;

  margin: 0;

  color: var(--color-text-light);

  font-family: var(--font-family);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
}


.sf-citymatic-category-card__link {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;

  gap: 6px;

  margin-top: 5px;

  color: var(--color-primary);

  font-family: var(--font-family);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
}


.sf-citymatic-category-card__link svg {
  display: block;

  flex: 0 0 auto;

  width: 14px;
  height: 14px;

  transition: transform var(--transition-fast);
}


.sf-citymatic-category-card:hover
.sf-citymatic-category-card__link svg {
  transform: translateX(3px);
}


/*
 * Mesaj vizibil doar administratorilor
 * dacă interogarea nu găsește categorii.
 */
.sf-citymatic-categories__notice {
  margin: 0;
  padding: 20px;

  background-color: var(--citymatic-surface);
  border: 1px solid var(--color-border);
}


/******************************
  CATEGORY LIST — RESPONSIVE
*******************************/

@media (max-width: 900px) {

  .sf-citymatic-categories__inner {
    padding-top: 64px;
    padding-bottom: 64px;
  }


  .sf-citymatic-categories__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


@media (max-width: 576px) {

  .sf-citymatic-categories__inner {
    padding-top: 52px;
    padding-bottom: 52px;
  }


  .sf-citymatic-categories__grid {
    grid-template-columns: 1fr;

    gap: 20px;
  }


  .sf-citymatic-category-card__body {
    padding: 20px;
  }
}

/******************************************************************
  CITYMATIC — PRODUCTS COMPARISON
******************************************************************/

.sf-products-compare {
	width: 100%;
	margin: 0;

	background-color: var(--citymatic-surface-2);

	box-sizing: border-box;
}


/******************************
  SECTION HEADER
*******************************/

.sf-products-compare__header {
	max-width: 680px;
	margin-bottom: 32px;
}

.sf-products-compare__eyebrow {
	display: block;

	margin-bottom: 14px;

	color: var(--color-accent-dark);

	font-family: var(--font-family);
	font-size: 12px;
	font-weight: 800;
	line-height: 1.4;

	letter-spacing: .09em;
	text-transform: uppercase;
}

.sf-products-compare__title {
	margin: 0 0 18px;

	color: var(--color-primary-darker);

	font-family: var(--font-family-display);
	font-size: clamp(28px, 2.2vw, 37px);
	font-weight: 600;
	line-height: 1.15;

	letter-spacing: -.01em;
}

.sf-products-compare__description {
	max-width: 640px;
	margin: 0;

	color: var(--color-text-light);

	font-family: var(--font-family);
	font-size: 17px;
	font-weight: 400;
	line-height: 1.65;
}


/******************************
  SCROLL CONTAINER
*******************************/

.sf-products-compare__scroll {
	width: 100%;
	max-width: 100%;

	overflow-x: auto;
	overflow-y: hidden;

	background-color: var(--citymatic-surface);

	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);

	box-sizing: border-box;

	-webkit-overflow-scrolling: touch;
	overscroll-behavior-inline: contain;
	scrollbar-color:
		var(--color-border-strong)
		var(--citymatic-surface-2);
	scrollbar-width: thin;
}

.sf-products-compare__scroll::-webkit-scrollbar {
	height: 8px;
}

.sf-products-compare__scroll::-webkit-scrollbar-track {
	background-color: var(--citymatic-surface-2);
}

.sf-products-compare__scroll::-webkit-scrollbar-thumb {
	background-color: var(--color-border-strong);
	border: 2px solid var(--citymatic-surface-2);
	border-radius: 999px;
}

.sf-products-compare__scroll::-webkit-scrollbar-thumb:hover {
	background-color: var(--color-primary);
}

.sf-products-compare__scroll:focus-visible {
	outline: 2px solid var(--color-accent);
	outline-offset: 4px;
}


/******************************
  TABLE
*******************************/

.sf-products-compare__table {
	width: 100%;
	min-width: 1120px;

	margin: 0;

	background-color: var(--citymatic-surface);

	border: 0;
	border-spacing: 0;
	border-collapse: separate;

	color: var(--color-text-light);

	font-family: var(--font-family);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.55;

	table-layout: fixed;
}

.sf-products-compare__table th,
.sf-products-compare__table td {
	margin: 0;
	padding: 18px 18px;

	border: 0;
	border-bottom: 1px solid var(--color-border);

	text-align: left;
	vertical-align: top;

	box-sizing: border-box;
}

.sf-products-compare__table thead th {
	padding-top: 18px;
	padding-bottom: 18px;

	background-color: var(--citymatic-surface-2);

	color: var(--color-text-light);

	font-size: 12px;
	font-weight: 700;
	line-height: 1.45;

	letter-spacing: .025em;
	text-transform: uppercase;
}

.sf-products-compare__table tbody th {
	background-color: var(--citymatic-surface);

	color: var(--color-primary-darker);

	font-weight: 700;
}

.sf-products-compare__table tbody td {
	background-color: var(--citymatic-surface);

	color: var(--color-text-light);
}

.sf-products-compare__table tbody tr:last-child th,
.sf-products-compare__table tbody tr:last-child td {
	border-bottom: 0;
}


/*
 * Lățimile coloanelor.
 */
.sf-products-compare__table th:nth-child(1),
.sf-products-compare__table td:nth-child(1) {
	width: 17%;
}

.sf-products-compare__table th:nth-child(2),
.sf-products-compare__table td:nth-child(2) {
	width: 12%;
}

.sf-products-compare__table th:nth-child(3),
.sf-products-compare__table td:nth-child(3) {
	width: 19%;
}

.sf-products-compare__table th:nth-child(4),
.sf-products-compare__table td:nth-child(4) {
	width: 16%;
}

.sf-products-compare__table th:nth-child(5),
.sf-products-compare__table td:nth-child(5) {
	width: 15%;
}

.sf-products-compare__table th:nth-child(6),
.sf-products-compare__table td:nth-child(6) {
	width: 21%;
}


/******************************
  MOBILE SCROLL HINT
*******************************/

.sf-products-compare__scroll-hint {
	display: none;

	margin: 0 0 10px;

	color: var(--color-text-light);

	font-family: var(--font-family);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;
}

.sf-products-compare__scroll-hint span {
	color: var(--color-accent-dark);
	font-size: 16px;
}


/******************************
  RESPONSIVE
*******************************/

@media (max-width: 1199px) {

	.sf-products-compare__scroll-hint {
		display: flex;
		align-items: center;

		gap: 7px;
	}

	/*
	 * Prima coloană rămâne vizibilă în timpul scrollului.
	 */
	.sf-products-compare__table thead th:first-child,
	.sf-products-compare__table tbody th {
		position: sticky;
		left: 0;

		z-index: 2;

		box-shadow: 1px 0 0 var(--color-border);
	}

	.sf-products-compare__table thead th:first-child {
		z-index: 3;

		background-color: var(--citymatic-surface-2);
	}

}

@media (max-width: 992px) {

	.sf-products-compare__header {
		margin-bottom: 26px;
	}

	.sf-products-compare__description {
		font-size: 16px;
	}

	.sf-products-compare__table {
		min-width: 1050px;
		font-size: 13px;
	}

	.sf-products-compare__table th,
	.sf-products-compare__table td {
		padding: 16px;
	}

}

@media (max-width: 576px) {

	.sf-products-compare__header {
		margin-bottom: 22px;
	}

	.sf-products-compare__eyebrow {
		margin-bottom: 10px;
		font-size: 11px;
	}

	.sf-products-compare__title {
		margin-bottom: 14px;
	}

	.sf-products-compare__description {
		font-size: 15px;
		line-height: 1.6;
	}

	.sf-products-compare__scroll {
		border-radius: 6px;
	}

	.sf-products-compare__table {
		min-width: 980px;
	}

	.sf-products-compare__table th,
	.sf-products-compare__table td {
		padding: 14px;
	}

}

/******************************
  SCROLLBAR VIZIBIL
*******************************/

.sf-products-compare__scroll {
	scrollbar-color: #874C20 #FBEADC;
	scrollbar-width: auto;
	scrollbar-gutter: stable;
}

.sf-products-compare__scroll::-webkit-scrollbar {
	height: 12px;
}

.sf-products-compare__scroll::-webkit-scrollbar-track {
	background-color: #FBEADC;
	border-radius: 999px;
}

.sf-products-compare__scroll::-webkit-scrollbar-thumb {
	min-width: 70px;

	background-color: #874C20;
	border: 2px solid #FBEADC;
	border-radius: 999px;
}

.sf-products-compare__scroll::-webkit-scrollbar-thumb:hover {
	background-color: #874C20;
}


/*
 * Pe rezoluțiile pe care tabelul nu încape,
 * rezervăm permanent spațiul pentru scrollbar.
 */
@media (max-width: 1199px) {

	.sf-products-compare__scroll {
		overflow-x: scroll;
	}

}


/******************************
  PADDING MAI MARE PE DESKTOP
*******************************/

@media (min-width: 1200px) {

	.sf-products-compare.sf-section-spacing {
		padding-top: 64px;
		padding-bottom: 64px;
	}

}

/******************************************************************
  CITYMATIC — CTA PANEL
******************************************************************/

.sf-citymatic-cta-section {
	width: 100%;
	margin: 0;

	background-color: var(--citymatic-surface);

	box-sizing: border-box;
}

.sf-citymatic-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;

	gap: 40px;

	width: 100%;
	padding: 48px 52px;

	background:
		linear-gradient(
			155deg,
			var(--color-primary-darker) 0%,
			var(--color-primary) 100%
		);

	border-radius: var(--radius-lg);

	color: var(--color-white);

	box-sizing: border-box;
}


/******************************
  CONTENT
*******************************/

.sf-citymatic-cta__content {
	flex: 1 1 auto;

	min-width: 0;
	max-width: 620px;
}

.sf-citymatic-cta__title {
	margin: 0 0 8px;

	color: var(--color-white);

	font-family: var(--font-family-display);
	font-size: clamp(26px, 2.1vw, 36px);
	font-weight: 600;
	line-height: 1.2;

	letter-spacing: -.01em;
}

.sf-citymatic-cta__description {
	/*max-width: 500px;*/
	margin: 0;

	color: #CFE3DF;

	font-family: var(--font-family);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.65;
}


/******************************
  ACTIONS
*******************************/

.sf-citymatic-cta__actions {
	display: flex;
	flex: 0 0 auto;
	align-items: center;

	gap: 14px;
}

.sf-citymatic-cta__actions .sf-button {
	margin: 0;

	white-space: nowrap;
	text-decoration: none;
}

.sf-citymatic-cta__actions .sf-button:focus-visible {
	outline: 2px solid var(--color-white);
	outline-offset: 4px;
}


/******************************
  RESPONSIVE
*******************************/

@media (max-width: 992px) {

	.sf-citymatic-cta {
		flex-direction: column;
		align-items: flex-start;

		gap: 26px;

		padding: 38px 34px;
	}

	.sf-citymatic-cta__content {
		max-width: 680px;
	}

	.sf-citymatic-cta__actions {
		width: 100%;
	}

}

@media (max-width: 700px) {

	.sf-citymatic-cta__actions {
		flex-direction: column;
		align-items: stretch;

		gap: 12px;
	}

	.sf-citymatic-cta__actions .sf-button {
		width: 100%;

		white-space: normal;
	}

}

@media (max-width: 576px) {

	.sf-citymatic-cta {
		gap: 22px;

		padding: 28px 20px;

		border-radius: var(--radius-md);
	}

	.sf-citymatic-cta__title {
		font-size: 27px;
	}

	.sf-citymatic-cta__description {
		font-size: 15px;
		line-height: 1.6;
	}

}

/* =========================================================
   CATEGORY HERO
   ========================================================= */

.sf-category-hero {
	padding: 3.2rem 0 3.6rem;
	background-color: #ffffff;
	border-bottom: 1px solid #e2e4de;
}

.sf-category-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

.sf-category-hero__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: center;
	gap: 4rem;
}

.sf-category-hero__content {
	min-width: 0;
}

/* Eyebrow */

.sf-category-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

/* Titlu */

.sf-category-hero__title {
	max-width: 640px;
	margin: 0 0 0.7rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.4rem, 3.4vw, 3.4rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Descriere */

.sf-category-hero__description {
	max-width: 640px;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	line-height: 1.6;
}

.sf-category-hero__description p {
	margin: 0;
}

/* Butoane */

.sf-category-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
	margin-top: 1.6rem;
}

.sf-category-hero
.sf-category-hero__actions
a.sf-category-hero__button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0.78rem 1.45rem;
	border: 1px solid transparent;
	border-radius: 4px;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none !important;
	cursor: pointer;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease;
}

/* Buton principal */

.sf-category-hero
.sf-category-hero__actions
a.sf-category-hero__button--primary {
	background-color: #a55d27 !important;
	border-color: #a55d27 !important;
	color: #ffffff !important;
}

.sf-category-hero
.sf-category-hero__actions
a.sf-category-hero__button--primary:hover {
	background-color: #874c20 !important;
	border-color: #874c20 !important;
	color: #ffffff !important;
}

/* Buton secundar */

.sf-category-hero
.sf-category-hero__actions
a.sf-category-hero__button--secondary {
	background-color: transparent !important;
	border: 1px solid #cbcfc7 !important;
	color: #16231f !important;
}

.sf-category-hero
.sf-category-hero__actions
a.sf-category-hero__button--secondary:hover {
	background-color: #f1f2ee !important;
	border-color: #0e5652 !important;
	color: #0e5652 !important;
}

/* Imagine */

.sf-category-hero__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3;
	background-color: #f1f2ee;
	border-radius: 14px;
	box-shadow: 0 20px 48px rgba(15, 33, 30, 0.16);
}

.sf-category-hero__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-category-hero {
		padding: 3rem 0;
	}

	.sf-category-hero__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-category-hero__media {
		max-width: 720px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-category-hero {
		padding: 2.5rem 0;
	}

	.sf-category-hero__grid {
		gap: 2rem;
	}

	.sf-category-hero__title {
		font-size: clamp(2.2rem, 10vw, 2.8rem);
	}

	.sf-category-hero__description {
		font-size: 1rem;
	}

	.sf-category-hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.sf-category-hero
	.sf-category-hero__actions
	a.sf-category-hero__button {
		width: 100%;
	}
}

/******************************************************************
  HOMEPAGE - HERO
******************************************************************/

.sf-citymatic-home-hero {
  width: 100%;

  overflow: hidden;

  background-color: var(--citymatic-surface-2);

  border-bottom: 1px solid var(--color-border);
}


.sf-citymatic-home-hero__inner {
  padding-top: 40px;
  padding-bottom: 40px;
}


/******************************
  HERO GRID
*******************************/

.sf-citymatic-home-hero__grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(0, 1fr);

  gap: 64px;

  align-items: center;
}


.sf-citymatic-home-hero__content,
.sf-citymatic-home-hero__media {
  min-width: 0;
}


/******************************
  EYEBROW
*******************************/

.sf-citymatic-home-hero__eyebrow {
  display: inline-flex;
  align-items: center;

  margin-bottom: 14px;

  color: var(--color-accent-dark);

  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .09em;

  text-transform: uppercase;
}


/******************************
  TITLE
*******************************/

.sf-citymatic-home-hero__title {
  max-width: 620px;

  margin: 0 0 18px;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: clamp(38px, 3.4vw, 54px);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}


/******************************
  LEAD
*******************************/

.sf-citymatic-home-hero__lead {
  max-width: 640px;

  margin: 0;

  color: var(--color-text-light);

  font-size: 17px;
  line-height: 1.65;
}


/******************************
  ACTIONS
*******************************/

.sf-citymatic-home-hero__actions {
  display: flex;
  align-items: center;

  flex-wrap: wrap;

  gap: 16px;

  margin-top: 28px;
}


.sf-citymatic-home-hero__actions
.sf-button svg {
  width: 16px;
  height: 16px;

  flex: 0 0 auto;
}


/******************************
  META
*******************************/

.sf-citymatic-home-hero__meta {
  display: flex;
  align-items: center;

  flex-wrap: wrap;

  gap: 28px;

  margin-top: 34px;
}


.sf-citymatic-home-hero__meta-item {
  display: inline-flex;
  align-items: center;

  gap: 9px;

  color: var(--color-text-light);

  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
}


.sf-citymatic-home-hero__meta-item svg {
  width: 22px;
  height: 22px;

  flex: 0 0 auto;

  color: var(--color-primary);
}


.sf-citymatic-home-hero__meta-item a {
  color: var(--color-text);

  font-weight: 700;

  transition: color var(--transition-fast);
}


.sf-citymatic-home-hero__meta-item a:hover {
  color: var(--color-primary);
}


/******************************
  IMAGE
*******************************/

.sf-citymatic-home-hero__media {
  overflow: hidden;

  aspect-ratio: 4 / 3.1;

  border-radius: var(--radius-lg);

  box-shadow: var(--shadow-lg);
}


.sf-citymatic-home-hero__media img {
  width: 100%;
  height: 100%;

  object-fit: cover;
}


/******************************
  STAT ROW
*******************************/

.sf-citymatic-home-hero__stats {
  display: grid;

  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 1px;

  overflow: hidden;

  margin-top: 40px;

  background-color: var(--color-border);

  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
}


.sf-citymatic-home-hero__stat {
  min-width: 0;

  padding: 26px 22px;

  background-color: var(--citymatic-surface);

  text-align: center;
}


.sf-citymatic-home-hero__stat-number {
  display: block;

  color: var(--color-primary);

  font-family: var(--font-family);
  font-size: 35px;
  font-weight: 800;
  line-height: 1;

  letter-spacing: -.01em;
}


.sf-citymatic-home-hero__stat span {
  display: block;

  margin-top: 8px;

  color: var(--color-text-light);

  font-size: 13px;
  line-height: 1.45;
}


/******************************************************************
  HOMEPAGE HERO - RESPONSIVE
******************************************************************/

@media (max-width: 960px) {

  .sf-citymatic-home-hero__grid {
    grid-template-columns: 1fr;

    gap: 32px;
  }


  .sf-citymatic-home-hero__stats {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

}


@media (max-width: 640px) {

  .sf-citymatic-home-hero__inner {
    padding-top: 28px;
    padding-bottom: 28px;
  }


  .sf-citymatic-home-hero__title {
    font-size: clamp(29px, 7.5vw, 40px);
  }


  .sf-citymatic-home-hero__lead {
    font-size: 16px;
  }


  .sf-citymatic-home-hero__actions {
    align-items: stretch;
    flex-direction: column;

    margin-top: 24px;
  }


  .sf-citymatic-home-hero__actions
  .sf-button {
    width: 100%;
  }


  .sf-citymatic-home-hero__meta {
    align-items: flex-start;
    flex-direction: column;

    gap: 12px;

    margin-top: 26px;
  }


  .sf-citymatic-home-hero__stats {
    margin-top: 28px;
  }


  .sf-citymatic-home-hero__stat {
    padding: 20px 14px;
  }


  .sf-citymatic-home-hero__stat-number {
    font-size: 27px;
  }


  .sf-citymatic-home-hero__stat span {
    font-size: 12px;
  }

}

/******************************************************************
  HOMEPAGE - SOLUTION FINDER
******************************************************************/

.sf-citymatic-home-finder {
  width: 100%;

  background-color: var(--citymatic-surface-2);
}


.sf-citymatic-home-finder__inner {
  padding-top: 40px;
  padding-bottom: 40px;
}


/******************************
  SECTION HEADER
*******************************/

.sf-citymatic-home-finder__head {
  max-width: 680px;

  margin-bottom: 40px;
}


.sf-citymatic-home-finder__eyebrow {
  display: inline-flex;
  align-items: center;

  margin-bottom: 14px;

  color: var(--color-accent-dark);

  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .09em;

  text-transform: uppercase;
}


.sf-citymatic-home-finder__title {
  margin: 0 0 14px;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: clamp(27px, 2.2vw, 37px);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}


.sf-citymatic-home-finder__lead {
  margin: 0;

  color: var(--color-text-light);

  font-size: 17px;
  line-height: 1.65;
}


/******************************
  GRID
*******************************/

.sf-citymatic-home-finder__grid {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 24px;
}


/******************************
  CARD
*******************************/

.sf-citymatic-home-finder__card {
  display: flex;
  flex-direction: column;

  min-width: 0;
  min-height: 100%;

  padding: 30px 26px;

  background-color: var(--citymatic-surface);

  border: 1px solid var(--color-border) !important;
  border-radius: var(--radius-md);

  color: var(--color-text);

  transition:
    border-color var(--transition-fast),
    box-shadow var(--transition-fast),
    transform var(--transition-fast);
}


.sf-citymatic-home-finder__card:hover {
  border-color: var(--color-primary) !important;

  box-shadow: var(--shadow-md);

  transform: translateY(-3px);
}


/******************************
  ICON
*******************************/

.sf-citymatic-home-finder__icon {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 46px;
  height: 46px;

  margin-bottom: 18px;

  background-color: var(--citymatic-primary-tint);

  border-radius: var(--radius-sm);

  color: var(--color-primary);
}


.sf-citymatic-home-finder__icon svg {
  width: 24px;
  height: 24px;

  flex: 0 0 auto;
}


/******************************
  CARD TITLE
*******************************/

.sf-citymatic-home-finder__card-title {
  margin: 0 0 10px;

  color: var(--color-primary-darker);

  font-family: var(--font-family);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}


/******************************
  CARD TEXT
*******************************/

.sf-citymatic-home-finder__card-text {
  flex: 1;

  margin: 0;

  color: var(--color-text-light);

  font-size: 14px;
  line-height: 1.6;
}


/******************************
  CARD LINK
*******************************/

.sf-citymatic-home-finder__card-link {
  display: inline-flex;
  align-items: center;

  gap: 7px;

  margin-top: 20px;

  color: var(--color-primary);

  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
}


.sf-citymatic-home-finder__card-link svg {
  width: 14px;
  height: 14px;

  flex: 0 0 auto;

  transition:
    transform var(--transition-fast);
}


.sf-citymatic-home-finder__card:hover
.sf-citymatic-home-finder__card-link svg {
  transform: translateX(3px);
}


/******************************************************************
  SOLUTION FINDER - RESPONSIVE
******************************************************************/

@media (max-width: 1100px) {

  .sf-citymatic-home-finder__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

}


@media (max-width: 640px) {

  .sf-citymatic-home-finder__inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }


  .sf-citymatic-home-finder__head {
    margin-bottom: 28px;
  }


  .sf-citymatic-home-finder__lead {
    font-size: 16px;
  }


  .sf-citymatic-home-finder__grid {
    grid-template-columns: 1fr;

    gap: 16px;
  }


  .sf-citymatic-home-finder__card {
    padding: 24px 22px;
  }


  .sf-citymatic-home-finder__card-link {
    margin-top: 16px;
  }

}



/* =========================================================
   CATEGORY PRODUCTS
   ========================================================= */

.sf-category-products {
	padding: 5rem 0;
	background: #f7f7f4;
	border-bottom: 1px solid #e2e4de;
}

.sf-category-products .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

.sf-category-products__header {
	max-width: 800px;
	margin-bottom: 2.5rem;
}

.sf-category-products__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-category-products__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-category-products__grid {
	display: grid;
	grid-template-columns: repeat(
		auto-fit,
		minmax(min(100%, 240px), 1fr)
	);
	gap: 1.75rem;
}

/* Card */

.sf-product-card {
	display: flex;
	overflow: hidden;
	flex-direction: column;
	height: 100%;
	min-width: 0;
	background: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	color: #16231f;
	text-decoration: none !important;
	transition:
		box-shadow 180ms ease,
		transform 180ms ease,
		border-color 180ms ease;
}

.sf-product-card:hover {
	border-color: #cbcfc7;
	color: #16231f;
	box-shadow:
		0 14px 32px rgba(15, 33, 30, 0.12);
	transform: translateY(-3px);
}

/* Imagine */

.sf-product-card__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3;
	background: #f1f2ee;
}

.sf-product-card__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 320ms ease;
}

.sf-product-card:hover .sf-product-card__image {
	transform: scale(1.045);
}

/* Conținut */

.sf-product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.6rem;
	padding: 1.4rem 1.5rem 1.6rem;
}

.sf-product-card__tag {
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.sf-product-card__title {
	margin: 0;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.35;
}

.sf-product-card__description {
	flex: 1;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	line-height: 1.6;
}

.sf-product-card__description p {
	margin: 0;
}

.sf-product-card__link {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 0.4rem;
	margin-top: 0.3rem;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-product-card__link svg {
	width: 14px;
	height: 14px;
	flex: 0 0 auto;
	transition: transform 180ms ease;
}

.sf-product-card:hover .sf-product-card__link svg {
	transform: translateX(3px);
}

/* Focus tastatură */

.sf-product-card:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.3);
	outline-offset: 3px;
}

/* Tabletă */

@media (max-width: 1100px) {
	.sf-category-products__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-category-products {
		padding: 3.5rem 0;
	}

	.sf-category-products__header {
		margin-bottom: 2rem;
	}

	.sf-category-products__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-category-products__grid {
		grid-template-columns: 1fr;
		gap: 1.4rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-product-card,
	.sf-product-card__image,
	.sf-product-card__link svg {
		transition: none;
	}
}

/******************************************************************
  HOMEPAGE - WHY CITYMATIC
******************************************************************/

.sf-citymatic-home-why {
  width: 100%;

  background-color: var(--citymatic-bg);
}


.sf-citymatic-home-why__inner {
  padding-top: 40px;
  padding-bottom: 40px;
}


/******************************
  SECTION HEADER
*******************************/

.sf-citymatic-home-why__head {
  max-width: 720px;

  margin-right: auto;
  margin-bottom: 40px;
  margin-left: auto;

  text-align: center;
}


.sf-citymatic-home-why__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 14px;

  color: var(--color-accent-dark);

  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .09em;

  text-transform: uppercase;
}


.sf-citymatic-home-why__title {
  margin: 0 0 14px;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: clamp(27px, 2.2vw, 37px);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}


.sf-citymatic-home-why__lead {
  max-width: 680px;

  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;

  color: var(--color-text-light);

  font-size: 17px;
  line-height: 1.65;
}


/******************************
  FEATURES GRID
*******************************/

.sf-citymatic-home-why__grid {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 24px;
}


/******************************
  FEATURE ITEM
*******************************/

.sf-citymatic-home-why__item {
  display: flex;
  flex-direction: column;

  min-width: 0;
}


/******************************
  ICON
*******************************/

.sf-citymatic-home-why__icon {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 42px;
  height: 42px;

  margin-bottom: 16px;

  background-color: var(--citymatic-primary-tint);

  border-radius: 50%;

  color: var(--color-primary);
}


.sf-citymatic-home-why__icon svg {
  width: 21px;
  height: 21px;

  flex: 0 0 auto;
}


/******************************
  FEATURE TITLE
*******************************/

.sf-citymatic-home-why__item-title {
  margin: 0 0 8px;

  color: var(--color-primary-darker);

  font-family: var(--font-family);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}


/******************************
  FEATURE TEXT
*******************************/

.sf-citymatic-home-why__item-text {
  margin: 0;

  color: var(--color-text-light);

  font-size: 14px;
  line-height: 1.65;
}


/******************************************************************
  WHY CITYMATIC - RESPONSIVE
******************************************************************/

@media (max-width: 960px) {

  .sf-citymatic-home-why__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 32px 24px;
  }

}


@media (max-width: 640px) {

  .sf-citymatic-home-why__inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }


  .sf-citymatic-home-why__head {
    margin-bottom: 28px;
  }


  .sf-citymatic-home-why__lead {
    font-size: 16px;
  }


  .sf-citymatic-home-why__grid {
    grid-template-columns: 1fr;

    gap: 28px;
  }

}

/* =========================================================
   SMART TECHNOLOGY — CUM FUNCTIONEAZA
   ========================================================= */

.sf-smart-function {
	padding: 5rem 0;
	background: #f1f2ee;
	border-bottom: 1px solid #e2e4de;
}

.sf-smart-function .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-smart-function__header {
	max-width: 680px;
	margin-bottom: 2.5rem;
}

.sf-smart-function__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-smart-function__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Coloane */

.sf-smart-function__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 2.5rem;
}

.sf-smart-function__column {
	min-width: 0;
}

.sf-smart-function__subtitle {
	margin: 0 0 1.25rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.4;
}

/* Liste */

.sf-smart-function__list {
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-smart-function__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin: 0;
	padding: 0;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	line-height: 1.6;
}

.sf-smart-function__list li::before {
	display: none;
	content: none;
}

.sf-smart-function__list svg {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	margin-top: 0.2rem;
	color: #0e5652;
}

.sf-smart-function__list span {
	display: block;
	min-width: 0;
}

/* Tabletă și telefon */

@media (max-width: 800px) {
	.sf-smart-function {
		padding: 4rem 0;
	}

	.sf-smart-function__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}
}

@media (max-width: 600px) {
	.sf-smart-function {
		padding: 3.5rem 0;
	}

	.sf-smart-function__header {
		margin-bottom: 2rem;
	}

	.sf-smart-function__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-smart-function__subtitle {
		font-size: 1.05rem;
	}

	.sf-smart-function__list li {
		font-size: 0.9rem;
	}
}


/******************************************************************
  HOMEPAGE - SOLUTIONS
******************************************************************/

.sf-citymatic-home-solutions {
  width: 100%;

  background-color: var(--citymatic-bg);
}


.sf-citymatic-home-solutions__inner {
  padding-top: 40px;
  padding-bottom: 40px;
}


/******************************
  HEADER ROW
*******************************/

.sf-citymatic-home-solutions__head-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  gap: 32px;

  margin-bottom: 40px;
}


.sf-citymatic-home-solutions__head {
  max-width: 680px;
}


.sf-citymatic-home-solutions__eyebrow {
  display: inline-flex;
  align-items: center;

  margin-bottom: 14px;

  color: var(--color-accent-dark);

  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .09em;

  text-transform: uppercase;
}


.sf-citymatic-home-solutions__title {
  margin: 0;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: clamp(27px, 2.2vw, 37px);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}


/******************************
  GRID
*******************************/

.sf-citymatic-home-solutions__grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 28px;
}


/******************************
  CATEGORY CARD
*******************************/

.sf-citymatic-home-solutions__card {
  display: flex;
  flex-direction: column;

  min-width: 0;
  height: 100%;

  overflow: hidden;

  background-color: var(--citymatic-surface);

  border: 1px solid var(--color-border) !important;
  border-radius: var(--radius-md);

  color: var(--color-text);

  transition:
    border-color var(--transition-fast),
    box-shadow var(--transition-fast),
    transform var(--transition-fast);
}


.sf-citymatic-home-solutions__card:hover {
  border-color: var(--color-border-strong) !important;

  box-shadow: var(--shadow-md);

  transform: translateY(-3px);
}


/******************************
  IMAGE
*******************************/

.sf-citymatic-home-solutions__media {
  overflow: hidden;

  aspect-ratio: 4 / 3;

  background-color: var(--citymatic-surface-2);
}


.sf-citymatic-home-solutions__media img {
  width: 100%;
  height: 100%;

  object-fit: cover;

  transition:
    transform var(--transition-base);
}


.sf-citymatic-home-solutions__card:hover
.sf-citymatic-home-solutions__media img {
  transform: scale(1.045);
}


/******************************
  BODY
*******************************/

.sf-citymatic-home-solutions__body {
  display: flex;
  flex: 1;
  flex-direction: column;

  gap: 10px;

  padding: 22px 24px 24px;
}


/******************************
  TAG
*******************************/

.sf-citymatic-home-solutions__tag {
  color: var(--color-primary);

  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .06em;

  text-transform: uppercase;
}


/******************************
  TITLE
*******************************/

.sf-citymatic-home-solutions__card-title {
  margin: 0;

  color: var(--color-primary-darker);

  font-family: var(--font-family);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
}


/******************************
  DESCRIPTION
*******************************/

.sf-citymatic-home-solutions__card-text {
  flex: 1;

  margin: 0;

  color: var(--color-text-light);

  font-size: 14px;
  line-height: 1.6;
}


/******************************
  LINK
*******************************/

.sf-citymatic-home-solutions__card-link {
  display: inline-flex;
  align-items: center;

  gap: 7px;

  margin-top: 4px;

  color: var(--color-primary);

  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
}


.sf-citymatic-home-solutions__card-link svg {
  width: 14px;
  height: 14px;

  flex: 0 0 auto;

  transition:
    transform var(--transition-fast);
}


.sf-citymatic-home-solutions__card:hover
.sf-citymatic-home-solutions__card-link svg {
  transform: translateX(3px);
}


/******************************
  CTA CARD
*******************************/

.sf-citymatic-home-solutions__cta-card {
  display: flex;
  align-items: center;

  min-width: 0;
  min-height: 100%;

  padding: 32px;

  background-color: var(--color-primary);

  border-radius: var(--radius-md);

  color: var(--color-white);
}


.sf-citymatic-home-solutions__cta-body {
  display: flex;
  flex-direction: column;

  align-items: flex-start;

  width: 100%;
}


.sf-citymatic-home-solutions__cta-title {
  margin: 0 0 12px;

  color: var(--color-white);

  font-family: var(--font-family);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
}


.sf-citymatic-home-solutions__cta-text {
  margin: 0;

  color: #CFE3DF;

  font-size: 14px;
  line-height: 1.65;
}


.sf-citymatic-home-solutions__cta-card
.sf-button {
  align-self: flex-start;

  margin-top: 20px;
}


/******************************************************************
  SOLUTIONS - RESPONSIVE
******************************************************************/

@media (max-width: 960px) {

  .sf-citymatic-home-solutions__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

}


@media (max-width: 640px) {

  .sf-citymatic-home-solutions__inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }


  .sf-citymatic-home-solutions__head-row {
    align-items: flex-start;
    flex-direction: column;

    gap: 20px;

    margin-bottom: 28px;
  }


  .sf-citymatic-home-solutions__grid {
    grid-template-columns: 1fr;

    gap: 18px;
  }


  .sf-citymatic-home-solutions__body {
    padding: 20px;
  }


  .sf-citymatic-home-solutions__cta-card {
    padding: 26px 22px;
  }

}

/******************************************************************
  HOMEPAGE - SERVICES
******************************************************************/

.sf-citymatic-home-services {
  width: 100%;

  background-color: var(--color-primary-darker);
  color: #DCEAE7;
}


.sf-citymatic-home-services__inner {
  padding-top: 40px;
  padding-bottom: 40px;
}


/******************************
  GRID
*******************************/

.sf-citymatic-home-services__grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(0, 1fr);

  gap: 64px;

  align-items: center;
}


.sf-citymatic-home-services__content,
.sf-citymatic-home-services__list {
  min-width: 0;
}


/******************************
  LEFT CONTENT
*******************************/

.sf-citymatic-home-services__eyebrow {
  display: inline-flex;
  align-items: center;

  margin-bottom: 14px;

  color: #F3C79A;

  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .09em;

  text-transform: uppercase;
}


.sf-citymatic-home-services__title {
  max-width: 600px;

  margin: 0 0 16px;

  color: var(--color-white);

  font-family: var(--font-family-display);
  font-size: clamp(27px, 2.2vw, 37px);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}


.sf-citymatic-home-services__lead {
  max-width: 620px;

  margin: 0;

  color: #CFE3DF;

  font-size: 17px;
  line-height: 1.65;
}


.sf-citymatic-home-services__button {
  margin-top: 24px;
}


/******************************
  SERVICES LIST
*******************************/

.sf-citymatic-home-services__list {
  display: flex;
  flex-direction: column;

  gap: 24px;
}


/******************************
  SERVICE ITEM
*******************************/

.sf-citymatic-home-services__item {
  display: flex;
  align-items: flex-start;

  gap: 16px;
}


/******************************
  ICON
*******************************/

.sf-citymatic-home-services__icon {
  display: flex;
  align-items: center;
  justify-content: center;

  flex: 0 0 auto;

  width: 42px;
  height: 42px;

  background-color: rgba(255, 255, 255, .12);

  border-radius: 50%;

  color: #F3C79A;
}


.sf-citymatic-home-services__icon svg {
  width: 20px;
  height: 20px;

  flex: 0 0 auto;
}


/******************************
  ITEM CONTENT
*******************************/

.sf-citymatic-home-services__item-content {
  min-width: 0;
}


.sf-citymatic-home-services__item-title {
  margin: 0 0 5px;

  color: var(--color-white);

  font-family: var(--font-family);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}


.sf-citymatic-home-services__item-text {
  margin: 0;

  color: #CFE3DF;

  font-size: 14px;
  line-height: 1.6;
}


/******************************************************************
  SERVICES - RESPONSIVE
******************************************************************/

@media (max-width: 960px) {

  .sf-citymatic-home-services__grid {
    grid-template-columns: 1fr;

    gap: 36px;
  }


  .sf-citymatic-home-services__content {
    max-width: 700px;
  }


  .sf-citymatic-home-services__list {
    max-width: 700px;
  }

}


@media (max-width: 640px) {

  .sf-citymatic-home-services__inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }


  .sf-citymatic-home-services__lead {
    font-size: 16px;
  }


  .sf-citymatic-home-services__list {
    gap: 22px;
  }


  .sf-citymatic-home-services__item {
    gap: 14px;
  }


  .sf-citymatic-home-services__icon {
    width: 40px;
    height: 40px;
  }

}

/******************************************************************
  HOMEPAGE - ACCESSIBILITY
******************************************************************/

.sf-citymatic-home-accessibility {
  width: 100%;

  background-color: var(--citymatic-surface-2);
}


.sf-citymatic-home-accessibility__inner {
  padding-top: 40px;
  padding-bottom: 40px;
}


/******************************
  GRID
*******************************/

.sf-citymatic-home-accessibility__grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(0, 1fr);

  gap: 64px;

  align-items: center;
}


.sf-citymatic-home-accessibility__media,
.sf-citymatic-home-accessibility__content {
  min-width: 0;
}


/******************************
  IMAGE
*******************************/

.sf-citymatic-home-accessibility__media {
  overflow: hidden;

  aspect-ratio: 4 / 3.2;

  border-radius: var(--radius-lg);

  box-shadow: var(--shadow-md);
}


.sf-citymatic-home-accessibility__media img {
  width: 100%;
  height: 100%;

  object-fit: cover;
}


/******************************
  CONTENT
*******************************/

.sf-citymatic-home-accessibility__eyebrow {
  display: inline-flex;
  align-items: center;

  margin-bottom: 14px;

  color: var(--color-accent-dark);

  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .09em;

  text-transform: uppercase;
}


.sf-citymatic-home-accessibility__title {
  margin: 0 0 14px;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: clamp(27px, 2.2vw, 37px);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}


.sf-citymatic-home-accessibility__lead {
  margin: 0;

  color: var(--color-text-light);

  font-size: 17px;
  line-height: 1.65;
}


/******************************
  CHECK LIST
*******************************/

.sf-citymatic-home-accessibility__list {
  display: flex;
  flex-direction: column;

  gap: 14px;

  margin-top: 24px;
}


.sf-citymatic-home-accessibility__list li {
  display: flex;
  align-items: flex-start;

  gap: 12px;

  margin: 0;
  padding: 0;

  color: var(--color-text);

  font-size: 14px;
  line-height: 1.6;
}


.sf-citymatic-home-accessibility__list svg {
  flex: 0 0 auto;

  width: 18px;
  height: 18px;

  margin-top: 3px;

  color: var(--color-primary);
}


/******************************************************************
  ACCESSIBILITY - RESPONSIVE
******************************************************************/

@media (max-width: 960px) {

  .sf-citymatic-home-accessibility__grid {
    grid-template-columns: 1fr;

    gap: 32px;
  }

}


@media (max-width: 640px) {

  .sf-citymatic-home-accessibility__inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }


  .sf-citymatic-home-accessibility__lead {
    font-size: 16px;
  }


  .sf-citymatic-home-accessibility__list {
    margin-top: 20px;
  }

}

/******************************************************************
  HOMEPAGE - SUSTAINABILITY
******************************************************************/

.sf-citymatic-home-sustainability {
  width: 100%;

  background-color: var(--citymatic-bg);
}


.sf-citymatic-home-sustainability__inner {
  padding-top: 40px;
  padding-bottom: 40px;
}


/******************************
  SECTION HEADER
*******************************/

.sf-citymatic-home-sustainability__head {
  max-width: 720px;

  margin-right: auto;
  margin-bottom: 40px;
  margin-left: auto;

  text-align: center;
}


.sf-citymatic-home-sustainability__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 14px;

  color: var(--color-accent-dark);

  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .09em;

  text-transform: uppercase;
}


.sf-citymatic-home-sustainability__title {
  margin: 0;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: clamp(27px, 2.2vw, 37px);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}


/******************************
  GRID
*******************************/

.sf-citymatic-home-sustainability__grid {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 24px;
}


/******************************
  ITEM
*******************************/

.sf-citymatic-home-sustainability__item {
  min-width: 0;

  text-align: center;
}


/******************************
  ICON
*******************************/

.sf-citymatic-home-sustainability__icon {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 46px;
  height: 46px;

  margin: 0 auto 16px;

  background-color: var(--citymatic-primary-tint);

  border-radius: 50%;

  color: var(--color-primary);
}


.sf-citymatic-home-sustainability__icon svg {
  width: 23px;
  height: 23px;

  flex: 0 0 auto;
}


/******************************
  ITEM TITLE
*******************************/

.sf-citymatic-home-sustainability__item-title {
  margin: 0 0 8px;

  color: var(--color-primary-darker);

  font-family: var(--font-family);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}


/******************************
  ITEM TEXT
*******************************/

.sf-citymatic-home-sustainability__item-text {
  margin: 0;

  color: var(--color-text-light);

  font-size: 14px;
  line-height: 1.65;
}


/******************************
  CTA
*******************************/

.sf-citymatic-home-sustainability__footer {
  display: flex;
  justify-content: center;

  margin-top: 32px;
}


.sf-citymatic-home-sustainability__footer
.sf-button {
  gap: 8px;
}


.sf-citymatic-home-sustainability__footer
.sf-button svg {
  width: 15px;
  height: 15px;

  flex: 0 0 auto;

  transition:
    transform var(--transition-fast);
}


.sf-citymatic-home-sustainability__footer
.sf-button:hover svg {
  transform: translateX(3px);
}


/******************************************************************
  SUSTAINABILITY - RESPONSIVE
******************************************************************/

@media (max-width: 960px) {

  .sf-citymatic-home-sustainability__grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 32px 24px;
  }

}


@media (max-width: 640px) {

  .sf-citymatic-home-sustainability__inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }


  .sf-citymatic-home-sustainability__head {
    margin-bottom: 28px;
  }


  .sf-citymatic-home-sustainability__grid {
    grid-template-columns: 1fr;

    gap: 28px;
  }


  .sf-citymatic-home-sustainability__footer {
    margin-top: 28px;
  }

}

/******************************************************************
  HOMEPAGE - FAQ
******************************************************************/

.sf-citymatic-home-faq {
  width: 100%;

  background-color: var(--citymatic-surface-2);
}


.sf-citymatic-home-faq__inner {
  max-width: 920px;

  margin-right: auto;
  margin-left: auto;

  padding-top: 40px;
  padding-bottom: 40px;
}


/******************************
  HEADER
*******************************/

.sf-citymatic-home-faq__head {
  max-width: 720px;

  margin-right: auto;
  margin-bottom: 40px;
  margin-left: auto;

  text-align: center;
}


.sf-citymatic-home-faq__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 14px;

  color: var(--color-accent-dark);

  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;

  letter-spacing: .09em;

  text-transform: uppercase;
}


.sf-citymatic-home-faq__title {
  margin: 0;

  color: var(--color-primary-darker);

  font-family: var(--font-family-display);
  font-size: clamp(27px, 2.2vw, 37px);
  font-weight: 600;
  line-height: 1.15;

  letter-spacing: -.01em;
}


/******************************
  ACCORDION
*******************************/

.sf-citymatic-home-faq__accordion {
  overflow: hidden;

  background-color: var(--citymatic-surface);

  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
}


/******************************
  ITEM
*******************************/

.sf-citymatic-home-faq__item {
  border-bottom: 1px solid var(--color-border);
}


.sf-citymatic-home-faq__item:last-child {
  border-bottom: 0;
}


/******************************
  TRIGGER
*******************************/

.sf-citymatic-home-faq__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 24px;

  width: 100%;

  margin: 0;
  padding: 22px 24px;

  background: transparent;

  border: 0;

  color: var(--color-primary-darker);

  font-family: var(--font-family);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.45;

  text-align: left;

  cursor: pointer;

  transition:
    background-color var(--transition-fast),
    color var(--transition-fast);
}


.sf-citymatic-home-faq__trigger:hover {
  background-color: var(--citymatic-primary-tint);
}


.sf-citymatic-home-faq__trigger:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: -2px;
}


/******************************
  PLUS ICON
*******************************/

.sf-citymatic-home-faq__plus {
  position: relative;

  flex: 0 0 auto;

  width: 20px;
  height: 20px;

  color: var(--color-primary);
}


.sf-citymatic-home-faq__plus::before,
.sf-citymatic-home-faq__plus::after {
  position: absolute;

  top: 50%;
  left: 50%;

  width: 14px;
  height: 2px;

  background-color: currentColor;

  border-radius: 2px;

  content: "";

  transform:
    translate(-50%, -50%);

  transition:
    transform var(--transition-fast);
}


.sf-citymatic-home-faq__plus::after {
  transform:
    translate(-50%, -50%)
    rotate(90deg);
}


.sf-citymatic-home-faq__trigger[aria-expanded="true"]
.sf-citymatic-home-faq__plus::after {
  transform:
    translate(-50%, -50%)
    rotate(0deg);
}


/******************************
  PANEL
*******************************/

.sf-citymatic-home-faq__panel {
  max-height: 0;

  overflow: hidden;

  transition:
    max-height 350ms cubic-bezier(.16, 1, .3, 1);
}


.sf-citymatic-home-faq__panel-inner {
  padding:
    0
    64px
    22px
    24px;
}


.sf-citymatic-home-faq__panel-inner p {
  margin: 0;

  color: var(--color-text-light);

  font-size: 14px;
  line-height: 1.7;
}


.sf-citymatic-home-faq__panel-inner a {
  color: var(--color-primary);

  font-weight: 700;

  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}


.sf-citymatic-home-faq__panel-inner a:hover {
  color: var(--color-primary-dark);
}


/******************************
  OPEN STATE
*******************************/

.sf-citymatic-home-faq__item.is-open
.sf-citymatic-home-faq__trigger {
  color: var(--color-primary);
}


/******************************************************************
  FAQ - RESPONSIVE
******************************************************************/

@media (max-width: 640px) {

  .sf-citymatic-home-faq__inner {
    padding-top: 32px;
    padding-bottom: 32px;
  }


  .sf-citymatic-home-faq__head {
    margin-bottom: 28px;
  }


  .sf-citymatic-home-faq__trigger {
    gap: 18px;

    padding: 19px 18px;

    font-size: 15px;
  }


  .sf-citymatic-home-faq__panel-inner {
    padding:
      0
      48px
      20px
      18px;
  }


  .sf-citymatic-home-faq__panel-inner p {
    font-size: 14px;
  }

}

/* =========================================================
   SMART BENEFITS
   ========================================================= */

.sf-smart-benefits {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-smart-benefits .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-smart-benefits__header {
	max-width: 760px;
	margin: 0 auto 2.5rem;
	text-align: center;
}

.sf-smart-benefits__eyebrow {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-smart-benefits__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Grid */

.sf-smart-benefits__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Card */

.sf-smart-benefits__card {
	height: 100%;
	margin: 0;
	padding: 1.75rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	box-shadow: none;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-smart-benefits__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 14px 32px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-smart-benefits__card-title {
	margin: 0 0 0.75rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-smart-benefits__description {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.65;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-smart-benefits__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-smart-benefits__card:last-child {
		grid-column: 1 / -1;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-smart-benefits {
		padding: 3.5rem 0;
	}

	.sf-smart-benefits__header {
		margin-bottom: 2rem;
	}

	.sf-smart-benefits__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-smart-benefits__grid {
		grid-template-columns: 1fr;
		gap: 1.4rem;
	}

	.sf-smart-benefits__card:last-child {
		grid-column: auto;
	}

	.sf-smart-benefits__card {
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-smart-benefits__card {
		transition: none;
	}
}

/* =========================================================
   PLUS TECHNOLOGY – CUM FUNCTIONEAZA
   ========================================================= */

.sf-plus-operation {
	padding: 5rem 0;
	background-color: #f7f7f4;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-plus-operation .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-plus-operation__header {
	max-width: 720px;
	margin-bottom: 2.5rem;
}

.sf-plus-operation__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-plus-operation__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Coloane */

.sf-plus-operation__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2.5rem;
}

.sf-plus-operation__column {
	min-width: 0;
}

.sf-plus-operation__column-title {
	margin: 0 0 1.4rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.18rem;
	font-weight: 700;
	line-height: 1.4;
}

/* Lista */

.sf-plus-operation__list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-plus-operation__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	font-weight: 400;
	line-height: 1.65;
}

.sf-plus-operation__list svg {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	margin-top: 0.18rem;
	color: #0e5652;
}

.sf-plus-operation__list span {
	display: block;
	min-width: 0;
}

/* Tabletă și telefon */

@media (max-width: 800px) {
	.sf-plus-operation {
		padding: 3.5rem 0;
	}

	.sf-plus-operation__header {
		margin-bottom: 2rem;
	}

	.sf-plus-operation__title {
		font-size: clamp(1.9rem, 8vw, 2.5rem);
	}

	.sf-plus-operation__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}
}

@media (max-width: 480px) {
	.sf-plus-operation__list li {
		gap: 0.65rem;
		font-size: 0.9rem;
	}

	.sf-plus-operation__list svg {
		width: 18px;
		height: 18px;
		flex-basis: 18px;
	}
}

/* =========================================================
   PLUS TECHNOLOGY – INFORMATII SUPLIMENTARE
   ========================================================= */

.sf-plus-information {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-plus-information .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-plus-information__header {
	max-width: 760px;
	margin: 0 auto 2.5rem;
	text-align: center;
}

.sf-plus-information__eyebrow {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-plus-information__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Grid */

.sf-plus-information__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Card */

.sf-plus-information__card {
	height: 100%;
	margin: 0;
	padding: 1.75rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	box-shadow: none;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-plus-information__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 14px 32px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-plus-information__card-title {
	margin: 0 0 0.75rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-plus-information__description {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.65;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-plus-information__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-plus-information__card:last-child {
		grid-column: 1 / -1;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-plus-information {
		padding: 3.5rem 0;
	}

	.sf-plus-information__header {
		margin-bottom: 2rem;
	}

	.sf-plus-information__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-plus-information__grid {
		grid-template-columns: 1fr;
		gap: 1.4rem;
	}

	.sf-plus-information__card:last-child {
		grid-column: auto;
	}

	.sf-plus-information__card {
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-plus-information__card {
		transition: none;
	}
}

/* =========================================================
   TOALETE PREFABRICATE – DESIGN SI FLEXIBILITATE
   ========================================================= */

.sf-prefabricated-design {
	padding: 5rem 0;
	background-color: #f7f7f4;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-prefabricated-design .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-prefabricated-design__header {
	max-width: 800px;
	margin: 0 auto 2.5rem;
	text-align: center;
}

.sf-prefabricated-design__eyebrow {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-prefabricated-design__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Grid */

.sf-prefabricated-design__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Card */

.sf-prefabricated-design__card {
	height: 100%;
	margin: 0;
	padding: 1.75rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	box-shadow: none;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-prefabricated-design__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 14px 32px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-prefabricated-design__card-title {
	margin: 0 0 0.75rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-prefabricated-design__description {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.65;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-prefabricated-design__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-prefabricated-design__card:last-child {
		grid-column: 1 / -1;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-prefabricated-design {
		padding: 3.5rem 0;
	}

	.sf-prefabricated-design__header {
		margin-bottom: 2rem;
	}

	.sf-prefabricated-design__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-prefabricated-design__grid {
		grid-template-columns: 1fr;
		gap: 1.4rem;
	}

	.sf-prefabricated-design__card:last-child {
		grid-column: auto;
	}

	.sf-prefabricated-design__card {
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-prefabricated-design__card {
		transition: none;
	}
}

/* =========================================================
   TOALETE ECOLOGICE – DOTARI, DIMENSIUNI SI AVANTAJE
   ========================================================= */

.sf-eco-specifications {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-eco-specifications .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   STRUCTURA PRINCIPALA
   ========================================================= */

.sf-eco-specifications__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 4rem;
}

.sf-eco-specifications__column {
	min-width: 0;
}

.sf-eco-specifications__title {
	margin: 0 0 1.5rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.4;
}

/* =========================================================
   LISTA DE DOTARI
   ========================================================= */

.sf-eco-specifications__list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-eco-specifications__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	font-weight: 400;
	line-height: 1.65;
}

.sf-eco-specifications__list svg {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	margin-top: 0.18rem;
	color: #0e5652;
}

.sf-eco-specifications__list span {
	display: block;
	min-width: 0;
}

/* =========================================================
   TABEL DIMENSIUNI
   ========================================================= */

.sf-eco-specifications__table-wrapper {
	overflow: hidden;
	width: 100%;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
}

.sf-eco-specifications__table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	font-family: "Manrope", sans-serif;
}

.sf-eco-specifications__table th,
.sf-eco-specifications__table td {
	padding: 1rem 1.25rem;
	border: 0;
	border-bottom: 1px solid #e2e4de;
	font-size: 0.94rem;
	line-height: 1.5;
	text-align: left;
	vertical-align: middle;
}

.sf-eco-specifications__table tr:last-child th,
.sf-eco-specifications__table tr:last-child td {
	border-bottom: 0;
}

.sf-eco-specifications__table th {
	width: 55%;
	background-color: #f7f7f4;
	color: #16231f;
	font-weight: 700;
}

.sf-eco-specifications__table td {
	background-color: #ffffff;
	color: #5b6864;
	font-weight: 500;
}

/* =========================================================
   AVANTAJE
   ========================================================= */

.sf-eco-specifications__advantages {
	display: grid;
	overflow: hidden;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	margin-top: 4rem;
	padding: 1px;
	background-color: #e2e4de;
	border-radius: 8px;
}

.sf-eco-specifications__advantage {
	min-width: 0;
	margin: 0;
	padding: 1.75rem;
	background-color: #f7f7f4;
}

.sf-eco-specifications__advantage svg {
	display: block;
	width: 32px;
	height: 32px;
	margin-bottom: 1.2rem;
	color: #874c20;
}

.sf-eco-specifications__advantage h4 {
	margin: 0 0 0.65rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-eco-specifications__advantage p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.6;
}

/* =========================================================
   TABLETA
   ========================================================= */

@media (max-width: 900px) {
	.sf-eco-specifications__grid {
		gap: 2.5rem;
	}

	.sf-eco-specifications__advantages {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 800px) {
	.sf-eco-specifications {
		padding: 3.5rem 0;
	}

	.sf-eco-specifications__grid {
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.sf-eco-specifications__advantages {
		margin-top: 3rem;
	}
}

/* =========================================================
   TELEFON
   ========================================================= */

@media (max-width: 600px) {
	.sf-eco-specifications__advantages {
		grid-template-columns: 1fr;
	}

	.sf-eco-specifications__advantage {
		padding: 1.5rem;
	}
}

@media (max-width: 480px) {
	.sf-eco-specifications__list li {
		gap: 0.65rem;
		font-size: 0.9rem;
	}

	.sf-eco-specifications__list svg {
		width: 18px;
		height: 18px;
		flex-basis: 18px;
	}

	.sf-eco-specifications__table th,
	.sf-eco-specifications__table td {
		padding: 0.85rem 1rem;
		font-size: 0.88rem;
	}

	.sf-eco-specifications__table th {
		width: 58%;
	}
}

/* =========================================================
   TOALETE ECOLOGICE – UNDE SE POT FOLOSI
   ========================================================= */

.sf-eco-uses {
	padding: 5rem 0;
	background-color: #f7f7f4;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-uses .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-eco-uses__header {
	max-width: 760px;
	margin-bottom: 2.5rem;
}

.sf-eco-uses__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-uses__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Grid */

.sf-eco-uses__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Card */

.sf-eco-uses__card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-width: 0;
	margin: 0;
	padding: 1.75rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-eco-uses__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 14px 32px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-eco-uses__card h3 {
	margin: 0 0 0.75rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-eco-uses__card p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.65;
}

/* Card CTA */

.sf-eco-uses__card--cta {
	background-color: #0e5652;
	border-color: #0e5652;
}

.sf-eco-uses__card--cta:hover {
	border-color: #0e5652;
	box-shadow: 0 14px 32px rgba(8, 47, 45, 0.2);
}

.sf-eco-uses__card--cta h3 {
	color: #ffffff;
}

.sf-eco-uses__card--cta p {
	margin-bottom: 1.5rem;
	color: #cfe3df;
}

.sf-eco-uses__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: flex-start;
	margin-top: auto;
	padding: 0.8rem 1.15rem;
	background-color: #aa5c22;
	border: 1px solid #aa5c22;
	border-radius: 4px;
	color: #ffffff !important;
	font-family: "Manrope", sans-serif;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none !important;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		transform 180ms ease;
}

.sf-eco-uses__button:hover {
	background-color: #874c20;
	border-color: #874c20;
	color: #ffffff !important;
	transform: translateY(-1px);
}

.sf-eco-uses__button:focus-visible {
	outline: 3px solid rgba(255, 255, 255, 0.5);
	outline-offset: 3px;
}

/* Tabletă */

@media (max-width: 1100px) {
	.sf-eco-uses__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-eco-uses {
		padding: 3.5rem 0;
	}

	.sf-eco-uses__header {
		margin-bottom: 2rem;
	}

	.sf-eco-uses__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-eco-uses__grid {
		grid-template-columns: 1fr;
		gap: 1.4rem;
	}

	.sf-eco-uses__card {
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-eco-uses__card,
	.sf-eco-uses__button {
		transition: none;
	}
}

/* =========================================================
   TOALETE ECOLOGICE – VANZARE SAU INCHIRIERE
   ========================================================= */

.sf-eco-collaboration {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-eco-collaboration .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-eco-collaboration__header {
	max-width: 760px;
	margin: 0 auto 2.5rem;
	text-align: center;
}

.sf-eco-collaboration__eyebrow {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-collaboration__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Grid */

.sf-eco-collaboration__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Card */

.sf-eco-collaboration__card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-width: 0;
	margin: 0;
	padding: 2rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-eco-collaboration__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 14px 32px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-eco-collaboration__card-title {
	margin: 0 0 0.75rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.18rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-eco-collaboration__description {
	margin: 0 0 1.5rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	font-weight: 400;
	line-height: 1.65;
}

/* Buton */

.sf-eco-collaboration__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: flex-start;
	margin-top: auto;
	padding: 0.78rem 1.15rem;
	background-color: transparent;
	border: 1px solid #0e5652 !important;
	border-radius: 4px;
	color: #0e5652 !important;
	font-family: "Manrope", sans-serif;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none !important;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.sf-eco-collaboration__button:hover {
	background-color: #0e5652;
	border-color: #0e5652;
	color: #ffffff !important;
	transform: translateY(-1px);
}

.sf-eco-collaboration__button:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.3);
	outline-offset: 3px;
}

/* Telefon */

@media (max-width: 700px) {
	.sf-eco-collaboration {
		padding: 3.5rem 0;
	}

	.sf-eco-collaboration__header {
		margin-bottom: 2rem;
	}

	.sf-eco-collaboration__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-eco-collaboration__grid {
		grid-template-columns: 1fr;
		gap: 1.4rem;
	}

	.sf-eco-collaboration__card {
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-eco-collaboration__card,
	.sf-eco-collaboration__button {
		transition: none;
	}
}

/* =========================================================
   TOALETE ECOLOGICE – FAQ
   ========================================================= */

.sf-eco-faq {
	padding: 5rem 0;
	background-color: #f7f7f4;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-faq__container {
	width: 100%;
	max-width: 920px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-eco-faq__header {
	max-width: 720px;
	margin-bottom: 2.5rem;
}

.sf-eco-faq__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-faq__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Accordion */

.sf-eco-faq__accordion {
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
}

.sf-eco-faq__item {
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-faq__item:last-child {
	border-bottom: 0;
}

.sf-eco-faq__question {
	margin: 0;
	padding: 0;
	font-family: "Manrope", sans-serif;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
}

.sf-eco-faq__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	width: 100%;
	margin: 0;
	padding: 1.35rem 1.5rem;
	background: transparent;
	border: 0;
	border-radius: 0;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: left;
	cursor: pointer;
	transition:
		background-color 180ms ease,
		color 180ms ease;
}

.sf-eco-faq__trigger:hover {
	background-color: #fafaf8;
	color: #0e5652;
}

.sf-eco-faq__trigger:focus-visible {
	position: relative;
	z-index: 1;
	outline: 3px solid rgba(14, 86, 82, 0.3);
	outline-offset: -3px;
}

/* Icon plus/minus */

.sf-eco-faq__icon {
	position: relative;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	color: #0e5652;
}

.sf-eco-faq__icon::before,
.sf-eco-faq__icon::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 2px;
	background-color: currentColor;
	border-radius: 2px;
	content: "";
	transform: translate(-50%, -50%);
	transition: transform 180ms ease;
}

.sf-eco-faq__icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.sf-eco-faq__item.is-open .sf-eco-faq__icon::after {
	transform: translate(-50%, -50%) rotate(0);
}

.sf-eco-faq__item.is-open .sf-eco-faq__trigger {
	background-color: #fafaf8;
	color: #0e5652;
}

/* Răspuns */

.sf-eco-faq__panel {
	display: grid;
	grid-template-rows: 0fr;
	visibility: hidden;
	transition:
		grid-template-rows 260ms ease,
		visibility 260ms ease;
}

.sf-eco-faq__item.is-open .sf-eco-faq__panel {
	grid-template-rows: 1fr;
	visibility: visible;
}

.sf-eco-faq__panel-inner {
	overflow: hidden;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.7;
}

.sf-eco-faq__panel-inner p {
	margin: 0;
	padding: 1.5rem 1.5rem;
}

.sf-eco-faq__panel-inner a {
	color: #0e5652;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.sf-eco-faq__panel-inner a:hover {
	color: #874c20;
}

/* Telefon */

@media (max-width: 600px) {
	.sf-eco-faq {
		padding: 3.5rem 0;
	}

	.sf-eco-faq__header {
		margin-bottom: 2rem;
	}

	.sf-eco-faq__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-eco-faq__trigger {
		gap: 1rem;
		padding: 1.15rem 1.2rem;
		font-size: 0.94rem;
	}

	.sf-eco-faq__panel-inner {
		font-size: 0.9rem;
	}

	.sf-eco-faq__panel-inner p {
		padding: 1.25rem 1.2rem;
	}

}

@media (prefers-reduced-motion: reduce) {
	.sf-eco-faq__trigger,
	.sf-eco-faq__icon::before,
	.sf-eco-faq__icon::after,
	.sf-eco-faq__panel {
		transition: none;
	}
}

/* =========================================================
   TOALETE AUTOMATE – INTRODUCERE
   ========================================================= */

.sf-automatic-intro {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-automatic-intro .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-automatic-intro__header {
	max-width: 760px;
	margin-bottom: 2.75rem;
}

.sf-automatic-intro__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-automatic-intro__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-automatic-intro__lead {
	margin: 1.25rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

/* Avantaje */

.sf-automatic-intro__advantages {
	display: grid;
	overflow: hidden;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	padding: 1px;
	background-color: #e2e4de;
	border-radius: 8px;
}

.sf-automatic-intro__advantage {
	min-width: 0;
	margin: 0;
	padding: 1.75rem;
	background-color: #f7f7f4;
}

.sf-automatic-intro__advantage svg {
	display: block;
	width: 32px;
	height: 32px;
	margin-bottom: 1.2rem;
	color: #874c20;
}

.sf-automatic-intro__advantage h3 {
	margin: 0 0 0.65rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-automatic-intro__advantage p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.6;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-automatic-intro__advantages {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-automatic-intro {
		padding: 3.5rem 0;
	}

	.sf-automatic-intro__header {
		margin-bottom: 2rem;
	}

	.sf-automatic-intro__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-automatic-intro__lead {
		font-size: 0.95rem;
	}

	.sf-automatic-intro__advantages {
		grid-template-columns: 1fr;
	}

	.sf-automatic-intro__advantage {
		padding: 1.5rem;
	}
}

/* =========================================================
   TOALETE AUTOMATE – UNDE SE INSTALEAZA
   ========================================================= */

.sf-automatic-locations {
	padding: 5rem 0;
	background-color: #f7f7f4;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-automatic-locations .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Structura */

.sf-automatic-locations__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: clamp(3rem, 6vw, 5rem);
}

/* Imagine */

.sf-automatic-locations__media {
	overflow: hidden;
	aspect-ratio: 4 / 3.2;
	background-color: #e2e4de;
	border-radius: 12px;
	box-shadow: 0 18px 45px rgba(15, 33, 30, 0.14);
}

.sf-automatic-locations__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 450ms ease;
}

.sf-automatic-locations__media:hover img {
	transform: scale(1.025);
}

/* Continut */

.sf-automatic-locations__content {
	min-width: 0;
}

.sf-automatic-locations__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-automatic-locations__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-automatic-locations__lead {
	margin: 1.25rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

/* Lista */

.sf-automatic-locations__list {
	display: grid;
	gap: 0.9rem;
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}

.sf-automatic-locations__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin: 0;
	color: #273733;
	font-family: "Manrope", sans-serif;
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.55;
}

.sf-automatic-locations__list svg {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	margin-top: 0.15rem;
	color: #874c20;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* Tableta */

@media (max-width: 900px) {
	.sf-automatic-locations__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-automatic-locations__media {
		max-width: 720px;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-automatic-locations {
		padding: 3.5rem 0;
	}

	.sf-automatic-locations__grid {
		gap: 2rem;
	}

	.sf-automatic-locations__media {
		aspect-ratio: 4 / 3;
		border-radius: 8px;
	}

	.sf-automatic-locations__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-automatic-locations__lead {
		font-size: 0.95rem;
	}

	.sf-automatic-locations__list {
		margin-top: 1.3rem;
	}

	.sf-automatic-locations__list li {
		font-size: 0.92rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-automatic-locations__media img {
		transition: none;
	}
}

/* =========================================================
   TOALETE AUTOMATE – FAQ
   ========================================================= */

.sf-automatic-faq {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-automatic-faq__container {
	width: 100%;
	max-width: 920px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-automatic-faq__header {
	max-width: 720px;
	margin-bottom: 2.5rem;
}

.sf-automatic-faq__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-automatic-faq__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Accordion */

.sf-automatic-faq__accordion {
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
}

.sf-automatic-faq__item {
	border-bottom: 1px solid #e2e4de;
}

.sf-automatic-faq__item:last-child {
	border-bottom: 0;
}

.sf-automatic-faq__question {
	margin: 0;
	padding: 0;
	font-family: "Manrope", sans-serif;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
}

.sf-automatic-faq__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	width: 100%;
	margin: 0;
	padding: 1.35rem 1.5rem;
	background-color: transparent;
	border: 0;
	border-radius: 0;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: left;
	cursor: pointer;
	transition:
		background-color 180ms ease,
		color 180ms ease;
}

.sf-automatic-faq__trigger:hover {
	background-color: #fafaf8;
	color: #0e5652;
}

.sf-automatic-faq__trigger:focus-visible {
	position: relative;
	z-index: 1;
	outline: 3px solid rgba(14, 86, 82, 0.3);
	outline-offset: -3px;
}

/* Icon plus/minus */

.sf-automatic-faq__icon {
	position: relative;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	color: #0e5652;
}

.sf-automatic-faq__icon::before,
.sf-automatic-faq__icon::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 2px;
	background-color: currentColor;
	border-radius: 2px;
	content: "";
	transform: translate(-50%, -50%);
	transition: transform 180ms ease;
}

.sf-automatic-faq__icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.sf-automatic-faq__item.is-open .sf-automatic-faq__icon::after {
	transform: translate(-50%, -50%) rotate(0);
}

.sf-automatic-faq__item.is-open .sf-automatic-faq__trigger {
	background-color: #fafaf8;
	color: #0e5652;
}

/* Raspuns */

.sf-automatic-faq__panel {
	display: grid;
	grid-template-rows: 0fr;
	visibility: hidden;
	background-color: #ffffff;
	transition:
		grid-template-rows 260ms ease,
		visibility 260ms ease;
}

.sf-automatic-faq__item.is-open .sf-automatic-faq__panel {
	grid-template-rows: 1fr;
	visibility: visible;
}

.sf-automatic-faq__panel-inner {
	overflow: hidden;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.7;
}

.sf-automatic-faq__panel-inner p {
	margin: 0;
	padding: 1.5rem;
}

.sf-automatic-faq__panel-inner a {
	color: #0e5652;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.sf-automatic-faq__panel-inner a:hover {
	color: #874c20;
}

.sf-automatic-faq__panel-inner a:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.3);
	outline-offset: 3px;
}

/* Telefon */

@media (max-width: 600px) {
	.sf-automatic-faq {
		padding: 3.5rem 0;
	}

	.sf-automatic-faq__header {
		margin-bottom: 2rem;
	}

	.sf-automatic-faq__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-automatic-faq__trigger {
		gap: 1rem;
		padding: 1.15rem 1.2rem;
		font-size: 0.94rem;
	}

	.sf-automatic-faq__panel-inner {
		font-size: 0.9rem;
	}

	.sf-automatic-faq__panel-inner p {
		padding: 1.25rem 1.2rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-automatic-faq__trigger,
	.sf-automatic-faq__icon::before,
	.sf-automatic-faq__icon::after,
	.sf-automatic-faq__panel {
		transition: none;
	}
}

/* =========================================================
   LISTARE SUBCATEGORII – NOTA SAM
   ========================================================= */

.sf-category-products__note {
	margin: 1.5rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.88rem;
	font-weight: 400;
	line-height: 1.65;
}

.sf-category-products__note a {
	color: #0e5652;
	font-weight: 700;
	text-decoration: none;
}

.sf-category-products__note a:hover {
	color: #874c20;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.sf-category-products__note a:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.3);
	outline-offset: 3px;
}

/* =========================================================
   TOATE TOALETELE AUTOMATE – MAXIMUM 3 PE RAND
   ========================================================= */

.sf-category-products--combined {
	background-color: #ffffff;
	border-top: 0;
	border-bottom: 0;
}

.sf-category-products--combined .sf-category-products__grid {
	grid-template-columns: repeat(
		auto-fit,
		minmax(min(100%, 320px), 1fr)
	);
}

/* Maximum două coloane pe tabletă */

@media (max-width: 1100px) {
	.sf-category-products--combined .sf-category-products__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* O singură coloană pe telefon */

@media (max-width: 600px) {
	.sf-category-products--combined .sf-category-products__grid {
		grid-template-columns: 1fr;
	}
}

/* =========================================================
   TOATE TOALETELE AUTOMATE – CARD COMPLET DELIMITAT
   ========================================================= */

.sf-category-products--combined .sf-product-card {
	display: flex;
	overflow: hidden;
	flex-direction: column;
	height: 100%;
	min-width: 0;
	background-color: #ffffff;
	border: 1px solid #dfe2dc;
	border-radius: 8px;
	color: #16231f;
	text-decoration: none !important;
	box-shadow: none;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-category-products--combined .sf-product-card:hover {
	border-color: #c7ccc4;
	color: #16231f;
	box-shadow: 0 14px 32px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

/* Imaginea rămâne în interiorul conturului cardului */

.sf-category-products--combined .sf-product-card__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3;
	background-color: #f1f2ee;
	border-radius: 0;
}

.sf-category-products--combined .sf-product-card__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0;
	transition: transform 320ms ease;
}

.sf-category-products--combined
	.sf-product-card:hover
	.sf-product-card__image {
	transform: scale(1.045);
}

/* Conținutul formează partea inferioară a aceluiași card */

.sf-category-products--combined .sf-product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.6rem;
	padding: 1.5rem 1.75rem 1.75rem;
	background-color: #ffffff;
}

.sf-category-products--combined .sf-product-card__tag {
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.sf-category-products--combined .sf-product-card__title {
	margin: 0;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.35;
}

.sf-category-products--combined .sf-product-card__description {
	flex: 1;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	line-height: 1.6;
}

.sf-category-products--combined .sf-product-card__description p {
	margin: 0;
}

.sf-category-products--combined .sf-product-card__link {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 0.4rem;
	margin-top: 0.4rem;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-category-products--combined .sf-product-card__link svg {
	width: 14px;
	height: 14px;
	flex: 0 0 auto;
	transition: transform 180ms ease;
}

.sf-category-products--combined
	.sf-product-card:hover
	.sf-product-card__link svg {
	transform: translateX(3px);
}

.sf-category-products--combined .sf-product-card:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.3);
	outline-offset: 3px;
}

/* Telefon */

@media (max-width: 600px) {
	.sf-category-products--combined .sf-product-card__body {
		padding: 1.4rem 1.5rem 1.6rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-category-products--combined .sf-product-card,
	.sf-category-products--combined .sf-product-card__image,
	.sf-category-products--combined .sf-product-card__link svg {
		transition: none;
	}
}


/* =========================================================
   PROIECTE SPECIALE – HERO
   ========================================================= */

.sf-special-projects-hero {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-special-projects-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Structură */

.sf-special-projects-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: 4rem;
}

.sf-special-projects-hero__content {
	min-width: 0;
}

/* Conținut */

.sf-special-projects-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-special-projects-hero__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.4rem, 4vw, 4rem);
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.sf-special-projects-hero__lead {
	margin: 1.25rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

/* Buton */

.sf-special-projects-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 1.6rem;
}

.sf-special-projects-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.85rem 1.25rem;
	background-color: #aa5c22;
	border: 1px solid #aa5c22;
	border-radius: 4px;
	color: #ffffff !important;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none !important;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-special-projects-hero__button:hover {
	background-color: #874c20;
	border-color: #874c20;
	color: #ffffff !important;
	box-shadow: 0 8px 20px rgba(135, 76, 32, 0.2);
	transform: translateY(-1px);
}

.sf-special-projects-hero__button:focus-visible {
	outline: 3px solid rgba(135, 76, 32, 0.3);
	outline-offset: 3px;
}

/* Imagine */

.sf-special-projects-hero__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3;
	background-color: #f1f2ee;
	border-radius: 12px;
	box-shadow: 0 18px 45px rgba(15, 33, 30, 0.14);
}

.sf-special-projects-hero__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-special-projects-hero__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-special-projects-hero__content {
		max-width: 760px;
	}

	.sf-special-projects-hero__media {
		max-width: 760px;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-special-projects-hero {
		padding: 3.5rem 0;
	}

	.sf-special-projects-hero__title {
		font-size: clamp(2.2rem, 11vw, 3rem);
	}

	.sf-special-projects-hero__lead {
		font-size: 0.95rem;
	}

	.sf-special-projects-hero__media {
		border-radius: 8px;
	}

	.sf-special-projects-hero__button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-special-projects-hero__button {
		transition: none;
	}
}

/******************************
  CITYMATIC — PROIECTE SPECIALE
*******************************/

.wp-block-lazyblock-df-proiecte-speciale {
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 0;
}


.sf-citymatic-special-projects {
  width: 100%;
  margin: 0;
  padding: 0;

  background-color: var(--color-bg);

  box-sizing: border-box;
}


.sf-citymatic-special-projects__inner {
  width: 100%;
  padding-top: 40px;
  padding-bottom: 40px;

  box-sizing: border-box;
}


.sf-citymatic-special-projects__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));

  /*
   * Toate rândurile primesc aceeași înălțime.
   */
  grid-auto-rows: 1fr;

  gap: 28px;

  align-items: stretch;
}


/******************************
  CARD PROIECT SPECIAL
*******************************/

.sf-citymatic-special-project {
  display: flex;
  flex-direction: column;

  min-width: 0;
  height: 100%;
  margin: 0;

  overflow: hidden;

  background-color: var(--citymatic-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);

  box-sizing: border-box;

  transition:
    border-color var(--transition-base),
    box-shadow var(--transition-base),
    transform var(--transition-base);
}


.sf-citymatic-special-project:hover {
  border-color: var(--color-border-strong);

  box-shadow: var(--shadow-md);

  transform: translateY(-3px);
}


/*
 * Imaginea are aceeași proporție pe toate cardurile,
 * indiferent de dimensiunea fișierului încărcat.
 */
.sf-citymatic-special-project__media {
  flex: 0 0 auto;

  width: 100%;
  aspect-ratio: 4 / 3;

  overflow: hidden;

  background-color: var(--citymatic-surface-2);
}


.sf-citymatic-special-project__image {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;

  transition: transform var(--transition-base);
}


.sf-citymatic-special-project:hover
.sf-citymatic-special-project__image {
  transform: scale(1.035);
}


/*
 * Corpul ocupă tot spațiul rămas.
 */
.sf-citymatic-special-project__body {
  display: flex;
  flex: 1;
  flex-direction: column;

  padding: 22px 24px 25px;

  box-sizing: border-box;
}


.sf-citymatic-special-project__title {
  margin: 0 0 10px;

  color: var(--color-primary-darker);

  font-family: var(--font-family);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
}


.sf-citymatic-special-project__description {
  flex: 1;

  color: var(--color-text-light);

  font-family: var(--font-family);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
}


.sf-citymatic-special-project__description p {
  margin: 0;
}


.sf-citymatic-special-project__description p + p {
  margin-top: 10px;
}


/******************************
  RESPONSIVE
*******************************/

@media (max-width: 767px) {

  .sf-citymatic-special-projects__grid {
    grid-template-columns: 1fr;

    /*
     * Pe mobil nu forțăm toate cardurile să aibă
     * înălțimea celui mai lung.
     */
    grid-auto-rows: auto;

    gap: 20px;
  }


  .sf-citymatic-special-project__body {
    padding: 20px;
  }
}

/* =========================================================
   SERVICII CITYMATIC – HERO
   ========================================================= */

.sf-services-hero {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-services-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Structură */

.sf-services-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: 4rem;
}

.sf-services-hero__content {
	min-width: 0;
}

/* Conținut */

.sf-services-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-services-hero__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.4rem, 4vw, 4rem);
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.sf-services-hero__lead {
	margin: 1.25rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

/* Buton */

.sf-services-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 1.6rem;
}

.sf-services-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.85rem 1.25rem;
	background-color: #aa5c22;
	border: 1px solid #aa5c22;
	border-radius: 4px;
	color: #ffffff !important;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none !important;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-services-hero__button:hover {
	background-color: #874c20;
	border-color: #874c20;
	color: #ffffff !important;
	box-shadow: 0 8px 20px rgba(135, 76, 32, 0.2);
	transform: translateY(-1px);
}

.sf-services-hero__button:focus-visible {
	outline: 3px solid rgba(135, 76, 32, 0.3);
	outline-offset: 3px;
}

/* Imagine */

.sf-services-hero__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3;
	background-color: #f1f2ee;
	border-radius: 12px;
	box-shadow: 0 18px 45px rgba(15, 33, 30, 0.14);
}

.sf-services-hero__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-services-hero__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-services-hero__content,
	.sf-services-hero__media {
		max-width: 760px;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-services-hero {
		padding: 3.5rem 0;
	}

	.sf-services-hero__title {
		font-size: clamp(2.2rem, 11vw, 3rem);
	}

	.sf-services-hero__lead {
		font-size: 0.95rem;
	}

	.sf-services-hero__media {
		border-radius: 8px;
	}

	.sf-services-hero__button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-services-hero__button {
		transition: none;
	}
}

/* =========================================================
   SERVICII CITYMATIC – VANZARE
   ========================================================= */

.sf-services-sale {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-services-sale .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Structură */

.sf-services-sale__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: 4rem;
}

.sf-services-sale__content,
.sf-services-sale__media {
	min-width: 0;
}

/* Imagine */

.sf-services-sale__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3.1;
	background-color: #f1f2ee;
	border-radius: 12px;
	box-shadow: 0 12px 32px rgba(15, 33, 30, 0.12);
}

.sf-services-sale__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Conținut */

.sf-services-sale__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-services-sale__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-services-sale__lead {
	margin: 1.2rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

/* Listă */

.sf-services-sale__list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}

.sf-services-sale__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	font-weight: 400;
	line-height: 1.65;
}

.sf-services-sale__list svg {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	margin-top: 0.18rem;
	color: #0e5652;
}

.sf-services-sale__list span {
	display: block;
	min-width: 0;
}

.sf-services-sale__list strong {
	color: #16231f;
	font-weight: 700;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-services-sale__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-services-sale__media,
	.sf-services-sale__content {
		max-width: 760px;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-services-sale {
		padding: 3.5rem 0;
	}

	.sf-services-sale__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-services-sale__lead {
		font-size: 0.95rem;
	}

	.sf-services-sale__media {
		border-radius: 8px;
	}

	.sf-services-sale__list li {
		gap: 0.65rem;
		font-size: 0.9rem;
	}

	.sf-services-sale__list svg {
		width: 18px;
		height: 18px;
		flex-basis: 18px;
	}
}

/* =========================================================
   SERVICII CITYMATIC – GESTIONARE SI MENTENANTA
   ========================================================= */

.sf-services-maintenance {
	padding: 5rem 0;
	background-color: #f7f7f4;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-services-maintenance .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Structură */

.sf-services-maintenance__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: 4rem;
}

.sf-services-maintenance__content,
.sf-services-maintenance__features {
	min-width: 0;
}

/* Conținut */

.sf-services-maintenance__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-services-maintenance__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-services-maintenance__lead {
	margin: 1.2rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

.sf-services-maintenance__text {
	margin: 1rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	font-weight: 400;
	line-height: 1.7;
}

/* Listă facilități */

.sf-services-maintenance__features {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.sf-services-maintenance__feature {
	display: flex;
	align-items: flex-start;
	gap: 1.1rem;
	margin: 0;
	padding: 1.35rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-services-maintenance__feature:hover {
	border-color: #cbcfc7;
	box-shadow: 0 10px 24px rgba(15, 33, 30, 0.08);
	transform: translateY(-2px);
}

/* Icon */

.sf-services-maintenance__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	background-color: #edf5f3;
	border-radius: 50%;
	color: #0e5652;
}

.sf-services-maintenance__icon svg {
	width: 23px;
	height: 23px;
}

/* Text facilitate */

.sf-services-maintenance__feature-content {
	min-width: 0;
}

.sf-services-maintenance__feature-content h3 {
	margin: 0 0 0.35rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-services-maintenance__feature-content p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.6;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-services-maintenance__grid {
		grid-template-columns: 1fr;
		align-items: start;
		gap: 2.5rem;
	}

	.sf-services-maintenance__content,
	.sf-services-maintenance__features {
		max-width: 760px;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-services-maintenance {
		padding: 3.5rem 0;
	}

	.sf-services-maintenance__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-services-maintenance__lead {
		font-size: 0.95rem;
	}

	.sf-services-maintenance__feature {
		gap: 0.9rem;
		padding: 1.2rem;
	}

	.sf-services-maintenance__icon {
		width: 40px;
		height: 40px;
		flex-basis: 40px;
	}

	.sf-services-maintenance__icon svg {
		width: 21px;
		height: 21px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-services-maintenance__feature {
		transition: none;
	}
}

/* =========================================================
   SERVICII CITYMATIC – CALITATE SI GARANTII
   ========================================================= */

.sf-services-quality {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-services-quality .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-services-quality__header {
	max-width: 760px;
	margin: 0 auto 2.5rem;
	text-align: center;
}

.sf-services-quality__eyebrow {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-services-quality__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Grid */

.sf-services-quality__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Card */

.sf-services-quality__card {
	height: 100%;
	min-width: 0;
	margin: 0;
	padding: 1.75rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-services-quality__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 14px 32px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-services-quality__card h3 {
	margin: 0 0 0.75rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-services-quality__card p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.65;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-services-quality__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-services-quality {
		padding: 3.5rem 0;
	}

	.sf-services-quality__header {
		margin-bottom: 2rem;
	}

	.sf-services-quality__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-services-quality__grid {
		grid-template-columns: 1fr;
		gap: 1.4rem;
	}

	.sf-services-quality__card {
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-services-quality__card {
		transition: none;
	}
}

/* =========================================================
   INCHIRIERE TOALETE ECOLOGICE – HERO
   ========================================================= */

.sf-rental-hero {
	padding: 5rem 0;
	background-color: #082f2d; 
	border-bottom: 0;
}

.sf-rental-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Structură */

.sf-rental-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: 4rem;
}

.sf-rental-hero__content {
	min-width: 0;
}

/* Conținut */

.sf-rental-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #f3c79a;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-rental-hero__title {
	margin: 0;
	color: #ffffff;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.4rem, 4vw, 4rem);
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.sf-rental-hero__lead {
	margin: 1.25rem 0 0;
	color: #cfe3df;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

/* Butoane */

.sf-rental-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 1.6rem;
}

.sf-rental-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.85rem 1.25rem;
	border: 1px solid transparent !important;
	border-radius: 4px;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	text-decoration: none !important;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-rental-hero__button--primary {
	background-color: #aa5c22;
	border-color: #aa5c22;
	color: #ffffff !important;
}

.sf-rental-hero__button--primary:hover {
	background-color: #c06a29;
	border-color: #c06a29;
	color: #ffffff !important;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
	transform: translateY(-1px);
}

.sf-rental-hero__button--outline {
	background-color: transparent;
	border-color: rgba(255, 255, 255, 0.75) !important;
	color: #ffffff !important;
}

.sf-rental-hero__button--outline:hover {
	background-color: #ffffff;
	border-color: #ffffff;
	color: #082f2d !important;
	transform: translateY(-1px);
}

.sf-rental-hero__button:focus-visible {
	outline: 3px solid rgba(243, 199, 154, 0.7);
	outline-offset: 3px;
}

/* Imagine */

.sf-rental-hero__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3;
	background-color: #0e5652;
	border-radius: 12px;
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
}

.sf-rental-hero__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-rental-hero__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-rental-hero__content,
	.sf-rental-hero__media {
		max-width: 760px;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-rental-hero {
		padding: 3.5rem 0;
	}

	.sf-rental-hero__title {
		font-size: clamp(2.2rem, 11vw, 3rem);
	}

	.sf-rental-hero__lead {
		font-size: 0.95rem;
	}

	.sf-rental-hero__actions {
		flex-direction: column;
	}

	.sf-rental-hero__button {
		width: 100%;
	}

	.sf-rental-hero__media {
		border-radius: 8px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-rental-hero__button {
		transition: none;
	}
}

/* =========================================================
   INCHIRIERE – DOTARI SI DIMENSIUNI
   ========================================================= */

.sf-rental-benefits {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-rental-benefits .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-rental-benefits__header {
	max-width: 820px;
	margin-bottom: 2.75rem;
}

.sf-rental-benefits__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-rental-benefits__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-rental-benefits__lead {
	margin: 1.2rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

/* Structură */

.sf-rental-benefits__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 4rem;
}

.sf-rental-benefits__column {
	min-width: 0;
}

.sf-rental-benefits__column-title {
	margin: 0 0 1.5rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.4;
}

/* Lista de dotări */

.sf-rental-benefits__list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-rental-benefits__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	font-weight: 400;
	line-height: 1.65;
}

.sf-rental-benefits__list svg {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	margin-top: 0.18rem;
	color: #0e5652;
}

.sf-rental-benefits__list span {
	display: block;
	min-width: 0;
}

/* Tabel */

.sf-rental-benefits__table-wrapper {
	overflow: hidden;
	width: 100%;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
}

.sf-rental-benefits__table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	font-family: "Manrope", sans-serif;
}

.sf-rental-benefits__table th,
.sf-rental-benefits__table td {
	padding: 1rem 1.25rem;
	border: 0;
	border-bottom: 1px solid #e2e4de;
	font-size: 0.94rem;
	line-height: 1.5;
	text-align: left;
	vertical-align: middle;
}

.sf-rental-benefits__table tr:last-child th,
.sf-rental-benefits__table tr:last-child td {
	border-bottom: 0;
}

.sf-rental-benefits__table th {
	width: 55%;
	background-color: #f7f7f4;
	color: #16231f;
	font-weight: 700;
}

.sf-rental-benefits__table td {
	background-color: #ffffff;
	color: #5b6864;
	font-weight: 500;
}

/* Tabletă și telefon */

@media (max-width: 800px) {
	.sf-rental-benefits {
		padding: 3.5rem 0;
	}

	.sf-rental-benefits__header {
		margin-bottom: 2.25rem;
	}

	.sf-rental-benefits__grid {
		grid-template-columns: 1fr;
		gap: 3rem;
	}
}

@media (max-width: 600px) {
	.sf-rental-benefits__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-rental-benefits__lead {
		font-size: 0.95rem;
	}
}

@media (max-width: 480px) {
	.sf-rental-benefits__list li {
		gap: 0.65rem;
		font-size: 0.9rem;
	}

	.sf-rental-benefits__list svg {
		width: 18px;
		height: 18px;
		flex-basis: 18px;
	}

	.sf-rental-benefits__table th,
	.sf-rental-benefits__table td {
		padding: 0.85rem 1rem;
		font-size: 0.88rem;
	}

	.sf-rental-benefits__table th {
		width: 58%;
	}
}

/* =========================================================
   INCHIRIERE – CONTEXTE DE UTILIZARE
   ========================================================= */

.sf-rental-contexts {
	padding: 5rem 0;
	background-color: #f7f7f4;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-rental-contexts .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-rental-contexts__header {
	max-width: 760px;
	margin-bottom: 2.5rem;
}

.sf-rental-contexts__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-rental-contexts__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Grid */

.sf-rental-contexts__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Card */

.sf-rental-contexts__card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-width: 0;
	margin: 0;
	padding: 1.75rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-rental-contexts__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 14px 32px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-rental-contexts__card h3 {
	margin: 0 0 0.75rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-rental-contexts__card p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.65;
}

/* Card evidențiat */

.sf-rental-contexts__card--highlight {
	background-color: #0e5652;
	border-color: #0e5652;
}

.sf-rental-contexts__card--highlight:hover {
	border-color: #0e5652;
	box-shadow: 0 14px 32px rgba(8, 47, 45, 0.2);
}

.sf-rental-contexts__card--highlight h3 {
	color: #ffffff;
}

.sf-rental-contexts__card--highlight p {
	color: #cfe3df;
}

/* Tabletă */

@media (max-width: 1100px) {
	.sf-rental-contexts__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-rental-contexts {
		padding: 3.5rem 0;
	}

	.sf-rental-contexts__header {
		margin-bottom: 2rem;
	}

	.sf-rental-contexts__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-rental-contexts__grid {
		grid-template-columns: 1fr;
		gap: 1.4rem;
	}

	.sf-rental-contexts__card {
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-rental-contexts__card {
		transition: none;
	}
}

.sf-rental-contexts__card--highlight {
	color: #ffffff;
	text-decoration: none !important;
	cursor: pointer;
}

.sf-rental-contexts__card--highlight:hover {
	color: #ffffff;
	text-decoration: none !important;
}

.sf-rental-contexts__card--highlight:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.35);
	outline-offset: 3px;
}

/* =========================================================
   INCHIRIERE – PROCES IN 4 PASI
   ========================================================= */

.sf-rental-process {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-rental-process .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-rental-process__header {
	max-width: 760px;
	margin: 0 auto 3rem;
	text-align: center;
}

.sf-rental-process__eyebrow {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-rental-process__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Pași */

.sf-rental-process__steps {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 2rem;
}

/* Linia dintre pași */

.sf-rental-process__steps::before {
	position: absolute;
	top: 24px;
	right: 12.5%;
	left: 12.5%;
	height: 1px;
	background-color: #d8ddd6;
	content: "";
}

/* Pas individual */

.sf-rental-process__step {
	position: relative;
	z-index: 1;
	min-width: 0;
	margin: 0;
	text-align: center;
}

.sf-rental-process__number {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin: 0 auto 1.25rem;
	background-color: #0e5652;
	border: 5px solid #ffffff;
	border-radius: 50%;
	color: #ffffff;
	font-family: "Manrope", sans-serif;
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1;
	box-shadow: 0 0 0 1px #d8ddd6;
}

.sf-rental-process__step h3 {
	margin: 0 0 0.7rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-rental-process__step p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.65;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-rental-process__steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2.5rem 2rem;
	}

	.sf-rental-process__steps::before {
		display: none;
	}

	.sf-rental-process__step {
		padding: 1.5rem;
		background-color: #f7f7f4;
		border: 1px solid #e2e4de;
		border-radius: 8px;
	}

	.sf-rental-process__number {
		margin-top: -2.2rem;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-rental-process {
		padding: 3.5rem 0;
	}

	.sf-rental-process__header {
		margin-bottom: 2.5rem;
	}

	.sf-rental-process__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-rental-process__steps {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.sf-rental-process__step {
		padding: 1.5rem;
	}
}

/* =========================================================
   INCHIRIERE – FORMULAR OFERTA
   ========================================================= */

.sf-rental-contact {
	padding: 5rem 0;
	background-color: #f7f7f4;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
	scroll-margin-top: 120px;
}

.sf-rental-contact .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Structură */

.sf-rental-contact__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	align-items: start;
	gap: 4rem;
}

.sf-rental-contact__content,
.sf-rental-contact__form-panel {
	min-width: 0;
}

/* Conținut */

.sf-rental-contact__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-rental-contact__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-rental-contact__lead {
	margin: 1.2rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

/* Date de contact */

.sf-rental-contact__details {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: 1.75rem;
}

.sf-rental-contact__detail {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
}

.sf-rental-contact__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	background-color: #edf5f3;
	border-radius: 50%;
	color: #0e5652;
}

.sf-rental-contact__icon svg {
	width: 22px;
	height: 22px;
}

.sf-rental-contact__detail-content {
	min-width: 0;
}

.sf-rental-contact__detail-content h3 {
	margin: 0 0 0.25rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-rental-contact__detail-content p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	line-height: 1.6;
}

.sf-rental-contact__detail-content a {
	color: #0e5652;
	font-weight: 700;
	text-decoration: none;
}

.sf-rental-contact__detail-content a:hover {
	color: #874c20;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Panou formular */

.sf-rental-contact__form-panel {
	padding: 2rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 14px 36px rgba(15, 33, 30, 0.1);
}

/* Grid CF7 */

.sf-rental-form__fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
}

.sf-rental-form__field {
	min-width: 0;
}

.sf-rental-form__field--full {
	grid-column: 1 / -1;
}

/* Etichete */

.sf-rental-form__field > label {
	display: block;
	margin-bottom: 0.45rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 0.84rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-rental-form__required {
	color: #aa5c22;
}

/* Controale */

.sf-rental-form__field input:not([type="checkbox"]):not([type="submit"]),
.sf-rental-form__field select,
.sf-rental-form__field textarea {
	display: block;
	width: 100%;
	min-width: 0;
	padding: 0.78rem 0.9rem;
	background-color: #ffffff;
	border: 1px solid #ccd2ca;
	border-radius: 4px;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	font-weight: 400;
	line-height: 1.45;
	box-shadow: none;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease;
}

.sf-rental-form__field input:not([type="checkbox"]):not([type="submit"]),
.sf-rental-form__field select {
	height: 46px;
}

.sf-rental-form__field textarea {
	min-height: 130px;
	resize: vertical;
}

.sf-rental-form__field input::placeholder,
.sf-rental-form__field textarea::placeholder {
	color: #8a9490;
	opacity: 1;
}

.sf-rental-form__field input:focus,
.sf-rental-form__field select:focus,
.sf-rental-form__field textarea:focus {
	border-color: #0e5652;
	outline: 0;
	box-shadow: 0 0 0 3px rgba(14, 86, 82, 0.12);
}

/* Câmp invalid */

.sf-rental-form__field .wpcf7-not-valid {
	border-color: #b42318 !important;
}

.sf-rental-form__field .wpcf7-not-valid-tip {
	display: block;
	margin-top: 0.4rem;
	color: #b42318;
	font-family: "Manrope", sans-serif;
	font-size: 0.78rem;
	line-height: 1.4;
}

/* GDPR */

.sf-rental-form__gdpr {
	padding-top: 0.15rem;
}

.sf-rental-form__gdpr .wpcf7-list-item {
	margin: 0;
}

.sf-rental-form__gdpr label {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.82rem;
	font-weight: 400;
	line-height: 1.55;
	cursor: pointer;
}

.sf-rental-form__gdpr input[type="checkbox"] {
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	margin: 0.12rem 0 0;
	accent-color: #0e5652;
}

.sf-rental-form__gdpr a {
	color: #0e5652;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.sf-rental-form__gdpr a:hover {
	color: #874c20;
}

/* Submit */

.sf-rental-form__submit {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 0.85rem 1.25rem;
	background-color: #aa5c22;
	border: 1px solid #aa5c22;
	border-radius: 4px;
	color: #ffffff !important;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	cursor: pointer;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-rental-form__submit:hover {
	background-color: #874c20;
	border-color: #874c20;
	box-shadow: 0 8px 20px rgba(135, 76, 32, 0.18);
	transform: translateY(-1px);
}

.sf-rental-form__submit:focus-visible {
	outline: 3px solid rgba(135, 76, 32, 0.3);
	outline-offset: 3px;
}

/* Spinner CF7 */

.sf-rental-contact__form-panel .wpcf7-spinner {
	display: block;
	margin: 0.8rem auto 0;
}

/* Mesaj CF7 */

.sf-rental-contact__form-panel .wpcf7 form .wpcf7-response-output {
	margin: 1.25rem 0 0;
	padding: 0.9rem 1rem;
	border-width: 1px;
	border-radius: 4px;
	font-family: "Manrope", sans-serif;
	font-size: 0.85rem;
	line-height: 1.5;
}

.sf-rental-contact__form-panel
	.wpcf7 form.sent
	.wpcf7-response-output {
	background-color: #edf7f1;
	border-color: #2f7d4b;
	color: #225c39;
}

.sf-rental-contact__form-panel
	.wpcf7 form.invalid
	.wpcf7-response-output,
.sf-rental-contact__form-panel
	.wpcf7 form.unaccepted
	.wpcf7-response-output,
.sf-rental-contact__form-panel
	.wpcf7 form.failed
	.wpcf7-response-output {
	background-color: #fff4f2;
	border-color: #b42318;
	color: #8f1d14;
}

/* Tabletă */

@media (max-width: 950px) {
	.sf-rental-contact__grid {
		grid-template-columns: 1fr;
		gap: 2.75rem;
	}

	.sf-rental-contact__content,
	.sf-rental-contact__form-panel {
		max-width: 760px;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-rental-contact {
		padding: 3.5rem 0;
		scroll-margin-top: 90px;
	}

	.sf-rental-contact__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-rental-contact__lead {
		font-size: 0.95rem;
	}

	.sf-rental-contact__form-panel {
		padding: 1.4rem;
	}

	.sf-rental-form__fields {
		grid-template-columns: 1fr;
		gap: 1.1rem;
	}

	.sf-rental-form__field--full {
		grid-column: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-rental-form__submit,
	.sf-rental-form__field input,
	.sf-rental-form__field select,
	.sf-rental-form__field textarea {
		transition: none;
	}
}

/* =========================================================
   INCHIRIERE – FAQ
   ========================================================= */

.sf-rental-faq {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-rental-faq__container {
	width: 100%;
	max-width: 920px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-rental-faq__header {
	max-width: 720px;
	margin-bottom: 2.5rem;
}

.sf-rental-faq__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-rental-faq__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Accordion */

.sf-rental-faq__accordion {
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
}

.sf-rental-faq__item {
	border-bottom: 1px solid #e2e4de;
}

.sf-rental-faq__item:last-child {
	border-bottom: 0;
}

.sf-rental-faq__question {
	margin: 0;
	padding: 0;
	font-size: inherit;
	line-height: inherit;
}

.sf-rental-faq__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	width: 100%;
	margin: 0;
	padding: 1.35rem 1.5rem;
	background-color: transparent;
	border: 0;
	border-radius: 0;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: left;
	cursor: pointer;
	transition:
		background-color 180ms ease,
		color 180ms ease;
}

.sf-rental-faq__trigger:hover,
.sf-rental-faq__item.is-open .sf-rental-faq__trigger {
	background-color: #fafaf8;
	color: #0e5652;
}

.sf-rental-faq__trigger:focus-visible {
	position: relative;
	z-index: 1;
	outline: 3px solid rgba(14, 86, 82, 0.3);
	outline-offset: -3px;
}

/* Plus / minus */

.sf-rental-faq__icon {
	position: relative;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	color: #0e5652;
}

.sf-rental-faq__icon::before,
.sf-rental-faq__icon::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 2px;
	background-color: currentColor;
	border-radius: 2px;
	content: "";
	transform: translate(-50%, -50%);
	transition: transform 180ms ease;
}

.sf-rental-faq__icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.sf-rental-faq__item.is-open .sf-rental-faq__icon::after {
	transform: translate(-50%, -50%) rotate(0);
}

/* Răspuns */

.sf-rental-faq__panel {
	display: grid;
	grid-template-rows: 0fr;
	visibility: hidden;
	transition:
		grid-template-rows 260ms ease,
		visibility 260ms ease;
}

.sf-rental-faq__item.is-open .sf-rental-faq__panel {
	grid-template-rows: 1fr;
	visibility: visible;
}

.sf-rental-faq__panel-inner {
	overflow: hidden;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.7;
}

.sf-rental-faq__panel-inner p {
	margin: 0;
	padding: 1.5rem;
}

/* Telefon */

@media (max-width: 600px) {
	.sf-rental-faq {
		padding: 3.5rem 0;
	}

	.sf-rental-faq__header {
		margin-bottom: 2rem;
	}

	.sf-rental-faq__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-rental-faq__trigger {
		gap: 1rem;
		padding: 1.15rem 1.2rem;
		font-size: 0.94rem;
	}

	.sf-rental-faq__panel-inner {
		font-size: 0.9rem;
	}

	.sf-rental-faq__panel-inner p {
		padding: 1.25rem 1.2rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-rental-faq__trigger,
	.sf-rental-faq__icon::before,
	.sf-rental-faq__icon::after,
	.sf-rental-faq__panel {
		transition: none;
	}
}

/* =========================================================
   MEDIUL INCONJURATOR – HERO
   ========================================================= */

.sf-environment-hero {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-environment-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Structură */

.sf-environment-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: 4rem;
}

.sf-environment-hero__content {
	min-width: 0;
}

/* Conținut */

.sf-environment-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-environment-hero__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.4rem, 4vw, 4rem);
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.sf-environment-hero__lead {
	margin: 1.25rem 0 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.75;
}

/* Imagine */

.sf-environment-hero__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 16 / 10.5;
	background-color: #f1f2ee;
	border-radius: 12px;
	box-shadow: 0 18px 45px rgba(15, 33, 30, 0.14);
}

.sf-environment-hero__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-environment-hero__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-environment-hero__content,
	.sf-environment-hero__media {
		max-width: 760px;
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-environment-hero {
		padding: 3.5rem 0;
	}

	.sf-environment-hero__title {
		font-size: clamp(2.2rem, 11vw, 3rem);
	}

	.sf-environment-hero__lead {
		font-size: 0.95rem;
	}

	.sf-environment-hero__media {
		border-radius: 8px;
	}
}

/* =========================================================
   MEDIUL INCONJURATOR – INDICATORI
   ========================================================= */

.sf-environment-metrics {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-environment-metrics .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Grid */

.sf-environment-metrics__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Card */

.sf-environment-metrics__card {
	height: 100%;
	min-width: 0;
	margin: 0;
	padding: 1.75rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-environment-metrics__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 14px 32px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-environment-metrics__card h2 {
	margin: 0 0 0.75rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-environment-metrics__card p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.65;
}

.sf-environment-metrics__card strong {
	color: #0e5652;
	font-weight: 800;
}

/* Tabletă */

@media (max-width: 1100px) {
	.sf-environment-metrics__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-environment-metrics {
		padding: 3.5rem 0;
	}

	.sf-environment-metrics__grid {
		grid-template-columns: 1fr;
		gap: 1.4rem;
	}

	.sf-environment-metrics__card {
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-environment-metrics__card {
		transition: none;
	}
}

/* =========================================================
   ECO DISINFECTION
   ========================================================= */

.sf-eco-disinfection {
	padding: 40px 0;
	background: #f7f7f4;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-disinfection .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

.sf-eco-disinfection__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: center;
	gap: clamp(2.5rem, 5vw, 5rem);
}

/* Imagine */

.sf-eco-disinfection__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3.1;
	background: #e8ebe6;
	border-radius: 12px;
	box-shadow: 0 12px 30px rgba(15, 33, 30, 0.12);
}

.sf-eco-disinfection__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Conținut */

.sf-eco-disinfection__content {
	min-width: 0;
}

.sf-eco-disinfection__eyebrow {
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-disinfection__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-eco-disinfection__lead {
	margin: 1.2rem 0 0;
	color: #52615d;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.75;
}

/* Listă */

.sf-eco-disinfection__list {
	display: flex;
	flex-direction: column;
	gap: 0.9rem;
	margin: 1.4rem 0 0;
	padding: 0;
	list-style: none;
}

.sf-eco-disinfection__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	color: #253430;
	font-family: "Manrope", sans-serif;
	font-size: 0.95rem;
	line-height: 1.6;
}

.sf-eco-disinfection__list svg {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	margin-top: 0.15rem;
	color: #0e5652;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* Tabletă și telefon */

@media (max-width: 900px) {
	.sf-eco-disinfection__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-eco-disinfection__media {
		aspect-ratio: 16 / 10;
	}

	.sf-eco-disinfection__content {
		max-width: 760px;
	}
}

@media (max-width: 600px) {
	.sf-eco-disinfection__grid {
		gap: 2rem;
	}

	.sf-eco-disinfection__media {
		aspect-ratio: 16 / 11;
		border-radius: 8px;
	}

	.sf-eco-disinfection__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-eco-disinfection__lead {
		font-size: 0.96rem;
	}

	.sf-eco-disinfection__list li {
		font-size: 0.92rem;
	}
}

/* =========================================================
   ENVIRONMENT CERTIFICATIONS
   ========================================================= */

.sf-environment-certifications {
	padding: 40px 0;
	background: #ffffff;
}

.sf-environment-certifications .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-environment-certifications__header {
	max-width: 720px;
	margin: 0 auto 2.5rem;
	text-align: center;
}

.sf-environment-certifications__eyebrow {
	display: flex;
	justify-content: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-environment-certifications__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Grid */

.sf-environment-certifications__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Card */

.sf-environment-certifications__card {
	height: 100%;
	background: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	box-shadow: 0 6px 18px rgba(15, 33, 30, 0.05);
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-environment-certifications__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 14px 30px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-environment-certifications__card-body {
	height: 100%;
	padding: 1.75rem;
}

.sf-environment-certifications__card h3 {
	margin: 0 0 0.65rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-environment-certifications__card p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.95rem;
	line-height: 1.7;
}

/* Responsive */

@media (max-width: 700px) {
	.sf-environment-certifications__header {
		margin-bottom: 2rem;
	}

	.sf-environment-certifications__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-environment-certifications__grid {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}

	.sf-environment-certifications__card-body {
		padding: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-environment-certifications__card {
		transition: none;
	}
}

/* =========================================================
   CONTACT HERO
   ========================================================= */

.sf-contact-hero {
	padding: 40px 0;
	background: #ffffff;
	border-bottom: 1px solid #e2e4de;
}

.sf-contact-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

.sf-contact-hero__content {
	max-width: 850px;
}

.sf-contact-hero__eyebrow {
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-contact-hero__title {
	max-width: 760px;
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.4rem, 4.5vw, 4rem);
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.025em;
}

.sf-contact-hero__lead {
	max-width: 780px;
	margin: 1.25rem 0 0;
	color: #52615d;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.75;
}

/* Responsive */

@media (max-width: 700px) {
	.sf-contact-hero__title {
		font-size: clamp(2.1rem, 10vw, 3rem);
	}

	.sf-contact-hero__lead {
		margin-top: 1rem;
		font-size: 0.96rem;
		line-height: 1.7;
	}
}

/* =========================================================
   CONTACT SECTION
   ========================================================= */

.sf-contact-section {
	padding: 40px 0;
	background: #ffffff;
}

.sf-contact-section,
.sf-contact-section * {
	box-sizing: border-box;
}

.sf-contact-section .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   CONTACT OPTIONS
   ========================================================= */

.sf-contact-section__cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.75rem;
	margin-bottom: 3.5rem;
}

.sf-contact-option {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-width: 0;
	padding: 1.75rem;
	background: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	color: #16231f;
	text-decoration: none !important;
	box-shadow: 0 6px 18px rgba(15, 33, 30, 0.05);
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-contact-option:hover {
	border-color: #cbcfc7;
	color: #16231f;
	box-shadow: 0 14px 30px rgba(15, 33, 30, 0.1);
	transform: translateY(-3px);
}

.sf-contact-option:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.3);
	outline-offset: 3px;
}

.sf-contact-option__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	margin-bottom: 1.25rem;
	background: #e6f0ee;
	border-radius: 50%;
	color: #0e5652;
}

.sf-contact-option__icon svg {
	width: 22px;
	height: 22px;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.sf-contact-option__title {
	margin: 0 0 0.6rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-contact-option__description {
	flex: 1;
	margin: 0 0 1.25rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.65;
}

.sf-contact-option__link {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 0.45rem;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.4;
	overflow-wrap: anywhere;
}

.sf-contact-option__link svg {
	width: 15px;
	height: 15px;
	flex: 0 0 auto;
	transition: transform 180ms ease;
}

.sf-contact-option:hover .sf-contact-option__link svg {
	transform: translateX(3px);
}

/* =========================================================
   FORM LAYOUT
   ========================================================= */

.sf-contact-section__form-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	align-items: start;
	gap: clamp(2.5rem, 5vw, 5rem);
	scroll-margin-top: 140px;
}

.sf-contact-section__information {
	min-width: 0;
}

.sf-contact-section__eyebrow {
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-contact-section__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-contact-section__lead {
	margin: 1.15rem 0 0;
	color: #52615d;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.75;
}

.sf-contact-section__divider {
	width: 100%;
	height: 1px;
	margin: 2rem 0;
	background: #e2e4de;
}

.sf-contact-section__details-title {
	margin: 0 0 1rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-contact-section__details {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-contact-section__details li {
	display: flex;
	align-items: flex-start;
	gap: 0.8rem;
	color: #3f4d49;
	font-family: "Manrope", sans-serif;
	font-size: 0.93rem;
	line-height: 1.65;
}

.sf-contact-section__details svg {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	margin-top: 0.18rem;
	color: #0e5652;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* =========================================================
   CONTACT FORM 7 PANEL
   ========================================================= */

.sf-contact-section__form-panel {
	min-width: 0;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	background: #f7f7f4;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 12px 30px rgba(15, 33, 30, 0.08);
}

.sf-contact-section__form-panel .wpcf7 {
	margin: 0;
}

.sf-contact-form__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
}

.sf-contact-form__field {
	min-width: 0;
}

.sf-contact-form__field--full {
	grid-column: 1 / -1;
}

.sf-contact-form__field label {
	display: block;
	margin-bottom: 0.45rem;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-contact-form__required {
	color: #a7541a;
}

.sf-contact-form__field .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.sf-contact-form__field input[type="text"],
.sf-contact-form__field input[type="tel"],
.sf-contact-form__field input[type="email"],
.sf-contact-form__field select,
.sf-contact-form__field textarea {
	display: block;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 0.75rem 0.9rem;
	background: #ffffff;
	border: 1px solid #cfd4ce;
	border-radius: 6px;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	line-height: 1.5;
	box-shadow: none;
	transition:
		border-color 160ms ease,
		box-shadow 160ms ease;
}

.sf-contact-form__field textarea {
	min-height: 145px;
	resize: vertical;
}

.sf-contact-form__field input:focus,
.sf-contact-form__field select:focus,
.sf-contact-form__field textarea:focus {
	border-color: #0e5652;
	outline: none;
	box-shadow: 0 0 0 3px rgba(14, 86, 82, 0.12);
}

.sf-contact-form__field input::placeholder,
.sf-contact-form__field textarea::placeholder {
	color: #87918e;
	opacity: 1;
}

/* GDPR */

.sf-contact-form__acceptance {
	color: #52615d;
	font-family: "Manrope", sans-serif;
	font-size: 0.84rem;
	line-height: 1.6;
}

.sf-contact-form__acceptance .wpcf7-list-item {
	margin: 0;
}

.sf-contact-form__acceptance label {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin: 0;
	color: inherit;
	font-size: inherit;
	font-weight: 400;
	line-height: inherit;
	cursor: pointer;
}

.sf-contact-form__acceptance input[type="checkbox"] {
	width: 17px;
	height: 17px;
	flex: 0 0 17px;
	margin: 0.2rem 0 0;
	accent-color: #0e5652;
}

.sf-contact-form__acceptance a {
	color: #0e5652;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.sf-contact-form__acceptance a:hover {
	color: #874c20;
}

/* Submit */

.sf-contact-form__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	padding: 0.8rem 1.4rem;
	background: #a85b21;
	border: 1px solid #a85b21;
	border-radius: 5px;
	color: #ffffff;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.4;
	cursor: pointer;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		transform 180ms ease;
}

.sf-contact-form__submit:hover {
	background: #874c20;
	border-color: #874c20;
	transform: translateY(-1px);
}

.sf-contact-form__submit:focus-visible {
	outline: 3px solid rgba(168, 91, 33, 0.25);
	outline-offset: 3px;
}

/* Validare și mesaje CF7 */

.sf-contact-section__form-panel .wpcf7-not-valid {
	border-color: #b42318;
}

.sf-contact-section__form-panel .wpcf7-not-valid-tip {
	margin-top: 0.4rem;
	color: #b42318;
	font-family: "Manrope", sans-serif;
	font-size: 0.78rem;
	line-height: 1.45;
}

.sf-contact-section__form-panel .wpcf7-response-output {
	margin: 1.25rem 0 0;
	padding: 0.85rem 1rem;
	border-width: 1px;
	border-radius: 6px;
	font-family: "Manrope", sans-serif;
	font-size: 0.86rem;
	line-height: 1.55;
}

.sf-contact-section__form-panel form.sent .wpcf7-response-output {
	background: #eaf5f0;
	border-color: #2f795e;
	color: #205a45;
}

.sf-contact-section__form-panel form.invalid .wpcf7-response-output,
.sf-contact-section__form-panel form.unaccepted .wpcf7-response-output,
.sf-contact-section__form-panel form.failed .wpcf7-response-output {
	background: #fff2ef;
	border-color: #b42318;
	color: #8a1c13;
}

.sf-contact-section__form-panel .wpcf7-spinner {
	display: block;
	margin: 0.75rem auto 0;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {
	.sf-contact-section__cards {
		grid-template-columns: 1fr;
		gap: 1.25rem;
		margin-bottom: 3rem;
	}

	.sf-contact-section__form-layout {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}
}

@media (max-width: 600px) {
	.sf-contact-option {
		padding: 1.5rem;
	}

	.sf-contact-section__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}

	.sf-contact-section__form-panel {
		padding: 1.25rem;
	}

	.sf-contact-form__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.sf-contact-form__field,
	.sf-contact-form__field--full {
		grid-column: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-contact-option,
	.sf-contact-option__link svg,
	.sf-contact-form__submit {
		transition: none;
	}
}

/* =========================================================
   CONTACT FORM 7 – MESAJ DE SUCCES
   Se aplică tuturor formularelor CF7
   ========================================================= */

.wpcf7 form.sent .wpcf7-response-output {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 58px;
	margin: 1.25rem 0 0 !important;
	padding: 0.95rem 1.1rem 0.95rem 3.6rem !important;
	background: #eaf5f0;
	border: 1px solid #a8d1c1 !important;
	border-radius: 8px;
	color: #205a45;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.55;
	box-shadow: 0 6px 16px rgba(32, 90, 69, 0.08);
}

.wpcf7 form.sent .wpcf7-response-output::before {
	position: absolute;
	top: 50%;
	left: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	background: #2f795e;
	border-radius: 50%;
	color: #ffffff;
	content: "✓";
	font-family: Arial, sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	transform: translateY(-50%);
}

/* Elimină eventualul spațiu suplimentar al spinnerului */

.wpcf7 form.sent .wpcf7-spinner {
	display: none;
}

/* Telefon */

@media (max-width: 600px) {
	.wpcf7 form.sent .wpcf7-response-output {
		align-items: flex-start;
		padding: 0.9rem 0.9rem 0.9rem 3.25rem !important;
		font-size: 0.84rem;
	}

	.wpcf7 form.sent .wpcf7-response-output::before {
		top: 0.85rem;
		left: 0.85rem;
		transform: none;
	}
}

/* =========================================================
   PAGINA PROIECT
   ========================================================= */

.sf-project-page {
	overflow: hidden;
	background: #ffffff;
	color: #16231f;
}

.sf-project-page .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-project-page__header {
	padding: 3.2rem 0 2.5rem;
	background: #ffffff;
}

.sf-project-page__eyebrow,
.sf-project-section-heading__eyebrow,
.sf-project-product__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.85rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-project-page__title {
	max-width: 900px;
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.5rem, 4vw, 4rem);
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: -0.02em;
}

/* =========================================================
   SLIDER
   ========================================================= */

.sf-project-gallery {
	padding: 0 0 4rem;
	background: #ffffff;
}

.sf-project-slider {
	width: 100%;
}

.sf-project-slider__viewport {
	position: relative;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 16 / 9;
	background: #f1f2ee;
	border-radius: 14px;
	box-shadow: 0 20px 48px rgba(15, 33, 30, 0.14);
}

.sf-project-slider__slides,
.sf-project-slider__slide {
	width: 100%;
	height: 100%;
}

.sf-project-slider__slide {
	position: absolute;
	inset: 0;
	visibility: hidden;
	opacity: 0;
	transition:
		opacity 320ms ease,
		visibility 320ms ease;
}

.sf-project-slider__slide.is-active {
	position: relative;
	visibility: visible;
	opacity: 1;
}

.sf-project-slider__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Săgeți */

.sf-project-slider__arrow {
	position: absolute;
	z-index: 3;
	top: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	padding: 0;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(15, 33, 30, 0.13);
	border-radius: 50%;
	color: #082f2d;
	cursor: pointer;
	box-shadow: 0 8px 24px rgba(15, 33, 30, 0.16);
	transform: translateY(-50%);
	transition:
		background-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.sf-project-slider__arrow:hover {
	background: #0e5652;
	color: #ffffff;
	transform: translateY(-50%) scale(1.04);
}

.sf-project-slider__arrow svg {
	width: 22px;
	height: 22px;
}

.sf-project-slider__arrow--previous {
	left: 1.25rem;
}

.sf-project-slider__arrow--next {
	right: 1.25rem;
}

/* Contor */

.sf-project-slider__counter {
	position: absolute;
	z-index: 3;
	right: 1.25rem;
	bottom: 1.25rem;
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.5rem 0.75rem;
	background: rgba(8, 47, 45, 0.88);
	border-radius: 4px;
	color: #ffffff;
	font-family: "Manrope", sans-serif;
	font-size: 0.8rem;
	font-weight: 700;
	line-height: 1;
}

/* Miniaturi */

.sf-project-slider__thumbnails {
	display: grid;
	grid-auto-columns: minmax(120px, 170px);
	grid-auto-flow: column;
	gap: 0.8rem;
	overflow-x: auto;
	margin-top: 1rem;
	padding: 0.15rem 0.15rem 0.75rem;
	scrollbar-color: #874c20 #e2e4de;
	scrollbar-width: thin;
	scroll-snap-type: x proximity;
}

.sf-project-slider__thumbnails::-webkit-scrollbar {
	height: 7px;
}

.sf-project-slider__thumbnails::-webkit-scrollbar-track {
	background: #e2e4de;
	border-radius: 999px;
}

.sf-project-slider__thumbnails::-webkit-scrollbar-thumb {
	background: #874c20;
	border-radius: 999px;
}

.sf-project-slider__thumbnail {
	overflow: hidden;
	padding: 0;
	aspect-ratio: 16 / 10;
	background: #f1f2ee;
	border: 2px solid transparent;
	border-radius: 6px;
	cursor: pointer;
	opacity: 0.7;
	scroll-snap-align: start;
	transition:
		border-color 180ms ease,
		opacity 180ms ease,
		transform 180ms ease;
}

.sf-project-slider__thumbnail:hover {
	opacity: 1;
}

.sf-project-slider__thumbnail.is-active {
	border-color: #0e5652;
	opacity: 1;
	transform: translateY(-2px);
}

.sf-project-slider__thumbnail img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* =========================================================
   DESCRIERE
   ========================================================= */

.sf-project-description {
	padding: 4.5rem 0;
	background: #ffffff;
	border-top: 1px solid #e2e4de;
}

.sf-project-description__inner {
	max-width: 920px;
}

.sf-project-section-heading {
	max-width: 720px;
	margin-bottom: 1.5rem;
}

.sf-project-section-heading__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* WYSIWYG */

.sf-project-rich-text {
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.75;
}

.sf-project-rich-text > *:first-child {
	margin-top: 0;
}

.sf-project-rich-text > *:last-child {
	margin-bottom: 0;
}

.sf-project-rich-text p {
	margin: 0 0 1rem;
}

.sf-project-rich-text strong {
	color: #16231f;
	font-weight: 700;
}

.sf-project-rich-text ul,
.sf-project-rich-text ol {
	margin: 1rem 0;
	padding-left: 1.25rem;
}

.sf-project-rich-text li {
	margin-bottom: 0.55rem;
	padding-left: 0.2rem;
}

.sf-project-rich-text ul li::marker {
	color: #0e5652;
}

.sf-project-rich-text a {
	color: #0e5652;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* =========================================================
   DETALII + PRODUS
   ========================================================= */

.sf-project-details {
	padding: 5rem 0;
	background: #f1f2ee;
	border-top: 1px solid #e2e4de;
}

.sf-project-details__grid {
	display: grid;
	grid-template-columns:
		minmax(0, 1.45fr)
		minmax(300px, 0.75fr);
	align-items: start;
	gap: 4rem;
}

.sf-project-details__content {
	min-width: 0;
}

/* Card produs */

.sf-project-product {
	width: 100%;
	max-width: 430px;
	justify-self: end;
}

.sf-project-product__card {
	display: flex;
	overflow: hidden;
	flex-direction: column;
	width: 100%;
	background: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	color: #16231f;
	text-decoration: none !important;
	box-shadow: 0 14px 34px rgba(15, 33, 30, 0.1);
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-project-product__card:hover {
	border-color: #cbcfc7;
	color: #16231f;
	box-shadow: 0 20px 42px rgba(15, 33, 30, 0.15);
	transform: translateY(-3px);
}

.sf-project-product__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3;
	background: #e2e4de;
}

.sf-project-product__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 320ms ease;
}

.sf-project-product__card:hover .sf-project-product__image {
	transform: scale(1.045);
}

.sf-project-product__body {
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
	padding: 1.4rem 1.5rem 1.6rem;
}

.sf-project-product__tag {
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.sf-project-product__title {
	margin: 0;
	color: #16231f;
	font-family: "Manrope", sans-serif;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.35;
}

.sf-project-product__description {
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	line-height: 1.6;
}

.sf-project-product__description p {
	margin: 0;
}

.sf-project-product__link {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 0.4rem;
	margin-top: 0.35rem;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-project-product__link svg {
	width: 14px;
	height: 14px;
	transition: transform 180ms ease;
}

.sf-project-product__card:hover .sf-project-product__link svg {
	transform: translateX(3px);
}

/* Focus */

.sf-project-slider__arrow:focus-visible,
.sf-project-slider__thumbnail:focus-visible,
.sf-project-product__card:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.32);
	outline-offset: 3px;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {
	.sf-project-details__grid {
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.sf-project-product {
		max-width: 600px;
		justify-self: start;
	}
}

@media (max-width: 700px) {
	.sf-project-page__header {
		padding: 2.5rem 0 2rem;
	}

	.sf-project-page__title {
		font-size: clamp(2.2rem, 10vw, 3rem);
	}

	.sf-project-gallery {
		padding-bottom: 3rem;
	}

	.sf-project-slider__viewport {
		aspect-ratio: 4 / 3;
		border-radius: 8px;
	}

	.sf-project-slider__arrow {
		width: 40px;
		height: 40px;
	}

	.sf-project-slider__arrow--previous {
		left: 0.75rem;
	}

	.sf-project-slider__arrow--next {
		right: 0.75rem;
	}

	.sf-project-slider__counter {
		right: 0.75rem;
		bottom: 0.75rem;
	}

	.sf-project-slider__thumbnails {
		grid-auto-columns: 105px;
	}

	.sf-project-description {
		padding: 3.5rem 0;
	}

	.sf-project-details {
		padding: 3.5rem 0;
	}

	.sf-project-section-heading__title {
		font-size: clamp(1.9rem, 9vw, 2.5rem);
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-project-slider__slide,
	.sf-project-slider__arrow,
	.sf-project-slider__thumbnail,
	.sf-project-product__card,
,
	.sf-project-product__image,
	.sf-project-product__link svg {
		transition: none;
	}
}

/* =========================================================
   HERO PAGINA PROIECTE
   ========================================================= */

.sf-projects-hero {
	padding: 3.2rem 0 3.6rem;
	background: #ffffff;
	border-bottom: 1px solid #e2e4de;
}

.sf-projects-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

.sf-projects-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-projects-hero__title {
	max-width: 920px;
	margin: 0 0 0.8rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.5rem, 4vw, 4rem);
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: -0.02em;
}

.sf-projects-hero__lead {
	max-width: 680px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	line-height: 1.65;
}

/* Statistici */

.sf-projects-hero__stats {
	display: grid;
	overflow: hidden;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	margin-top: 2rem;
	background: #e2e4de;
	border: 1px solid #e2e4de;
	border-radius: 8px;
}

.sf-projects-hero__stat {
	min-width: 0;
	padding: 1.6rem 1.4rem;
	background: #ffffff;
	text-align: center;
}

.sf-projects-hero__number {
	display: block;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 2.2rem;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	line-height: 1;
	letter-spacing: -0.01em;
}

.sf-projects-hero__label {
	display: block;
	margin-top: 0.5rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.8rem;
	line-height: 1.5;
}

/* Tabletă */

@media (max-width: 900px) {
	.sf-projects-hero {
		padding: 3rem 0;
	}

	.sf-projects-hero__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* Telefon */

@media (max-width: 600px) {
	.sf-projects-hero {
		padding: 2.5rem 0;
	}

	.sf-projects-hero__title {
		font-size: clamp(2.2rem, 10vw, 3rem);
	}

	.sf-projects-hero__lead {
		font-size: 1rem;
	}

	.sf-projects-hero__stat {
		padding: 1.35rem 1rem;
	}

	.sf-projects-hero__number {
		font-size: 1.7rem;
	}

	.sf-projects-hero__label {
		font-size: 0.76rem;
	}
}

/* =========================================================
   PROJECT LIST
   ========================================================= */

.sf-project-list {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-project-list .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   FILTERS
   ========================================================= */

.sf-project-list__filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	margin-bottom: 1.75rem;
}

.sf-project-list
button.sf-project-list__filter {
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	margin: 0;
	padding: 0.55rem 1.1rem;
	background-color: #ffffff !important;
	border: 1.5px solid #cbcfc7 !important;
	border-radius: 999px;
	box-shadow: none !important;
	color: #5b6864 !important;
	cursor: pointer;
	font-family: "Manrope", sans-serif;
	font-size: 0.85rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.sf-project-list
button.sf-project-list__filter:hover {
	background-color: #f1f2ee !important;
	border: 1.5px solid #0e5652 !important;
	box-shadow: none !important;
	color: #0e5652 !important;
}

.sf-project-list
button.sf-project-list__filter:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.22);
	outline-offset: 3px;
}

.sf-project-list
button.sf-project-list__filter.is-active,
.sf-project-list
button.sf-project-list__filter.is-active:hover,
.sf-project-list
button.sf-project-list__filter.is-active:focus {
	background-color: #0e5652 !important;
	border: 1.5px solid #0e5652 !important;
	box-shadow: none !important;
	color: #ffffff !important;
}

/* =========================================================
   PROJECT GRID
   ========================================================= */

.sf-project-list__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.75rem;
}

.sf-project-card {
	position: relative;
	display: block;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 5 / 4;
	background-color: #f1f2ee;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15, 33, 30, 0.05);
	color: inherit;
	text-decoration: none;
	transition:
		transform 220ms ease,
		box-shadow 220ms ease,
		opacity 220ms ease;
}

.sf-project-card[hidden] {
	display: none !important;
}

.sf-project-card.is-filtered-in {
	animation: sf-project-card-in 280ms ease both;
}

.sf-project-card:hover {
	border-color: #e2e4de;
	box-shadow: 0 16px 34px rgba(15, 33, 30, 0.14);
	color: inherit;
	text-decoration: none;
	transform: translateY(-4px);
}

.sf-project-card:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.28);
	outline-offset: 4px;
}

/* =========================================================
   PROJECT IMAGE
   ========================================================= */

.sf-project-card__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms ease;
}

.sf-project-card:hover .sf-project-card__image {
	transform: scale(1.06);
}

/* =========================================================
   PROJECT OVERLAY
   ========================================================= */

.sf-project-card__overlay {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	padding: 1.4rem;
	color: #ffffff;
	background:
		linear-gradient(
			0deg,
			rgba(10, 26, 23, 0.94) 0%,
			rgba(10, 26, 23, 0.66) 48%,
			rgba(10, 26, 23, 0.04) 100%
		);
}

.sf-project-card__tag {
	display: block;
	margin-bottom: 0.3rem;
	color: #f3c79a;
	font-family: "Manrope", sans-serif;
	font-size: 0.7rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.sf-project-card__title {
	margin: 0;
	color: #ffffff;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.35;
}

/* =========================================================
   EMPTY MESSAGE
   ========================================================= */

.sf-project-list__empty {
	margin: 2rem 0 0;
	padding: 1.25rem;
	background-color: #f1f2ee;
	border: 1px solid #e2e4de;
	border-radius: 8px;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	text-align: center;
}

.sf-project-list__empty[hidden] {
	display: none !important;
}

/* =========================================================
   FILTER ANIMATION
   ========================================================= */

@keyframes sf-project-card-in {
	from {
		opacity: 0;
		transform: translateY(12px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-project-list {
		padding: 4rem 0;
	}

	.sf-project-list__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.4rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-project-list {
		padding: 3.25rem 0;
	}

	.sf-project-list__filters {
		gap: 0.5rem;
		margin-bottom: 1.4rem;
	}

	.sf-project-list
	button.sf-project-list__filter {
		min-height: 40px;
		padding: 0.52rem 0.9rem;
		font-size: 0.8rem;
	}

	.sf-project-list__grid {
		grid-template-columns: 1fr;
		gap: 1.2rem;
	}

	.sf-project-card {
		aspect-ratio: 5 / 4;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-project-card,
	.sf-project-card__image,
	.sf-project-list__filter {
		transition: none;
	}

	.sf-project-card.is-filtered-in {
		animation: none;
	}
}

/* =========================================================
   ROMANIA NETWORK
   ========================================================= */

.sf-romania-network {
	padding: 5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-romania-network .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-romania-network__header {
	max-width: 760px;
	margin-bottom: 2rem;
}

.sf-romania-network__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-romania-network__title {
	margin: 0 0 0.75rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-romania-network__lead {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	line-height: 1.65;
}

/* =========================================================
   TABLE WRAPPER
   ========================================================= */

.sf-romania-network__table-wrap {
	overflow-x: auto;
	width: 100%;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(15, 33, 30, 0.06);
	-webkit-overflow-scrolling: touch;
}

.sf-romania-network__table-wrap:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.22);
	outline-offset: 3px;
}

/* =========================================================
   TABLE
   ========================================================= */

.sf-romania-network__table {
	width: 100%;
	min-width: 720px;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	background-color: #ffffff;
	font-family: "Manrope", sans-serif;
	table-layout: fixed;
}

.sf-romania-network__table th,
.sf-romania-network__table td {
	padding: 1rem 1.25rem;
	border: 0;
	border-bottom: 1px solid #e2e4de;
	text-align: left;
	vertical-align: middle;
}

.sf-romania-network__table thead th {
	background-color: #0e5652;
	border-bottom-color: #0e5652;
	color: #ffffff;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.sf-romania-network__table thead th:nth-child(2),
.sf-romania-network__table thead th:nth-child(4) {
	width: 18%;
	text-align: center;
}

.sf-romania-network__table thead th:nth-child(3) {
	border-left: 1px solid rgba(255, 255, 255, 0.18);
}

.sf-romania-network__table tbody th {
	background-color: transparent;
	color: #16231f;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.45;
}

.sf-romania-network__table tbody td {
	color: #5b6864;
	font-size: 0.95rem;
	font-weight: 500;
	line-height: 1.45;
}

.sf-romania-network__table tbody td:nth-child(2),
.sf-romania-network__table tbody td:nth-child(4) {
	color: #874c20;
	font-size: 1rem;
	font-weight: 800;
	text-align: center;
}

.sf-romania-network__table tbody th:nth-child(3) {
	border-left: 1px solid #e2e4de;
}

.sf-romania-network__table tbody tr:nth-child(even) {
	background-color: #fafaf8;
}

.sf-romania-network__table tbody tr:hover {
	background-color: #f4f7f5;
}

.sf-romania-network__table tbody tr:last-child th,
.sf-romania-network__table tbody tr:last-child td {
	border-bottom: 0;
}

/* =========================================================
   ACCESSIBILITY
   ========================================================= */

.sf-screen-reader-text {
	position: absolute !important;
	overflow: hidden;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-romania-network {
		padding: 4rem 0;
	}

	.sf-romania-network__header {
		margin-bottom: 1.75rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-romania-network {
		padding: 3.25rem 0;
	}

	.sf-romania-network__header {
		margin-bottom: 1.5rem;
	}

	.sf-romania-network__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-romania-network__lead {
		font-size: 1rem;
	}

	.sf-romania-network__table-wrap {
		border-radius: 8px;
	}

	.sf-romania-network__table {
		min-width: 680px;
	}

	.sf-romania-network__table th,
	.sf-romania-network__table td {
		padding: 0.85rem 1rem;
	}
}

/* =========================================================
   PRODUCT HERO
   ========================================================= */

.sf-product-hero {
	padding: 4rem 0;
	background-color: #f1f2ee;
	border-bottom: 1px solid #e2e4de;
}

.sf-product-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

.sf-product-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: 4rem;
}

.sf-product-hero__content {
	min-width: 0;
}

.sf-product-hero__title {
	max-width: 650px;
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.5rem, 3.8vw, 3.6rem);
	font-weight: 600;
	line-height: 1.13;
	letter-spacing: -0.015em;
}

.sf-product-hero__description {
	max-width: 650px;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	line-height: 1.65;
}

.sf-product-hero__description p {
	margin: 0 0 1rem;
}

.sf-product-hero__description p:last-child {
	margin-bottom: 0;
}

/* =========================================================
   ACTIONS
   ========================================================= */

.sf-product-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 1.5rem;
}

.sf-product-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	margin: 0;
	padding: 0.78rem 1.45rem;
	border: 1px solid transparent;
	border-radius: 4px;
	box-shadow: none;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.sf-product-hero
a.sf-product-hero__button--primary {
	background-color: #a55d27 !important;
	border: 1px solid #a55d27 !important;
	color: #ffffff !important;
}

.sf-product-hero
a.sf-product-hero__button--primary:hover {
	background-color: #874c20 !important;
	border-color: #874c20 !important;
	color: #ffffff !important;
	text-decoration: none;
}

.sf-product-hero
a.sf-product-hero__button--secondary {
	background-color: transparent !important;
	border: 1px solid #cbcfc7 !important;
	color: #16231f !important;
}

.sf-product-hero
a.sf-product-hero__button--secondary:hover {
	background-color: #ffffff !important;
	border-color: #0e5652 !important;
	color: #0e5652 !important;
	text-decoration: none;
}

.sf-product-hero__button:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.22);
	outline-offset: 3px;
}

/* =========================================================
   PRODUCT IMAGE
   ========================================================= */

.sf-product-hero__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3;
	background-color: #e2e4de;
	border-radius: 14px;
	box-shadow: 0 20px 48px rgba(15, 33, 30, 0.16);
}

.sf-product-hero__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-product-hero {
		padding: 3.5rem 0;
	}

	.sf-product-hero__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-product-hero__content {
		max-width: 720px;
	}

	.sf-product-hero__media {
		max-width: 720px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-product-hero {
		padding: 2.75rem 0;
	}

	.sf-product-hero__grid {
		gap: 2rem;
	}

	.sf-product-hero__title {
		font-size: clamp(2.15rem, 10vw, 2.8rem);
	}

	.sf-product-hero__description {
		font-size: 1rem;
	}

	.sf-product-hero__actions {
		flex-direction: column;
		align-items: stretch;
		gap: 0.75rem;
	}

	.sf-product-hero__button {
		width: 100%;
	}

	.sf-product-hero__media {
		aspect-ratio: 4 / 3;
		border-radius: 10px;
	}
}

/* =========================================================
   PRODUCT DETAILS
   ========================================================= */

.sf-product-details {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-product-details .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   ROWS AND COLUMNS
   ========================================================= */

.sf-product-details__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 4rem;
	padding-bottom: 3.5rem;
	margin-bottom: 3.5rem;
	border-bottom: 1px solid #e2e4de;
}

.sf-product-details__row--last {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: 0;
}

.sf-product-details__column {
	min-width: 0;
}

.sf-product-details__heading {
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(1.7rem, 2.2vw, 2.2rem);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
}

.sf-product-details__column > p {
	margin: 0 0 1rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}

.sf-product-details__column > p:last-child {
	margin-bottom: 0;
}

.sf-product-details__column strong {
	color: #16231f;
	font-weight: 700;
}

/* =========================================================
   CHECK LIST
   ========================================================= */

.sf-product-details__check-list {
	display: grid;
	gap: 0.9rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-product-details__check-list li {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	align-items: start;
	gap: 0.75rem;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	line-height: 1.6;
}

.sf-product-details__check-list svg {
	display: block;
	width: 20px;
	height: 20px;
	margin-top: 0.16rem;
	color: #0e5652;
	flex: 0 0 auto;
}

/* =========================================================
   CONFIGURATION CARDS
   ========================================================= */

.sf-product-details__config-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.85rem;
	margin-top: 1.5rem;
}

.sf-product-details__config-card {
	padding: 1.25rem 1.35rem;
	background-color: #f1f2ee;
	border: 1px solid #e2e4de;
	border-left: 3px solid #0e5652;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-product-details__config-card:hover {
	border-color: #cbcfc7;
	border-left-color: #0e5652;
	box-shadow: 0 8px 22px rgba(15, 33, 30, 0.08);
	transform: translateY(-2px);
}

.sf-product-details__config-card h3 {
	margin: 0 0 0.45rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-product-details__config-card p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	line-height: 1.6;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-product-details {
		padding: 4rem 0;
	}

	.sf-product-details__row {
		gap: 2.5rem;
		padding-bottom: 3rem;
		margin-bottom: 3rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {
	.sf-product-details {
		padding: 3.25rem 0;
	}

	.sf-product-details__row {
		grid-template-columns: 1fr;
		gap: 2.5rem;
		padding-bottom: 2.75rem;
		margin-bottom: 2.75rem;
	}

	.sf-product-details__row--last {
		padding-bottom: 0;
		margin-bottom: 0;
	}

	.sf-product-details__heading {
		font-size: 1.8rem;
	}

	.sf-product-details__config-card {
		padding: 1.15rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-product-details__config-card {
		transition: none;
	}
}

/* =========================================================
   PRODUCT ASSOCIATED PROJECTS
   ========================================================= */

.sf-product-projects {
	padding: 5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-product-projects .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-product-projects__header {
	max-width: 760px;
	margin-bottom: 2rem;
}

.sf-product-projects__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-product-projects__title {
	margin: 0 0 0.75rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-product-projects__lead {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.65;
}

/* =========================================================
   PROJECT GRID
   ========================================================= */

.sf-product-projects__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Dacă sunt doar două proiecte, cardurile împart spațiul egal. */

.sf-product-projects__grid:has(
	.sf-product-projects__card:nth-child(2):last-child
) {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Dacă există un singur proiect, cardul nu ocupă exagerat tot rândul. */

.sf-product-projects__grid:has(
	.sf-product-projects__card:only-child
) {
	grid-template-columns: minmax(0, 580px);
}

/* =========================================================
   PROJECT CARD
   ========================================================= */

.sf-product-projects__card {
	position: relative;
	display: block;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 5 / 4;
	background-color: #e2e4de;
	border: 1px solid #d8dcd4;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15, 33, 30, 0.06);
	color: #ffffff;
	text-decoration: none;
	transition:
		transform 220ms ease,
		box-shadow 220ms ease,
		border-color 220ms ease;
}

.sf-product-projects__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 16px 34px rgba(15, 33, 30, 0.16);
	color: #ffffff;
	text-decoration: none;
	transform: translateY(-4px);
}

.sf-product-projects__card:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.28);
	outline-offset: 4px;
}

/* =========================================================
   PROJECT IMAGE
   ========================================================= */

.sf-product-projects__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms ease;
}

.sf-product-projects__card:hover
.sf-product-projects__image {
	transform: scale(1.06);
}

/* =========================================================
   PROJECT OVERLAY
   ========================================================= */

.sf-product-projects__overlay {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	padding: 1.5rem;
	color: #ffffff;
	background:
		linear-gradient(
			0deg,
			rgba(10, 26, 23, 0.96) 0%,
			rgba(10, 26, 23, 0.72) 52%,
			rgba(10, 26, 23, 0.04) 100%
		);
}

.sf-product-projects__tag {
	display: block;
	margin-bottom: 0.3rem;
	color: #f3c79a;
	font-family: "Manrope", sans-serif;
	font-size: 0.7rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.sf-product-projects__card-title {
	margin: 0;
	color: #ffffff;
	font-family: "Manrope", sans-serif;
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.35;
}

.sf-product-projects__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin-top: 0.65rem;
	color: #ffffff;
	font-family: "Manrope", sans-serif;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-product-projects__link svg {
	width: 15px;
	height: 15px;
	transition: transform 180ms ease;
}

.sf-product-projects__card:hover
.sf-product-projects__link svg {
	transform: translateX(4px);
}

/* =========================================================
   ALL PROJECTS LINK
   ========================================================= */

.sf-product-projects__footer {
	display: flex;
	justify-content: flex-start;
	margin-top: 2rem;
}

.sf-product-projects__all-link {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.4;
	text-decoration: none;
}

.sf-product-projects__all-link:hover {
	color: #082f2d;
	text-decoration: none;
}

.sf-product-projects__all-link svg {
	width: 16px;
	height: 16px;
	transition: transform 180ms ease;
}

.sf-product-projects__all-link:hover svg {
	transform: translateX(4px);
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-product-projects {
		padding: 4rem 0;
	}

	.sf-product-projects__grid,
	.sf-product-projects__grid:has(
		.sf-product-projects__card:nth-child(2):last-child
	) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-product-projects__grid:has(
		.sf-product-projects__card:only-child
	) {
		grid-template-columns: minmax(0, 580px);
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-product-projects {
		padding: 3.25rem 0;
	}

	.sf-product-projects__header {
		margin-bottom: 1.5rem;
	}

	.sf-product-projects__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-product-projects__lead {
		font-size: 1rem;
	}

	.sf-product-projects__grid,
	.sf-product-projects__grid:has(
		.sf-product-projects__card:nth-child(2):last-child
	),
	.sf-product-projects__grid:has(
		.sf-product-projects__card:only-child
	) {
		grid-template-columns: 1fr;
		gap: 1.2rem;
	}

	.sf-product-projects__card {
		aspect-ratio: 5 / 4;
	}

	.sf-product-projects__overlay {
		padding: 1.25rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-product-projects__card,
	.sf-product-projects__image,
	.sf-product-projects__link svg,
	.sf-product-projects__all-link svg {
		transition: none;
	}
}


/* =========================================================
   PRODUCT FAQ
   ========================================================= */

.sf-product-faq {
	padding: 5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-product-faq__container {
	width: 100%;
	max-width: 900px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-product-faq__header {
	max-width: 720px;
	margin-bottom: 2rem;
}

.sf-product-faq__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-product-faq__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* =========================================================
   ACCORDION
   ========================================================= */

.sf-product-faq__accordion {
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(15, 33, 30, 0.06);
}

.sf-product-faq__item {
	background-color: #ffffff;
	border-bottom: 1px solid #e2e4de;
	transition: background-color 180ms ease;
}

.sf-product-faq__item:last-child {
	border-bottom: 0;
}

.sf-product-faq__item.is-open {
	background-color: #fafaf8;
}

/* =========================================================
   QUESTION
   ========================================================= */

.sf-product-faq__question {
	margin: 0;
	padding: 0;
	font: inherit;
}

.sf-product-faq
button.sf-product-faq__trigger {
	appearance: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	width: 100%;
	min-height: 76px;
	margin: 0;
	padding: 1.25rem 1.5rem;
	background-color: transparent !important;
	border: 0 !important;
	border-radius: 0;
	box-shadow: none !important;
	color: #16231f !important;
	cursor: pointer;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.45;
	text-align: left;
	transition:
		background-color 180ms ease,
		color 180ms ease;
}

.sf-product-faq
button.sf-product-faq__trigger:hover {
	background-color: #f7f8f5 !important;
	color: #0e5652 !important;
}

.sf-product-faq
button.sf-product-faq__trigger:focus-visible {
	position: relative;
	z-index: 2;
	outline: 3px solid rgba(14, 86, 82, 0.24);
	outline-offset: -3px;
}

.sf-product-faq__item.is-open
.sf-product-faq__trigger {
	color: #0e5652 !important;
}

/* =========================================================
   PLUS / MINUS ICON
   ========================================================= */

.sf-product-faq__icon {
	position: relative;
	display: block;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	color: #0e5652;
}

.sf-product-faq__icon::before,
.sf-product-faq__icon::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 2px;
	background-color: currentColor;
	border-radius: 2px;
	content: "";
	transform: translate(-50%, -50%);
	transition: transform 180ms ease;
}

.sf-product-faq__icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.sf-product-faq__item.is-open
.sf-product-faq__icon::after {
	transform: translate(-50%, -50%) rotate(0deg);
}

/* =========================================================
   ANSWER
   ========================================================= */

.sf-product-faq__panel[hidden] {
	display: none;
}

.sf-product-faq__answer {
	padding: 0 4.5rem 1.5rem 1.5rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	line-height: 1.7;
}

.sf-product-faq__answer p {
	margin: 0;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-product-faq {
		padding: 4rem 0;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-product-faq {
		padding: 3.25rem 0;
	}

	.sf-product-faq__header {
		margin-bottom: 1.5rem;
	}

	.sf-product-faq__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-product-faq
	button.sf-product-faq__trigger {
		min-height: 68px;
		gap: 1rem;
		padding: 1.1rem 1.15rem;
		font-size: 0.94rem;
	}

	.sf-product-faq__answer {
		padding: 0 3.5rem 1.25rem 1.15rem;
		font-size: 0.92rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-product-faq__item,
	.sf-product-faq__trigger,
	.sf-product-faq__icon::before,
	.sf-product-faq__icon::after {
		transition: none;
	}
}

/* =========================================================
   RELATED PRODUCTS
   ========================================================= */

.sf-related-products {
	padding: 5rem 0;
	background-color: #ffffff;
	border-top: 1px solid #e2e4de;
}

.sf-related-products .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-related-products__header {
	max-width: 760px;
	margin-bottom: 2rem;
}

.sf-related-products__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-related-products__title {
	max-width: 760px;
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* =========================================================
   GRID
   ========================================================= */

.sf-related-products__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 1.75rem;
}

/* =========================================================
   CARD
   ========================================================= */

.sf-related-products__card {
	display: flex;
	overflow: hidden;
	min-width: 0;
	flex-direction: column;
	background-color: #ffffff;
	border: 1px solid #e2e4de !important;
	border-radius: 10px !important;
	box-shadow: 0 4px 14px rgba(15, 33, 30, 0.05) !important;
	color: #16231f !important;
	text-decoration: none;
	transition:
		transform 220ms ease,
		border-color 220ms ease !important,
		box-shadow 220ms ease;
}

.sf-related-products__card:hover {
	border-color: #cbcfc7 !important;
	box-shadow: 0 14px 30px rgba(15, 33, 30, 0.12) !important;
	color: #16231f !important;
	text-decoration: none;
	transform: translateY(-4px);
}

.sf-related-products__card:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.28);
	outline-offset: 4px;
}

/* =========================================================
   CARD IMAGE
   ========================================================= */

.sf-related-products__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 16 / 8.5;
	flex: 0 0 auto;
	background-color: #f1f2ee;
}

.sf-related-products__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms ease;
}

.sf-related-products__card:hover
.sf-related-products__image {
	transform: scale(1.05);
}

/* =========================================================
   CARD CONTENT
   ========================================================= */

.sf-related-products__body {
	display: flex;
	min-width: 0;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 1.4rem 1.5rem 1.5rem;
}

.sf-related-products__card-title {
	margin: 0 0 0.65rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	font-weight: 800;
	line-height: 1.35;
}

.sf-related-products__description {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.93rem;
	line-height: 1.65;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.sf-related-products__link {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 0.4rem;
	margin-top: 1.25rem;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.86rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-related-products__link svg {
	width: 15px;
	height: 15px;
	flex: 0 0 auto;
	transition: transform 180ms ease;
}

.sf-related-products__card:hover
.sf-related-products__link svg {
	transform: translateX(4px);
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-related-products {
		padding: 4rem 0;
	}

	.sf-related-products__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-related-products__media {
		aspect-ratio: 16 / 9;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-related-products {
		padding: 3.25rem 0;
	}

	.sf-related-products__header {
		margin-bottom: 1.5rem;
	}

	.sf-related-products__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-related-products__grid {
		grid-template-columns: 1fr;
		gap: 1.2rem;
	}

	.sf-related-products__media {
		aspect-ratio: 16 / 9;
	}

	.sf-related-products__body {
		padding: 1.25rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-related-products__card,
	.sf-related-products__image,
	.sf-related-products__link svg {
		transition: none;
	}
}

/* =========================================================
   TWAW DETAILS
   ========================================================= */

.sf-twaw-details {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-twaw-details .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   ROWS AND COLUMNS
   ========================================================= */

.sf-twaw-details__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 4rem;
	padding-bottom: 3.5rem;
	margin-bottom: 3.5rem;
	border-bottom: 1px solid #e2e4de;
}

.sf-twaw-details__row--last {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: 0;
}

.sf-twaw-details__column {
	min-width: 0;
}

.sf-twaw-details__heading {
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(1.7rem, 2.2vw, 2.2rem);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
}

.sf-twaw-details__column > p {
	margin: 0 0 1rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}

.sf-twaw-details__column > p:last-child {
	margin-bottom: 0;
}

.sf-twaw-details__column strong {
	color: #16231f;
	font-weight: 700;
}

/* =========================================================
   SPECIFICATION TABLE
   ========================================================= */

.sf-twaw-details__table-wrap {
	overflow: hidden;
	margin-top: 1.25rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
}

.sf-twaw-details__table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	background-color: #ffffff;
	font-family: "Manrope", sans-serif;
}

.sf-twaw-details__table th,
.sf-twaw-details__table td {
	padding: 0.9rem 1rem;
	border: 0;
	border-bottom: 1px solid #e2e4de;
	text-align: left;
	vertical-align: top;
}

.sf-twaw-details__table th {
	width: 42%;
	background-color: #f1f2ee;
	color: #16231f;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.5;
}

.sf-twaw-details__table td {
	color: #5b6864;
	font-size: 0.88rem;
	font-weight: 500;
	line-height: 1.5;
}

.sf-twaw-details__table tr:last-child th,
.sf-twaw-details__table tr:last-child td {
	border-bottom: 0;
}

.sf-twaw-details__hint {
	margin-top: 0.65rem !important;
	color: #73807c !important;
	font-size: 0.82rem !important;
	font-style: italic;
	line-height: 1.5 !important;
}

/* =========================================================
   CHECK LIST
   ========================================================= */

.sf-twaw-details__check-list {
	display: grid;
	gap: 0.9rem;
	margin: 1.25rem 0 0;
	padding: 0;
	list-style: none;
}

.sf-twaw-details__check-list li {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	align-items: start;
	gap: 0.75rem;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	line-height: 1.6;
}

.sf-twaw-details__check-list svg {
	display: block;
	width: 20px;
	height: 20px;
	margin-top: 0.16rem;
	color: #0e5652;
	flex: 0 0 auto;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-twaw-details {
		padding: 4rem 0;
	}

	.sf-twaw-details__row {
		gap: 2.5rem;
		padding-bottom: 3rem;
		margin-bottom: 3rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {
	.sf-twaw-details {
		padding: 3.25rem 0;
	}

	.sf-twaw-details__row {
		grid-template-columns: 1fr;
		gap: 2.5rem;
		padding-bottom: 2.75rem;
		margin-bottom: 2.75rem;
	}

	.sf-twaw-details__row--last {
		padding-bottom: 0;
		margin-bottom: 0;
	}

	.sf-twaw-details__heading {
		font-size: 1.8rem;
	}

	.sf-twaw-details__table th {
		width: 40%;
	}

	.sf-twaw-details__table th,
	.sf-twaw-details__table td {
		padding: 0.8rem;
		font-size: 0.82rem;
	}
}

/* =========================================================
   PRODUCT FAQ
   ========================================================= */

.sf-product-faq {
	padding: 5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-product-faq__container {
	width: 100%;
	max-width: 900px;
	margin-right: auto;
	margin-left: auto;
}

/* Header */

.sf-product-faq__header {
	max-width: 720px;
	margin-bottom: 2rem;
}

.sf-product-faq__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-product-faq__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* Accordion */

.sf-product-faq__accordion {
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(15, 33, 30, 0.06);
}

.sf-product-faq__item {
	background-color: #ffffff;
	border-bottom: 1px solid #e2e4de;
	transition: background-color 180ms ease;
}

.sf-product-faq__item:last-child {
	border-bottom: 0;
}

.sf-product-faq__item.is-open {
	background-color: #fafaf8;
}

.sf-product-faq__question {
	margin: 0;
	padding: 0;
	font: inherit;
}

/* Trigger */

.sf */

.sf-product-faq
button.sf-product-faq__trigger {
	appearance: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	width: 100%;
	min-height: 76px;
	margin: 0;
	padding: 1.25rem 1.5rem;
	background-color: transparent !important;
	border: 0 !important;
	border-radius: 0;
	box-shadow: none !important;
	color: #16231f !important;
	cursor: pointer;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.45;
	text-align: left;
}

.sf-product-faq
button.sf-product-faq__trigger:hover {
	background-color: #f7f8f5 !important;
	color: #0e5652 !important;
}

.sf-product-faq
button.sf-product-faq__trigger:focus-visible {
	position: relative;
	z-index: 2;
	outline: 3px solid rgba(14, 86, 82, 0.24);
	outline-offset: -3px;
}

.sf-product-faq__item.is-open
.sf-product-faq__trigger {
	color: #0e5652 !important;
}

/* Plus/minus */

.sf-product-faq__icon {
	position: relative;
	display: block;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	color: #0e5652;
}

.sf-product-faq__icon::before,
.sf-product-faq__icon::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 2px;
	background-color: currentColor;
	border-radius: 2px;
	content: "";
	transform: translate(-50%, -50%);
	transition: transform 180ms ease;
}

.sf-product-faq__icon::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.sf-product-faq__item.is-open
.sf-product-faq__icon::after {
	transform: translate(-50%, -50%) rotate(0deg);
}

/* Answer */

.sf-product-faq__panel[hidden] {
	display: none;
}

.sf-product-faq__answer {
	padding: 0 4.5rem 1.5rem 1.5rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	line-height: 1.7;
}

.sf-product-faq__answer p {
	margin: 0;
}

/* Responsive */

@media (max-width: 900px) {
	.sf-product-faq {
		padding: 4rem 0;
	}
}

@media (max-width: 600px) {
	.sf-product-faq {
		padding: 3.25rem 0;
	}

	.sf-product-faq__header {
		margin-bottom: 1.5rem;
	}

	.sf-product-faq__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-product-faq
	button.sf-product-faq__trigger {
		min-height: 68px;
		gap: 1rem;
		padding: 1.1rem 1.15rem;
		font-size: 0.94rem;
	}

	.sf-product-faq__answer {
		padding: 0 3.5rem 1.25rem 1.15rem;
		font-size: 0.92rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sf-product-faq__item,
	.sf-product-faq__icon::before,
	.sf-product-faq__icon::after {
		transition: none;
	}
}
/* =========================================================
   PRODUCT HERO
   ========================================================= */

.sf-product-hero {
	padding: 4rem 0;
	background-color: #f1f2ee;
	border-bottom: 1px solid #e2e4de;
}

.sf-product-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

.sf-product-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: 4rem;
}

.sf-product-hero__content {
	min-width: 0;
}

/* =========================================================
   TITLE AND DESCRIPTION
   ========================================================= */

.sf-product-hero__title {
	max-width: 650px;
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.5rem, 3.8vw, 3.6rem);
	font-weight: 600;
	line-height: 1.13;
	letter-spacing: -0.015em;
}

.sf-product-hero__description {
	max-width: 650px;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	line-height: 1.65;
}

.sf-product-hero__description p {
	margin: 0 0 1rem;
}

.sf-product-hero__description p:last-child {
	margin-bottom: 0;
}

/* =========================================================
   BUTTONS
   ========================================================= */

.sf-product-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 1.5rem;
}

.sf-product-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	margin: 0;
	padding: 0.78rem 1.45rem;
	border: 1px solid transparent;
	border-radius: 4px;
	box-shadow: none;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease;
}

.sf-product-hero
a.sf-product-hero__button--primary {
	background-color: #a55d27 !important;
	border: 1px solid #a55d27 !important;
	color: #ffffff !important;
}

.sf-product-hero
a.sf-product-hero__button--primary:hover {
	background-color: #874c20 !important;
	border-color: #874c20 !important;
	color: #ffffff !important;
	text-decoration: none;
}

.sf-product-hero
a.sf-product-hero__button--secondary {
	background-color: transparent !important;
	border: 1px solid #cbcfc7 !important;
	color: #16231f !important;
}

.sf-product-hero
a.sf-product-hero__button--secondary:hover {
	background-color: #ffffff !important;
	border-color: #0e5652 !important;
	color: #0e5652 !important;
	text-decoration: none;
}

.sf-product-hero__button:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.22);
	outline-offset: 3px;
}

/* =========================================================
   PRODUCT IMAGE
   ========================================================= */

.sf-product-hero__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3;
	background-color: #e2e4de;
	border-radius: 14px;
	box-shadow: 0 20px 48px rgba(15, 33, 30, 0.16);
}

.sf-product-hero__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* =========================================================
   PRODUCT ADVANTAGES
   ========================================================= */

.sf-product-hero__advantages {
	display: grid;
	overflow: hidden;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 3rem;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(15, 33, 30, 0.06);
}

.sf-product-hero__advantage {
	min-width: 0;
	padding: 1.5rem;
	border-right: 1px solid #e2e4de;
}

.sf-product-hero__advantage:last-child {
	border-right: 0;
}

.sf-product-hero__advantage-icon {
	display: block;
	width: 30px;
	height: 30px;
	margin-bottom: 1rem;
	color: #0e5652;
}

.sf-product-hero__advantage h2 {
	margin: 0 0 0.45rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-product-hero__advantage p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.84rem;
	line-height: 1.55;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-product-hero {
		padding: 3.5rem 0;
	}

	.sf-product-hero__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-product-hero__content,
	.sf-product-hero__media {
		max-width: 720px;
	}

	.sf-product-hero__advantages {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-product-hero__advantage:nth-child(2) {
		border-right: 0;
	}

	.sf-product-hero__advantage:nth-child(-n + 2) {
		border-bottom: 1px solid #e2e4de;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-product-hero {
		padding: 2.75rem 0;
	}

	.sf-product-hero__grid {
		gap: 2rem;
	}

	.sf-product-hero__title {
		font-size: clamp(2.15rem, 10vw, 2.8rem);
	}

	.sf-product-hero__description {
		font-size: 1rem;
	}

	.sf-product-hero__actions {
		flex-direction: column;
		align-items: stretch;
		gap: 0.75rem;
	}

	.sf-product-hero__button {
		width: 100%;
	}

	.sf-product-hero__media {
		aspect-ratio: 4 / 3;
		border-radius: 10px;
	}

	.sf-product-hero__advantages {
		grid-template-columns: 1fr;
		margin-top: 2rem;
	}

	.sf-product-hero__advantage {
		border-right: 0;
		border-bottom: 1px solid #e2e4de;
	}

	.sf-product-hero__advantage:nth-child(2) {
		border-bottom: 1px solid #e2e4de;
	}

	.sf-product-hero__advantage:last-child {
		border-bottom: 0;
	}
}

.sf-product-faq__answer-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin-top: 0.85rem;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.4;
	text-decoration: none;
}

.sf-product-faq__answer-link:hover {
	color: #082f2d;
	text-decoration: none;
}

.sf-product-faq__answer-link svg {
	width: 15px;
	height: 15px;
	transition: transform 180ms ease;
}

.sf-product-faq__answer-link:hover svg {
	transform: translateX(4px);
}


/* =========================================================
   TCAB DETAILS
   ========================================================= */

.sf-tcab-details {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-tcab-details .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   ROWS AND COLUMNS
   ========================================================= */

.sf-tcab-details__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 4rem;
	padding-bottom: 3.5rem;
	margin-bottom: 3.5rem;
	border-bottom: 1px solid #e2e4de;
}

.sf-tcab-details__row--last {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: 0;
}

.sf-tcab-details__column {
	min-width: 0;
}

.sf-tcab-details__heading {
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(1.7rem, 2.2vw, 2.2rem);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
}

.sf-tcab-details__column > p {
	margin: 0 0 1rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}

.sf-tcab-details__column > p:last-child {
	margin-bottom: 0;
}

.sf-tcab-details__column strong {
	color: #16231f;
	font-weight: 700;
}

/* =========================================================
   SPECIFICATION TABLE
   ========================================================= */

.sf-tcab-details__table-wrap {
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
}

.sf-tcab-details__table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	background-color: #ffffff;
	font-family: "Manrope", sans-serif;
}

.sf-tcab-details__table th,
.sf-tcab-details__table td {
	padding: 0.9rem 1rem;
	border: 0;
	border-bottom: 1px solid #e2e4de;
	text-align: left;
	vertical-align: top;
}

.sf-tcab-details__table th {
	width: 38%;
	background-color: #f1f2ee;
	color: #16231f;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.5;
}

.sf-tcab-details__table td {
	color: #5b6864;
	font-size: 0.88rem;
	font-weight: 500;
	line-height: 1.5;
}

.sf-tcab-details__table tr:last-child th,
.sf-tcab-details__table tr:last-child td {
	border-bottom: 0;
}

.sf-tcab-details__hint {
	margin-top: 0.65rem !important;
	color: #73807c !important;
	font-size: 0.82rem !important;
	font-style: italic;
	line-height: 1.5 !important;
}

/* =========================================================
   CHECK LIST
   ========================================================= */

.sf-tcab-details__check-list {
	display: grid;
	gap: 0.9rem;
	margin: 1.25rem 0 0;
	padding: 0;
	list-style: none;
}

.sf-tcab-details__check-list li {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	align-items: start;
	gap: 0.75rem;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	line-height: 1.6;
}

.sf-tcab-details__check-list svg {
	display: block;
	width: 20px;
	height: 20px;
	margin-top: 0.16rem;
	color: #0e5652;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-tcab-details {
		padding: 4rem 0;
	}

	.sf-tcab-details__row {
		gap: 2.5rem;
		padding-bottom: 3rem;
		margin-bottom: 3rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {
	.sf-tcab-details {
		padding: 3.25rem 0;
	}

	.sf-tcab-details__row {
		grid-template-columns: 1fr;
		gap: 2.5rem;
		padding-bottom: 2.75rem;
		margin-bottom: 2.75rem;
	}

	.sf-tcab-details__row--last {
		padding-bottom: 0;
		margin-bottom: 0;
	}

	.sf-tcab-details__heading {
		font-size: 1.8rem;
	}

	.sf-tcab-details__table th {
		width: 40%;
	}

	.sf-tcab-details__table th,
	.sf-tcab-details__table td {
		padding: 0.8rem;
		font-size: 0.82rem;
	}
}


/* =========================================================
   TCAB SERIES
   ========================================================= */

.sf-tcab-series .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   CONFIGURATIONS
   ========================================================= */

.sf-tcab-series__configurations {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-tcab-series__header {
	max-width: 820px;
	margin-bottom: 2rem;
}

.sf-tcab-series__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-tcab-series__title {
	margin: 0 0 0.75rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-tcab-series__lead {
	max-width: 720px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.65;
}

/* =========================================================
   CONFIGURATION GRID
   ========================================================= */

.sf-tcab-series__config-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 1.25rem;
}

.sf-tcab-series__config-card {
	grid-column: span 2;
	min-width: 0;
	padding: 1.4rem 1.5rem;
	background-color: #f8f9f6;
	border: 1px solid #e2e4de;
	border-top: 3px solid #0e5652;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

/* Centrează ultimele două carduri pe rândul al doilea. */

.sf-tcab-series__config-card:nth-child(4) {
	grid-column: 2 / span 2;
}

.sf-tcab-series__config-card:nth-child(5) {
	grid-column: 4 / span 2;
}

.sf-tcab-series__config-card:hover {
	border-color: #cbcfc7;
	border-top-color: #0e5652;
	box-shadow: 0 10px 24px rgba(15, 33, 30, 0.09);
	transform: translateY(-3px);
}

.sf-tcab-series__config-card h3 {
	margin: 0 0 0.55rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-tcab-series__config-card p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	line-height: 1.6;
}

/* =========================================================
   TECHNICAL SECTION
   ========================================================= */

.sf-tcab-series__technical {
	padding: 5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-tcab-series__technical-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 4rem;
}

.sf-tcab-series__technical-column {
	min-width: 0;
}

.sf-tcab-series__technical-heading {
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(1.7rem, 2.2vw, 2.2rem);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
}

.sf-tcab-series__technical-column > p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}

/* =========================================================
   CHECK LIST
   ========================================================= */

.sf-tcab-series__check-list {
	display: grid;
	gap: 0.9rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-tcab-series__check-list li {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	align-items: start;
	gap: 0.75rem;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	line-height: 1.6;
}

.sf-tcab-series__check-list svg {
	display: block;
	width: 20px;
	height: 20px;
	margin-top: 0.16rem;
	color: #0e5652;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-tcab-series__configurations,
	.sf-tcab-series__technical {
		padding: 4rem 0;
	}

	.sf-tcab-series__config-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-tcab-series__config-card,
	.sf-tcab-series__config-card:nth-child(4),
	.sf-tcab-series__config-card:nth-child(5) {
		grid-column: auto;
	}

	.sf-tcab-series__technical-grid {
		gap: 2.5rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {
	.sf-tcab-series__configurations,
	.sf-tcab-series__technical {
		padding: 3.25rem 0;
	}

	.sf-tcab-series__header {
		margin-bottom: 1.5rem;
	}

	.sf-tcab-series__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-tcab-series__lead {
		font-size: 1rem;
	}

	.sf-tcab-series__config-grid,
	.sf-tcab-series__technical-grid {
		grid-template-columns: 1fr;
		gap: 1.2rem;
	}

	.sf-tcab-series__technical-grid {
		gap: 2.5rem;
	}

	.sf-tcab-series__config-card {
		padding: 1.25rem;
	}

	.sf-tcab-series__technical-heading {
		font-size: 1.8rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-tcab-series__config-card {
		transition: none;
	}
}

/* =========================================================
   TONE DETAILS
   ========================================================= */

.sf-tone-details {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-tone-details .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   ADVANTAGES
   ========================================================= */

.sf-tone-details__advantages {
	display: grid;
	overflow: hidden;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: 4rem;
	background-color: #f1f2ee;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba(15, 33, 30, 0.06);
}

.sf-tone-details__advantage {
	min-width: 0;
	padding: 1.5rem;
	border-right: 1px solid #d8dcd4;
}

.sf-tone-details__advantage:last-child {
	border-right: 0;
}

.sf-tone-details__advantage-icon {
	display: block;
	width: 30px;
	height: 30px;
	margin-bottom: 1rem;
	color: #0e5652;
}

.sf-tone-details__advantage h2 {
	margin: 0 0 0.45rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-tone-details__advantage p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.84rem;
	line-height: 1.55;
}

/* =========================================================
   DETAILS ROW
   ========================================================= */

.sf-tone-details__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 4rem;
}

.sf-tone-details__column {
	min-width: 0;
}

.sf-tone-details__heading {
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(1.7rem, 2.2vw, 2.2rem);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
}

/* =========================================================
   SPECIFICATION TABLE
   ========================================================= */

.sf-tone-details__table-wrap {
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 8px;
}

.sf-tone-details__table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	background-color: #ffffff;
	font-family: "Manrope", sans-serif;
}

.sf-tone-details__table th,
.sf-tone-details__table td {
	padding: 1rem;
	border: 0;
	border-bottom: 1px solid #e2e4de;
	text-align: left;
	vertical-align: top;
}

.sf-tone-details__table th {
	width: 38%;
	background-color: #f1f2ee;
	color: #16231f;
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.5;
}

.sf-tone-details__table td {
	color: #5b6864;
	font-size: 0.88rem;
	font-weight: 500;
	line-height: 1.5;
}

.sf-tone-details__table tr:last-child th,
.sf-tone-details__table tr:last-child td {
	border-bottom: 0;
}

.sf-tone-details__hint {
	margin: 0.65rem 0 0;
	color: #73807c;
	font-family: "Manrope", sans-serif;
	font-size: 0.82rem;
	font-style: italic;
	line-height: 1.5;
}

/* =========================================================
   CHECK LIST
   ========================================================= */

.sf-tone-details__check-list {
	display: grid;
	gap: 0.9rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-tone-details__check-list li {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	align-items: start;
	gap: 0.75rem;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	line-height: 1.6;
}

.sf-tone-details__check-list svg {
	display: block;
	width: 20px;
	height: 20px;
	margin-top: 0.16rem;
	color: #0e5652;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-tone-details {
		padding: 4rem 0;
	}

	.sf-tone-details__advantages {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-bottom: 3.5rem;
	}

	.sf-tone-details__advantage:nth-child(2) {
		border-right: 0;
	}

	.sf-tone-details__advantage:nth-child(-n + 2) {
		border-bottom: 1px solid #d8dcd4;
	}

	.sf-tone-details__row {
		gap: 2.5rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {
	.sf-tone-details {
		padding: 3.25rem 0;
	}

	.sf-tone-details__advantages {
		grid-template-columns: 1fr;
		margin-bottom: 3rem;
	}

	.sf-tone-details__advantage {
		border-right: 0;
		border-bottom: 1px solid #d8dcd4;
	}

	.sf-tone-details__advantage:nth-child(2) {
		border-bottom: 1px solid #d8dcd4;
	}

	.sf-tone-details__advantage:last-child {
		border-bottom: 0;
	}

	.sf-tone-details__row {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-tone-details__heading {
		font-size: 1.8rem;
	}

	.sf-tone-details__table th {
		width: 40%;
	}

	.sf-tone-details__table th,
	.sf-tone-details__table td {
		padding: 0.8rem;
		font-size: 0.82rem;
	}
}

/* =========================================================
   TWATER SERIES
   ========================================================= */

.sf-twater-series .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   VARIANTS
   ========================================================= */

.sf-twater-series__variants {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-twater-series__header {
	max-width: 820px;
	margin-bottom: 2rem;
}

.sf-twater-series__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-twater-series__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* =========================================================
   VARIANT GRID
   ========================================================= */

.sf-twater-series__variant-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 1.25rem;
}

.sf-twater-series__variant-card {
	min-width: 0;
	padding: 1.5rem;
	background-color: #f8f9f6;
	border: 1px solid #e2e4de;
	border-top: 3px solid #0e5652;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-twater-series__variant-card:hover {
	border-color: #cbcfc7;
	border-top-color: #0e5652;
	box-shadow: 0 10px 24px rgba(15, 33, 30, 0.09);
	transform: translateY(-3px);
}

.sf-twater-series__variant-card h3 {
	margin: 0 0 0.55rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-twater-series__variant-card p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	line-height: 1.65;
}

/* =========================================================
   TECHNICAL SECTION
   ========================================================= */

.sf-twater-series__technical {
	padding: 5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-twater-series__technical-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 4rem;
}

.sf-twater-series__technical-column {
	min-width: 0;
}

.sf-twater-series__technical-heading {
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(1.7rem, 2.2vw, 2.2rem);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
}

.sf-twater-series__technical-column > p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}

/* =========================================================
   CHECK LIST
   ========================================================= */

.sf-twater-series__check-list {
	display: grid;
	gap: 0.9rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-twater-series__check-list li {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	align-items: start;
	gap: 0.75rem;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	line-height: 1.6;
}

.sf-twater-series__check-list svg {
	display: block;
	width: 20px;
	height: 20px;
	margin-top: 0.16rem;
	color: #0e5652;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-twater-series__variants,
	.sf-twater-series__technical {
		padding: 4rem 0;
	}

	.sf-twater-series__variant-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-twater-series__technical-grid {
		gap: 2.5rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {
	.sf-twater-series__variants,
	.sf-twater-series__technical {
		padding: 3.25rem 0;
	}

	.sf-twater-series__header {
		margin-bottom: 1.5rem;
	}

	.sf-twater-series__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-twater-series__variant-grid,
	.sf-twater-series__technical-grid {
		grid-template-columns: 1fr;
	}

	.sf-twater-series__variant-grid {
		gap: 1rem;
	}

	.sf-twater-series__technical-grid {
		gap: 2.5rem;
	}

	.sf-twater-series__variant-card {
		padding: 1.25rem;
	}

	.sf-twater-series__technical-heading {
		font-size: 1.8rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-twater-series__variant-card {
		transition: none;
	}
}


/* =========================================================
   CITY SERIES
   ========================================================= */

.sf-city-series .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   CONFIGURATIONS
   ========================================================= */

.sf-city-series__configurations {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-city-series__header {
	max-width: 820px;
	margin-bottom: 2rem;
}

.sf-city-series__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-city-series__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* =========================================================
   CONFIGURATION GRID
   ========================================================= */

.sf-city-series__config-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 1.25rem;
}

.sf-city-series__config-card {
	min-width: 0;
	padding: 1.4rem 1.5rem;
	background-color: #f8f9f6;
	border: 1px solid #e2e4de;
	border-top: 3px solid #0e5652;
	border-radius: 8px;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.sf-city-series__config-card:hover {
	border-color: #cbcfc7;
	border-top-color: #0e5652;
	box-shadow: 0 10px 24px rgba(15, 33, 30, 0.09);
	transform: translateY(-3px);
}

.sf-city-series__config-card h3 {
	margin: 0 0 0.55rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-city-series__config-card p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	line-height: 1.6;
}

/* =========================================================
   TECHNICAL SECTION
   ========================================================= */

.sf-city-series__technical {
	padding: 5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-city-series__technical-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 4rem;
}

.sf-city-series__technical-column {
	min-width: 0;
}

.sf-city-series__technical-heading {
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(1.7rem, 2.2vw, 2.2rem);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
}

.sf-city-series__technical-column > p {
	margin: 0 0 1rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.7;
}

.sf-city-series__technical-column > p:last-child {
	margin-bottom: 0;
}

/* =========================================================
   SPECIFICATION TABLE
   ========================================================= */

.sf-city-series__table-wrap {
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #d8dcd4;
	border-radius: 8px;
}

.sf-city-series__table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	background-color: #ffffff;
	font-family: "Manrope", sans-serif;
}

.sf-city-series__table th,
.sf-city-series__table td {
	padding: 0.9rem 1rem;
	border: 0;
	border-bottom: 1px solid #e2e4de;
	text-align: left;
	vertical-align: top;
}

.sf-city-series__table th {
	width: 30%;
	background-color: #e9ece6;
	color: #16231f;
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.5;
}

.sf-city-series__table td {
	color: #5b6864;
	font-size: 0.86rem;
	font-weight: 500;
	line-height: 1.5;
}

.sf-city-series__table tr:last-child th,
.sf-city-series__table tr:last-child td {
	border-bottom: 0;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-city-series__configurations,
	.sf-city-series__technical {
		padding: 4rem 0;
	}

	.sf-city-series__config-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-city-series__technical-grid {
		gap: 2.5rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {
	.sf-city-series__configurations,
	.sf-city-series__technical {
		padding: 3.25rem 0;
	}

	.sf-city-series__header {
		margin-bottom: 1.5rem;
	}

	.sf-city-series__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-city-series__config-grid,
	.sf-city-series__technical-grid {
		grid-template-columns: 1fr;
	}

	.sf-city-series__config-grid {
		gap: 1rem;
	}

	.sf-city-series__technical-grid {
		gap: 2.5rem;
	}

	.sf-city-series__config-card {
		padding: 1.25rem;
	}

	.sf-city-series__technical-heading {
		font-size: 1.8rem;
	}

	.sf-city-series__table-wrap {
		overflow-x: auto;
	}

	.sf-city-series__table {
		min-width: 520px;
	}

	.sf-city-series__table th,
	.sf-city-series__table td {
		padding: 0.8rem;
		font-size: 0.82rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-city-series__config-card {
		transition: none;
	}
}


/* =========================================================
   SAM OVERVIEW
   Avantaje + configurații + tehnologie
   ========================================================= */

.sf-sam-overview {
	width: 100%;
	color: #16231f;
	font-family: "Manrope", sans-serif;
}

.sf-sam-overview *,
.sf-sam-overview *::before,
.sf-sam-overview *::after {
	box-sizing: border-box;
}

.sf-sam-overview .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   AVANTAJE
   ========================================================= */

.sf-sam-overview__advantages-section {
	padding: 0 0 5rem;
	background-color: #ffffff;
}

.sf-sam-overview__advantages {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 10px 32px rgba(15, 33, 30, 0.07);
}

.sf-sam-overview__advantage {
	position: relative;
	min-width: 0;
	padding: 2rem 1.75rem;
	border-right: 1px solid #e2e4de;
}

.sf-sam-overview__advantage:last-child {
	border-right: 0;
}

.sf-sam-overview__icon {
	display: block;
	width: 30px;
	height: 30px;
	margin-bottom: 1.15rem;
	color: #0e5652;
}

.sf-sam-overview__advantage h2 {
	margin: 0 0 0.55rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.35;
}

.sf-sam-overview__advantage p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	line-height: 1.6;
}

/* =========================================================
   CONFIGURAȚII
   ========================================================= */

.sf-sam-overview__configurations-section {
	padding: 5rem 0;
	background-color: #ffffff;
	border-top: 1px solid #e2e4de;
}

.sf-sam-overview__header {
	max-width: 780px;
	margin-bottom: 2.25rem;
}

.sf-sam-overview__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-sam-overview__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-sam-overview__configurations {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}

.sf-sam-overview__configuration {
	min-width: 0;
	padding: 1.6rem;
	background-color: #ffffff;
	border: 1px solid #d8dcd4;
	border-radius: 8px;
	box-shadow: 0 3px 12px rgba(15, 33, 30, 0.04);
	transition:
		transform 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease;
}

.sf-sam-overview__configuration:hover {
	border-color: #aeb8af;
	box-shadow: 0 10px 24px rgba(15, 33, 30, 0.09);
	transform: translateY(-3px);
}

.sf-sam-overview__configuration h3 {
	margin: 0 0 0.55rem;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.35;
}

.sf-sam-overview__configuration p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	line-height: 1.6;
}

/* =========================================================
   TEHNOLOGIE
   ========================================================= */

.sf-sam-overview__technology-section {
	padding: 5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-sam-overview__technology-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 4rem;
	align-items: start;
}

.sf-sam-overview__technology-column {
	min-width: 0;
}

.sf-sam-overview__technology-column h2 {
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(1.65rem, 2.2vw, 2rem);
	font-weight: 600;
	line-height: 1.2;
}

.sf-sam-overview__technology-column > p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	line-height: 1.75;
}

/* =========================================================
   CHECK LIST
   ========================================================= */

.sf-sam-overview__check-list {
	display: grid;
	gap: 0.9rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sf-sam-overview__check-list li {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin: 0;
	color: #43504c;
	font-family: "Manrope", sans-serif;
	font-size: 0.96rem;
	line-height: 1.6;
}

.sf-sam-overview__check-list svg {
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	margin-top: 0.18rem;
	color: #0e5652;
}

.sf-sam-overview__check-list span {
	display: block;
	min-width: 0;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-sam-overview__advantages-section {
		padding-bottom: 4rem;
	}

	.sf-sam-overview__advantages {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-sam-overview__advantage {
		border-bottom: 1px solid #e2e4de;
	}

	.sf-sam-overview__advantage:nth-child(2) {
		border-right: 0;
	}

	.sf-sam-overview__advantage:nth-child(3),
	.sf-sam-overview__advantage:nth-child(4) {
		border-bottom: 0;
	}

	.sf-sam-overview__configurations-section,
	.sf-sam-overview__technology-section {
		padding: 4rem 0;
	}

	.sf-sam-overview__configurations {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-sam-overview__technology-grid {
		gap: 2.75rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {
	.sf-sam-overview__advantages-section {
		padding-bottom: 3.25rem;
	}

	.sf-sam-overview__advantages {
		grid-template-columns: 1fr;
	}

	.sf-sam-overview__advantage,
	.sf-sam-overview__advantage:nth-child(2),
	.sf-sam-overview__advantage:nth-child(3) {
		padding: 1.5rem;
		border-right: 0;
		border-bottom: 1px solid #e2e4de;
	}

	.sf-sam-overview__advantage:last-child {
		border-bottom: 0;
	}

	.sf-sam-overview__configurations-section,
	.sf-sam-overview__technology-section {
		padding: 3.25rem 0;
	}

	.sf-sam-overview__header {
		margin-bottom: 1.6rem;
	}

	.sf-sam-overview__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-sam-overview__configurations {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.sf-sam-overview__configuration {
		padding: 1.4rem;
	}

	.sf-sam-overview__technology-grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-sam-overview__technology-column h2 {
		font-size: 1.7rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-sam-overview__configuration {
		transition: none;
	}
}

/* =========================================================
   LATEST PROJECTS
   ========================================================= */

.sf-latest-projects {
	padding: 5rem 0;
	background-color: #ffffff;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-latest-projects *,
.sf-latest-projects *::before,
.sf-latest-projects *::after {
	box-sizing: border-box;
}

.sf-latest-projects .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-latest-projects__header-row {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 2rem;
	margin-bottom: 2.25rem;
}

.sf-latest-projects__header {
	max-width: 760px;
}

.sf-latest-projects__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-latest-projects__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* =========================================================
   ALL PROJECTS BUTTON
   ========================================================= */

.sf-latest-projects__all-link {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	min-height: 48px;
	padding: 0.78rem 1.35rem;
	color: #0e5652 !important;
	background-color: transparent !important;
	border: 1px solid #aeb8af !important;
	border-radius: 4px;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	text-decoration: none !important;
	transition:
		color 180ms ease,
		background-color 180ms ease,
		border-color 180ms ease;
}

.sf-latest-projects__all-link svg {
	width: 17px;
	height: 17px;
	transition: transform 180ms ease;
}

.sf-latest-projects__all-link:hover {
	color: #ffffff !important;
	background-color: #0e5652 !important;
	border-color: #0e5652 !important;
	text-decoration: none !important;
}

.sf-latest-projects__all-link:hover svg {
	transform: translateX(4px);
}

.sf-latest-projects__all-link:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.25);
	outline-offset: 4px;
}

/* =========================================================
   PROJECT GRID
   ========================================================= */

.sf-latest-projects__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.75rem;
}

/* Două proiecte */

.sf-latest-projects__grid:has(
	.sf-latest-projects__card:nth-child(2):last-child
) {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Un singur proiect */

.sf-latest-projects__grid:has(
	.sf-latest-projects__card:only-child
) {
	grid-template-columns: minmax(0, 580px);
}

/* =========================================================
   PROJECT CARD
   ========================================================= */

.sf-latest-projects__card {
	position: relative;
	display: block;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 5 / 4;
	background-color: #e2e4de;
	border: 1px solid #d8dcd4 !important;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15, 33, 30, 0.06);
	color: #ffffff !important;
	text-decoration: none !important;
	transition:
		transform 220ms ease,
		box-shadow 220ms ease,
		border-color 220ms ease;
}

.sf-latest-projects__card:hover {
	border-color: #aeb8af !important;
	box-shadow: 0 16px 34px rgba(15, 33, 30, 0.16);
	color: #ffffff !important;
	text-decoration: none !important;
	transform: translateY(-4px);
}

.sf-latest-projects__card:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.28);
	outline-offset: 4px;
}

/* =========================================================
   IMAGE
   ========================================================= */

.sf-latest-projects__media {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.sf-latest-projects__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms ease;
}

.sf-latest-projects__card:hover
.sf-latest-projects__image {
	transform: scale(1.055);
}

.sf-latest-projects__placeholder {
	width: 100%;
	height: 100%;
	background:
		linear-gradient(
			135deg,
			#d8dcd4 0%,
			#f1f2ee 50%,
			#cbcfc7 100%
		);
}

/* =========================================================
   PERMANENT OVERLAY
   ========================================================= */

.sf-latest-projects__overlay {
	position: absolute;
	inset: auto 0 0;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 58%;
	padding: 1.5rem;
	opacity: 1 !important;
	visibility: visible !important;
	color: #ffffff;
	background:
		linear-gradient(
			0deg,
			rgba(8, 28, 26, 0.97) 0%,
			rgba(8, 28, 26, 0.77) 48%,
			rgba(8, 28, 26, 0) 100%
		);
	transform: none !important;
	pointer-events: none;
}

.sf-latest-projects__tag {
	display: block;
	margin-bottom: 0.35rem;
	color: #f3c79a !important;
	font-family: "Manrope", sans-serif;
	font-size: 0.7rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.sf-latest-projects__card-title {
	margin: 0;
	color: #ffffff !important;
	font-family: "Manrope", sans-serif;
	font-size: 1.2rem;
	font-weight: 800;
	line-height: 1.35;
}

.sf-latest-projects__card-link {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 0.45rem;
	margin-top: 0.7rem;
	color: #ffffff !important;
	font-family: "Manrope", sans-serif;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.4;
}

.sf-latest-projects__card-link svg {
	width: 15px;
	height: 15px;
	transition: transform 180ms ease;
}

.sf-latest-projects__card:hover
.sf-latest-projects__card-link svg {
	transform: translateX(4px);
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-latest-projects {
		padding: 4rem 0;
	}

	.sf-latest-projects__grid,
	.sf-latest-projects__grid:has(
		.sf-latest-projects__card:nth-child(2):last-child
	) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-latest-projects__grid:has(
		.sf-latest-projects__card:only-child
	) {
		grid-template-columns: minmax(0, 580px);
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {
	.sf-latest-projects {
		padding: 3.25rem 0;
	}

	.sf-latest-projects__header-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 1.25rem;
		margin-bottom: 1.75rem;
	}

	.sf-latest-projects__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-latest-projects__all-link {
		width: 100%;
	}

	.sf-latest-projects__grid,
	.sf-latest-projects__grid:has(
		.sf-latest-projects__card:nth-child(2):last-child
	),
	.sf-latest-projects__grid:has(
		.sf-latest-projects__card:only-child
	) {
		grid-template-columns: 1fr;
		gap: 1.2rem;
	}

	.sf-latest-projects__card {
		aspect-ratio: 5 / 4;
	}

	.sf-latest-projects__overlay {
		min-height: 62%;
		padding: 1.25rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-latest-projects__all-link,
	.sf-latest-projects__all-link svg,
	.sf-latest-projects__card,
	.sf-latest-projects__image,
	.sf-latest-projects__card-link svg {
		transition: none;
	}
}

/* =========================================================
   SERVICES LANDING – SHARED
   ========================================================= */

.sf-services-hero *,
.sf-services-hero *::before,
.sf-services-hero *::after,
.sf-services-options *,
.sf-services-options *::before,
.sf-services-options *::after {
	box-sizing: border-box;
}

.sf-services-hero .sf-container,
.sf-services-options .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SERVICES HERO
   ========================================================= */

.sf-services-hero {
	padding: 4.5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-services-hero__content {
	max-width: 900px;
}

.sf-services-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.85rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-services-hero__title {
	max-width: 850px;
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.5rem, 4vw, 4rem);
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: -0.015em;
}

.sf-services-hero__lead {
	max-width: 820px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	line-height: 1.7;
}

/* =========================================================
   SERVICES OPTIONS
   ========================================================= */

.sf-services-options {
	padding: 5rem 0;
	background-color: #ffffff;
}

.sf-services-options__header {
	max-width: 760px;
	margin-bottom: 2.25rem;
}

.sf-services-options__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.75rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-services-options__title {
	margin: 0 0 0.75rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-services-options__lead {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.65;
}

/* =========================================================
   CARDS GRID
   ========================================================= */

.sf-services-options__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2rem;
	align-items: stretch;
}

/* =========================================================
   SERVICE CARD
   ========================================================= */

.sf-services-options__card {
	display: flex;
	overflow: hidden;
	min-width: 0;
	min-height: 100%;
	flex-direction: column;
	background-color: #ffffff;
	border: 1px solid #d8dcd4 !important;
	border-radius: 12px;
	box-shadow: 0 5px 18px rgba(15, 33, 30, 0.06);
	color: #16231f !important;
	text-decoration: none !important;
	transition:
		transform 220ms ease,
		box-shadow 220ms ease,
		border-color 220ms ease;
}

.sf-services-options__card:hover {
	border-color: #aeb8af !important;
	box-shadow: 0 18px 38px rgba(15, 33, 30, 0.14);
	color: #16231f !important;
	text-decoration: none !important;
	transform: translateY(-5px);
}

.sf-services-options__card:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.28);
	outline-offset: 4px;
}

/* =========================================================
   CARD IMAGE
   ========================================================= */

.sf-services-options__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 16 / 9;
	background-color: #e2e4de;
}

.sf-services-options__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms ease;
}

.sf-services-options__card:hover
.sf-services-options__image {
	transform: scale(1.045);
}

/* =========================================================
   CARD CONTENT
   ========================================================= */

.sf-services-options__body {
	display: flex;
	flex: 1;
	align-items: flex-start;
	flex-direction: column;
	padding: 2rem;
}

.sf-services-options__tag {
	display: block;
	margin-bottom: 0.65rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.sf-services-options__card-title {
	margin: 0 0 0.85rem;
	color: #082f2d !important;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(1.55rem, 2.2vw, 2rem);
	font-weight: 600;
	line-height: 1.2;
}

.sf-services-options__description {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.98rem;
	line-height: 1.7;
}

/* =========================================================
   CARD FEATURES
   ========================================================= */

.sf-services-options__features {
	display: grid;
	gap: 0.65rem;
	width: 100%;
	margin: 1.35rem 0 1.65rem;
	padding: 1.25rem 0 0;
	border-top: 1px solid #e2e4de;
	list-style: none;
}

.sf-services-options__features li {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	margin: 0;
	color: #43504c;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	line-height: 1.5;
}

.sf-services-options__features svg {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin-top: 0.12rem;
	color: #0e5652;
}

/* =========================================================
   CARD LINK
   ========================================================= */

.sf-services-options__link {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	margin-top: auto;
	color: #0e5652 !important;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-services-options__link svg {
	width: 17px;
	height: 17px;
	transition: transform 180ms ease;
}

.sf-services-options__card:hover
.sf-services-options__link svg {
	transform: translateX(5px);
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-services-hero {
		padding: 4rem 0;
	}

	.sf-services-options {
		padding: 4rem 0;
	}

	.sf-services-options__grid {
		gap: 1.5rem;
	}

	.sf-services-options__body {
		padding: 1.6rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {
	.sf-services-hero {
		padding: 3.25rem 0;
	}

	.sf-services-hero__title {
		font-size: clamp(2.25rem, 10vw, 3rem);
	}

	.sf-services-hero__lead {
		font-size: 1rem;
	}

	.sf-services-options {
		padding: 3.25rem 0;
	}

	.sf-services-options__header {
		margin-bottom: 1.65rem;
	}

	.sf-services-options__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-services-options__lead {
		font-size: 1rem;
	}

	.sf-services-options__grid {
		grid-template-columns: 1fr;
		gap: 1.35rem;
	}

	.sf-services-options__body {
		padding: 1.5rem;
	}

	.sf-services-options__media {
		aspect-ratio: 16 / 10;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-services-options__card,
	.sf-services-options__image,
	.sf-services-options__link svg {
		transition: none;
	}
}


/* =========================================================
   PROJECT INFORMATION – FĂRĂ PRODUS ASOCIAT
   ========================================================= */

.sf-project-information {
	padding: 5rem 0;
	background-color: #ffffff;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-project-information .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

.sf-project-information__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	align-items: start;
}

.sf-project-information__panel {
	min-width: 0;
	padding-right: 3.5rem;
}

.sf-project-information__panel +
.sf-project-information__panel {
	padding-right: 0;
	padding-left: 3.5rem;
	border-left: 1px solid #d8dcd4;
}

/* Dacă există numai descrierea sau numai detaliile. */

.sf-project-information__panel:only-child {
	grid-column: 1 / -1;
	width: 100%;
	max-width: 860px;
	padding-right: 0;
	padding-left: 0;
	border-left: 0;
}

.sf-project-information__panel
.sf-project-section-heading {
	margin-bottom: 1.4rem;
}

.sf-project-information__panel
.sf-project-section-heading__title {
	font-size: clamp(2rem, 3vw, 2.8rem);
}

.sf-project-information__panel
.sf-project-rich-text {
	width: 100%;
	max-width: none;
}

.sf-project-information__panel
.sf-project-rich-text > *:first-child {
	margin-top: 0;
}

.sf-project-information__panel
.sf-project-rich-text > *:last-child {
	margin-bottom: 0;
}

/* Dacă există produs asociat, dar nu sunt completate detaliile. */

.sf-project-details__grid--product-only {
	grid-template-columns: minmax(0, 520px);
	justify-content: end;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-project-information {
		padding: 4rem 0;
	}

	.sf-project-information__panel {
		padding-right: 2rem;
	}

	.sf-project-information__panel +
	.sf-project-information__panel {
		padding-left: 2rem;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {
	.sf-project-information {
		padding: 3.25rem 0;
	}

	.sf-project-information__grid {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.sf-project-information__panel,
	.sf-project-information__panel:only-child {
		grid-column: auto;
		width: 100%;
		max-width: none;
		padding: 0;
		border: 0;
	}

	.sf-project-information__panel +
	.sf-project-information__panel {
		margin-top: 2.5rem;
		padding-top: 2.5rem;
		padding-left: 0;
		border-top: 1px solid #d8dcd4;
		border-left: 0;
	}

	.sf-project-information__panel
	.sf-project-section-heading__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-project-details__grid--product-only {
		grid-template-columns: 1fr;
		justify-content: stretch;
	}
}

/* =========================================================
   ECOLOGICAL TOILETS PRODUCER HERO
   ========================================================= */

.sf-eco-producer-hero {
	padding: 4.5rem 0;
	background-color: #ffffff;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-producer-hero *,
.sf-eco-producer-hero *::before,
.sf-eco-producer-hero *::after {
	box-sizing: border-box;
}

.sf-eco-producer-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   GRID
   ========================================================= */

.sf-eco-producer-hero__grid {
	display: grid;
	grid-template-columns:
		minmax(0, 1fr)
		minmax(420px, 0.95fr);
	align-items: center;
	gap: clamp(3rem, 6vw, 5.5rem);
}

.sf-eco-producer-hero__content {
	min-width: 0;
	max-width: 650px;
}

/* =========================================================
   TYPOGRAPHY
   ========================================================= */

.sf-eco-producer-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.9rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-producer-hero__title {
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.6rem, 4vw, 4rem);
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.015em;
}

.sf-eco-producer-hero__lead {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	line-height: 1.7;
}

/* =========================================================
   ACTIONS
   ========================================================= */

.sf-eco-producer-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 1.7rem;
}

.sf-eco-producer-hero__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	min-height: 48px;
	padding: 0.78rem 1.4rem;
	border: 1px solid transparent !important;
	border-radius: 4px;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	text-decoration: none !important;
	transition:
		color 180ms ease,
		background-color 180ms ease,
		border-color 180ms ease,
		transform 180ms ease;
}

.sf-eco-producer-hero__button svg {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
}

.sf-eco-producer-hero__button--primary {
	color: #ffffff !important;
	background-color: #a55d27 !important;
	border-color: #a55d27 !important;
}

.sf-eco-producer-hero__button--primary:hover {
	color: #ffffff !important;
	background-color: #874c20 !important;
	border-color: #874c20 !important;
	text-decoration: none !important;
	transform: translateY(-2px);
}

.sf-eco-producer-hero__button--secondary {
	color: #0e5652 !important;
	background-color: transparent !important;
	border-color: #aeb8af !important;
}

.sf-eco-producer-hero__button--secondary:hover {
	color: #ffffff !important;
	background-color: #0e5652 !important;
	border-color: #0e5652 !important;
	text-decoration: none !important;
	transform: translateY(-2px);
}

.sf-eco-producer-hero__button:focus-visible {
	outline: 3px solid rgba(14, 86, 82, 0.25);
	outline-offset: 4px;
}

/* =========================================================
   IMAGE
   ========================================================= */

.sf-eco-producer-hero__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3.1;
	background-color: #f1f2ee;
	border-radius: 14px;
	box-shadow: 0 20px 48px rgba(15, 33, 30, 0.16);
}

.sf-eco-producer-hero__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-eco-producer-hero {
		padding: 4rem 0;
	}

	.sf-eco-producer-hero__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-eco-producer-hero__content {
		max-width: 760px;
	}

	.sf-eco-producer-hero__media {
		max-width: 760px;
		aspect-ratio: 16 / 10;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-eco-producer-hero {
		padding: 3.25rem 0;
	}

	.sf-eco-producer-hero__grid {
		gap: 2rem;
	}

	.sf-eco-producer-hero__title {
		font-size: clamp(2.3rem, 10vw, 3rem);
	}

	.sf-eco-producer-hero__lead {
		font-size: 1rem;
	}

	.sf-eco-producer-hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.sf-eco-producer-hero__button {
		width: 100%;
	}

	.sf-eco-producer-hero__media {
		aspect-ratio: 4 / 3;
		border-radius: 10px;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-eco-producer-hero__button {
		transition: none;
	}
}

/* =========================================================
   ECOLOGICAL TOILETS – STATISTICS
   ========================================================= */

.sf-eco-stats {
	padding: 2.5rem 0;
	background-color: #082f2d;
}

.sf-eco-stats *,
.sf-eco-stats *::before,
.sf-eco-stats *::after {
	box-sizing: border-box;
}

.sf-eco-stats .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

.sf-eco-stats__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sf-eco-stats__item {
	position: relative;
	display: flex;
	min-width: 0;
	align-items: flex-start;
	flex-direction: column;
	justify-content: center;
	padding: 0.35rem 2rem;
	border-right: 1px solid rgba(255, 255, 255, 0.18);
}

.sf-eco-stats__item:first-child {
	padding-left: 0;
}

.sf-eco-stats__item:last-child {
	padding-right: 0;
	border-right: 0;
}

.sf-eco-stats__number {
	display: block;
	margin-bottom: 0.35rem;
	color: #ffffff;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: -0.01em;
}

.sf-eco-stats__label {
	display: block;
	max-width: 220px;
	color: #cfe3df;
	font-family: "Manrope", sans-serif;
	font-size: 0.82rem;
	font-weight: 600;
	line-height: 1.5;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-eco-stats__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-eco-stats__item {
		padding: 1.25rem 2rem;
	}

	.sf-eco-stats__item:first-child {
		padding-left: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.18);
	}

	.sf-eco-stats__item:nth-child(2) {
		padding-right: 0;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.18);
	}

	.sf-eco-stats__item:nth-child(3) {
		padding-left: 0;
	}

	.sf-eco-stats__item:nth-child(4) {
		padding-right: 0;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 550px) {
	.sf-eco-stats {
		padding: 2rem 0;
	}

	.sf-eco-stats__grid {
		grid-template-columns: 1fr;
	}

	.sf-eco-stats__item,
	.sf-eco-stats__item:first-child,
	.sf-eco-stats__item:nth-child(2),
	.sf-eco-stats__item:nth-child(3),
	.sf-eco-stats__item:nth-child(4),
	.sf-eco-stats__item:last-child {
		align-items: center;
		padding: 1.35rem 0;
		border-right: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.18);
		text-align: center;
	}

	.sf-eco-stats__item:first-child {
		padding-top: 0;
	}

	.sf-eco-stats__item:last-child {
		padding-bottom: 0;
		border-bottom: 0;
	}

	.sf-eco-stats__label {
		max-width: 280px;
	}
}

/* =========================================================
   ECOLOGICAL TOILET DEFINITION
   ========================================================= */

.sf-eco-definition {
	padding: 5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-definition *,
.sf-eco-definition *::before,
.sf-eco-definition *::after {
	box-sizing: border-box;
}

.sf-eco-definition .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   GRID
   ========================================================= */

.sf-eco-definition__grid {
	display: grid;
	grid-template-columns:
		minmax(0, 1fr)
		minmax(420px, 0.92fr);
	align-items: center;
	gap: clamp(3rem, 6vw, 5.5rem);
}

.sf-eco-definition__content {
	min-width: 0;
}

/* =========================================================
   TYPOGRAPHY
   ========================================================= */

.sf-eco-definition__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.8rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-definition__title {
	max-width: 650px;
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2rem, 3vw, 2.8rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-eco-definition__lead {
	max-width: 680px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.7;
}

/* =========================================================
   CHECK LIST
   ========================================================= */

.sf-eco-definition__list {
	display: grid;
	gap: 0.75rem;
	margin: 1.4rem 0 0;
	padding: 0;
	list-style: none;
}

.sf-eco-definition__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	margin: 0;
	color: #43504c;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.55;
}

.sf-eco-definition__list svg {
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	margin-top: 0.15rem;
	color: #0e5652;
}

.sf-eco-definition__list span {
	display: block;
	min-width: 0;
}

/* =========================================================
   IMAGE
   ========================================================= */

.sf-eco-definition__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3.2;
	background-color: #e2e4de;
	border-radius: 14px;
	box-shadow: 0 14px 34px rgba(15, 33, 30, 0.13);
}

.sf-eco-definition__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 600ms ease;
}

.sf-eco-definition__media:hover
.sf-eco-definition__image {
	transform: scale(1.025);
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-eco-definition {
		padding: 4rem 0;
	}

	.sf-eco-definition__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.sf-eco-definition__content {
		max-width: 760px;
	}

	.sf-eco-definition__media {
		max-width: 760px;
		aspect-ratio: 16 / 10;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-eco-definition {
		padding: 3.25rem 0;
	}

	.sf-eco-definition__grid {
		gap: 2rem;
	}

	.sf-eco-definition__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-eco-definition__lead {
		font-size: 1rem;
	}

	.sf-eco-definition__list {
		gap: 0.85rem;
		margin-top: 1.25rem;
	}

	.sf-eco-definition__list li {
		font-size: 0.92rem;
	}

	.sf-eco-definition__media {
		aspect-ratio: 4 / 3;
		border-radius: 10px;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-eco-definition__image {
		transition: none;
	}
}

/* =========================================================
   ECO TOILETS — PRODUCTION BENEFITS
   ========================================================= */

.sf-eco-benefits {
	padding: 5.5rem 0;
	background-color: #ffffff;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-benefits .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-eco-benefits__header {
	max-width: 820px;
	margin: 0 auto 2.75rem;
	text-align: center;
}

.sf-eco-benefits__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.8rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-benefits__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 3.2vw, 3rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* =========================================================
   BENEFITS GRID
   ========================================================= */

.sf-eco-benefits__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.25rem;
}

/* =========================================================
   BENEFIT CARD
   ========================================================= */

.sf-eco-benefits__card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 270px;
	padding: 1.75rem;
	overflow: hidden;
	background-color: #f8f8f5;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15, 33, 30, 0.04);
	transition:
		transform 220ms ease,
		border-color 220ms ease,
		box-shadow 220ms ease,
		background-color 220ms ease;
}

.sf-eco-benefits__card::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background-color: #a55d27;
	content: "";
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 220ms ease;
}

.sf-eco-benefits__card:hover {
	background-color: #ffffff;
	border-color: #cbcfc7;
	box-shadow: 0 16px 34px rgba(15, 33, 30, 0.1);
	transform: translateY(-4px);
}

.sf-eco-benefits__card:hover::before {
	transform: scaleX(1);
}

.sf-eco-benefits__number {
	margin-bottom: auto;
	color: #a55d27;
	font-family: "Manrope", sans-serif;
	font-size: 0.75rem;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.08em;
}

.sf-eco-benefits__card-title {
	margin: 2.5rem 0 0.7rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	font-weight: 800;
	line-height: 1.35;
}

.sf-eco-benefits__description {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.65;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {
	.sf-eco-benefits {
		padding: 4.5rem 0;
	}

	.sf-eco-benefits__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-eco-benefits__card {
		min-height: 240px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-eco-benefits {
		padding: 3.5rem 0;
	}

	.sf-eco-benefits__header {
		margin-bottom: 2rem;
		text-align: left;
	}

	.sf-eco-benefits__eyebrow {
		justify-content: flex-start;
	}

	.sf-eco-benefits__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-eco-benefits__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.sf-eco-benefits__card {
		min-height: 0;
		padding: 1.5rem;
	}

	.sf-eco-benefits__number {
		margin-bottom: 2.25rem;
	}

	.sf-eco-benefits__card-title {
		margin-top: 0;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-eco-benefits__card,
	.sf-eco-benefits__card::before {
		transition: none;
	}
}

/* =========================================================
   ECO TOILETS — USAGE LOCATIONS
   ========================================================= */

.sf-eco-locations {
	padding: 5.5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-locations .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-eco-locations__header {
	max-width: 800px;
	margin-bottom: 2.75rem;
}

.sf-eco-locations__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.8rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-locations__title {
	margin: 0 0 0.85rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 3.2vw, 3rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-eco-locations__lead {
	max-width: 720px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.65;
}

/* =========================================================
   LOCATIONS GRID
   ========================================================= */

.sf-eco-locations__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}

/* =========================================================
   LOCATION CARD
   ========================================================= */

.sf-eco-locations__card {
	min-width: 0;
	min-height: 235px;
	padding: 1.75rem;
	background-color: #ffffff;
	border: 1px solid #dde0d9;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15, 33, 30, 0.04);
	transition:
		transform 220ms ease,
		border-color 220ms ease,
		box-shadow 220ms ease;
}

.sf-eco-locations__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 16px 34px rgba(15, 33, 30, 0.1);
	transform: translateY(-4px);
}

/* =========================================================
   ICON
   ========================================================= */

.sf-eco-locations__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	margin-bottom: 1.5rem;
	background-color: #edf4f2;
	border: 1px solid #d5e4e1;
	border-radius: 50%;
	color: #0e5652;
	transition:
		background-color 220ms ease,
		border-color 220ms ease,
		color 220ms ease;
}

.sf-eco-locations__icon svg {
	display: block;
	width: 24px;
	height: 24px;
}

.sf-eco-locations__card:hover .sf-eco-locations__icon {
	background-color: #0e5652;
	border-color: #0e5652;
	color: #ffffff;
}

/* =========================================================
   CARD CONTENT
   ========================================================= */

.sf-eco-locations__card-title {
	margin: 0 0 0.6rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1.1rem;
	font-weight: 800;
	line-height: 1.35;
}

.sf-eco-locations__description {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.65;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-eco-locations {
		padding: 4.5rem 0;
	}

	.sf-eco-locations__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-eco-locations__card {
		min-height: 220px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-eco-locations {
		padding: 3.5rem 0;
	}

	.sf-eco-locations__header {
		margin-bottom: 2rem;
	}

	.sf-eco-locations__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-eco-locations__lead {
		font-size: 1rem;
	}

	.sf-eco-locations__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.sf-eco-locations__card {
		min-height: 0;
		padding: 1.5rem;
	}

	.sf-eco-locations__icon {
		width: 46px;
		height: 46px;
		margin-bottom: 1.25rem;
	}

	.sf-eco-locations__icon svg {
		width: 22px;
		height: 22px;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-eco-locations__card,
	.sf-eco-locations__icon {
		transition: none;
	}
}

/* =========================================================
   ECO TOILETS — OWN PRODUCTION
   ========================================================= */

.sf-eco-production {
	padding: 5.5rem 0;
	background-color: #ffffff;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-production .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   LAYOUT
   ========================================================= */

.sf-eco-production__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	align-items: center;
	gap: clamp(3rem, 6vw, 5.5rem);
}

/* =========================================================
   MEDIA
   ========================================================= */

.sf-eco-production__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3.2;
	background-color: #e2e4de;
	border-radius: 14px;
	box-shadow: 0 18px 42px rgba(15, 33, 30, 0.13);
}

.sf-eco-production__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 600ms ease;
}

.sf-eco-production__media:hover .sf-eco-production__image {
	transform: scale(1.035);
}

/* =========================================================
   CONTENT
   ========================================================= */

.sf-eco-production__content {
	min-width: 0;
}

.sf-eco-production__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.8rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-production__title {
	max-width: 640px;
	margin: 0 0 0.9rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 3.2vw, 3rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-eco-production__lead {
	max-width: 680px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.7;
}

/* =========================================================
   FEATURES
   ========================================================= */

.sf-eco-production__features {
	display: grid;
	gap: 0;
	margin-top: 1.75rem;
}

.sf-eco-production__feature {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 1rem;
	padding: 1.15rem 0;
	border-top: 1px solid #e2e4de;
}

.sf-eco-production__feature:last-child {
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-production__feature-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	background-color: #edf4f2;
	border: 1px solid #d5e4e1;
	border-radius: 50%;
	color: #0e5652;
}

.sf-eco-production__feature-icon svg {
	display: block;
	width: 19px;
	height: 19px;
}

.sf-eco-production__feature-content {
	min-width: 0;
}

.sf-eco-production__feature-title {
	margin: 0 0 0.3rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-eco-production__feature-content p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	line-height: 1.6;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-eco-production {
		padding: 4.5rem 0;
	}

	.sf-eco-production__grid {
		grid-template-columns: 1fr;
		gap: 2.75rem;
	}

	.sf-eco-production__media {
		max-width: 760px;
		aspect-ratio: 16 / 10;
	}

	.sf-eco-production__content {
		max-width: 760px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-eco-production {
		padding: 3.5rem 0;
	}

	.sf-eco-production__grid {
		gap: 2rem;
	}

	.sf-eco-production__media {
		aspect-ratio: 4 / 3.4;
		border-radius: 10px;
	}

	.sf-eco-production__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-eco-production__lead {
		font-size: 1rem;
	}

	.sf-eco-production__features {
		margin-top: 1.5rem;
	}

	.sf-eco-production__feature {
		grid-template-columns: 38px minmax(0, 1fr);
		gap: 0.85rem;
		padding: 1rem 0;
	}

	.sf-eco-production__feature-icon {
		width: 36px;
		height: 36px;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-eco-production__image {
		transition: none;
	}
}

/* =========================================================
   ECO TOILETS — WORK PROCESS
   ========================================================= */

.sf-eco-process {
	padding: 5.5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-process .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-eco-process__header {
	max-width: 800px;
	margin-bottom: 3rem;
}

.sf-eco-process__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.8rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-process__title {
	margin: 0 0 0.85rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 3.2vw, 3rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-eco-process__lead {
	max-width: 720px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.65;
}

/* =========================================================
   STEPS
   ========================================================= */

.sf-eco-process__steps {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* =========================================================
   INDIVIDUAL STEP
   ========================================================= */

.sf-eco-process__step {
	position: relative;
	min-width: 0;
	padding-right: 1.75rem;
}

.sf-eco-process__step:not(:last-child)::before {
	position: absolute;
	top: 25px;
	right: 0;
	left: 50px;
	height: 1px;
	background-color: #cbcfc7;
	content: "";
}

.sf-eco-process__step:not(:last-child)::after {
	position: absolute;
	top: 21px;
	right: -1px;
	width: 9px;
	height: 9px;
	border-top: 1px solid #a6ada5;
	border-right: 1px solid #a6ada5;
	content: "";
	transform: rotate(45deg);
}

.sf-eco-process__number {
	position: relative;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	margin-bottom: 1.5rem;
	background-color: #0e5652;
	border: 4px solid #f1f2ee;
	border-radius: 50%;
	box-shadow: 0 0 0 1px #0e5652;
	color: #ffffff;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1;
}

.sf-eco-process__content {
	padding-right: 1rem;
}

.sf-eco-process__step-title {
	margin: 0 0 0.55rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-eco-process__content p {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	line-height: 1.65;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-eco-process {
		padding: 4.5rem 0;
	}

	.sf-eco-process__steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2.5rem 2rem;
	}

	.sf-eco-process__step {
		padding-right: 1rem;
	}

	.sf-eco-process__step::before,
	.sf-eco-process__step::after {
		display: none;
	}

	.sf-eco-process__content {
		padding-right: 0;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-eco-process {
		padding: 3.5rem 0;
	}

	.sf-eco-process__header {
		margin-bottom: 2.25rem;
	}

	.sf-eco-process__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-eco-process__lead {
		font-size: 1rem;
	}

	.sf-eco-process__steps {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.sf-eco-process__step {
		display: grid;
		grid-template-columns: 46px minmax(0, 1fr);
		gap: 1rem;
		padding: 0 0 1.75rem;
	}

	.sf-eco-process__step:not(:last-child)::before {
		top: 46px;
		right: auto;
		bottom: 0;
		left: 22px;
		display: block;
		width: 1px;
		height: auto;
		background-color: #cbcfc7;
	}

	.sf-eco-process__step:not(:last-child)::after {
		display: none;
	}

	.sf-eco-process__number {
		width: 44px;
		height: 44px;
		margin-bottom: 0;
	}

	.sf-eco-process__content {
		padding-top: 0.45rem;
	}

	.sf-eco-process__step-title {
		font-size: 1rem;
	}
}

/* =========================================================
   ECO TOILETS — CERTIFICATIONS
   ========================================================= */

.sf-eco-certifications {
	padding: 5.5rem 0;
	background-color: #ffffff;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-certifications .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-eco-certifications__header {
	max-width: 820px;
	margin: 0 auto 2.75rem;
	text-align: center;
}

.sf-eco-certifications__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.8rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-certifications__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 3.2vw, 3rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* =========================================================
   CERTIFICATIONS GRID
   ========================================================= */

.sf-eco-certifications__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.25rem;
}

/* =========================================================
   CERTIFICATION CARD
   ========================================================= */

.sf-eco-certifications__card {
	position: relative;
	min-width: 0;
	min-height: 285px;
	padding: 1.75rem;
	overflow: hidden;
	background-color: #f8f8f5;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15, 33, 30, 0.04);
	transition:
		background-color 220ms ease,
		border-color 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease;
}

.sf-eco-certifications__card::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background-color: #a55d27;
	content: "";
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 220ms ease;
}

.sf-eco-certifications__card:hover {
	background-color: #ffffff;
	border-color: #cbcfc7;
	box-shadow: 0 16px 34px rgba(15, 33, 30, 0.1);
	transform: translateY(-4px);
}

.sf-eco-certifications__card:hover::before {
	transform: scaleX(1);
}

/* =========================================================
   CARD ICON
   ========================================================= */

.sf-eco-certifications__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 2rem;
	background-color: #edf4f2;
	border: 1px solid #d5e4e1;
	border-radius: 50%;
	color: #0e5652;
	transition:
		background-color 220ms ease,
		border-color 220ms ease,
		color 220ms ease;
}

.sf-eco-certifications__icon svg {
	display: block;
	width: 25px;
	height: 25px;
}

.sf-eco-certifications__card:hover
.sf-eco-certifications__icon {
	background-color: #0e5652;
	border-color: #0e5652;
	color: #ffffff;
}

/* =========================================================
   CARD CONTENT
   ========================================================= */

.sf-eco-certifications__card-title {
	margin: 0 0 0.65rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-eco-certifications__description {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.92rem;
	line-height: 1.65;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {
	.sf-eco-certifications {
		padding: 4.5rem 0;
	}

	.sf-eco-certifications__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-eco-certifications__card {
		min-height: 250px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-eco-certifications {
		padding: 3.5rem 0;
	}

	.sf-eco-certifications__header {
		margin-bottom: 2rem;
		text-align: left;
	}

	.sf-eco-certifications__eyebrow {
		justify-content: flex-start;
	}

	.sf-eco-certifications__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-eco-certifications__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.sf-eco-certifications__card {
		min-height: 0;
		padding: 1.5rem;
	}

	.sf-eco-certifications__icon {
		width: 48px;
		height: 48px;
		margin-bottom: 1.5rem;
	}

	.sf-eco-certifications__icon svg {
		width: 23px;
		height: 23px;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-eco-certifications__card,
	.sf-eco-certifications__card::before,
	.sf-eco-certifications__icon {
		transition: none;
	}
}

/* =========================================================
   ECO TOILETS — FAQ
   ========================================================= */

.sf-eco-faq {
	padding: 5.5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-eco-faq__container {
	width: 100%;
	max-width: 920px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-eco-faq__header {
	max-width: 800px;
	margin-bottom: 2.5rem;
}

.sf-eco-faq__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.8rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-eco-faq__title {
	margin: 0;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 3.2vw, 3rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

/* =========================================================
   ACCORDION
   ========================================================= */

.sf-eco-faq__accordion {
	background-color: #ffffff;
	border: 1px solid #dde0d9;
	border-radius: 10px;
	box-shadow: 0 10px 30px rgba(15, 33, 30, 0.07);
	overflow: hidden;
}

.sf-eco-faq__item {
	background-color: #ffffff;
	border-bottom: 1px solid #e2e4de;
	transition: background-color 180ms ease;
}

.sf-eco-faq__item:last-child {
	border-bottom: 0;
}

.sf-eco-faq__item.is-open {
	background-color: #fbfbf8;
}

.sf-eco-faq__question {
	margin: 0;
	font: inherit;
}

/* =========================================================
   TRIGGER
   ========================================================= */

.sf-eco-faq__trigger {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 28px;
	align-items: center;
	gap: 1.25rem;
	width: 100%;
	padding: 1.45rem 1.6rem;
	background: transparent;
	border: 0;
	border-radius: 0;
	color: #082f2d;
	cursor: pointer;
	font-family: "Manrope", sans-serif;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.45;
	text-align: left;
	appearance: none;
	transition:
		background-color 180ms ease,
		color 180ms ease;
}

.sf-eco-faq__trigger:hover {
	background-color: #f7f8f4;
	color: #0e5652;
}

.sf-eco-faq__trigger:focus-visible {
	position: relative;
	z-index: 2;
	outline: 3px solid rgba(14, 86, 82, 0.28);
	outline-offset: -3px;
}

/* =========================================================
   PLUS / MINUS ICON
   ========================================================= */

.sf-eco-faq__plus {
	position: relative;
	display: block;
	width: 28px;
	height: 28px;
	background-color: #edf4f2;
	border: 1px solid #d5e4e1;
	border-radius: 50%;
	color: #0e5652;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 220ms ease;
}

.sf-eco-faq__plus::before,
.sf-eco-faq__plus::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 2px;
	background-color: currentColor;
	border-radius: 2px;
	content: "";
	transform: translate(-50%, -50%);
	transition: transform 220ms ease;
}

.sf-eco-faq__plus::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.sf-eco-faq__item.is-open .sf-eco-faq__plus {
	background-color: #0e5652;
	border-color: #0e5652;
	color: #ffffff;
	transform: rotate(180deg);
}

.sf-eco-faq__item.is-open .sf-eco-faq__plus::after {
	transform: translate(-50%, -50%) rotate(0deg);
}

/* =========================================================
   ANSWER PANEL
   ========================================================= */

.sf-eco-faq__panel {
	max-height: 0;
	overflow: hidden;
	transition: max-height 320ms ease;
}

.sf-eco-faq__panel[hidden] {
	display: block;
}

.sf-eco-faq__panel-inner {
	padding: 0 4.85rem 1.55rem 1.6rem;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.75;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-eco-faq {
		padding: 4.5rem 0;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-eco-faq {
		padding: 3.5rem 0;
	}

	.sf-eco-faq__header {
		margin-bottom: 2rem;
	}

	.sf-eco-faq__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-eco-faq__trigger {
		grid-template-columns: minmax(0, 1fr) 26px;
		gap: 0.85rem;
		padding: 1.2rem;
		font-size: 0.95rem;
	}

	.sf-eco-faq__plus {
		width: 26px;
		height: 26px;
	}

	.sf-eco-faq__panel-inner {
		padding: 0 1.2rem 1.3rem;
		font-size: 0.9rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-eco-faq__item,
	.sf-eco-faq__trigger,
	.sf-eco-faq__plus,
	.sf-eco-faq__plus::before,
	.sf-eco-faq__plus::after,
	.sf-eco-faq__panel {
		transition: none;
	}
}


.sf-eco-benefits__card {
	position: relative;
	display: grid;
	grid-template-rows: auto 1fr auto;
	min-width: 0;
	min-height: 270px;
	padding: 1.75rem;
	overflow: hidden;
	background-color: #f8f8f5;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15, 33, 30, 0.04);
	transition:
		transform 220ms ease,
		border-color 220ms ease,
		box-shadow 220ms ease,
		background-color 220ms ease;
}

.sf-eco-benefits__number {
	align-self: start;
	margin: 0;
	color: #a55d27;
	font-family: "Manrope", sans-serif;
	font-size: 0.75rem;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.08em;
}

.sf-eco-benefits__card-title {
	align-self: end;
	min-height: 3rem;
	margin: 3.75rem 0 0.7rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1.12rem;
	font-weight: 800;
	line-height: 1.35;
}

.sf-eco-benefits__description {
	min-height: 6.2rem;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.65;
}


@media (max-width: 600px) {
	.sf-eco-benefits__card {
		display: block;
		min-height: 0;
		padding: 1.5rem;
	}

	.sf-eco-benefits__number {
		margin-bottom: 2.25rem;
	}

	.sf-eco-benefits__card-title {
		min-height: 0;
		margin: 0 0 0.7rem;
	}

	.sf-eco-benefits__description {
		min-height: 0;
	}
}

/* Linia dintre etape */

.sf-eco-process__step:not(:last-child)::before {
	position: absolute;
	top: 25px;
	right: 18px;
	left: 50px;
	height: 2px;
	background-color: #b8c4bf;
	content: "";
}

/* Săgeata dintre etape */

.sf-eco-process__step:not(:last-child)::after {
	position: absolute;
	top: 20px;
	right: 18px;
	width: 10px;
	height: 10px;
	background: transparent;
	border: 0;
	border-top: 2px solid #0e5652;
	border-right: 2px solid #0e5652;
	content: "";
	transform: rotate(45deg);
}

.sf-eco-process__number {
	position: relative;
	z-index: 3;
	background-color: #0e5652;
}

@media (max-width: 900px) {
	.sf-eco-process__step:not(:last-child)::before,
	.sf-eco-process__step:not(:last-child)::after {
		display: none;
	}
}

@media (max-width: 600px) {
	.sf-eco-process__step:not(:last-child)::before {
		top: 46px;
		right: auto;
		bottom: 0;
		left: 22px;
		display: block;
		width: 1px;
		height: auto;
		background-color: #b8c4bf;
	}

	.sf-eco-process__step:not(:last-child)::after {
		display: none;
	}
}

/* =========================================================
   ABOUT CITYMATIC — HERO
   ========================================================= */

.sf-about-hero {
	padding: 5rem 0;
	background-color: #ffffff;
	border-bottom: 1px solid #e2e4de;
}

.sf-about-hero .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   LAYOUT
   ========================================================= */

.sf-about-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: center;
	gap: clamp(3rem, 6vw, 5.5rem);
}

/* =========================================================
   CONTENT
   ========================================================= */

.sf-about-hero__content {
	min-width: 0;
}

.sf-about-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.85rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-about-hero__title {
	max-width: 650px;
	margin: 0 0 1rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.5rem, 4vw, 3.7rem);
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: -0.02em;
}

.sf-about-hero__description {
	max-width: 650px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.06rem;
	line-height: 1.7;
}

/* =========================================================
   MEDIA
   ========================================================= */

.sf-about-hero__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 16 / 10.5;
	background-color: #e2e4de;
	border-radius: 14px;
	box-shadow: 0 20px 48px rgba(15, 33, 30, 0.16);
}

.sf-about-hero__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 600ms ease;
}

.sf-about-hero__media:hover .sf-about-hero__image {
	transform: scale(1.035);
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-about-hero {
		padding: 4rem 0;
	}

	.sf-about-hero__grid {
		grid-template-columns: 1fr;
		gap: 2.75rem;
	}

	.sf-about-hero__content {
		max-width: 760px;
	}

	.sf-about-hero__media {
		max-width: 760px;
		aspect-ratio: 16 / 10;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-about-hero {
		padding: 3.25rem 0;
	}

	.sf-about-hero__grid {
		gap: 2rem;
	}

	.sf-about-hero__title {
		font-size: clamp(2.2rem, 10vw, 2.8rem);
	}

	.sf-about-hero__description {
		font-size: 1rem;
	}

	.sf-about-hero__media {
		aspect-ratio: 4 / 3.2;
		border-radius: 10px;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-about-hero__image {
		transition: none;
	}
}


/* =========================================================
   ABOUT CITYMATIC — STATISTICS
   ========================================================= */

.sf-about-stats {
	padding: 3.25rem 0;
	background-color: #ffffff;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-about-stats .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   STATISTICS GRID
   ========================================================= */

.sf-about-stats__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	background-color: #f1f2ee;
	border: 1px solid #e2e4de;
	border-radius: 10px;
	overflow: hidden;
}

/* =========================================================
   STATISTIC CELL
   ========================================================= */

.sf-about-stats__cell {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	min-height: 165px;
	padding: 1.75rem 2rem;
}

.sf-about-stats__cell:not(:last-child) {
	border-right: 1px solid #d8dcd4;
}

.sf-about-stats__number {
	display: block;
	margin-bottom: 0.45rem;
	color: #0e5652;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.5rem, 4vw, 3.6rem);
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	line-height: 1;
	letter-spacing: -0.025em;
}

.sf-about-stats__label {
	display: block;
	max-width: 220px;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.5;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-about-stats {
		padding: 2.75rem 0;
	}

	.sf-about-stats__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-about-stats__cell {
		min-height: 150px;
	}

	.sf-about-stats__cell:nth-child(2) {
		border-right: 0;
	}

	.sf-about-stats__cell:nth-child(-n + 2) {
		border-bottom: 1px solid #d8dcd4;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-about-stats {
		padding: 2.25rem 0;
	}

	.sf-about-stats__grid {
		grid-template-columns: 1fr;
	}

	.sf-about-stats__cell {
		min-height: 0;
		padding: 1.5rem;
	}

	.sf-about-stats__cell:not(:last-child) {
		border-right: 0;
		border-bottom: 1px solid #d8dcd4;
	}

	.sf-about-stats__number {
		font-size: 2.7rem;
	}

	.sf-about-stats__label {
		max-width: none;
	}
}

/* =========================================================
   ABOUT CITYMATIC — SOLUTIONS
   ========================================================= */

.sf-about-solutions {
	padding: 5.5rem 0;
	background-color: #f1f2ee;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-about-solutions .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   SECTION HEADER
   ========================================================= */

.sf-about-solutions__header {
	max-width: 900px;
	margin-bottom: 2.75rem;
}

.sf-about-solutions__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.8rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-about-solutions__title {
	max-width: 850px;
	margin: 0 0 0.9rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 3.2vw, 3rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-about-solutions__lead {
	max-width: 880px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.7;
}

/* =========================================================
   CARDS GRID
   ========================================================= */

.sf-about-solutions__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}

/* =========================================================
   CARD
   ========================================================= */

.sf-about-solutions__card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 310px;
	padding: 2rem;
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #dde0d9;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15, 33, 30, 0.04);
	transition:
		border-color 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease;
}

.sf-about-solutions__card::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background-color: #a55d27;
	content: "";
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 220ms ease;
}

.sf-about-solutions__card:hover {
	border-color: #cbcfc7;
	box-shadow: 0 16px 34px rgba(15, 33, 30, 0.1);
	transform: translateY(-4px);
}

.sf-about-solutions__card:hover::before {
	transform: scaleX(1);
}

/* =========================================================
   CARD CONTENT
   ========================================================= */

.sf-about-solutions__tag {
	display: inline-flex;
	align-self: flex-start;
	margin-bottom: 2.5rem;
	padding: 0.38rem 0.7rem;
	background-color: #edf4f2;
	border: 1px solid #d5e4e1;
	border-radius: 999px;
	color: #0e5652;
	font-family: "Manrope", sans-serif;
	font-size: 0.68rem;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.sf-about-solutions__card-title {
	min-height: 3.4rem;
	margin: 0 0 0.75rem;
	color: #082f2d;
	font-family: "Manrope", sans-serif;
	font-size: 1.18rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-about-solutions__description {
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.7;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-about-solutions {
		padding: 4.5rem 0;
	}

	.sf-about-solutions__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sf-about-solutions__card:last-child {
		grid-column: 1 / -1;
	}

	.sf-about-solutions__card {
		min-height: 290px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-about-solutions {
		padding: 3.5rem 0;
	}

	.sf-about-solutions__header {
		margin-bottom: 2rem;
	}

	.sf-about-solutions__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-about-solutions__lead {
		font-size: 1rem;
	}

	.sf-about-solutions__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.sf-about-solutions__card,
	.sf-about-solutions__card:last-child {
		grid-column: auto;
		min-height: 0;
		padding: 1.5rem;
	}

	.sf-about-solutions__tag {
		margin-bottom: 1.75rem;
	}

	.sf-about-solutions__card-title {
		min-height: 0;
		font-size: 1.1rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-about-solutions__card,
	.sf-about-solutions__card::before {
		transition: none;
	}
}

/* =========================================================
   ABOUT CITYMATIC — ACCESSIBILITY
   ========================================================= */

.sf-about-accessibility {
	padding: 5.5rem 0;
	background-color: #ffffff;
	border-top: 1px solid #e2e4de;
	border-bottom: 1px solid #e2e4de;
}

.sf-about-accessibility .sf-container {
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   LAYOUT
   ========================================================= */

.sf-about-accessibility__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
	align-items: center;
	gap: clamp(3rem, 6vw, 5.5rem);
}

/* =========================================================
   MEDIA
   ========================================================= */

.sf-about-accessibility__media {
	overflow: hidden;
	width: 100%;
	aspect-ratio: 4 / 3.2;
	background-color: #e2e4de;
	border-radius: 14px;
	box-shadow: 0 18px 42px rgba(15, 33, 30, 0.13);
}

.sf-about-accessibility__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 600ms ease;
}

.sf-about-accessibility__media:hover
.sf-about-accessibility__image {
	transform: scale(1.035);
}

/* =========================================================
   CONTENT
   ========================================================= */

.sf-about-accessibility__content {
	min-width: 0;
}

.sf-about-accessibility__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.8rem;
	color: #874c20;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-about-accessibility__title {
	max-width: 680px;
	margin: 0 0 0.9rem;
	color: #082f2d;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 3.2vw, 3rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-about-accessibility__lead {
	max-width: 680px;
	margin: 0;
	color: #5b6864;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.7;
}

/* =========================================================
   CHECK LIST
   ========================================================= */

.sf-about-accessibility__list {
	display: grid;
	gap: 0;
	margin: 1.6rem 0 0;
	padding: 0;
	list-style: none;
}

.sf-about-accessibility__list li {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	align-items: start;
	gap: 0.85rem;
	padding: 1rem 0;
	border-top: 1px solid #e2e4de;
	color: #394743;
	font-family: "Manrope", sans-serif;
	font-size: 0.94rem;
	line-height: 1.6;
}

.sf-about-accessibility__list li:last-child {
	border-bottom: 1px solid #e2e4de;
}

.sf-about-accessibility__check {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	margin-top: 0.05rem;
	flex: 0 0 auto;
	background-color: #edf4f2;
	border: 1px solid #d5e4e1;
	border-radius: 50%;
	color: #0e5652;
}

.sf-about-accessibility__check svg {
	display: block;
	width: 16px;
	height: 16px;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-about-accessibility {
		padding: 4.5rem 0;
	}

	.sf-about-accessibility__grid {
		grid-template-columns: 1fr;
		gap: 2.75rem;
	}

	.sf-about-accessibility__media {
		max-width: 760px;
		aspect-ratio: 16 / 10;
	}

	.sf-about-accessibility__content {
		max-width: 760px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-about-accessibility {
		padding: 3.5rem 0;
	}

	.sf-about-accessibility__grid {
		gap: 2rem;
	}

	.sf-about-accessibility__media {
		aspect-ratio: 4 / 3.2;
		border-radius: 10px;
	}

	.sf-about-accessibility__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-about-accessibility__lead {
		font-size: 1rem;
	}

	.sf-about-accessibility__list {
		margin-top: 1.4rem;
	}

	.sf-about-accessibility__list li {
		grid-template-columns: 30px minmax(0, 1fr);
		gap: 0.75rem;
		font-size: 0.9rem;
	}

	.sf-about-accessibility__check {
		width: 28px;
		height: 28px;
	}

	.sf-about-accessibility__check svg {
		width: 15px;
		height: 15px;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-about-accessibility__image {
		transition: none;
	}
}

/* =========================================================
   ABOUT CITYMATIC — MAINTENANCE
   ========================================================= */

.sf-about-maintenance {
	position: relative;
	padding: 5.5rem 0;
	overflow: hidden;
	background-color: #082f2d;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.sf-about-maintenance::before {
	position: absolute;
	top: -180px;
	right: -150px;
	width: 520px;
	height: 520px;
	background: radial-gradient(
		circle,
		rgba(49, 132, 124, 0.2) 0%,
		rgba(49, 132, 124, 0) 70%
	);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.sf-about-maintenance .sf-container {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
}

/* =========================================================
   LAYOUT
   ========================================================= */

.sf-about-maintenance__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	align-items: center;
	gap: clamp(3rem, 6vw, 5.5rem);
}

/* =========================================================
   CONTENT
   ========================================================= */

.sf-about-maintenance__content {
	min-width: 0;
}

.sf-about-maintenance__eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0.8rem;
	color: #f3c79a;
	font-family: "Manrope", sans-serif;
	font-size: 0.76rem;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.sf-about-maintenance__title {
	max-width: 660px;
	margin: 0 0 0.9rem;
	color: #ffffff;
	font-family: "Fraunces", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 3.2vw, 3rem);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.sf-about-maintenance__lead {
	max-width: 680px;
	margin: 0;
	color: #cfe3df;
	font-family: "Manrope", sans-serif;
	font-size: 1.05rem;
	line-height: 1.7;
}

/* =========================================================
   BUTTON
   ========================================================= */

.sf-about-maintenance__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	min-height: 48px;
	margin-top: 1.6rem;
	padding: 0.78rem 1.4rem;
	background-color: transparent;
	border: 1px solid rgba(255, 255, 255, 0.65) !important;
	border-radius: 4px;
	color: #ffffff;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease;
}

.sf-about-maintenance__button svg {
	width: 17px;
	height: 17px;
	flex: 0 0 auto;
	transition: transform 180ms ease;
}

.sf-about-maintenance__button:hover {
	background-color: #ffffff;
	border-color: #ffffff;
	color: #082f2d;
	text-decoration: none;
}

.sf-about-maintenance__button:hover svg {
	transform: translateX(4px);
}

.sf-about-maintenance__button:focus-visible {
	outline: 3px solid rgba(255, 255, 255, 0.4);
	outline-offset: 4px;
}

/* =========================================================
   FEATURE PANEL
   ========================================================= */

.sf-about-maintenance__features {
	display: grid;
	gap: 1px;
	overflow: hidden;
	background-color: rgba(255, 255, 255, 0.14);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 10px;
	box-shadow: 0 20px 45px rgba(0, 0, 0, 0.16);
}

.sf-about-maintenance__feature {
	min-width: 0;
	padding: 1.75rem;
	background-color: #062724;
	transition: background-color 200ms ease;
}

.sf-about-maintenance__feature:hover {
	background-color: #0a3b37;
}

.sf-about-maintenance__feature-number {
	margin-bottom: 1.4rem;
	color: #f3c79a;
	font-family: "Manrope", sans-serif;
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.08em;
}

.sf-about-maintenance__feature-title {
	margin: 0 0 0.55rem;
	color: #ffffff;
	font-family: "Manrope", sans-serif;
	font-size: 1.08rem;
	font-weight: 800;
	line-height: 1.4;
}

.sf-about-maintenance__feature p {
	margin: 0;
	color: #cfe3df;
	font-family: "Manrope", sans-serif;
	font-size: 0.9rem;
	line-height: 1.7;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {
	.sf-about-maintenance {
		padding: 4.5rem 0;
	}

	.sf-about-maintenance__grid {
		grid-template-columns: 1fr;
		gap: 2.75rem;
	}

	.sf-about-maintenance__content,
	.sf-about-maintenance__features {
		max-width: 760px;
	}
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
	.sf-about-maintenance {
		padding: 3.5rem 0;
	}

	.sf-about-maintenance__grid {
		gap: 2rem;
	}

	.sf-about-maintenance__title {
		font-size: clamp(2rem, 9vw, 2.5rem);
	}

	.sf-about-maintenance__lead {
		font-size: 1rem;
	}

	.sf-about-maintenance__button {
		width: 100%;
		margin-top: 1.4rem;
	}

	.sf-about-maintenance__feature {
		padding: 1.5rem;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.sf-about-maintenance__button,
	.sf-about-maintenance__button svg,
	.sf-about-maintenance__feature {
		transition: none;
	}
}
