:root{--green:#173f35;--green2:#24594b;--lime:#c8e18b;--cream:#f6f5ef;--ink:#18231f;--muted:#64716b;--line:#dfe5dc;--white:#fff;--shadow:0 18px 50px rgba(17,47,38,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit}.topbar{position:sticky;top:0;z-index:20;background:rgba(246,245,239,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(23,63,53,.12)}.nav{max-width:1180px;margin:auto;padding:13px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-weight:850;letter-spacing:-.04em;line-height:1.15}.brand-mark{width:39px;height:39px;border-radius:12px;background:var(--green);display:grid;place-items:center;color:var(--lime);font-weight:900;font-size:21px}.brand small{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:4px}.nav-right{display:flex;align-items:center;gap:22px}.nav-links{display:flex;gap:20px;font-size:13px;font-weight:700}.nav-links a{text-decoration:none}.nav-links a:hover{color:var(--green2)}.lang{font-size:12px;font-weight:800;border:1px solid var(--line);border-radius:999px;padding:8px 11px;text-decoration:none;white-space:nowrap}.call-head{background:var(--lime);color:var(--green);border-radius:999px;padding:10px 15px;font-weight:850;text-decoration:none;font-size:13px;white-space:nowrap}.hero{background:var(--green);color:white;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;width:540px;height:540px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-100px;top:-220px;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.025)}.hero-inner{max-width:1180px;margin:auto;padding:76px 24px 82px;display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center;position:relative}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--lime);font-weight:850;display:flex;align-items:center;gap:10px}.eyebrow:before{content:"";height:2px;width:25px;background:var(--lime)}h1{font-size:clamp(38px,5.1vw,66px);line-height:1.03;letter-spacing:-.055em;margin:19px 0 22px;max-width:690px}h1 em{font-style:normal;color:var(--lime)}.hero-copy{font-size:17px;color:rgba(255,255,255,.78);max-width:570px;margin:0 0 27px}.actions{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 19px;border-radius:999px;text-decoration:none;font-size:14px;font-weight:850;border:1px solid transparent}.btn-primary{background:var(--lime);color:var(--green)}.btn-outline{border-color:rgba(255,255,255,.32);color:white}.contact-card{background:#fff;color:var(--ink);border-radius:22px;padding:25px;box-shadow:var(--shadow);position:relative;z-index:1}.contact-card .tag{display:inline-flex;background:#eef4e4;color:var(--green);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.contact-card h2{font-size:23px;line-height:1.2;letter-spacing:-.04em;margin:13px 0 6px}.contact-card p{color:var(--muted);font-size:13px;margin:0 0 17px}.phone-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid var(--line)}.person{font-size:13px;color:var(--muted)}.phone{font-size:18px;font-weight:900;letter-spacing:-.03em;text-decoration:none;color:var(--green);white-space:nowrap}.phone:after{content:"↗";font-size:12px;margin-left:7px;color:#71954c}.contact-email{display:flex;gap:10px;align-items:center;background:var(--cream);padding:12px 13px;border-radius:12px;margin-top:12px;text-decoration:none;font-size:13px;font-weight:800;overflow-wrap:anywhere}.address{margin-top:14px;color:var(--muted);font-size:12px;line-height:1.5}.address strong{color:var(--ink)}.section{max-width:1180px;margin:auto;padding:76px 24px}.section-head{max-width:700px;margin-bottom:32px}.kicker{color:var(--green2);font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:900}.section h2{font-size:clamp(29px,3.4vw,43px);line-height:1.12;letter-spacing:-.045em;margin:10px 0 14px}.lead{color:var(--muted);font-size:16px;max-width:720px}.features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.feature{background:white;border:1px solid var(--line);border-radius:18px;padding:24px;min-height:210px}.icon{height:42px;width:42px;border-radius:13px;background:#edf3e4;color:var(--green);display:grid;place-items:center;font-size:21px;font-weight:900;margin-bottom:19px}.feature h3{font-size:18px;line-height:1.25;margin:0 0 9px;letter-spacing:-.02em}.feature p{font-size:14px;color:var(--muted);margin:0}.machine{background:#e9eee5;border-radius:24px;padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.machine-art{background:var(--green);border-radius:18px;min-height:260px;display:grid;place-items:center;overflow:hidden;position:relative}.machine-art svg{width:100%;max-width:480px;height:auto}.machine-art video{display:block;width:100%;height:100%;min-height:260px;max-height:420px;object-fit:contain;background:#102d26}.video-wrap{min-height:260px}.machine-copy h2{margin-top:8px}.machine-copy p{color:var(--muted)}.stat{display:inline-flex;align-items:baseline;gap:9px;background:white;border-radius:14px;padding:12px 15px;margin-top:7px}.stat strong{font-size:28px;letter-spacing:-.05em;color:var(--green)}.stat span{font-size:12px;color:var(--muted);font-weight:700}.systems{display:flex;flex-wrap:wrap;gap:10px;margin-top:23px}.system{background:white;border:1px solid var(--line);padding:11px 15px;border-radius:11px;font-size:13px;font-weight:800}.cta{background:var(--lime);border-radius:24px;padding:34px;display:flex;align-items:center;justify-content:space-between;gap:24px}.cta h2{margin:0 0 8px;font-size:clamp(27px,3vw,38px)}.cta p{margin:0;color:#49614b}.cta .btn{background:var(--green);color:white;flex-shrink:0}.footer{background:#102d26;color:rgba(255,255,255,.76)}.footer-inner{max-width:1180px;margin:auto;padding:32px 24px;display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:12px}.footer strong{color:white}.footer a{color:var(--lime);text-decoration:none}.mobile-call{display:none}.note{font-size:11px;color:rgba(255,255,255,.55);margin-top:17px}@media(max-width:850px){.nav{padding:11px 16px;flex-wrap:wrap;justify-content:center;gap:10px}.brand{margin-right:auto}.nav-links{display:flex;flex:1 1 100%;order:3;flex-wrap:wrap;justify-content:center;gap:7px 14px;font-size:12px}.nav-links a{display:inline-block;padding:5px 2px}.nav-right{flex:1 1 100%;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.about-link{background:var(--lime);border-color:var(--lime);color:var(--green);padding:8px 12px;border-radius:999px;text-decoration:none;white-space:nowrap}.lang{padding:8px 12px}.nav-right{gap:9px}.call-head{font-size:12px;padding:9px 11px}.hero-inner{grid-template-columns:1fr;padding:54px 18px 52px;gap:30px}.hero-copy{font-size:16px}.contact-card{max-width:560px}.section{padding:56px 18px}.features{grid-template-columns:1fr}.feature{min-height:0}.machine{grid-template-columns:1fr;padding:17px}.machine-art{min-height:220px}.cta{align-items:flex-start;flex-direction:column;padding:25px}.footer-inner{flex-direction:column;align-items:flex-start;padding-bottom:80px}.mobile-call{position:fixed;z-index:30;bottom:12px;left:12px;right:12px;display:flex;gap:8px;padding:8px;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 30px #0002}.mobile-call a{flex:1;text-align:center;border-radius:10px;padding:12px 7px;text-decoration:none;font-weight:900;font-size:13px;background:var(--green);color:white}.mobile-call a:last-child{background:var(--lime);color:var(--green)}}@media(max-width:420px){.brand{font-size:13px}.brand-mark{width:34px;height:34px}.brand-mark-img{width:66px;height:60px;flex:0 0 66px;object-fit:fill;object-position:center top;border-radius:12px;display:block;background:#506b31;}.lang{padding:7px 8px}.call-head{display:none}.phone{font-size:16px}.contact-card{padding:19px}}

/* Photo gallery */
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gallery-item{margin:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 8px 24px rgba(17,47,38,.06)}.gallery-item img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#e9eee5}.gallery-item figcaption{padding:12px 14px;font-size:13px;font-weight:750;color:var(--green)}.gallery-section{padding-top:30px}.gallery-section .section-head{margin-bottom:24px}@media(max-width:850px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.gallery-grid{grid-template-columns:1fr}}

.brand-mark img{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit}.brand-mark{overflow:hidden}.spec-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.spec-list p{background:#f5f7f5;padding:16px;border-radius:8px;margin:0}@media(max-width:700px){.spec-list{grid-template-columns:1fr}}

/* Language-specific business-card graphic used as the header brand */
.brand-graphic{display:flex;align-items:center;flex:0 0 auto;line-height:0;letter-spacing:0}
.brand-graphic img{display:block;width:190px;height:auto;max-height:64px;object-fit:contain;border-radius:0}
@media(max-width:850px){.brand-graphic img{width:160px;max-height:54px}}
@media(max-width:420px){.brand-graphic img{width:132px;max-height:45px}}

/* Header brand icon uses the approved broiler-leg graphic while keeping the business name. */
.brand-mark-img{width:66px;height:60px;flex:0 0 66px;object-fit:fill;object-position:center top;border-radius:12px;display:block;background:#506b31;}
.brand>span{display:block}
.footer-contacts{white-space:normal;min-width:max-content}
.footer .footer-phone{white-space:nowrap;display:inline-block;word-break:keep-all;overflow-wrap:normal}
@media(max-width:850px){.footer-inner{align-items:flex-start;flex-wrap:wrap}.footer-contacts{min-width:0}}

/* About and legal information additions */
.about-links{padding-left:20px;color:var(--green);font-size:14px}.about-links li{margin:8px 0}.about-links a{font-weight:750;text-decoration:none}.about-links a:hover{text-decoration:underline}.about-section{padding-top:54px;padding-bottom:54px}.about-section .section-head{max-width:850px;margin-bottom:0}.footer-inner{align-items:flex-start;flex-wrap:wrap}.footer-inner>div{max-width:100%}.footer-legal{font-size:12px;line-height:1.8;max-width:360px}.footer-legal a{font-weight:750;text-decoration:underline}.legal-page{max-width:900px;margin:0 auto;padding:60px 24px 80px;min-height:65vh}.legal-page h1{color:var(--green);font-size:clamp(36px,5vw,54px);margin:12px 0 24px}.legal-page h2{font-size:22px;color:var(--green);margin:30px 0 8px}.legal-page p{color:var(--muted);font-size:15px}.legal-page a{color:var(--green2)}.legal-back{margin-top:32px}.legal-back .btn{color:var(--green);text-decoration:none}@media(max-width:850px){.footer-inner{gap:18px}.footer-legal{max-width:none}}

.about-link{font-size:12px;font-weight:800;border:1px solid var(--line);border-radius:999px;padding:8px 11px;text-decoration:none;white-space:nowrap;color:var(--green)}.about-link:hover,.about-link.active{background:var(--green);color:white}.about-page{max-width:1180px;margin:0 auto;padding:40px 24px 70px}.about-page .about-section{padding:36px 0 24px}.about-page .section-head{max-width:900px}.about-page .legal-back{margin-top:26px}@media(max-width:850px){.about-page{padding:24px 18px 56px}}


/* Subtle interaction on the main navigation and brand, matching the photo hover effect */
@media (hover: hover) and (pointer: fine) {
  .nav-links a, .about-link, .lang {
    display: inline-block;
    transform-origin: center;
    transition: transform 180ms ease, color 180ms ease, opacity 180ms ease;
  }
  .nav-links a:hover, .about-link:hover, .lang:hover {
    transform: scale(1.055);
  }
  .brand {
    transform-origin: left center;
    transition: transform 180ms ease, opacity 180ms ease;
  }
  .brand:hover {
    transform: scale(1.035);
  }
}
@media (prefers-reduced-motion: reduce) {
  .nav-links a, .about-link, .lang, .brand { transition: none !important; }
}

/* Zusätzlicher, deutlicherer Hover-Effekt für Vorteile und Kontakt-Schaltflächen */
@media (hover: hover) and (pointer: fine) {
  .feature { position: relative; transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease; transform-origin: center; }
  .feature:hover { transform: scale(1.055); box-shadow: 0 20px 42px rgba(17,47,38,.18); border-color: rgba(23,63,53,.28); z-index: 2; }
  .actions .btn, .cta .btn { transition: transform .22s ease, box-shadow .22s ease, filter .22s ease; }
  .actions .btn:hover, .cta .btn:hover { transform: scale(1.055); box-shadow: 0 10px 24px rgba(0,0,0,.16); filter: brightness(1.035); }
}
.note { font-size: 13px; line-height: 1.55; }
@media (prefers-reduced-motion: reduce) {
  .feature, .actions .btn, .cta .btn { transition: none; }
}


/* Hover effects for practice gallery and a slightly stronger lift on feature cards */
@media (hover: hover) and (pointer: fine) {
  .gallery-item { position: relative; transition: transform .24s ease, box-shadow .24s ease; transform-origin: center; }
  .gallery-item:hover { transform: scale(1.035); box-shadow: 0 16px 34px rgba(17,47,38,.17); z-index: 3; }
  .gallery-item img { transition: transform .28s ease; }
  .gallery-item:hover img { transform: scale(1.025); }
  .feature:hover { transform: scale(1.07); box-shadow: 0 22px 44px rgba(17,47,38,.20); }
}
@media (prefers-reduced-motion: reduce) {
  .gallery-item, .gallery-item img, .feature { transition: none !important; }
}

/* Keep the About button visually consistent on desktop and mobile. */
@media(max-width:850px){.about-link{font-size:12px;padding:8px 11px;line-height:1.2;}}


/* Final responsive header: Home appears only on mobile; About button matches desktop pill. */
.mobile-home-link { display: none !important; }
@media screen and (min-width: 851px) {
  header.topbar .nav-right > .mobile-home-link { display: none !important; }
}
@media screen and (max-width: 850px) {
  header.topbar .nav {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }
  header.topbar .nav > .brand {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
  header.topbar .nav > .nav-right {
    display: flex !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
  }
  header.topbar .nav-right > .nav-links { display: none !important; }
  header.topbar .nav-right > .mobile-home-link,
  header.topbar .nav-right > .about-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 10px 16px !important;
    border: 1px solid var(--green) !important;
    border-radius: 999px !important;
    background: var(--green) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
  }
  header.topbar .nav-right > .mobile-home-link { order: 0 !important; }
  header.topbar .nav-right > .about-link { order: 1 !important; }
  header.topbar .nav-right > .lang {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    order: 2 !important;
    min-height: 42px !important;
    padding: 9px 12px !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
  }
}
@media screen and (max-width: 420px) {
  header.topbar .nav { padding: 10px 12px !important; }
  header.topbar .nav-right { gap: 7px !important; }
  header.topbar .nav-right > .mobile-home-link,
  header.topbar .nav-right > .about-link { padding: 9px 12px !important; font-size: 12px !important; }
  header.topbar .nav-right > .lang { padding: 9px 9px !important; font-size: 11px !important; }
}


/* Popravek: gumb DOMOV / STARTSEITE je viden samo na mobilnih napravah. */
header.topbar .nav-right > .mobile-home-link { display: none !important; }
@media screen and (max-width: 850px) {
  header.topbar .nav-right > .mobile-home-link { display: inline-flex !important; }
}
@media screen and (min-width: 851px) {
  header.topbar .nav-right > .mobile-home-link { display: none !important; }
}
