.elementor-kit-308{--e-global-color-primary:#121316;--e-global-color-secondary:#F4F3F0;--e-global-color-text:#2B2D31;--e-global-color-accent:#CAB089;--e-global-color-fc32305:#D6D6D2;--e-global-color-b580f4a:#5B5E66;--e-global-color-7be8038:#A6A8AE;--e-global-color-09fceb2:#F0F0F0;--e-global-color-bff7760:#313131;--e-global-color-14348bc:#1A1D22;--e-global-color-a3b7767:#E7E7E7;--e-global-color-10b0deb:#20242A;--e-global-typography-primary-font-family:"Cal_Sans_SH";--e-global-typography-primary-font-size:3.25rem;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.05em;--e-global-typography-primary-letter-spacing:0.03em;--e-global-typography-secondary-font-family:"Cal_Sans_SH";--e-global-typography-secondary-font-size:2.25rem;--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-line-height:1.15em;--e-global-typography-secondary-letter-spacing:0.05em;--e-global-typography-text-font-family:"Cal_Sans_SH";--e-global-typography-text-font-size:1.75rem;--e-global-typography-text-font-weight:500;--e-global-typography-text-line-height:1.25em;--e-global-typography-text-letter-spacing:0.05em;--e-global-typography-accent-font-family:"Cal_Sans_SH";--e-global-typography-accent-font-size:1.35rem;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:1.3em;--e-global-typography-accent-letter-spacing:0.1em;--e-global-typography-b2ce6af-font-family:"Manrope_SH";--e-global-typography-b2ce6af-font-size:1rem;--e-global-typography-b2ce6af-font-weight:400;--e-global-typography-b2ce6af-text-transform:none;--e-global-typography-b2ce6af-line-height:1.6em;--e-global-typography-b2ce6af-letter-spacing:0px;--e-global-typography-69c152f-font-family:"Manrope_SH";--e-global-typography-69c152f-font-size:1.125rem;--e-global-typography-69c152f-font-weight:400;--e-global-typography-69c152f-line-height:1.65em;--e-global-typography-520c191-font-family:"Manrope_SH";--e-global-typography-520c191-font-size:0.875rem;--e-global-typography-520c191-font-weight:500;--e-global-typography-520c191-line-height:1.5em;--e-global-typography-520c191-letter-spacing:0px;--e-global-typography-1db3a26-font-family:"Manrope_SH";--e-global-typography-1db3a26-font-size:1.125rem;--e-global-typography-1db3a26-font-weight:600;--e-global-typography-1db3a26-line-height:1.1em;--e-global-typography-024823c-font-family:"Cal_Sans_SH";--e-global-typography-024823c-font-size:1.2rem;--e-global-typography-024823c-font-weight:400;--e-global-typography-024823c-line-height:1.3em;--e-global-typography-024823c-letter-spacing:0.1em;--e-global-typography-f4713a2-font-family:"Cal_Sans_SH";--e-global-typography-f4713a2-font-size:1.05rem;--e-global-typography-f4713a2-font-weight:500;--e-global-typography-f4713a2-line-height:1.3em;--e-global-typography-f4713a2-letter-spacing:0.1em;color:var( --e-global-color-text );font-family:"sh_noto_sans", Sans-serif;font-size:1.1em;font-weight:400;text-transform:none;line-height:1.3em;letter-spacing:0.1px;}.elementor-kit-308 a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-308 a:hover{color:var( --e-global-color-accent );}.elementor-kit-308 h1{color:var( --e-global-color-secondary );font-family:"sh_noto_sans", Sans-serif;font-size:1.8em;font-weight:700;text-transform:capitalize;line-height:1.3em;letter-spacing:0.2px;}.elementor-kit-308 h2{color:var( --e-global-color-secondary );}.elementor-kit-308 h3{color:var( --e-global-color-secondary );}.elementor-kit-308 h4{color:var( --e-global-color-secondary );}.elementor-kit-308 h5{color:var( --e-global-color-secondary );}.elementor-kit-308 h6{color:var( --e-global-color-secondary );}.elementor-kit-308 button,.elementor-kit-308 input[type="button"],.elementor-kit-308 input[type="submit"],.elementor-kit-308 .elementor-button{border-style:none;border-radius:0px 0px 0px 0px;}.elementor-kit-308 button:hover,.elementor-kit-308 button:focus,.elementor-kit-308 input[type="button"]:hover,.elementor-kit-308 input[type="button"]:focus,.elementor-kit-308 input[type="submit"]:hover,.elementor-kit-308 input[type="submit"]:focus,.elementor-kit-308 .elementor-button:hover,.elementor-kit-308 .elementor-button:focus{border-style:none;}.elementor-kit-308 label{color:var( --e-global-color-secondary );font-family:"Cormorant Garamond", Sans-serif;font-size:21px;font-weight:600;text-transform:capitalize;line-height:1.5em;}.elementor-kit-308 input:not([type="button"]):not([type="submit"]),.elementor-kit-308 textarea,.elementor-kit-308 .elementor-field-textual{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;line-height:1.5em;color:var( --e-global-color-text );border-style:solid;border-width:1px 1px 1px 1px;border-radius:0px 0px 0px 0px;}.elementor-kit-308 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-308 textarea:focus,.elementor-kit-308 .elementor-field-textual:focus{color:var( --e-global-color-text );border-style:solid;border-width:1px 1px 1px 1px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;--container-default-padding-top:10em;--container-default-padding-right:0em;--container-default-padding-bottom:10em;--container-default-padding-left:0em;}.elementor-widget:not(:last-child){--kit-widget-spacing:1em;}.elementor-element{--widgets-spacing:1em 1em;--widgets-spacing-row:1em;--widgets-spacing-column:1em;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-308{--e-global-typography-primary-font-size:2.75rem;--e-global-typography-primary-line-height:1.1em;--e-global-typography-primary-letter-spacing:0.1em;--e-global-typography-secondary-font-size:2rem;--e-global-typography-secondary-line-height:1.12em;--e-global-typography-secondary-letter-spacing:0.05em;--e-global-typography-text-font-size:1.6rem;--e-global-typography-text-line-height:1.2em;--e-global-typography-text-letter-spacing:0.05em;--e-global-typography-accent-font-size:1.25rem;--e-global-typography-accent-line-height:1.28em;--e-global-typography-accent-letter-spacing:0.05em;--e-global-typography-b2ce6af-font-size:1em;--e-global-typography-b2ce6af-line-height:1.6em;--e-global-typography-69c152f-font-size:1.25rem;--e-global-typography-69c152f-line-height:1.65em;--e-global-typography-520c191-font-size:0.875rem;--e-global-typography-520c191-line-height:1.5em;--e-global-typography-1db3a26-font-size:1.1rem;--e-global-typography-1db3a26-line-height:1.1em;--e-global-typography-024823c-font-size:1.25rem;--e-global-typography-024823c-line-height:1.28em;--e-global-typography-024823c-letter-spacing:0.05em;--e-global-typography-f4713a2-font-size:1.25rem;--e-global-typography-f4713a2-line-height:1.28em;--e-global-typography-f4713a2-letter-spacing:0.05em;font-size:1.125em;line-height:1.2em;letter-spacing:0.3px;}.elementor-kit-308 a{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-308 h1{font-size:45px;}.elementor-kit-308 label{font-size:20px;}.elementor-kit-308 input:not([type="button"]):not([type="submit"]),.elementor-kit-308 textarea,.elementor-kit-308 .elementor-field-textual{font-size:15px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:6em;--container-default-padding-right:1em;--container-default-padding-bottom:6em;--container-default-padding-left:1em;}}@media(max-width:767px){.elementor-kit-308{--e-global-typography-primary-font-size:2.25rem;--e-global-typography-primary-line-height:1.05em;--e-global-typography-secondary-font-size:1.75rem;--e-global-typography-secondary-line-height:1.15em;--e-global-typography-secondary-letter-spacing:0.05em;--e-global-typography-text-font-size:1.4rem;--e-global-typography-text-line-height:1.2em;--e-global-typography-text-letter-spacing:0.05em;--e-global-typography-accent-font-size:1.15em;--e-global-typography-accent-line-height:1.3em;--e-global-typography-accent-letter-spacing:0.06em;--e-global-typography-b2ce6af-font-size:1rem;--e-global-typography-b2ce6af-line-height:1.2em;--e-global-typography-b2ce6af-letter-spacing:0.05em;--e-global-typography-69c152f-font-size:1.15rem;--e-global-typography-520c191-font-size:0.9rem;--e-global-typography-1db3a26-font-size:1.1rem;--e-global-typography-1db3a26-line-height:1.1em;--e-global-typography-024823c-font-size:1.15em;--e-global-typography-024823c-line-height:1.3em;--e-global-typography-024823c-letter-spacing:0.06em;--e-global-typography-f4713a2-font-size:1.15em;--e-global-typography-f4713a2-line-height:1.3em;--e-global-typography-f4713a2-letter-spacing:0.06em;font-size:14px;}.elementor-kit-308 a{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-308 h1{font-size:37px;}.elementor-kit-308 label{font-size:19px;}.elementor-kit-308 input:not([type="button"]):not([type="submit"]),.elementor-kit-308 textarea,.elementor-kit-308 .elementor-field-textual{font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:5em;--container-default-padding-right:1em;--container-default-padding-bottom:5em;--container-default-padding-left:1em;}}/* Start custom CSS *//* =========================================================
   Franco Grasso – Global CSS (Final, bereinigt)
   ========================================================= */

/* ---------- Tokens ---------- */
:root{
  --fg-gold:#CAB089;
  --fg-ink:#111318;
  --fg-offwhite:#F4F3F0;
}

/* =========================================================
   CTA Buttons (Elementor)
   Klassen (Button-Widget > Erweitert > CSS-Klassen):
   - fg-cta
   - fg-cta--dark
   - fg-cta--dark-line
   ========================================================= */

/* Basis */
.fg-cta .elementor-button,
.fg-cta--dark .elementor-button,
.fg-cta--dark-line .elementor-button{
  position:relative;
  overflow:hidden;
  border-radius:999px !important;

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

  padding:0.7em 1.65em !important;

  transition:
    transform 340ms cubic-bezier(.2,.9,.2,1),
    box-shadow 340ms cubic-bezier(.2,.9,.2,1),
    color 280ms ease,
    border-color 280ms ease,
    background-color 280ms ease;
}

/* Elementor Innenflächen transparent */
.fg-cta .elementor-button .elementor-button-content-wrapper,
.fg-cta--dark .elementor-button .elementor-button-content-wrapper,
.fg-cta--dark-line .elementor-button .elementor-button-content-wrapper,
.fg-cta .elementor-button .elementor-button-text,
.fg-cta--dark .elementor-button .elementor-button-text,
.fg-cta--dark-line .elementor-button .elementor-button-text{
  background:transparent !important;
}

/* Text über Fill */
.fg-cta .elementor-button .elementor-button-content-wrapper,
.fg-cta--dark .elementor-button .elementor-button-content-wrapper,
.fg-cta--dark-line .elementor-button .elementor-button-content-wrapper{
  position:relative;
  z-index:1;
}

/* Fill */
.fg-cta .elementor-button::after,
.fg-cta--dark .elementor-button::after,
.fg-cta--dark-line .elementor-button::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:var(--fg-gold);
  transform:translateX(-102%);
  transition:transform 520ms cubic-bezier(.16,1,.3,1);
  z-index:0;
}

