/* VSH Handwerkerservice — Design v2 ("Fronten")
   Farben stammen aus den echten Küchenfotos: Graphit, Eiche, Salbei, Putzweiß.
   Rot ist ausschließlich Funktionsfarbe (Buttons, Telefon, Fokus). */

@font-face{
  font-family:"Archivo";font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;
  src:url(fonts/archivo-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Archivo";font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;
  src:url(fonts/archivo-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

:root{
  color-scheme:light;
  --graphit:#1E2225;
  --graphit-2:#2B3034;
  --tanne:#24302A;
  --salbei:#7C9580;
  --eiche:#B98A56;
  --putz:#ECEDEA;
  --putz-2:#E0E2DE;
  --linie:#CFD2CC;
  --weiss:#FFFFFF;
  --text:#1E2225;
  --text-2:#4A5156;
  --rot:#D61F2B;
  --rot-dunkel:#A8141E;
  --r-s:12px;
  --r-m:20px;
  --r-l:28px;
  --gutter:max(20px,4.2vw);
  --maxw:1320px;
  --ease:cubic-bezier(.2,.7,.2,1);
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  margin:0;background:var(--putz);color:var(--text);
  font-family:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:1.0625rem;line-height:1.6;font-stretch:100%;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block;}
a{color:inherit;}
h1,h2,h3,h4{margin:0;font-weight:760;font-stretch:116%;letter-spacing:-.018em;line-height:1.08;text-wrap:balance;}
h1{font-size:clamp(2.35rem,5vw,4.5rem);line-height:1.02;letter-spacing:-.026em;}
h2{font-size:clamp(1.85rem,3.4vw,3rem);}
h3{font-size:1.3rem;font-weight:700;font-stretch:108%;}
p{margin:0 0 1em;}
:focus-visible{outline:3px solid var(--rot);outline-offset:3px;border-radius:4px;}
.skip{position:absolute;left:-999px;top:8px;background:var(--graphit);color:#fff;padding:10px 16px;border-radius:999px;z-index:200;}
.skip:focus{left:12px;}
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);}
.prose{max-width:66ch;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.6em;
  min-height:48px;padding:.8em 1.6em;border-radius:999px;border:2px solid transparent;
  font:inherit;font-weight:650;font-stretch:104%;text-decoration:none;cursor:pointer;
  transition:background-color .2s,color .2s,border-color .2s,transform .2s var(--ease);
}
.btn-rot{background:var(--rot);color:#fff;}
.btn-rot:hover{background:var(--rot-dunkel);}
.btn-linie{border-color:var(--graphit);color:var(--graphit);background:transparent;}
.btn-linie:hover{background:var(--graphit);color:#fff;}
.btn-hell{border-color:rgba(255,255,255,.55);color:#fff;background:transparent;}
.btn-hell:hover{background:#fff;color:var(--graphit);}
.btn:active{transform:translateY(1px);}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:60;background:var(--weiss);border-bottom:1px solid var(--linie);}
.bar{display:flex;align-items:center;gap:28px;min-height:76px;}
.brand{display:block;flex:none;line-height:0;}
.brand img{height:52px;width:auto;}
.nav{display:flex;align-items:center;gap:4px;margin-left:auto;}
.nav > li{list-style:none;position:relative;}
.nav ul{margin:0;padding:0;}
.nav a,.nav button.nav-btn{
  display:flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;
  font:inherit;font-size:.97rem;font-weight:600;font-stretch:104%;color:var(--text);
  text-decoration:none;background:none;border:0;cursor:pointer;white-space:nowrap;
}
.nav a:hover,.nav button.nav-btn:hover{background:var(--putz);}
.nav [aria-current="page"]{background:var(--putz);box-shadow:inset 0 -2px 0 var(--graphit);}
.nav .soon{font-size:.68rem;font-weight:700;background:var(--graphit);color:#fff;border-radius:999px;padding:2px 8px;line-height:1.5;}
.menu{
  position:absolute;top:calc(100% + 6px);left:0;min-width:300px;background:var(--weiss);
  border:1px solid var(--linie);border-radius:var(--r-m);padding:8px;
  box-shadow:0 22px 50px -18px rgba(20,24,26,.35);display:none;flex-direction:column;
}
.has-menu:hover .menu,.has-menu:focus-within .menu,.has-menu.open .menu{display:flex;}
.menu a{border-radius:var(--r-s);padding:10px 14px;justify-content:space-between;white-space:normal;}
.menu a small{font-weight:400;color:var(--text-2);font-size:.82rem;}
.head-actions{display:flex;align-items:center;gap:18px;}
.tel{display:flex;align-items:center;gap:8px;font-weight:700;font-stretch:108%;text-decoration:none;white-space:nowrap;}
.tel svg{color:var(--rot);}
.tel:hover{color:var(--rot);}
.burger{display:none;margin-left:auto;width:48px;height:48px;border-radius:50%;border:2px solid var(--graphit);background:none;cursor:pointer;color:var(--graphit);align-items:center;justify-content:center;}
.burger svg{width:22px;height:22px;}

/* Mobile-Menü */
.drawer{
  position:fixed;inset:0;z-index:100;background:var(--graphit);color:#fff;
  display:flex;flex-direction:column;padding:20px var(--gutter) 28px;
  transform:translateY(-102%);visibility:hidden;
  transition:transform .45s var(--ease),visibility 0s .45s;overflow-y:auto;
}
.drawer.open{transform:none;visibility:visible;transition:transform .45s var(--ease),visibility 0s;}
.drawer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;}
.drawer-top span{font-weight:700;font-stretch:112%;}
.drawer .close{width:48px;height:48px;border-radius:50%;border:2px solid rgba(255,255,255,.5);background:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.drawer nav ul{list-style:none;margin:0;padding:0;}
.drawer nav a{
  display:flex;justify-content:space-between;align-items:center;padding:13px 0;
  font-size:1.5rem;font-weight:700;font-stretch:112%;letter-spacing:-.01em;text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.drawer nav a.sub{font-size:1.1rem;font-weight:500;font-stretch:100%;color:#D5D9D4;padding-left:14px;}
.drawer .d-cta{margin-top:24px;display:grid;gap:12px;}
.drawer .btn{width:100%;}

/* ---------- Hero ---------- */
.hero{padding-block:clamp(28px,4.5vw,64px) clamp(24px,3vw,40px);}
.hero-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4vw,72px);align-items:end;}
.hero-copy{padding-bottom:6px;}
.hero h1{margin-bottom:22px;font-size:clamp(2.2rem,3.7vw,3.5rem);font-stretch:112%;}
.lede{font-size:clamp(1.1rem,1.5vw,1.3rem);line-height:1.5;color:var(--text-2);max-width:34em;margin-bottom:28px;}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;}

.fronten{display:flex;gap:12px;height:clamp(440px,64vh,640px);}
.front{
  position:relative;flex:1 1 0;min-width:84px;overflow:hidden;border-radius:var(--r-l);
  background:var(--graphit-2);text-decoration:none;color:#fff;cursor:pointer;
  transition:flex-grow .7s var(--ease);
}
.front:nth-child(1){margin-top:0;}
.front:nth-child(2){margin-top:44px;}
.front:nth-child(3){margin-top:16px;}
.front:nth-child(4){margin-top:64px;}
.front.open{flex-grow:3;}
.front img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.front::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(20,24,26,.72),rgba(20,24,26,0) 46%);}
.front span{
  position:absolute;left:18px;right:18px;bottom:16px;z-index:2;
  font-weight:650;font-stretch:108%;font-size:1rem;line-height:1.2;
  opacity:0;transform:translateY(8px);transition:opacity .35s .15s,transform .45s .15s var(--ease);
}
.front.open span{opacity:1;transform:none;}
@keyframes rise{from{transform:translateY(110%);}to{transform:none;}}
@media (prefers-reduced-motion:no-preference){
  .front{animation:rise .9s var(--ease) both;}
  .front:nth-child(2){animation-delay:.08s;}
  .front:nth-child(3){animation-delay:.16s;}
  .front:nth-child(4){animation-delay:.24s;}
}

/* Fakten-Leiste */
.facts{border-top:1px solid var(--linie);margin-top:clamp(24px,3vw,44px);}
.facts .wrap{display:grid;grid-template-columns:repeat(4,1fr);}
.fact{padding:22px 24px 22px 0;}
.fact + .fact{padding-left:24px;border-left:1px solid var(--linie);}
.fact b{display:block;font-weight:700;font-stretch:108%;font-size:1.12rem;line-height:1.25;margin-bottom:4px;}
.fact span{color:var(--text-2);font-size:.95rem;line-height:1.45;display:block;}

/* ---------- Sektionen ---------- */
.sec{padding-block:clamp(56px,8vw,112px);}
.sec-tight{padding-block:clamp(36px,5vw,64px);}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 56px;align-items:end;margin-bottom:clamp(28px,4vw,52px);}
.sec-head p{margin:0;color:var(--text-2);max-width:34em;}

/* Leistungen */
.leist{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(24px,4vw,64px);align-items:start;}
.leist-feature{
  position:sticky;top:96px;display:block;border-radius:var(--r-l);overflow:hidden;background:var(--graphit);
  color:#fff;text-decoration:none;
}
.leist-feature img{width:100%;aspect-ratio:4/4.4;object-fit:cover;transition:transform .8s var(--ease);}
.leist-feature:hover img{transform:scale(1.03);}
.leist-feature .cap{position:absolute;inset:auto 0 0 0;padding:28px 26px 26px;background:linear-gradient(to top,rgba(20,24,26,.9),rgba(20,24,26,0));}
.leist-feature h3{font-size:clamp(1.7rem,2.6vw,2.3rem);margin-bottom:8px;}
.leist-feature p{margin:0 0 14px;color:#E3E6E1;max-width:28em;}
.leist-feature{position:sticky;}
.leist-feature .pill{display:inline-flex;align-items:center;gap:8px;font-weight:650;background:#fff;color:var(--graphit);border-radius:999px;padding:8px 18px;}
.leist-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--graphit);}
.leist-list li{border-bottom:1px solid var(--linie);}
.leist-list a{
  display:grid;grid-template-columns:1fr auto;gap:4px 20px;align-items:center;padding:22px 6px;text-decoration:none;
  transition:padding .35s var(--ease),background-color .25s;border-radius:var(--r-s);
}
.leist-list a:hover{background:var(--weiss);padding-left:22px;}
.leist-list h3{font-size:clamp(1.35rem,2vw,1.75rem);}
.leist-list p{margin:0;color:var(--text-2);font-size:.97rem;grid-column:1;}
.leist-list .go{grid-row:1/3;grid-column:2;width:46px;height:46px;border-radius:50%;border:2px solid var(--graphit);display:grid;place-items:center;transition:background-color .25s,color .25s,transform .35s var(--ease);}
.leist-list a:hover .go{background:var(--graphit);color:#fff;transform:rotate(-35deg);}

/* Galerie */
.galerie{columns:3 280px;column-gap:14px;}
.g-item{display:block;width:100%;margin:0 0 14px;padding:0;border:0;background:var(--putz-2);border-radius:var(--r-m);overflow:hidden;cursor:zoom-in;break-inside:avoid;position:relative;}
.g-item img{width:100%;height:auto;transition:transform .7s var(--ease);}
.g-item:hover img{transform:scale(1.03);}
.g-item:focus-visible{outline-offset:2px;}
.galerie-note{color:var(--text-2);font-size:.92rem;margin-top:8px;}

dialog.lb{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100%;height:100%;}
dialog.lb::backdrop{background:rgba(14,17,19,.94);}
.lb-in{position:fixed;inset:0;display:grid;place-items:center;padding:56px 64px;}
.lb img{max-width:100%;max-height:calc(100vh - 120px);width:auto;height:auto;border-radius:var(--r-m);}
.lb button{position:fixed;width:52px;height:52px;border-radius:50%;border:2px solid rgba(255,255,255,.5);background:rgba(20,24,26,.6);color:#fff;cursor:pointer;display:grid;place-items:center;}
.lb button:hover{background:#fff;color:var(--graphit);}
.lb .x{top:16px;right:16px;}
.lb .prev{left:12px;top:50%;margin-top:-26px;}
.lb .next{right:12px;top:50%;margin-top:-26px;}
.lb .count{position:fixed;left:0;right:0;bottom:16px;text-align:center;color:#C9CEC8;font-size:.9rem;}

/* Material / Shop-Band */
.band{background:var(--tanne);color:#fff;border-radius:var(--r-l);padding:clamp(28px,5vw,64px);display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(24px,4vw,64px);align-items:center;}
.band p{color:#D5DDD6;max-width:34em;}
.band .btn{margin-top:8px;}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;}
.chips li{border:1.5px solid rgba(255,255,255,.4);border-radius:999px;padding:10px 20px;font-weight:600;font-stretch:104%;}
.chips-lab{display:block;margin-bottom:14px;color:#BFCBC1;font-size:.95rem;}

/* Über uns (Startseite) */
.about{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(24px,5vw,80px);align-items:start;}
.about p{color:var(--text-2);max-width:36em;}
.kv{background:var(--weiss);border-radius:var(--r-l);padding:8px 28px;margin:0;}
.kv div{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--linie);}
.kv div:last-child{border-bottom:0;}
.kv dt{color:var(--text-2);}
.kv dd{margin:0;font-weight:700;font-stretch:108%;text-align:right;}

/* Kontakt / Formular */
.kontakt{background:var(--graphit);color:#fff;}
.kontakt-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(28px,5vw,80px);align-items:start;}
.kontakt p{color:#CDD2CC;}
.direct{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:4px;}
.direct li{display:flex;gap:14px;align-items:flex-start;padding:10px 0;}
.direct svg{flex:none;margin-top:4px;color:#fff;}
.direct a{text-decoration:none;font-weight:600;border-bottom:1px solid rgba(255,255,255,.35);}
.direct a:hover{border-color:#fff;}
.form-card{background:var(--weiss);color:var(--text);border-radius:var(--r-l);padding:clamp(22px,3vw,40px);}
.form-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.form-row{display:grid;gap:6px;margin-bottom:16px;}
.form-row label{font-weight:650;font-size:.95rem;}
.form-row input,.form-row select,.form-row textarea{
  font:inherit;width:100%;min-height:50px;padding:12px 16px;border:1.5px solid #B7BCB5;border-radius:var(--r-s);background:#fff;color:var(--text);
}
.form-row textarea{min-height:132px;resize:vertical;}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:3px solid var(--graphit);outline-offset:1px;border-color:var(--graphit);}
.form-row .err{color:var(--rot-dunkel);font-size:.88rem;display:none;}
.form-row.invalid .err{display:block;}
.form-row.invalid input,.form-row.invalid textarea{border-color:var(--rot-dunkel);}
.kontakt .form-card p,.kontakt .form-card .form-note{color:var(--text-2);}
.form-note{font-size:.88rem;color:var(--text-2);margin:14px 0 0;}
.form-note a{text-decoration-thickness:1px;}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.form-fail{color:var(--rot-dunkel);font-weight:600;margin:14px 0 0;}
.form-success{display:none;}
.form-card.sent form{display:none;}
.form-card.sent .form-success{display:block;}
.form-submit{width:100%;}

/* ---------- Unterseiten ---------- */
.crumbs{padding-block:22px 0;font-size:.92rem;color:var(--text-2);}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.crumbs li + li::before{content:"/";margin-right:8px;color:#9AA09A;}
.crumbs a{text-decoration:none;}
.crumbs a:hover{text-decoration:underline;}
.sub-hero{padding-block:clamp(24px,4vw,56px) clamp(36px,5vw,72px);}
.sub-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,80px);align-items:start;}
.sub-hero h1{margin-bottom:24px;font-size:clamp(2.2rem,4.4vw,3.9rem);}
.wide-photo{border-radius:var(--r-l);overflow:hidden;aspect-ratio:21/9;background:var(--graphit-2);}
.wide-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 60%;}
@media (max-width:700px){.wide-photo{aspect-ratio:4/3;}}
.tasks{background:var(--weiss);border-radius:var(--r-l);padding:clamp(22px,3vw,36px);}
.tasks h2{font-size:1.35rem;margin-bottom:14px;font-stretch:108%;}
.tasks ul{list-style:none;margin:0;padding:0;}
.tasks li{padding:12px 0 12px 32px;border-top:1px solid var(--linie);position:relative;}
.tasks li:first-child{border-top:0;}
.tasks li::before{content:"";position:absolute;left:0;top:1.15em;width:16px;height:9px;border-left:3px solid var(--graphit);border-bottom:3px solid var(--graphit);transform:rotate(-45deg) scale(.8);}
.body-text{padding-bottom:clamp(36px,5vw,64px);}
.body-text p{max-width:66ch;}
.article{max-width:70ch;}
.article h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin:0 0 .7em;}
.article h3{font-size:1.25rem;margin:1.8em 0 .6em;}
.article ul{padding-left:1.2em;}
.article li{margin-bottom:.55em;}
.article a{text-decoration-thickness:1px;text-underline-offset:3px;}
.article-wrap{padding-block:clamp(32px,5vw,64px);border-top:1px solid var(--linie);}
.faq{max-width:860px;}
.faq details{border-top:1px solid var(--linie);}
.faq details:last-child{border-bottom:1px solid var(--linie);}
.faq summary{list-style:none;cursor:pointer;padding:20px 48px 20px 0;font-weight:650;font-stretch:106%;font-size:1.1rem;position:relative;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;border-right:2.5px solid var(--graphit);border-bottom:2.5px solid var(--graphit);transform:translateY(-70%) rotate(45deg);transition:transform .3s var(--ease);}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg);}
.faq details p{padding:0 48px 22px 0;max-width:62ch;color:var(--text-2);margin:0;}
.related{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.related a{display:block;background:var(--weiss);border-radius:var(--r-m);padding:26px;text-decoration:none;transition:transform .3s var(--ease),box-shadow .3s;}
.related a:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(20,24,26,.4);}
.related h3{margin-bottom:8px;}
.related p{color:var(--text-2);font-size:.97rem;margin:0 0 14px;}
.related .more{font-weight:650;display:inline-flex;gap:8px;align-items:center;}
.shop-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.shop-cats div{background:var(--weiss);border-radius:var(--r-m);padding:26px;min-height:150px;display:flex;align-items:flex-end;}
.legal{max-width:760px;padding-block:clamp(24px,4vw,56px) clamp(56px,7vw,96px);}
.legal h1{font-size:clamp(2rem,3.6vw,3rem);margin-bottom:28px;}
.legal h2{font-size:1.25rem;margin:2em 0 .5em;font-stretch:108%;}
.legal .todo{opacity:.55;}

/* ---------- Footer ---------- */
footer.site{background:#121517;color:#D5D9D4;padding-top:clamp(44px,6vw,80px);}
.foot-top{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,3fr);gap:40px;padding-bottom:48px;}
.foot-top h4{color:#fff;font-size:1rem;margin-bottom:14px;font-stretch:108%;}
.foot-top ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
.foot-top a{text-decoration:none;}
.foot-top a:hover{text-decoration:underline;}
.foot-brand img{height:64px;width:auto;margin-bottom:18px;}
.foot-brand p{max-width:30em;}
.foot-tel{display:inline-block;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:760;font-stretch:116%;letter-spacing:-.02em;color:#fff;text-decoration:none;margin-top:6px;}
.foot-bottom{border-top:1px solid rgba(255,255,255,.14);padding-block:22px;display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;font-size:.92rem;}
.callbar{display:none;}

/* ---------- Responsiv ---------- */
h1,h2,h3,.legal,.article,.shop-cats h3{overflow-wrap:break-word;}
.legal,.article{hyphens:auto;}
.shop-cats > *{min-width:0;}
@media (max-width:1100px){
  .nav,.head-actions{display:none;}
  .burger{display:inline-flex;}
  .hero-grid{grid-template-columns:1fr;align-items:start;}
  .hero-copy{max-width:40rem;}
}
@media (max-width:900px){
  .leist{grid-template-columns:1fr;}
  .leist-feature{position:relative;top:0;}
  .sec-head{grid-template-columns:1fr;}
  .band,.about,.kontakt-grid,.sub-grid{grid-template-columns:1fr;}
  .related{grid-template-columns:1fr;}
  .shop-cats{grid-template-columns:repeat(2,1fr);}
  .foot-top{grid-template-columns:1fr 1fr;}
  .foot-brand{grid-column:1/-1;}
  .facts .wrap{grid-template-columns:1fr 1fr;}
  .fact:nth-child(3){padding-left:0;border-left:0;}
  .fact:nth-child(n+3){border-top:1px solid var(--linie);}
}
@media (max-width:700px){
  body{font-size:1rem;}
  .fronten{height:auto;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);padding-bottom:6px;scrollbar-width:none;}
  .fronten::-webkit-scrollbar{display:none;}
  .front,.front.open{flex:0 0 76%;height:clamp(340px,56vh,460px);scroll-snap-align:start;}
  .front span{opacity:1;transform:none;}
  .front:nth-child(n){margin-top:0;}
  .form-two{grid-template-columns:1fr;}
  .shop-cats{grid-template-columns:1fr;}
  .foot-top{grid-template-columns:1fr;}
  .galerie{columns:2 150px;column-gap:10px;}
  .g-item{margin-bottom:10px;}
  .lb-in{padding:64px 12px;}
  .callbar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:70;transform:translateY(140%);transition:transform .4s var(--ease);}
  .callbar.show{transform:none;}
  .callbar a{flex:1;justify-content:center;box-shadow:0 14px 30px -10px rgba(20,24,26,.6);}
  body{padding-bottom:0;}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{transition-duration:.01ms !important;animation:none !important;}
}

/* Galerie-Filter */
.filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;}
.chip{min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid var(--graphit);background:transparent;color:var(--graphit);font:inherit;font-weight:600;font-stretch:104%;cursor:pointer;transition:background-color .2s,color .2s;}
.chip:hover{background:var(--putz-2);}
.chip.on{background:var(--graphit);color:#fff;}
.g-item[hidden]{display:none;}
@media (max-width:700px){.filter{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);scrollbar-width:none;}.filter::-webkit-scrollbar{display:none;}.chip{flex:none;}}
.fact{min-width:0;}
@media (max-width:420px){.facts .wrap{grid-template-columns:1fr;}.fact,.fact + .fact{padding-left:0;border-left:0;}.fact + .fact{border-top:1px solid var(--linie);}}
