:root{--ink:#111315;--ink-2:#191c1f;--paper:#f0efe9;--paper-2:#e7e5de;--line:rgba(255,255,255,.16);--line-dark:rgba(17,19,21,.16);--accent:#d6ff38;--muted:#a9acae;--max:1240px;--radius:2px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#f7f7f2;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}img{max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-80px;background:var(--accent);color:#111;padding:10px 14px;z-index:1000}.skip-link:focus{top:16px}.site-header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(17,19,21,.72);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:13px}.brand-mark{width:42px;height:42px;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;font-weight:900;letter-spacing:-.08em}.brand-copy{display:flex;flex-direction:column;line-height:1.1}.brand-copy strong{font-size:14px;letter-spacing:.02em}.brand-copy small{margin-top:5px;font-size:10px;color:#9da0a3;letter-spacing:.14em;text-transform:uppercase}.main-nav{display:flex;align-items:center;gap:28px}.main-nav>a:not(.btn){font-size:13px;color:#d8d9d8}.main-nav>a:not(.btn):hover{color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;background:var(--accent);color:#111315;font-weight:750;border:1px solid var(--accent);cursor:pointer;transition:.2s ease}.btn:hover{transform:translateY(-2px);background:#e0ff68}.btn-small{min-height:38px;padding:0 15px;font-size:12px!important}.btn-dark{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-dark:hover{background:#2a2d2f}.nav-toggle{display:none;background:0;border:0;color:white;width:44px;height:44px;padding:10px}.nav-toggle span{display:block;height:1px;background:#fff;margin:7px 0}.section-dark{background:var(--ink);color:#fff}.section-light{background:var(--paper);color:var(--ink)}.hero{min-height:780px;position:relative;display:flex;align-items:flex-end;overflow:hidden}.hero-media{position:absolute;inset:0;background-image:url('https://www.tw-event.de/images/pic70.jpg');background-size:cover;background-position:center 60%;filter:saturate(.8) contrast(1.05)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,11,12,.94) 0%,rgba(10,11,12,.76) 42%,rgba(10,11,12,.22) 72%,rgba(10,11,12,.35) 100%),linear-gradient(0deg,rgba(10,11,12,.72),transparent 55%)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.55fr .65fr;gap:80px;padding:180px 0 84px;align-items:end}.eyebrow,.section-index{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:700}.eyebrow{color:var(--accent);margin:0 0 24px}.hero h1,.section h2,.intro h2,.region h2{font-size:clamp(48px,6.2vw,91px);line-height:.95;letter-spacing:-.055em;margin:0;font-weight:750}.hero h1 span{color:#a8abad}.hero-lead{max-width:760px;font-size:clamp(18px,2vw,24px);color:#d0d2d3;margin:32px 0 0}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:38px}.text-link{font-size:14px;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:4px}.text-link:hover{border-color:var(--accent);color:var(--accent)}.hero-facts{border-top:1px solid var(--line)}.hero-facts>div{display:grid;grid-template-columns:36px 1fr;gap:0 12px;padding:20px 0;border-bottom:1px solid var(--line)}.hero-facts span{grid-row:1/3;font-size:10px;color:var(--accent);padding-top:3px}.hero-facts strong{font-size:14px}.hero-facts small{font-size:12px;color:#9fa2a3;margin-top:3px}.intro{padding:110px 0 70px}.split-intro{display:grid;grid-template-columns:.38fr 1.4fr;gap:80px}.section-index{margin:8px 0 20px;color:#777c7f}.intro h2{font-size:clamp(46px,5.5vw,78px);max-width:970px}.lead-dark{font-size:clamp(20px,2.1vw,29px);line-height:1.28;letter-spacing:-.02em;color:#272a2c}.split-intro .lead-dark{max-width:970px;margin:32px 0 0}.trust-strip{margin-top:90px;padding:20px 0;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.trust-strip span{text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:700}.section{padding:120px 0}.section-head{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end;margin-bottom:68px}.section-head h2{font-size:clamp(44px,5vw,74px)}.section-head>p{color:#aeb0b1;max-width:480px;margin:0 0 5px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:420px;padding:38px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.service-no{font-size:11px;color:var(--accent);letter-spacing:.14em}.service-card h3{font-size:31px;letter-spacing:-.03em;margin:70px 0 18px}.service-card p{color:#b8bbbd;max-width:520px}.service-card ul{list-style:none;padding:0;margin:auto 0 0;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;color:#dfdfdc;font-size:13px}.service-card li:before{content:"— ";color:#6f7476}.installation-section{background:var(--accent);color:var(--ink);padding:0}.installation-grid{width:100%;max-width:none;display:grid;grid-template-columns:1fr 1fr}.installation-visual{min-height:760px;background:url('https://www.tw-event.de/images/pic62.jpg') center/cover no-repeat}.installation-copy{padding:100px max(48px,calc((100vw - var(--max))/2));padding-left:72px;display:flex;flex-direction:column;justify-content:center}.installation-copy .section-index{color:#4f551d}.installation-copy h2{font-size:clamp(48px,5vw,78px);line-height:.96;letter-spacing:-.055em;margin:0}.installation-copy>p:not(.section-index){max-width:690px}.installation-tags{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 34px}.installation-tags span{border:1px solid rgba(17,19,21,.38);padding:8px 11px;font-size:12px}.installation-copy .btn{align-self:flex-start}.dark-head{color:var(--ink)}.dark-head>p{color:#5d6264}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}.process-grid article{padding:30px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);min-height:270px}.process-grid span{font-size:11px;color:#6b7072}.process-grid h3{font-size:21px;margin:72px 0 12px}.process-grid p{font-size:14px;color:#5b6062}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:350px;gap:12px}.project{position:relative;overflow:hidden;background:#26292b}.project:before{content:"";position:absolute;inset:0;background-image:var(--bg);background-size:cover;background-position:center;transition:transform .55s ease,filter .55s ease;filter:saturate(.8)}.project:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,9,10,.88),rgba(8,9,10,.05) 65%)}.project:hover:before{transform:scale(1.035);filter:saturate(1)}.project-large{grid-row:span 2}.project-wide{grid-column:span 2}.project-content{position:absolute;z-index:2;left:28px;right:28px;bottom:26px}.project-content p{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin:0 0 9px}.project-content h3{font-size:26px;line-height:1.05;letter-spacing:-.03em;margin:0 0 7px}.project-content span{font-size:12px;color:#c4c6c7}.about-grid{display:grid;grid-template-columns:.85fr 1fr;gap:110px}.about-grid h2{font-size:clamp(48px,5vw,76px)}.about-copy>p:not(.lead-dark){color:#505557;font-size:16px}.qualification{margin-top:42px;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);padding:24px 0;display:flex;align-items:center;gap:20px}.qualification>span{font-size:34px;font-weight:800;letter-spacing:-.04em}.qualification div{display:flex;flex-direction:column}.qualification small{color:#777c7f;margin-top:4px}.region{padding:100px 0}.region-grid{display:grid;grid-template-columns:1fr .8fr;gap:100px;align-items:end}.region h2{font-size:clamp(48px,5vw,76px)}.region-grid>div:last-child>p{color:#b9bcbd;font-size:18px}.region-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.region-list span{border:1px solid var(--line);padding:8px 11px;font-size:11px}.contact-section{background:#deddd7;color:var(--ink)}.contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:100px}.contact-copy h2{font-size:clamp(48px,5vw,76px);line-height:.96;letter-spacing:-.055em;margin:0}.contact-copy>p:not(.section-index){font-size:17px;color:#53585a;max-width:540px;margin-top:28px}.direct-contact{margin-top:45px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.direct-contact a{font-size:19px;font-weight:700;border-bottom:1px solid #888}.project-form{background:#f5f4ef;padding:34px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;margin-bottom:18px}label>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:8px;color:#555b5d}input,textarea,select{width:100%;border:0;border-bottom:1px solid #b9b9b4;background:transparent;border-radius:0;padding:12px 0;color:#111;outline:none}input:focus,textarea:focus,select:focus{border-color:#111}textarea{resize:vertical}.form-footer{display:flex;align-items:center;gap:20px;margin-top:12px}.form-footer p{font-size:11px;color:#6f7375;max-width:310px}.site-footer{background:#0c0d0e;color:#d7d8d6;padding:65px 0 26px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr .6fr;gap:40px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:7px;font-size:13px}.footer-grid strong{color:#fff;margin-bottom:7px}.footer-grid a:hover{color:var(--accent)}.footer-bottom{margin-top:55px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#6f7375;font-size:11px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.project:before,.btn{transition:none}}
@media (max-width:980px){.container{width:min(calc(100% - 34px),var(--max))}.nav-toggle{display:block}.main-nav{position:fixed;top:84px;left:0;right:0;background:#111315;border-top:1px solid var(--line);padding:24px 17px 30px;display:none;flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav>a{padding:14px 0;border-bottom:1px solid var(--line)}.main-nav .btn{margin-top:16px}.hero{min-height:740px}.hero-grid{grid-template-columns:1fr;gap:55px;padding-top:150px}.hero-facts{max-width:560px}.split-intro,.section-head,.about-grid,.region-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.service-grid{grid-template-columns:1fr 1fr}.installation-grid{grid-template-columns:1fr}.installation-visual{min-height:520px}.installation-copy{padding:72px 28px}.process-grid{grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:1fr 1fr}.project-large{grid-row:span 1}.project-wide{grid-column:span 1}.footer-grid{grid-template-columns:1fr 1fr}.section{padding:90px 0}}
@media (max-width:650px){.container{width:min(calc(100% - 28px),var(--max))}.nav-wrap{height:72px}.brand-copy strong{font-size:12px}.brand-copy small{font-size:8px}.main-nav{top:72px}.hero{min-height:auto}.hero-grid{padding:145px 0 58px}.hero h1{font-size:47px}.hero-lead{font-size:18px}.hero-actions{align-items:flex-start;flex-direction:column}.intro{padding:75px 0 50px}.split-intro{gap:18px}.intro h2,.section h2,.region h2,.installation-copy h2,.contact-copy h2,.about-grid h2{font-size:44px}.trust-strip{margin-top:55px;justify-content:flex-start}.section-head{margin-bottom:40px}.service-grid{grid-template-columns:1fr}.service-card{min-height:360px;padding:28px}.service-card h3{margin-top:52px}.service-card ul{grid-template-columns:1fr}.installation-visual{min-height:390px}.installation-copy{padding:58px 20px}.process-grid{grid-template-columns:1fr}.projects-grid{grid-template-columns:1fr;grid-auto-rows:300px}.about-grid{gap:30px}.contact-grid{gap:45px}.project-form{padding:22px 18px}.field-row{grid-template-columns:1fr;gap:0}.form-footer{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.section{padding:74px 0}}

/* --- Integrated configurator, references & admin --- */
.btn-outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}.btn-outline-light:hover{background:#fff;color:var(--ink);border-color:#fff}.btn-outline-dark{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-outline-dark:hover{background:var(--ink);color:#fff}.projects-more{display:flex;justify-content:center;margin-top:38px}.full-btn{width:100%}
.subpage-hero{padding:180px 0 90px;border-bottom:1px solid var(--line)}.subpage-hero h1{font-size:clamp(52px,7vw,96px);line-height:.93;letter-spacing:-.055em;margin:0;max-width:980px}.subpage-hero h1 span{color:#9fa2a3}.subpage-hero .hero-lead{max-width:800px}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:42px}.filter{border:1px solid var(--line-dark);background:transparent;padding:10px 14px;cursor:pointer;font-size:12px;font-weight:700}.filter:hover,.filter.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:52px;align-items:start}.product-group{margin-bottom:54px}.product-group>h2{font-size:34px!important;margin:0 0 20px!important}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}.product-card{min-height:210px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);padding:26px;display:flex;flex-direction:column;justify-content:space-between}.product-card h3{font-size:22px;margin:0 0 8px}.product-card p{color:#626769;margin:0;font-size:14px}.price{display:block;margin-top:15px;font-size:12px;font-weight:800}.qty{display:flex;align-items:center;gap:14px;margin-top:28px}.qty button{width:38px;height:38px;border:1px solid var(--ink);background:transparent;font-size:20px;cursor:pointer}.qty button:hover{background:var(--ink);color:#fff}.qty output{min-width:24px;text-align:center;font-weight:800}.summary{position:sticky;top:112px;background:#deddd7;padding:28px}.summary h3{font-size:30px;margin:3px 0 22px}.summary label{margin-top:20px}.summary .empty{padding:18px 0;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);font-size:13px;color:#6e7375}.selection-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line-dark)}.selection-list li{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--line-dark);font-size:13px}.summary .note{font-size:11px;color:#6c7173;margin:14px 0 0}
.refs-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ref-card{background:#fff;border:1px solid var(--line-dark)}.ref-card img{width:100%;height:290px;object-fit:cover;display:block;background:#ccc}.ref-copy{padding:22px}.ref-copy small{font-size:10px;color:#686d6f;text-transform:uppercase;letter-spacing:.14em}.ref-copy h3{font-size:24px;letter-spacing:-.03em;margin:8px 0}.ref-copy p{color:#5b6062;font-size:13px;margin:0}
.admin-body{background:var(--paper);color:var(--ink)}.admin-shell{min-height:100vh;padding-top:84px;display:grid;grid-template-columns:280px minmax(0,1fr)}.admin-nav{background:var(--ink);color:#fff;padding:48px 30px;position:sticky;top:84px;height:calc(100vh - 84px)}.admin-nav .section-index{color:#7f8587}.admin-nav h2{font-size:34px;margin:0 0 34px}.admin-nav button{width:100%;text-align:left;background:transparent;color:#c9cbcc;border:0;border-bottom:1px solid var(--line);padding:16px 0;cursor:pointer}.admin-nav button.active,.admin-nav button:hover{color:var(--accent)}.admin-main{padding:56px;max-width:1200px;width:100%}.notice{background:#fff7cf;border:1px solid #d6c670;padding:17px 19px;font-size:13px;margin-bottom:36px}.admin-panel{display:none}.admin-panel.active{display:block}.admin-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px}.admin-top h1{font-size:58px;line-height:1;margin:0;letter-spacing:-.05em}.admin-form{display:none;background:#fff;padding:28px;margin-bottom:30px;border:1px solid var(--line-dark)}.admin-form.open{display:block}.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.admin-form-grid .full{grid-column:1/-1}.admin-actions{display:flex;gap:10px;margin-top:8px}.admin-list{border-top:1px solid var(--line-dark)}.admin-row{padding:22px 0;border-bottom:1px solid var(--line-dark);display:flex;justify-content:space-between;gap:30px;align-items:center}.admin-row h3{margin:0 0 6px;font-size:20px}.admin-row p{margin:0;color:#666b6d;font-size:13px}.admin-badge{display:inline-block;border:1px solid #aeb2b3;padding:3px 6px;margin-left:6px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;vertical-align:middle}.row-actions{display:flex;gap:7px;flex-shrink:0}.mini-btn{border:1px solid var(--ink);background:transparent;padding:8px 10px;font-size:11px;cursor:pointer}.mini-btn:hover{background:var(--ink);color:#fff}.mini-btn.danger{border-color:#8c3737;color:#8c3737}.mini-btn.danger:hover{background:#8c3737;color:#fff}.empty{color:#727779}
@media(max-width:980px){.catalog-layout{grid-template-columns:1fr}.summary{position:static}.refs-page-grid{grid-template-columns:1fr 1fr}.admin-shell{grid-template-columns:1fr}.admin-nav{position:static;height:auto;display:flex;align-items:center;gap:22px;padding:22px}.admin-nav h2,.admin-nav .section-index{display:none}.admin-nav button{width:auto;border:0;padding:8px}.admin-main{padding:34px 20px}.admin-body .main-nav{display:flex;position:static;padding:0;background:transparent;flex-direction:row}.admin-body .main-nav a{border:0}.hero-actions{flex-wrap:wrap}}
@media(max-width:650px){.subpage-hero{padding:135px 0 60px}.subpage-hero h1{font-size:48px}.product-grid,.refs-page-grid{grid-template-columns:1fr}.ref-card img{height:240px}.admin-top{align-items:flex-start;flex-direction:column}.admin-top h1{font-size:46px}.admin-form-grid{grid-template-columns:1fr}.admin-form-grid .full{grid-column:auto}.admin-row{align-items:flex-start;flex-direction:column}.admin-actions{flex-direction:column}.admin-actions .btn{width:100%}.admin-body .main-nav{display:none}.admin-shell{padding-top:72px}}

.services-editorial__head {
  margin-bottom: 70px;
}

.services-editorial__headline {
  display: grid;
  grid-template-columns: 1.2fr 0.7fr;
  gap: 80px;
  align-items: end;
}

.services-editorial__headline h2 {
  margin: 0;
  font-size: clamp(3rem, 6vw, 6rem);
  line-height: 0.95;
  letter-spacing: -0.05em;
}

.services-editorial__headline h2 span {
  opacity: 0.35;
}

.services-editorial__headline p {
  margin: 0;
  max-width: 520px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.55);
}

.services-editorial__list {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.service-row {
  display: grid;
  grid-template-columns: 140px minmax(420px, 1.4fr) 1fr;
  gap: 45px;

  padding: 55px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.service-row__meta {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.service-row__number {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.3);
}

.service-row__category {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: rgba(255, 255, 255, 0.7);
}

.service-row__title h3 {
  margin: 0;
  font-size: clamp(2rem, 3vw, 3.4rem);
  line-height: 1;
  letter-spacing: -0.04em;
}

.service-row__body {
  max-width: 620px;
}

.service-row__body p {
  margin: 0;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.6);
}

.service-row__details {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 28px;
}

.service-row__details span {
  position: relative;
  padding-left: 14px;
  font-size: 0.78rem;
  color: rgba(255, 255, 255, 0.55);
}

.service-row__details span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
  transform: translateY(-50%);
}

@media (max-width: 950px) {
  .services-editorial__headline {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .service-row {
    grid-template-columns: 120px 1fr;
  }

  .service-row__body {
    grid-column: 2;
  }
}

@media (max-width: 650px) {
  .services-editorial__head {
    margin-bottom: 45px;
  }

  .service-row {
    grid-template-columns: 1fr;
    gap: 22px;
    padding: 40px 0;
  }

  .service-row__body {
    grid-column: auto;
  }

  .service-row__meta {
    flex-direction: row;
    align-items: center;
    gap: 16px;
  }

  .service-row__title h3 {
    font-size: clamp(2rem, 10vw, 2.8rem);
  }
}

/* ÜBER TW */

.about-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(400px, 0.8fr);
  gap: clamp(60px, 8vw, 130px);
  align-items: start;
}

.about-intro h2 {
  margin-bottom: 50px;
}


/* BILD */

.about-image {
  position: relative;
  width: 100%;
  max-width: 220px;
  aspect-ratio: 2 / 3;
  overflow: hidden;
}

.about-image img {
  width: 100%;
  height: 100%;
  display: block;

  object-fit: cover;
  object-position: center;

  transition: transform 0.6s ease;
}

.about-image:hover img {
  transform: scale(1.04);
}


/* kleiner Akzent unter dem Bild */

.about-image::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;

  width: 90px;
  height: 4px;

  
}


/* TEXT */

.about-copy {
  padding-top: 70px;
}

.about-copy p {
  max-width: 620px;
}

.about-copy .lead-dark {
  font-size: clamp(1.3rem, 2vw, 1.7rem);
  line-height: 1.4;
  font-weight: 500;
}


/* MOBILE */

@media (max-width: 900px) {

  .about-grid {
    grid-template-columns: 1fr;
    gap: 45px;
  }

  .about-copy {
    padding-top: 0;
  }

  .about-image {
    max-width: 100%;
    aspect-ratio: 16 / 10;
  }
}


@media (max-width: 600px) {

  .about-intro h2 {
    margin-bottom: 30px;
  }

  .about-image {
    aspect-ratio: 4 / 3;
  }
}

.brand {
  display: flex;
  align-items: center;
  text-decoration: none;
}

.brand-logo {
  display: block;
  width: auto;
  height: 48px;
  object-fit: contain;
}

@media (max-width: 700px) {
  .brand-logo {
    height: 40px;
  }
}

/* =========================================================
   ADMIN – Speichern, Sortierung & Drag-and-Drop
   Ergänzung für die überarbeitete admin.html / admin.js
   ========================================================= */

.admin-status{
  position:sticky;
  top:96px;
  z-index:30;
  margin:0 0 24px;
  padding:13px 16px;
  border:1px solid #6f8e67;
  background:#edf7e9;
  color:#294326;
  font-size:13px;
  box-shadow:0 10px 30px rgba(0,0,0,.06);
}

.admin-status.error{
  border-color:#b46464;
  background:#fff0f0;
  color:#7d2828;
}

.admin-list-help{
  margin:-8px 0 18px;
  color:#686d6f;
  font-size:12px;
}

/* Admin-Zeilen bekommen Platz für Sortiersteuerung + Inhalt + Aktionen */
.admin-row{
  justify-content:flex-start;
}

.admin-row-order{
  flex:0 0 auto;
}

.admin-row-content{
  min-width:0;
  flex:1;
}

.order-actions{
  display:flex;
  align-items:center;
  gap:5px;
}

.order-btn{
  width:32px;
  height:32px;
  padding:0;
  display:grid;
  place-items:center;
  font-size:15px;
}

.order-btn:disabled{
  opacity:.25;
  cursor:not-allowed;
  background:transparent!important;
  color:inherit!important;
}

.order-number{
  min-width:24px;
  text-align:center;
  font-size:11px;
  color:#777d7f;
  font-variant-numeric:tabular-nums;
}

/* Drag & Drop */
.admin-sortable{
  cursor:grab;
  transition:
    opacity .15s ease,
    transform .15s ease,
    background .15s ease;
}

.admin-sortable:active{
  cursor:grabbing;
}

.admin-sortable.is-dragging{
  opacity:.35;
}

.admin-sortable.is-drop-target{
  background:rgba(214,255,56,.13);
  transform:translateY(2px);
}

/* Referenz-Vorschaubild im Admin */
.admin-ref-thumb{
  width:78px;
  height:58px;
  object-fit:cover;
  flex:0 0 auto;
  background:#ddd;
}

/* Status-Badges */
.admin-badge.is-muted{
  opacity:.55;
}

.admin-badge.is-featured{
  border-color:#879d38;
  background:rgba(214,255,56,.18);
}

@media(max-width:980px){
  .admin-status{
    top:16px;
  }
}

@media(max-width:650px){
  .admin-row-order{
    width:100%;
  }

  .order-actions{
    justify-content:flex-start;
  }

  .admin-ref-thumb{
    width:100%;
    height:150px;
  }

  .admin-sortable{
    cursor:default;
  }
}

/* ADMIN LOGIN */

.admin-login-body {
    min-height: 100vh;
    margin: 0;
    display: grid;
    place-items: center;
    background: var(--ink);
    color: #fff;
}

.admin-login {
    width: min(440px, calc(100% - 40px));
}

.admin-login-logo {
    width: auto;
    height: 55px;
    margin-bottom: 70px;
}

.admin-login .section-index {
    color: var(--accent);
}

.admin-login h1 {
    margin: 5px 0 45px;
    font-size: clamp(48px, 7vw, 72px);
    line-height: .95;
    letter-spacing: -.055em;
}

.admin-login label > span {
    color: #a9acae;
}

.admin-login input {
    color: #fff;
    border-bottom-color: rgba(255,255,255,.3);
    font-size: 20px;
}

.admin-login input:focus {
    border-bottom-color: var(--accent);
}

.admin-login .btn {
    width: 100%;
    margin-top: 15px;
}

.admin-login-error {
    color: #ff8b8b;
    font-size: 13px;
    margin: -5px 0 15px;
}

.admin-login-back {
    display: inline-block;
    margin-top: 28px;
    color: #8e9294;
    font-size: 12px;
}

.admin-login-back:hover {
    color: var(--accent);
} 
/* Produktbilder und Partysets */
.product-grid{gap:20px;border:0}
.product-card{padding:0;overflow:hidden;justify-content:flex-start;background:#fff;border:1px solid var(--line-dark);min-width:0}
.product-media{position:relative;aspect-ratio:4/3;background:#fff;overflow:hidden}
.product-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:18px;background:#fff}
.product-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#777c7f}
.product-placeholder>span{font-size:46px}.product-placeholder small{font-size:12px}
.product-body{padding:24px 26px 0}
.product-card .qty{margin:24px 26px 26px;margin-top:auto;padding-top:24px}
.set-badge{position:absolute;top:14px;left:14px;background:var(--accent);color:var(--ink);font-size:11px;font-weight:800;padding:7px 11px;text-transform:uppercase;letter-spacing:.08em}
.set-contents{padding-left:18px;font-size:13px;color:#505557;margin:18px 0}
.set-contents li{margin:5px 0}
.partysets-intro{color:#626769;max-width:620px;margin:-8px 0 24px}
.admin-create-actions{display:flex;flex-wrap:wrap;gap:10px}
.admin-form small{display:block;color:#626769;font-size:12px;margin-top:8px}
.qty button:focus-visible,.filter:focus-visible{outline:3px solid #657d16;outline-offset:3px}