.fg-cta .elementor-button:hover::after,
.fg-cta--dark .elementor-button:hover::after,
.fg-cta--dark-line .elementor-button:hover::after{
  transform:translateX(0);
}

.fg-cta .elementor-button:hover,
.fg-cta--dark .elementor-button:hover,
.fg-cta--dark-line .elementor-button:hover{
  transform:translateY(-1px);
}

/* Variante 1: fg-cta */
.fg-cta .elementor-button{
  background:var(--fg-ink) !important;
  border:1px solid rgba(202,176,137,.85) !important;
  color:var(--fg-offwhite) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.18) !important;
}
.fg-cta .elementor-button:hover{
  color:var(--fg-ink) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.22) !important;
  border-color:rgba(202,176,137,1) !important;
}

/* Variante 2: fg-cta--dark */
.fg-cta--dark .elementor-button{
  background:rgba(244,243,240,.92) !important;
  border:1.5px solid rgba(202,176,137,1) !important;
  color:var(--fg-ink) !important;
  box-shadow:0 12px 32px rgba(0,0,0,.30) !important;
}
.fg-cta--dark .elementor-button:hover{
  color:var(--fg-ink) !important;
  box-shadow:0 16px 40px rgba(0,0,0,.38) !important;
  border-color:rgba(202,176,137,1) !important;
}

