:root{--orange:#ef7600;--dark:#1e2227;--soft:#f4f5f7;--line:#dfe3e8;--green:#168847;--red:#b8322b;--text:#202329;--muted:#66707d}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.5}a{color:inherit}
.site-wrap{max-width:1180px;margin:auto;padding-left:22px;padding-right:22px}
.site-header{background:#202225;color:#fff;position:sticky;top:0;z-index:30;box-shadow:0 2px 12px #0003}
.nav{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:block;text-decoration:none}.site-logo{width:92px;height:82px;object-fit:contain;background:#fff;border-radius:50%}
.nav nav{display:flex;gap:22px;align-items:center}.nav nav a{text-decoration:none;font-weight:700;font-size:14px}.nav-cta{background:var(--orange);padding:11px 15px}
.footer-logo{width:115px;height:115px;object-fit:contain;background:#fff;border-radius:50%}
.alert{margin-top:18px;padding:14px 16px;border:1px solid}.alert.error{background:#fff1f0;border-color:#e6b4af;color:#8f241d}.alert.ok{background:#e8f7ed;border-color:#acd9b9;color:#106b36}
.hero{background:linear-gradient(115deg,#f4f4f4 0%,#fff 56%,#fff5e8 100%);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;padding-top:70px;padding-bottom:70px;align-items:center}
.eyebrow{display:inline-block;color:var(--orange);font-weight:900;letter-spacing:.12em;font-size:12px;margin-bottom:12px}.hero h1{font-size:52px;line-height:1.02;margin:0 0 18px}.hero p{font-size:19px;color:var(--muted)}
.btn-primary{display:inline-flex;justify-content:center;align-items:center;background:var(--orange);color:#fff;border:0;padding:13px 17px;font-weight:900;text-decoration:none;cursor:pointer}
.btn-dark{display:inline-flex;justify-content:center;align-items:center;background:#232323;color:#fff;border:0;padding:13px 17px;font-weight:900;text-decoration:none;cursor:pointer}
.btn-outline{display:inline-flex;justify-content:center;align-items:center;border:1px solid #222;padding:11px 15px;font-weight:800;text-decoration:none;background:#fff}
.section{padding:60px 0}.section.alt{background:var(--soft)}.section h2{font-size:34px;margin:0 0 18px}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column}.product-image{height:190px;background:#eceff2;display:block;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.no-image{height:100%;display:grid;place-items:center;color:#8b949e;font-weight:800}.product-body{padding:18px;display:flex;flex-direction:column;gap:9px;flex:1}.product-cat{font-size:11px;color:var(--orange);font-weight:900;text-transform:uppercase}.product-card h3{margin:0;font-size:20px}.product-card p{margin:0;color:var(--muted);font-size:14px}.price-row{margin-top:auto;padding-top:10px;display:flex;justify-content:space-between;align-items:end;gap:10px}.price-row strong{font-size:22px}.price-row small{display:block;color:var(--muted)}
.detail{padding:46px 0}.detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:34px}.gallery-main{height:470px;background:#f0f1f3;border:1px solid var(--line);overflow:hidden}.gallery-main img{width:100%;height:100%;object-fit:contain}.detail-info h1{font-size:40px;line-height:1.05;margin:0 0 10px}.lead{font-size:17px;color:var(--muted)}
.price-box{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin:20px 0}.price-box div{padding:15px;border-right:1px solid var(--line)}.price-box div:last-child{border:0}.price-box span{display:block;font-size:11px;color:var(--muted);font-weight:800}.price-box strong{font-size:20px}
.reserve-card{background:#202020;color:#fff;padding:22px;margin-top:22px;border-top:5px solid var(--orange)}.reserve-card h2{margin-top:0}.reserve-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.reserve-grid .full{grid-column:1/-1}.reserve-card label{font-size:12px;font-weight:800}.reserve-card input,.reserve-card select,.reserve-card textarea{width:100%;padding:11px;margin-top:5px;border:1px solid #666}
.accessory-list{display:grid;grid-template-columns:1fr;gap:8px}.accessory-option{display:grid;grid-template-columns:auto 1fr 85px;gap:9px;align-items:center;background:#303030;padding:10px}.accessory-option input[type=checkbox]{width:auto;margin:0}.accessory-option input[type=number]{margin:0}
.cart-head{background:var(--soft);padding:40px 0;border-bottom:1px solid var(--line)}.cart-head h1{font-size:40px;margin:0}.cart-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:25px}.cart-card{border:1px solid var(--line);background:#fff;padding:20px;margin-bottom:14px}.cart-product{display:grid;grid-template-columns:90px 1fr 115px auto;gap:14px;align-items:center}.cart-product img{width:90px;height:75px;object-fit:cover;background:#eee}.cart-product input{width:80px;padding:8px}.cart-accessory{display:grid;grid-template-columns:1fr 100px 100px;gap:10px;padding:8px 0;border-top:1px solid #eceff2;font-size:13px}.cart-summary{border-top:5px solid var(--orange);position:sticky;top:112px}.sumrow{display:flex;justify-content:space-between;padding:7px 0}.sumtotal{font-size:22px;font-weight:900;border-top:1px solid var(--line);margin-top:8px;padding-top:13px}
.checkout-grid{display:grid;grid-template-columns:1fr .7fr;gap:25px}.checkout-form label{display:block;font-weight:800;margin-bottom:13px}.checkout-form input,.checkout-form select,.checkout-form textarea{width:100%;padding:11px;border:1px solid #cbd4de;margin-top:5px}.success{max-width:760px;margin:60px auto;padding:34px;border-top:6px solid var(--orange);background:var(--soft)}
.site-footer{background:#202020;color:#fff;margin-top:70px;padding:45px 0}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:35px}.footer-grid a{display:block;text-decoration:none;margin:7px 0;color:#ddd}.footer-grid p{color:#bbb}
@media(max-width:980px){.hero-grid,.detail-grid,.cart-layout,.checkout-grid{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(2,1fr)}.cart-summary{position:static}.hero h1{font-size:43px}}
@media(max-width:650px){.nav nav a:not(.nav-cta){display:none}.site-wrap{padding-left:15px;padding-right:15px}.site-logo{width:72px;height:66px}.hero h1{font-size:36px}.reserve-grid{grid-template-columns:1fr}.reserve-grid .full{grid-column:auto}.product-grid{grid-template-columns:1fr}.price-box{grid-template-columns:1fr}.cart-product{grid-template-columns:70px 1fr}.cart-product img{width:70px;height:60px}.cart-product .qty,.cart-product .remove{grid-column:2}.cart-accessory{grid-template-columns:1fr 85px}.cart-accessory .price{grid-column:2}}


/* =========================================================
   V1.9.3 – Startseite / Verfügbarkeitsprüfung
   ========================================================= */
.check-card{
    background:#202225;
    color:#fff;
    padding:28px;
    border-top:6px solid var(--orange);
    border-radius:3px;
    box-shadow:0 16px 38px rgba(0,0,0,.15);
}
.check-card h2{
    margin:0 0 8px;
    font-size:25px;
    color:#fff;
}
.check-card p{
    margin:0 0 18px;
    font-size:15px;
    color:#c8cdd3;
}
.form-stack{
    display:grid;
    gap:14px;
}
.form-stack label{
    display:block;
    color:#fff;
    font-size:12px;
    font-weight:800;
}
.form-stack select,
.form-stack input[type="date"],
.form-stack input[type="number"]{
    display:block;
    width:100%;
    height:46px;
    margin-top:6px;
    padding:0 12px;
    border:1px solid #9da6af;
    border-radius:4px;
    background:#fff;
    color:#202329;
    font:inherit;
    font-size:14px;
}
.form-stack select:focus,
.form-stack input:focus{
    outline:2px solid rgba(239,118,0,.35);
    border-color:var(--orange);
}
.date-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}
.check-card .btn-primary{
    width:100%;
    min-height:46px;
    margin-top:2px;
    border-radius:3px;
    font-size:15px;
}
.category-row{
    display:flex;
    gap:9px;
    flex-wrap:wrap;
    margin-top:22px;
}
.category-row .chip{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:7px 12px;
    border:1px solid #ccd3da;
    background:#fff;
    color:#202329;
    text-decoration:none;
    font-size:13px;
    font-weight:800;
    border-radius:3px;
}
.category-row .chip:hover{
    border-color:var(--orange);
    color:#c75f00;
}
.section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:25px;
}
.section-sub{
    max-width:680px;
    margin:5px 0 0;
    color:var(--muted);
}
.steps{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}
.step{
    padding:24px;
    background:#fff;
    border-top:4px solid var(--orange);
}
.step-num{
    display:block;
    color:#d5d9de;
    font-size:34px;
    font-weight:900;
}
.step h3{margin:5px 0}
.step p{margin:0;color:var(--muted)}
.product-card{
    border-radius:4px;
    overflow:hidden;
    box-shadow:0 3px 12px rgba(0,0,0,.04);
}
.product-card:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 24px rgba(0,0,0,.08);
}
.product-image{height:210px}
.hero-grid{min-height:430px}
.hero h1{max-width:680px}
@media(max-width:980px){
    .steps{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
    .date-row{grid-template-columns:1fr}
    .section-head{display:block}
    .section-head .btn-outline{margin-top:14px}
    .steps{grid-template-columns:1fr}
    .check-card{padding:20px}
}


/* =========================================================
   V1.9.4 – Header / Original-Logo unverzerrt darstellen
   ========================================================= */
.site-header{
    min-height:94px;
}
.site-header .nav{
    min-height:94px;
}
.brand{
    display:flex;
    align-items:center;
    flex:0 0 auto;
    padding:4px 0;
}
.site-logo{
    width:auto !important;
    height:84px !important;
    max-width:230px;
    object-fit:contain !important;
    object-position:left center;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    padding:0 !important;
}
@media(max-width:760px){
    .site-header,
    .site-header .nav{
        min-height:78px;
    }
    .site-logo{
        height:68px !important;
        max-width:170px;
    }
}


/* =========================================================
   V1.9.5 – Logo links oben wie Referenzdarstellung
   ========================================================= */
.site-header{
    min-height:94px;
}
.site-header .nav{
    min-height:94px;
}
.brand{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex:0 0 auto;
    padding:0;
    overflow:visible;
}
.site-logo{
    display:block;
    width:auto !important;
    height:76px !important;
    max-width:360px !important;
    object-fit:contain !important;
    object-position:left center !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:0 !important;
}
@media(max-width:760px){
    .site-header,
    .site-header .nav{
        min-height:74px;
    }
    .site-logo{
        height:58px !important;
        max-width:245px !important;
    }
}


/* =========================================================
   V1.9.7 – Rundes Original-Logo wiederhergestellt
   ========================================================= */
.site-header{
    min-height:94px;
}
.site-header .nav{
    min-height:94px;
}
.brand{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex:0 0 auto;
    padding:0;
}
.site-logo{
    display:block;
    width:76px !important;
    height:76px !important;
    max-width:76px !important;
    object-fit:contain !important;
    object-position:center !important;
    border-radius:50% !important;
    background:#fff !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:0 !important;
}
@media(max-width:760px){
    .site-header,
    .site-header .nav{
        min-height:74px;
    }
    .site-logo{
        width:60px !important;
        height:60px !important;
        max-width:60px !important;
    }
}
