.elementor-kit-6{--e-global-color-primary:#171A21;--e-global-color-secondary:#C2AA82;--e-global-color-text:#201E1A;--e-global-color-accent:#C2AA82;--e-global-color-hi_papier:#E3DFD9;--e-global-color-hi_marke:#DDD9D4;--e-global-color-hi_stern:#EDE8E0;--e-global-color-hi_nacht2:#1E222B;--e-global-color-hi_grau_h:#B5B2BD;--e-global-color-hi_grau_d:#5E5A51;--e-global-typography-primary-font-family:"Fraunces";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Fraunces";--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-font-style:italic;--e-global-typography-text-font-family:"Karla";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:500;--e-global-typography-text-line-height:1.8em;--e-global-typography-accent-font-family:"Karla";--e-global-typography-accent-font-size:12px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:2.2px;color:#201E1A;font-family:"Karla", Sans-serif;font-weight:500;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#C2AA82;font-family:"Karla", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:2.2px;color:#171A21;border-radius:999px 999px 999px 999px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 h1{font-family:"Fraunces", Sans-serif;font-weight:400;}.elementor-kit-6 h2{font-family:"Fraunces", Sans-serif;font-weight:400;}.elementor-kit-6 h3{font-family:"Fraunces", Sans-serif;font-weight:400;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Self-hosted fonts (DSGVO: no requests to Google) */
@font-face { font-family: 'Fraunces'; font-style: normal; font-weight: 400;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/fraunces-400.woff2') format('woff2'); }
@font-face { font-family: 'Fraunces'; font-style: italic; font-weight: 400;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/fraunces-400-italic.woff2') format('woff2'); }
@font-face { font-family: 'Karla'; font-style: normal; font-weight: 300 800;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/karla-variable.woff2') format('woff2'); }

/* Himmelsinfonie global styles — generated, edit via repo */
h1 em, h2 em, h3 em { font-style: italic; font-weight: inherit; }
.em-sand em { color: #C2AA82; }
::selection { background: #C2AA82; color: #171A21; }
body { background: #E3DFD9; }

.hi-eyebrow .elementor-heading-title { letter-spacing: .34em; }

/* hero stars */
.hi-hero { position: relative; overflow: hidden; }
.hi-stars { position: absolute !important; inset: 0; pointer-events: none; }
.hi-stars-inner { position: absolute; inset: 0; }
.hi-stars-inner i { position: absolute; border-radius: 50%;
  background: #EDE8E0; opacity: .8; }
.hi-note a { color: #EDE8E0; text-decoration: none; }
.hi-note strong { color: #EDE8E0; font-weight: 400; }

/* uppercase text links with sand underline */
.hi-textlink a, .hi-textlink-dark a { font-family: 'Karla', sans-serif;
  font-size: 12px; letter-spacing: .2em; text-transform: uppercase;
  text-decoration: none; border-bottom: 1px solid #C2AA82;
  padding-bottom: 5px; transition: color .2s; }
.hi-textlink a { color: #201E1A; }
.hi-textlink a:hover { color: #C2AA82; }
.hi-textlink-dark a { color: #EDE8E0; }
.hi-textlink-dark a:hover { color: #C2AA82; }

/* circle discs — image widgets with gold ring, gradient placeholder */
.hi-disc { width: 214px; margin: 0 auto; position: relative; }
.hi-disc::after { content: ""; position: absolute; inset: 0;
  border-radius: 50%; border: 1px solid #C2AA82; pointer-events: none; }
.hi-disc .elementor-widget-container { width: 190px; height: 190px;
  margin: 12px auto; border-radius: 50%; overflow: hidden; }
.hi-disc .elementor-widget-container img { width: 100%; height: 100%;
  object-fit: cover; border-radius: 50%; display: block; }
.hi-disc-1 .elementor-widget-container { background: radial-gradient(115% 100%
  at 60% 15%, #EFEAE1 0%, #CDC3B1 55%, #9C9078 100%); }
.hi-disc-2 .elementor-widget-container { background: radial-gradient(115% 100%
  at 40% 15%, #E9E4D9 0%, #C0B8A6 55%, #8B8069 100%); }
.hi-disc-3 .elementor-widget-container { background: radial-gradient(115% 100%
  at 60% 20%, #E2DFD2 0%, #B4B29E 55%, #767963 100%); }

/* about 'moon' composition */
.hi-moon { position: relative; height: 420px; }
.hi-moon-ring { position: absolute; left: 20px; top: 40px; width: 380px;
  height: 380px; border-radius: 50%; border: 1px solid #C2AA82; }
.hi-moon-big { position: absolute; right: 40px; top: 0; width: 340px;
  height: 340px; border-radius: 50%;
  background: radial-gradient(120% 100% at 70% 20%, #F0EBE2 0%, #CFC5B4 55%,
    #A3987F 100%); box-shadow: 0 30px 60px rgba(32,30,26,.18); }
.hi-moon-small { position: absolute; left: 60px; bottom: 0; width: 210px;
  height: 210px; border-radius: 50%;
  background: radial-gradient(120% 100% at 30% 20%, #E4DFD4 0%, #B8B0A2 60%,
    #847E6C 100%); box-shadow: 0 24px 48px rgba(32,30,26,.16); }
.hi-moon-cap { position: absolute; right: 0; bottom: 36px; font-size: 10.5px;
  letter-spacing: .2em; text-transform: uppercase; color: #5E5A51;
  font-family: 'Karla', sans-serif; }
@media (max-width: 767px) {
  .hi-moon { height: 300px; }
  .hi-moon-ring { width: 260px; height: 260px; left: 10px; top: 20px; }
  .hi-moon-big { width: 230px; height: 230px; right: 10px; }
  .hi-moon-small { width: 140px; height: 140px; left: 20px; }
}

/* contact definition list */
.hi-dl { display: grid; grid-template-columns: 120px 1fr; row-gap: 16px;
  margin: 0; font-family: 'Karla', sans-serif; font-size: 14.5px;
  font-weight: 500; color: #E3DFD9; }
.hi-dl dt { color: #C2AA82; letter-spacing: .18em; text-transform: uppercase;
  font-size: 10.5px; padding-top: 4px; }
.hi-dl dd { margin: 0; }
.hi-dl a { color: #E3DFD9; text-decoration: none; }
.hi-dl a:hover { color: #C2AA82; }

/* stylized map card linking to OpenStreetMap */
.hi-map { display: block; height: 150px; border-radius: 14px;
  position: relative; overflow: hidden; margin-top: 10px;
  background:
    repeating-linear-gradient(0deg, rgba(227,223,217,.06) 0 1px,
      transparent 1px 30px),
    repeating-linear-gradient(90deg, rgba(227,223,217,.06) 0 1px,
      transparent 1px 30px),
    linear-gradient(135deg, #232834, #1A1E27); }
.hi-map-pin { position: absolute; left: 50%; top: 44%; width: 12px;
  height: 12px; border-radius: 50%; background: #C2AA82;
  box-shadow: 0 0 0 7px rgba(194,170,130,.2); }
.hi-map-label { position: absolute; left: 16px; bottom: 12px;
  font-family: 'Karla', sans-serif; font-size: 10px; letter-spacing: .2em;
  text-transform: uppercase; color: #B5B2BD; }
.hi-map:hover .hi-map-label { color: #C2AA82; }

/* dark contact form */
.form-nacht .elementor-field {
  background: rgba(227,223,217,.06); border: 1px solid rgba(227,223,217,.25);
  border-radius: 14px; color: #E3DFD9; padding: 15px 18px;
  font-family: 'Karla', sans-serif; font-weight: 500; }
.form-nacht .elementor-field:focus { border-color: #C2AA82; outline: none;
  box-shadow: 0 0 0 3px rgba(194,170,130,.2); }
.form-nacht .elementor-field::placeholder { color: #B5B2BD; }
.form-nacht .elementor-field-type-acceptance,
.form-nacht .elementor-field-type-acceptance label,
.form-nacht .elementor-field-subgroup label { color: #B5B2BD !important;
  font-size: 13px; font-weight: 500; }
.form-nacht .elementor-field-type-acceptance a { color: #E3DFD9; }
.form-nacht .elementor-field-option input { accent-color: #C2AA82; }
.form-nacht .elementor-message-success { color: #C2AA82; }
.form-nacht .elementor-message-danger { color: #D89B8C; }

/* footer links */
.hi-footer-links a { color: #E3DFD9; text-decoration: none; margin-left: 26px;
  font-family: 'Karla', sans-serif; font-size: 12.5px; font-weight: 500;
  letter-spacing: .06em; }
.hi-footer-links a:first-child { margin-left: 0; }
.hi-footer-links a:hover { color: #C2AA82; }
.hi-footer a { text-decoration: none; color: #E3DFD9; }
.hi-footer a:hover { color: #C2AA82; }

/* legal pages */
.hi-legal h3 { font-family: 'Fraunces', serif; font-weight: 400;
  font-size: 24px; margin: 36px 0 12px; }
.hi-legal p, .hi-legal li { font-family: 'Karla', sans-serif;
  font-weight: 500; font-size: 15px; line-height: 1.8; color: #3d3a33; }
.hi-legal a { color: #201E1A; }/* End custom CSS */

/* Start custom CSS *//* Self-hosted fonts (DSGVO: no requests to Google) */
@font-face { font-family: 'Fraunces'; font-style: normal; font-weight: 400;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/fraunces-400.woff2') format('woff2'); }
@font-face { font-family: 'Fraunces'; font-style: italic; font-weight: 400;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/fraunces-400-italic.woff2') format('woff2'); }
@font-face { font-family: 'Karla'; font-style: normal; font-weight: 300 800;
  font-display: swap;
  src: url('/wp-content/uploads/fonts/karla-variable.woff2') format('woff2'); }

/* Himmelsinfonie global styles — generated, edit via repo */
h1 em, h2 em, h3 em { font-style: italic; font-weight: inherit; }
.em-sand em { color: #C2AA82; }
::selection { background: #C2AA82; color: #171A21; }
body { background: #E3DFD9; }

.hi-eyebrow .elementor-heading-title { letter-spacing: .34em; }

/* hero stars */
.hi-hero { position: relative; overflow: hidden; }
.hi-stars { position: absolute !important; inset: 0; pointer-events: none; }
.hi-stars-inner { position: absolute; inset: 0; }
.hi-stars-inner i { position: absolute; border-radius: 50%;
  background: #EDE8E0; opacity: .8; }
.hi-note a { color: #EDE8E0; text-decoration: none; }
.hi-note strong { color: #EDE8E0; font-weight: 400; }

/* uppercase text links with sand underline */
.hi-textlink a, .hi-textlink-dark a { font-family: 'Karla', sans-serif;
  font-size: 12px; letter-spacing: .2em; text-transform: uppercase;
  text-decoration: none; border-bottom: 1px solid #C2AA82;
  padding-bottom: 5px; transition: color .2s; }
.hi-textlink a { color: #201E1A; }
.hi-textlink a:hover { color: #C2AA82; }
.hi-textlink-dark a { color: #EDE8E0; }
.hi-textlink-dark a:hover { color: #C2AA82; }

/* circle discs — image widgets with gold ring, gradient placeholder */
.hi-disc { width: 214px; margin: 0 auto; position: relative; }
.hi-disc::after { content: ""; position: absolute; inset: 0;
  border-radius: 50%; border: 1px solid #C2AA82; pointer-events: none; }
.hi-disc .elementor-widget-container { width: 190px; height: 190px;
  margin: 12px auto; border-radius: 50%; overflow: hidden; }
.hi-disc .elementor-widget-container img { width: 100%; height: 100%;
  object-fit: cover; border-radius: 50%; display: block; }
.hi-disc-1 .elementor-widget-container { background: radial-gradient(115% 100%
  at 60% 15%, #EFEAE1 0%, #CDC3B1 55%, #9C9078 100%); }
.hi-disc-2 .elementor-widget-container { background: radial-gradient(115% 100%
  at 40% 15%, #E9E4D9 0%, #C0B8A6 55%, #8B8069 100%); }
.hi-disc-3 .elementor-widget-container { background: radial-gradient(115% 100%
  at 60% 20%, #E2DFD2 0%, #B4B29E 55%, #767963 100%); }

/* about 'moon' composition */
.hi-moon { position: relative; height: 420px; }
.hi-moon-ring { position: absolute; left: 20px; top: 40px; width: 380px;
  height: 380px; border-radius: 50%; border: 1px solid #C2AA82; }
.hi-moon-big { position: absolute; right: 40px; top: 0; width: 340px;
  height: 340px; border-radius: 50%;
  background: radial-gradient(120% 100% at 70% 20%, #F0EBE2 0%, #CFC5B4 55%,
    #A3987F 100%); box-shadow: 0 30px 60px rgba(32,30,26,.18); }
.hi-moon-small { position: absolute; left: 60px; bottom: 0; width: 210px;
  height: 210px; border-radius: 50%;
  background: radial-gradient(120% 100% at 30% 20%, #E4DFD4 0%, #B8B0A2 60%,
    #847E6C 100%); box-shadow: 0 24px 48px rgba(32,30,26,.16); }
.hi-moon-cap { position: absolute; right: 0; bottom: 36px; font-size: 10.5px;
  letter-spacing: .2em; text-transform: uppercase; color: #5E5A51;
  font-family: 'Karla', sans-serif; }
@media (max-width: 767px) {
  .hi-moon { height: 300px; }
  .hi-moon-ring { width: 260px; height: 260px; left: 10px; top: 20px; }
  .hi-moon-big { width: 230px; height: 230px; right: 10px; }
  .hi-moon-small { width: 140px; height: 140px; left: 20px; }
}

/* contact definition list */
.hi-dl { display: grid; grid-template-columns: 120px 1fr; row-gap: 16px;
  margin: 0; font-family: 'Karla', sans-serif; font-size: 14.5px;
  font-weight: 500; color: #E3DFD9; }
.hi-dl dt { color: #C2AA82; letter-spacing: .18em; text-transform: uppercase;
  font-size: 10.5px; padding-top: 4px; }
.hi-dl dd { margin: 0; }
.hi-dl a { color: #E3DFD9; text-decoration: none; }
.hi-dl a:hover { color: #C2AA82; }

/* stylized map card linking to OpenStreetMap */
.hi-map { display: block; height: 150px; border-radius: 14px;
  position: relative; overflow: hidden; margin-top: 10px;
  background:
    repeating-linear-gradient(0deg, rgba(227,223,217,.06) 0 1px,
      transparent 1px 30px),
    repeating-linear-gradient(90deg, rgba(227,223,217,.06) 0 1px,
      transparent 1px 30px),
    linear-gradient(135deg, #232834, #1A1E27); }
.hi-map-pin { position: absolute; left: 50%; top: 44%; width: 12px;
  height: 12px; border-radius: 50%; background: #C2AA82;
  box-shadow: 0 0 0 7px rgba(194,170,130,.2); }
.hi-map-label { position: absolute; left: 16px; bottom: 12px;
  font-family: 'Karla', sans-serif; font-size: 10px; letter-spacing: .2em;
  text-transform: uppercase; color: #B5B2BD; }
.hi-map:hover .hi-map-label { color: #C2AA82; }

/* dark contact form */
.form-nacht .elementor-field {
  background: rgba(227,223,217,.06); border: 1px solid rgba(227,223,217,.25);
  border-radius: 14px; color: #E3DFD9; padding: 15px 18px;
  font-family: 'Karla', sans-serif; font-weight: 500; }
.form-nacht .elementor-field:focus { border-color: #C2AA82; outline: none;
  box-shadow: 0 0 0 3px rgba(194,170,130,.2); }
.form-nacht .elementor-field::placeholder { color: #B5B2BD; }
.form-nacht .elementor-field-type-acceptance,
.form-nacht .elementor-field-type-acceptance label,
.form-nacht .elementor-field-subgroup label { color: #B5B2BD !important;
  font-size: 13px; font-weight: 500; }
.form-nacht .elementor-field-type-acceptance a { color: #E3DFD9; }
.form-nacht .elementor-field-option input { accent-color: #C2AA82; }
.form-nacht .elementor-message-success { color: #C2AA82; }
.form-nacht .elementor-message-danger { color: #D89B8C; }

/* footer links */
.hi-footer-links a { color: #E3DFD9; text-decoration: none; margin-left: 26px;
  font-family: 'Karla', sans-serif; font-size: 12.5px; font-weight: 500;
  letter-spacing: .06em; }
.hi-footer-links a:first-child { margin-left: 0; }
.hi-footer-links a:hover { color: #C2AA82; }
.hi-footer a { text-decoration: none; color: #E3DFD9; }
.hi-footer a:hover { color: #C2AA82; }

/* legal pages */
.hi-legal h3 { font-family: 'Fraunces', serif; font-weight: 400;
  font-size: 24px; margin: 36px 0 12px; }
.hi-legal p, .hi-legal li { font-family: 'Karla', sans-serif;
  font-weight: 500; font-size: 15px; line-height: 1.8; color: #3d3a33; }
.hi-legal a { color: #201E1A; }/* End custom CSS */