/* Variante 3: fg-cta--dark-line */
.fg-cta--dark-line .elementor-button{
  background:rgba(255,255,255,0.06) !important;
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  border:1.5px solid rgba(244,243,240,0.45) !important;
  color:var(--fg-offwhite) !important;
  box-shadow:0 10px 28px rgba(0,0,0,.28) !important;
}
.fg-cta--dark-line .elementor-button:hover{
  color:var(--fg-ink) !important;
  border-color:rgba(202,176,137,1) !important;
  background:rgba(255,255,255,0.02) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.34) !important;
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce){
  .fg-cta .elementor-button,
  .fg-cta--dark .elementor-button,
  .fg-cta--dark-line .elementor-button,
  .fg-cta .elementor-button::after,
  .fg-cta--dark .elementor-button::after,
  .fg-cta--dark-line .elementor-button::after{
    transition:none !important;
  }
}

/* =========================================================
   Service Tiles (Kacheln)
   Klasse (Container/Kachel):
   - fg-service-tile
   ========================================================= */
.fg-service-tile{
  background-color:#1A1D22;
  border-radius:18px;
  transition:
    background-color 420ms cubic-bezier(.22,.61,.36,1),
    transform 420ms cubic-bezier(.22,.61,.36,1),
    box-shadow 420ms cubic-bezier(.22,.61,.36,1);
}

.fg-service-tile:hover{
  background-color:#2A303A;
  transform:translateY(-2px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.06);
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Cal_Sans_SH';
	font-display: auto;
	src: url('https://francograsso.de/wp-content/uploads/2026/02/CalSans-Regular.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Manrope_SH';
	font-display: auto;
	src: url('https://francograsso.de/wp-content/uploads/2026/02/Manrope-VariableFont_wght.ttf') format('truetype');
}
/* End Custom Fonts CSS */