:root{
  --green:#073334;
  --green-soft:#0d4344;
  --taupe:#a49a8e;
  --taupe-light:#cfc8bf;
  --paper:#f0efec;
  --white:#fdfdfc;
  --ink:#1d2a2a;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;}
h1,h2,h3,.serif{font-family:Georgia,'Times New Roman',serif;font-weight:400;}
img{max-width:100%;}

/* NAV */
nav{position:sticky;top:0;z-index:50;background:var(--green);display:flex;align-items:center;justify-content:space-between;padding:.7rem 5vw;box-shadow:0 2px 10px rgba(0,0,0,.25);gap:1rem;}
nav .brand{display:flex;align-items:center;gap:.6rem;color:var(--white);text-decoration:none;}
nav .brand svg{height:34px;width:auto;display:block;}
nav .brand span{letter-spacing:.18em;font-size:.95rem;font-weight:600;}
nav .brand small{display:block;letter-spacing:.28em;font-size:.5rem;color:var(--taupe-light);font-weight:400;}
nav ul{display:flex;gap:1.4rem;list-style:none;flex-wrap:wrap;}
nav ul a{color:var(--white);text-decoration:none;font-size:.9rem;opacity:.85;padding-bottom:2px;}
nav ul a:hover{opacity:1;border-bottom:2px solid var(--taupe-light);}
nav ul a.active{opacity:1;border-bottom:2px solid var(--taupe);}
nav .cta{background:var(--taupe);color:var(--green);padding:.45rem 1.1rem;border-radius:3px;font-weight:600;font-size:.85rem;text-decoration:none;white-space:nowrap;}
nav .cta:hover{background:var(--taupe-light);}
@media(max-width:920px){nav ul{display:none;}}

/* HERO (Start) */
header.hero{background:var(--green);color:var(--white);padding:5.5rem 5vw 5rem;display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center;}
.hero h1{font-size:clamp(2.2rem,4.5vw,3.4rem);line-height:1.15;margin-bottom:1.2rem;}
.hero p.lead{font-size:1.15rem;color:var(--taupe-light);max-width:34rem;margin-bottom:2rem;}
.hero .buttons a{display:inline-block;margin-right:1rem;margin-bottom:.5rem;padding:.8rem 1.6rem;border-radius:3px;text-decoration:none;font-weight:600;font-size:.95rem;}
.hero .primary{background:var(--taupe);color:var(--green);}
.hero .primary:hover{background:var(--taupe-light);}
.hero .secondary{border:1px solid var(--taupe-light);color:var(--white);}
.hero .secondary:hover{background:var(--green-soft);}
.hero .logobox{text-align:center;}
.hero .logobox img,.hero .logobox video{max-width:280px;width:100%;height:auto;display:block;margin:0 auto;}
@media(max-width:820px){header.hero{grid-template-columns:1fr;padding-top:3.5rem;}.hero .logobox{order:-1;}.hero .logobox img,.hero .logobox video{max-width:180px;}}

/* PAGE HERO (Unterseiten) */
header.page{background:var(--green);color:var(--white);padding:3.5rem 5vw 3rem;}
header.page .kicker{color:var(--taupe-light);}
header.page h1{font-size:clamp(1.9rem,3.5vw,2.8rem);max-width:46rem;}
header.page p{color:var(--taupe-light);max-width:42rem;margin-top:.8rem;font-size:1.05rem;}
.breadcrumb{font-size:.8rem;margin-bottom:1.2rem;}
.breadcrumb a{color:var(--taupe-light);text-decoration:none;}
.breadcrumb a:hover{text-decoration:underline;}
.breadcrumb span{color:#8fa3a1;}

/* TRUST BAR */
.trust{background:var(--green-soft);color:var(--taupe-light);display:flex;flex-wrap:wrap;justify-content:center;gap:2.5rem;padding:1rem 5vw;font-size:.88rem;}
.trust span strong{color:var(--white);font-weight:600;}

section{padding:4rem 5vw;}
.kicker{letter-spacing:.25em;text-transform:uppercase;font-size:.75rem;color:var(--taupe);font-weight:700;margin-bottom:.6rem;}
section h2{font-size:clamp(1.7rem,3vw,2.3rem);color:var(--green);margin-bottom:1rem;}
section p.intro{max-width:44rem;margin-bottom:2.2rem;color:#3c4a4a;}
.narrow{max-width:52rem;}
.narrow p{margin-bottom:1rem;color:#3c4a4a;}

/* CARDS */
.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.4rem;}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.4rem;max-width:64rem;}
.card{background:var(--white);border-top:4px solid var(--green);padding:1.8rem 1.5rem;box-shadow:0 3px 14px rgba(7,51,52,.08);}
.card h3{color:var(--green);font-size:1.25rem;margin-bottom:.7rem;}
.card h3 a{color:var(--green);text-decoration:none;}
.card h3 a:hover{text-decoration:underline;}
.card ul{list-style:none;font-size:.92rem;color:#3c4a4a;}
.card ul li{padding:.28rem 0 .28rem 1.2rem;position:relative;}
.card ul li::before{content:"\2014";position:absolute;left:0;color:var(--taupe);}
.card .who{margin-top:1rem;font-size:.8rem;color:var(--taupe);font-style:italic;}
.card .more{display:inline-block;margin-top:1rem;color:var(--green);font-weight:600;font-size:.88rem;text-decoration:none;}
.card .more:hover{text-decoration:underline;}

/* CHECKLIST */
.checks{list-style:none;max-width:44rem;}
.checks li{padding:.45rem 0 .45rem 1.8rem;position:relative;color:#3c4a4a;}
.checks li::before{content:"\2713";position:absolute;left:0;color:var(--green);font-weight:700;}
.checks li strong{color:var(--green);}

/* ABOUT */
.about-dark{background:var(--green);color:var(--white);}
.about-dark h2{color:var(--white);}
.about-dark .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;align-items:start;}
.portrait{border-radius:3px;overflow:hidden;box-shadow:0 6px 24px rgba(0,0,0,.35);max-width:340px;}
.portrait img{display:block;width:100%;height:auto;}
.about-dark p{color:#dfe3e0;margin-bottom:1rem;}
.facts{margin-top:1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.fact{border-left:3px solid var(--taupe);padding-left:1rem;}
.fact strong{display:block;font-size:1.4rem;font-family:Georgia,serif;}
.fact small{color:var(--taupe-light);}
@media(max-width:820px){.about-dark .wrap{grid-template-columns:1fr;}}
.linkedin-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.6rem;border:1px solid var(--taupe-light);color:var(--white);text-decoration:none;padding:.6rem 1.2rem;border-radius:3px;font-size:.9rem;}
.linkedin-btn:hover{background:var(--green-soft);}
.linkedin-btn svg{height:16px;width:16px;fill:var(--taupe-light);}

/* PRICING */
table.pricing{width:100%;max-width:52rem;border-collapse:collapse;background:var(--white);box-shadow:0 3px 14px rgba(7,51,52,.08);}
table.pricing th{background:var(--green);color:var(--white);text-align:left;padding:.9rem 1.2rem;font-weight:600;font-size:.92rem;}
table.pricing td{padding:.85rem 1.2rem;border-bottom:1px solid #e3e1dc;font-size:.95rem;}
table.pricing tr:last-child td{border-bottom:none;}
.pricenote{margin-top:1rem;font-size:.85rem;color:#5a6664;max-width:52rem;}

/* STEPS */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.4rem;max-width:70rem;}
.step{background:var(--white);padding:1.6rem 1.4rem;box-shadow:0 3px 14px rgba(7,51,52,.08);}
.step .num{font-family:Georgia,serif;font-size:2rem;color:var(--taupe);margin-bottom:.4rem;}
.step h3{font-size:1.05rem;color:var(--green);margin-bottom:.4rem;}
.step p{font-size:.88rem;color:#3c4a4a;}

/* FAQ */
.faq{max-width:52rem;}
.faq details{background:var(--white);margin-bottom:.8rem;box-shadow:0 2px 10px rgba(7,51,52,.07);}
.faq summary{cursor:pointer;padding:1rem 1.3rem;font-weight:600;color:var(--green);list-style:none;position:relative;padding-right:2.5rem;}
.faq summary::after{content:"+";position:absolute;right:1.2rem;top:.8rem;font-size:1.3rem;color:var(--taupe);}
.faq details[open] summary::after{content:"\2013";}
.faq details p{padding:0 1.3rem 1.2rem;color:#3c4a4a;font-size:.95rem;}

/* CTA BAND */
.ctaband{background:var(--green);color:var(--white);text-align:center;padding:3.5rem 5vw;}
.ctaband h2{color:var(--white);}
.ctaband p{color:var(--taupe-light);max-width:36rem;margin:0 auto 1.8rem;}
.ctaband a{display:inline-block;background:var(--taupe);color:var(--green);padding:.85rem 1.8rem;border-radius:3px;text-decoration:none;font-weight:600;}
.ctaband a:hover{background:var(--taupe-light);}

/* CONTACT */
.contactwrap{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:70rem;}
.contactwrap form{background:var(--white);padding:2rem;box-shadow:0 3px 14px rgba(7,51,52,.12);}
.contactwrap label{display:block;font-size:.82rem;font-weight:600;color:var(--green);margin:.9rem 0 .25rem;}
.contactwrap input,.contactwrap select,.contactwrap textarea{width:100%;padding:.65rem .8rem;border:1px solid #c8c3ba;border-radius:3px;font:inherit;font-size:.92rem;background:var(--paper);}
.contactwrap button{margin-top:1.4rem;background:var(--green);color:var(--white);border:none;padding:.85rem 1.8rem;border-radius:3px;font-weight:600;font-size:.95rem;cursor:pointer;}
.contactwrap button:hover{background:var(--green-soft);}
.contactwrap .info h3{color:var(--green);font-size:1.15rem;margin:1.4rem 0 .3rem;}
.contactwrap .info p{font-size:.95rem;}
.contactwrap .info a{color:var(--green);}
@media(max-width:820px){.contactwrap{grid-template-columns:1fr;}}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden;}

footer{background:var(--green);color:var(--taupe-light);padding:2.5rem 5vw;font-size:.85rem;}
footer .cols{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem;margin-bottom:1.2rem;}
footer a{color:var(--taupe-light);}
footer nav.footnav{all:unset;display:flex;gap:1.2rem;flex-wrap:wrap;}
footer nav.footnav a{text-decoration:none;}
footer nav.footnav a:hover{text-decoration:underline;}
