/* Yellowstone Soft – zentrales Stylesheet */
:root{
  --yellow:#ffdd32;--yellow-2:#ffd500;--yellow-3:#f3c600;--yellow-dark:#d4a600;
  --text:#2d2d2d;--muted:#666;--line:#c9c9c9;--nav-top:#50585a;--nav-bottom:#2f3738;
  --footer-top:#455052;--footer-bottom:#2f3738;--shell:#fff;--soft:#fff7bf;
}
*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Arial,Helvetica,sans-serif;background:#fff;color:var(--text);font-size:14px;line-height:1.55}a{color:#222;text-decoration:none}a:hover{text-decoration:underline}.page{min-height:100vh;background:#fff}.container{max-width:1260px;margin:0 auto;padding:0 34px}
.top-head{background:linear-gradient(90deg,#fff9a9 0%,#fff5ab 28%,#fffdf0 60%,#fff 100%);border-bottom:0}.head-inner{max-width:1260px;margin:0 auto;min-height:112px;display:flex;align-items:center;justify-content:space-between;padding:10px 34px 12px}.brand{display:inline-flex;align-items:center}.logo{display:block;width:225px;max-width:42vw;height:auto}.utility{align-self:flex-start;padding-top:16px;font-size:13px;color:#222}.utility a{margin:0 8px}.utility a:not(:last-child)::after{content:'|';margin-left:16px;color:#333}.menu-toggle{display:none;background:var(--yellow);border:1px solid var(--yellow-dark);border-radius:4px;padding:8px 13px;font-weight:bold}
.main-nav{position:sticky;top:0;z-index:20;background:linear-gradient(var(--nav-top),var(--nav-bottom));border-bottom:3px solid var(--yellow-3);box-shadow:0 2px 3px rgba(0,0,0,.25)}.main-nav ul{max-width:1260px;margin:0 auto;padding:0 34px;list-style:none;display:flex;justify-content:space-between}.main-nav a{display:block;color:#fff;font-weight:bold;text-shadow:0 1px 0 rgba(0,0,0,.45);padding:15px 14px 17px;min-width:104px;text-align:center;text-decoration:none}.main-nav a:hover,.main-nav a.active{background:linear-gradient(#687173,#3b4446);border-bottom:7px solid var(--yellow);padding-bottom:10px}
.hero-home{height:240px;border-bottom:5px solid var(--yellow-2);background:radial-gradient(circle at 84% 50%,rgba(255,221,50,.82) 0 11%,rgba(255,221,50,.28) 22%,rgba(255,255,255,.12) 35%,transparent 44%),linear-gradient(115deg,#fff151 0%,#ffe115 64%,#f5c600 64.5%,#fff 65%,#f5f5f5 100%);position:relative;overflow:hidden}.hero-home:before{content:'';position:absolute;left:13%;top:-90px;width:78%;height:300px;border-radius:50%;border:22px solid rgba(255,255,255,.38);border-left-color:transparent;border-bottom-color:transparent;transform:rotate(-12deg)}.hero-home:after{content:'';position:absolute;right:11%;top:12px;width:245px;height:245px;border-radius:50%;background:linear-gradient(90deg,rgba(70,70,70,.25),rgba(255,221,50,.8));opacity:.9;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}.hero-inner{max-width:1260px;margin:0 auto;padding:45px 52px;position:relative;z-index:2}.hero-inner h1{font-size:38px;line-height:1.15;margin:0 0 22px;color:#303638;font-weight:bold;letter-spacing:-1px}.hero-inner p{max-width:560px;font-weight:bold;margin:0;color:#111}.hero-sub{height:138px;background:linear-gradient(115deg,#fff151,#ffe115 48%,#f5f5f5 49%,#fff);border-bottom:5px solid var(--yellow-2)}.hero-sub .hero-inner{padding-top:32px}.hero-sub h1{font-size:32px;margin-bottom:8px}
.home-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;padding:24px 0}.product h2,.two-col h2,.content h1,.content h2{color:#2d2d2d}.product h2{font-size:19px;margin:0 0 9px}.product img{width:100%;height:130px;object-fit:contain;border:1px solid #aaa;background:#f9f9f9}.product p{margin:9px 0 12px}.btn,.download-button{display:inline-block;background:linear-gradient(#ffe65a,#ffd000);border:1px solid #e0bc00;border-radius:3px;padding:9px 18px;color:#222!important;font-weight:bold;text-decoration:none;box-shadow:inset 0 1px rgba(255,255,255,.7)}.btn:hover,.download-button:hover{background:linear-gradient(#fff06f,#f5c600);text-decoration:none}.yellow-rule{border-top:3px solid var(--yellow-2)}.two-col{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;padding:18px 0 24px}.news-item{display:grid;grid-template-columns:170px 1fr;gap:18px;align-items:start}.news-item img{max-width:170px;height:auto}
.main{display:grid;grid-template-columns:1fr 275px;gap:34px;padding:30px 34px}.content{min-width:0}.content h1{font-size:30px;margin:0 0 20px}.content h2{font-size:22px;border-bottom:1px solid var(--line);padding-bottom:7px;margin:28px 0 12px}.content h3{margin-top:22px}.teaser{display:grid;grid-template-columns:150px 1fr;gap:18px;border-top:1px solid #ddd;padding:17px 0}.teaser-img{width:150px;max-height:120px;object-fit:contain}.side section{border-left:5px solid var(--yellow);padding-left:13px;margin-bottom:22px}.side h3{margin:0 0 8px}.side ul{margin:0;padding-left:17px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.card{border:1px solid #ddd;background:#fafafa;padding:15px}.download{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ddd;padding:12px 0}.notice{background:var(--soft);border-left:5px solid var(--yellow);padding:12px 14px;margin:14px 0}.contact-form{display:grid;gap:12px;max-width:520px}.contact-form label{display:grid;gap:4px}.contact-form input,.contact-form textarea,.contact-form select{border:1px solid #bbb;padding:9px;font:inherit}.contact-form textarea{min-height:140px}.site-img,.wide-img{max-width:100%;height:auto}.image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px}.image-grid figure{margin:0;text-align:center}.image-grid img{max-width:100%;height:auto}.arrow-list{list-style:none;padding-left:0}.arrow-list li{display:flex;align-items:center;gap:10px;margin:8px 0}.arrow-list img{width:40px;height:auto}.timeline{border-left:4px solid var(--yellow);padding-left:18px}.timeline p{position:relative}.timeline p:before{content:'';width:11px;height:11px;background:var(--yellow-dark);border-radius:50%;position:absolute;left:-26px;top:5px}
.split-section{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:20px 0}.rma-form-wrap{margin-top:20px;border:1px solid #ddd;background:#fff}.rma-frame{display:block;width:100%;min-height:2219px;border:none;background:#fff;overflow:hidden}.rma-section .download-button{margin:8px 10px 14px 0}
.legal-page{font-family:Arial,Verdana,Helvetica,sans-serif;font-size:14px;line-height:1.6;color:#111}.legal-page h3{border-bottom:1px dashed #808080;margin:22px 0 12px;padding:6px 0;font-size:1.18em;color:#2d2d2d;background:transparent}.legal-page h4{font-size:14px;margin:10px 0 16px;line-height:1.55}.legal-page p{margin:0 0 12px}.legal-page ul{margin:8px 0 18px;padding-left:24px}.legal-page hr{border:0;border-top:1px solid #d2d2d2;margin:14px 0}.legal-page a{color:#7d6800;text-decoration:none;font-weight:600}.legal-page a:hover{text-decoration:underline}
.footer{border-top:4px solid var(--yellow-2);background:linear-gradient(var(--footer-top),var(--footer-bottom));color:#fff}.footer-inner{max-width:1260px;margin:0 auto;padding:20px 34px 28px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.footer p{margin:6px 0 0}.footer a{color:#fff}.small{font-size:12px;color:#ddd}
@media(max-width:980px){.head-inner{min-height:auto;padding:16px 20px;flex-wrap:wrap;gap:10px}.logo{max-width:64vw}.utility{display:none}.menu-toggle{display:inline-block}.main-nav ul{display:none;padding:0}.main-nav ul.open{display:block}.main-nav a{text-align:left;min-width:0;padding:13px 22px}.main-nav a:hover,.main-nav a.active{padding-bottom:13px;border-bottom:0;border-left:7px solid var(--yellow)}.hero-home{height:auto}.hero-inner{padding:32px 24px}.hero-inner h1{font-size:31px}.home-grid,.two-col,.main,.split-section,.footer-grid{grid-template-columns:1fr}.main{padding:24px 20px}.news-item,.teaser{grid-template-columns:1fr}.product img{height:auto}.container{padding-left:20px;padding-right:20px}.cards{grid-template-columns:1fr}.side{order:2}}

.form-hint{font-size:.95rem;color:#555;margin:0 0 16px}.form-hint code{background:#f4f4f4;padding:2px 6px;border-radius:4px}.form-fallback{margin-top:14px}.rma-form-wrap{margin-top:28px}


.download-group{margin:32px 0 8px}
.download-group h2{margin:0 0 14px;color:var(--ys-dark,#333);border-bottom:1px dashed #b8b8b8;padding-bottom:8px}
.download{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;border-bottom:1px solid #e6e6e6}
.download p{margin:.35rem 0 0;color:#555}
@media (max-width:700px){.download{align-items:flex-start;flex-direction:column}.download .btn{width:100%;text-align:center}}

/* Startseite */
.product p{
    margin:12px 0 16px;
    font-size:16px;
    line-height:1.6;
    color:#444;
}

/* Produktseiten */
.content p{
    font-size:16px;
    line-height:1.7;
    color:#444;
}
/* Startseite: größerer Einleitungstext ohne Abschneiden im Hero-Bereich */
.hero-home{
  height:auto;
  min-height:300px;
  overflow:visible;
}
.hero-home .hero-inner{
  padding-bottom:58px;
}
.hero-home .intro-text{
  font-size:1.3rem;
  line-height:1.65;
  max-width:760px;
}

/* Unternehmen: Philosophie-Karten wie im Mockup */
.philosophy-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin:22px 0 8px;
}
.philosophy-card{
  border:1px solid #ddd;
  background:#fff;
  text-align:center;
  padding:18px 16px 20px;
  box-shadow:0 2px 8px rgba(0,0,0,.07);
  border-bottom:4px solid var(--yellow-2);
  min-height:235px;
}
.philosophy-icon-wrap{
  width:72px;
  height:72px;
  margin:0 auto 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:2px solid var(--yellow-2);
  border-radius:50%;
  background:#fff;
}
.philosophy-icon{
  display:block;
  width:48px;
  height:48px;
  object-fit:contain;
}
.philosophy-card h3{
  margin:8px 0 10px;
  font-size:17px;
  color:#111;
}
.philosophy-card p{
  margin:0;
  font-size:14px;
  line-height:1.55;
  color:#333;
}
@media(max-width:980px){.philosophy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.philosophy-grid{grid-template-columns:1fr}}


/* RMA-Login */
.login-card{
  max-width:560px;
  margin:0 auto 20px;
  border:1px solid #ddd;
  background:#fff;
  padding:28px;
  box-shadow:0 2px 10px rgba(0,0,0,.08);
  border-bottom:4px solid var(--yellow-2);
}
.login-card h1{
  margin-top:0;
}
.login-form{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.login-form label{
  font-weight:bold;
}
.login-form input{
  width:100%;
  border:1px solid #bbb;
  padding:10px;
  font:inherit;
}
.login-form .btn{
  justify-self:start;
  margin-top:8px;
}
.login-note{
  margin-top:22px;
  padding:14px 16px;
  background:var(--soft);
  border-left:5px solid var(--yellow);
}
.login-note a{
  font-weight:bold;
}
.login-error{
  margin:0 0 16px;
  padding:12px 14px;
  border-left:5px solid #b00020;
  background:#fff0f0;
  color:#8a0018;
  font-weight:bold;
}
.rma-logout{
  text-align:right;
  margin-top:0;
}
