/* Colors and the background image are supplied by CMS design settings. */
body.cms-body.cms-template-familieruehle{background-position:center 65px;background-size:auto max(78svh,56.25vw);background-repeat:no-repeat;background-attachment:fixed}
.fr-site{min-height:100vh;background:transparent}
.fr-main{max-width:1280px;margin:auto;padding:32px 32px 72px;min-height:76vh}
.fr-site .fr-main>.cms-main{max-width:none;width:100%;padding:0;margin:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.fr-main>.cms-main>.grid-x{margin:0;row-gap:26px}
.fr-main>.cms-main>.grid-x>.cms-content-box{width:100%;max-width:none;margin:0}
.fr-main>.cms-main>.grid-x>.cms-content-box:not(.cms-content-boundary){padding:0}
.fr-main .cms-content-boundary{border:1px solid var(--cms-callout-border);border-radius:10px;padding:32px 36px;box-shadow:0 12px 30px #0003}
.fr-main h1,.fr-main h2,.fr-main h3{font-family:Georgia,'Times New Roman',serif;color:inherit;font-weight:400}
.fr-main h1{font-size:clamp(3rem,6vw,5.6rem);line-height:1.05;letter-spacing:-.035em;margin:12px 0 22px}
.fr-eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;font-weight:700;color:inherit}
.fr-intro{font-size:1.15rem;line-height:1.8}
.fr-hero{width:100%;max-width:none;padding:12px 0 8px;color:var(--cms-text-color);text-shadow:0 2px 8px #000}
.fr-rule{width:56px;border-top:2px solid var(--cms-footer-link);margin-bottom:26px}
.fr-login,.fr-contact-heading,.fr-main .cms-contact-form-wrapper{box-sizing:border-box;width:100%;max-width:none;padding:0;margin:0;border:0;box-shadow:none;background:transparent;color:inherit}
.fr-contact-heading{margin-bottom:12px}.fr-main .cms-contact-form-wrapper form{width:100%;max-width:none}
.fr-main .cms-content-boundary .button{background:var(--cms-callout-text);color:var(--cms-callout-background);border:1px solid var(--cms-callout-border);border-radius:4px;padding:14px 25px;font-weight:600}
.fr-main .button:hover,.fr-main .button:focus{filter:brightness(1.12)}
.fr-main .cms-content-boundary a:not(.button){color:inherit;text-decoration:underline}
.fr-main label,.fr-main .help-text{color:inherit}
.fr-main input:not([type=checkbox]),.fr-main textarea{background:var(--cms-callout-background);border:1px solid var(--cms-callout-border);border-radius:4px;color:var(--cms-callout-text);box-shadow:none}
.fr-main input:focus,.fr-main textarea:focus{outline:2px solid var(--cms-callout-border);outline-offset:2px}
.fr-main .cms-contact-form-wrapper .cell{margin-bottom:12px}
.fr-main .cms-captcha{background:var(--cms-callout-background);border-color:var(--cms-callout-border);color:var(--cms-callout-text)}
.fr-legal{padding:0;width:100%;max-width:none;color:inherit}.fr-legal h1{font-size:2.8rem}.fr-legal h2{font-size:1.6rem;margin-top:30px}
.fr-skip{position:absolute;left:20px;top:-100px;background:var(--cms-boundary-background);color:var(--cms-boundary-text);padding:10px;z-index:9999}.fr-skip:focus{top:10px}
.fr-site .cms-brand{font-family:Georgia,serif}
@media(max-width:800px){
 body.cms-body.cms-template-familieruehle{background-size:auto min(67svh,132vw);background-position:center 65px}
 .fr-main{padding:24px 18px 45px}.fr-hero{padding:0 0 8px}.fr-main h1{font-size:clamp(2.8rem,10vw,4.5rem)}
 .fr-main .cms-content-boundary{padding:24px}.fr-main .button{width:100%}
}
