/* Unified alignment, deliberate navigation and a quieter page ending. */
:root{--layout-width:1200px}.wrap{width:min(var(--layout-width),calc(100% - 96px))}.nav-inner{position:relative;gap:24px}.nav-shell{border-bottom:1px solid #10203312}.nav-shell .approved-brand-logo{width:264px;height:80px}#main-nav{gap:30px;align-items:center}#main-nav>a:not(.nav-contact){font-size:13px;font-weight:500}#main-nav>a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.service-menu>summary{list-style:none;cursor:pointer;font-size:13px;font-weight:500;display:flex;align-items:center;gap:10px;padding:24px 0}.service-menu>summary::-webkit-details-marker{display:none}.service-menu>summary>span{transition:transform .2s}.service-menu[open]>summary>span{transform:rotate(180deg)}.service-menu-panel{position:absolute;top:calc(100% + 1px);left:0;right:0;background:#fff;box-shadow:0 24px 45px #10203320;border:1px solid #10203312;padding:32px;display:grid;grid-template-columns:230px 1fr;gap:32px;border-radius:0 0 16px 16px;animation:menu-in .2s ease}.menu-intro{border-right:1px solid #dce1e5;padding-right:26px}.menu-intro>span{font-size:9px;letter-spacing:.15em;color:#8b644c}.menu-intro p{font-size:25px;line-height:1.15;color:#172530;letter-spacing:-.04em;margin:16px 0}.menu-intro>a{font-size:11px;text-decoration:underline;text-underline-offset:4px}.menu-columns{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:24px}.menu-columns h2{font-size:13px;letter-spacing:0;font-weight:600;margin:0 0 14px}.menu-columns a{display:block;font-size:12px;padding:9px 0;color:#596570;line-height:1.4}.menu-columns a:hover{color:#9c623e}.home-premium #leistungen{padding-top:80px}.home-premium .section-heading{align-items:start;grid-template-columns:1fr 1fr;gap:60px}.home-premium .section-heading>p{max-width:430px;margin:8px 0 0 auto}.home-premium .service-card{grid-template-columns:1fr 1fr;column-gap:60px}.home-premium .service-card .card-title,.home-premium .service-card>p{padding-left:0}.home-premium .about-strip{margin-top:88px;display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:48px}.home-premium .about-strip h2{font-size:44px}.home-premium .about-monogram{font-size:110px}.home-premium .faq{border-bottom:1px solid #dce1e5}.footer-inner{grid-template-columns:1.2fr .8fr 1.1fr;gap:64px;padding-top:64px;padding-bottom:48px}.footer-brand .approved-brand-logo{width:260px;height:86px}.footer-brand p{font-size:12px;line-height:1.8;margin:16px 0 24px}.secondary-brand-label{display:block;font-size:8px;letter-spacing:.16em;color:#8e99a5;margin-bottom:9px}.footer-brand .karggas{width:126px;height:auto;opacity:.9}.footer-inner h2{font-size:10px;letter-spacing:.12em;color:#b9a18e;margin:12px 0 24px}.footer-inner a{font-size:13px;margin-bottom:15px}.footer-inner .footer-phone{font-size:25px;letter-spacing:-.03em;color:#fff}.footer-contact p{font-size:12px;margin:24px 0 18px}.footer-contact p span{color:#8e99a5;font-size:11px}.footer-google{display:flex;gap:20px;flex-wrap:wrap}.footer-google a{font-size:10px}.footer-bottom{border-top:1px solid #ffffff18;padding-top:22px}.menu-lines{display:inline-block;width:17px;height:9px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.menu-toggle{display:none}@keyframes menu-in{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px) and (min-width:781px){#main-nav{gap:18px}.nav-shell .approved-brand-logo{width:220px;height:72px}.service-menu-panel{grid-template-columns:1fr}.menu-intro{display:none}}
@media(max-width:780px){.wrap{width:calc(100% - 40px)}.nav-inner{position:relative;min-height:76px}.nav-shell .approved-brand-logo{width:222px;height:65px}.menu-toggle{display:flex;align-items:center;gap:10px;padding:12px 14px;font-size:12px}.nav-shell #main-nav{position:absolute;top:100%;left:-20px;right:-20px;width:auto;max-height:calc(100dvh - 130px);overflow-y:auto;padding:20px 24px 28px;background:#fff;border-top:1px solid #e0e4e8;border-radius:0 0 20px 20px;box-shadow:0 20px 30px #10203318}.nav-shell #main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav-shell #main-nav>a{padding:18px 0;font-size:17px;border-top:1px solid #e0e4e8}.nav-shell #main-nav>.nav-contact{text-align:center;margin-top:12px;padding:17px;border-radius:30px;font-size:14px}.service-menu>summary{font-size:18px;padding:8px 0 20px;justify-content:space-between}.service-menu-panel{position:static;display:block;border:0;padding:0 0 20px;box-shadow:none;animation:none}.menu-intro{display:none}.menu-columns{grid-template-columns:1fr;gap:20px}.menu-columns h2{margin:0 0 7px;font-size:12px;color:#8b644c}.menu-columns a{padding:11px 0;font-size:14px}.home-premium #leistungen{padding-top:48px}.home-premium .section-heading{display:block}.home-premium .section-heading>p{margin:22px 0 0;max-width:none}.home-premium .service-card{gap:0}.home-premium .about-strip{display:block;padding:30px 24px;margin-top:48px}.home-premium .about-monogram{display:none}.home-premium .about-strip h2{font-size:37px}.footer-inner{display:grid;grid-template-columns:1fr 1fr;gap:32px 20px;padding-top:42px;padding-bottom:30px}.footer-brand{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:start}.footer-brand .main-brand,.footer-brand p{grid-column:1/-1}.footer-brand .approved-brand-logo{width:245px;height:82px}.footer-brand p{margin:8px 0 22px}.secondary-brand-label{align-self:center;margin:0}.footer-brand .karggas{width:115px}.footer-contact .footer-phone{font-size:18px}.footer-inner a{font-size:12px;overflow-wrap:anywhere}.footer-inner h2{line-height:1.6;margin-bottom:18px}.footer-google{gap:0;flex-direction:column}.footer-bottom{display:flex;flex-direction:column;gap:18px;align-items:flex-start}.footer-bottom>div{display:flex;flex-wrap:wrap;gap:16px}.footer-bottom a{font-size:10px}}
@media(max-width:370px){.nav-shell .approved-brand-logo{width:192px;height:62px}.nav-inner{gap:8px}.menu-toggle{padding:11px 10px}}
@media(prefers-reduced-motion:reduce){.service-menu-panel{animation:none}.service-menu>summary>span{transition:none}}

@media(max-width:780px){.wp-site-blocks>header:has(#main-nav.is-open){z-index:1200}}

/* A visible route home and progressively disclosed service categories. */
#main-nav{gap:24px}.nav-shell .approved-brand-logo{width:246px;height:76px}.menu-group>summary{list-style:none;font-size:14px;font-weight:600;letter-spacing:0;margin-bottom:14px;cursor:default}.menu-group>summary::-webkit-details-marker{display:none}.menu-group>summary span{display:none}.service-menu>summary[data-current]{text-decoration:underline;text-underline-offset:7px}.nav-home[aria-current]{color:#8b5737}#main-nav>a:focus-visible,.service-menu summary:focus-visible{outline-offset:4px;border-radius:3px}
@media(max-width:1000px) and (min-width:781px){#main-nav{gap:14px}.nav-shell .approved-brand-logo{width:190px;height:66px}#main-nav .nav-contact{padding:14px 16px}}
@media(max-width:780px){.nav-shell .approved-brand-logo{width:222px;height:65px}.nav-shell #main-nav>.nav-home{border-top:0;padding-top:4px}.service-menu>summary{border-top:1px solid #e0e4e8;padding:18px 0;font-size:17px}.menu-columns{gap:0}.menu-group{border-top:1px solid #e6e9ec}.menu-group>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:15px;margin:0;padding:17px 0;color:#334454}.menu-group>summary span{display:block;font-size:20px;font-weight:400;color:#8b644c}.menu-group[open]>summary span{transform:rotate(45deg)}.menu-group>div{padding:0 0 14px 14px;border-left:2px solid #c9ae97;margin-bottom:12px}.menu-columns a{font-size:13px;padding:12px 0}.service-menu-panel{padding-bottom:0}.menu-intro{display:block;border:0;padding:0 0 17px}.menu-intro>span,.menu-intro>p{display:none}.menu-intro>a{font-size:12px}.nav-shell #main-nav.is-open{gap:0}}
@media(max-width:370px){.nav-shell .approved-brand-logo{width:192px;height:62px}}

@media(max-width:780px){.nav-shell .menu-toggle{min-height:44px;border:1px solid #253342;background:#172330;color:#fff;border-radius:14px;padding:12px 16px;gap:13px;font-size:13px;font-weight:600;letter-spacing:.015em;box-shadow:0 4px 12px #10203316}.menu-toggle .menu-lines{position:relative;width:18px;height:14px;border:0}.menu-lines:before,.menu-lines:after{content:"";position:absolute;left:0;width:18px;height:1.5px;background:currentColor;transition:transform .2s,top .2s}.menu-lines:before{top:3px}.menu-lines:after{top:10px;width:13px;left:auto;right:0}.menu-toggle[aria-expanded=true] .menu-lines:before{top:6px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{top:6px;width:18px;transform:rotate(-45deg)}.nav-shell .menu-toggle:hover{background:#293a4c}.nav-shell .menu-toggle:focus-visible{outline:2px solid #b78b6b;outline-offset:4px}}@media(max-width:370px){.nav-shell .menu-toggle{padding:12px;gap:10px}}@media(prefers-reduced-motion:reduce){.menu-lines:before,.menu-lines:after{transition:none}}

/* Legible action labels, particularly on small screens. */
.mobile-contact>a{font-weight:700;font-size:14px;line-height:1.25;min-height:48px;letter-spacing:0}.nav-shell #main-nav>.nav-contact{font-weight:600}.button-row>.button,.contact-band .button{font-weight:600}
@media(max-width:350px){.mobile-contact>a{font-size:13px}}
