:root{--black:#0d0e0f;--ink:#101112;--panel:#17191a;--bronze:#cfaa80;--gold:#e4bb8b;--white:#f5f2ec;--muted:#c2c0ba;--line:#67513e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#111;color:var(--white);font-family:Georgia,'Times New Roman',serif}.site-shell{max-width:1440px;margin:auto;background:var(--black);box-shadow:0 12px 70px #0009;overflow:hidden}a{color:inherit}.skip{position:absolute;left:-9999px;z-index:40;background:#fff;color:#111;padding:12px}.skip:focus{left:8px;top:8px}.site-header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:linear-gradient(115deg,#101112,#1a1b1b);position:relative;z-index:5}.brand{display:flex;align-items:center;text-decoration:none;min-width:290px}.brand-mark{position:relative;width:83px;height:70px;display:block;font-family:Georgia,serif}.brand-mark span:first-child{position:absolute;left:0;top:-7px;font-size:75px;line-height:1;color:#fff}.brand-mark span:last-child{position:absolute;left:35px;top:17px;font-size:65px;line-height:1;color:var(--bronze)}.brand-rule{height:60px;width:1px;background:var(--bronze);margin:0 20px 0 4px}.brand-copy{display:flex;flex-direction:column;gap:8px;white-space:nowrap}.brand-copy>span{font-size:25px;letter-spacing:.035em;border-bottom:1px solid var(--bronze);padding-bottom:8px;line-height:1}.brand-copy small{font:9px Arial,sans-serif;letter-spacing:.2em}.site-header nav{display:flex;align-items:center;gap:clamp(20px,4vw,56px);font:10px Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}.site-header nav a{text-decoration:none;padding:15px 0;border-bottom:1px solid transparent}.site-header nav a:hover,.site-header nav a:focus-visible{border-color:var(--bronze)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:42% 58%;min-height:430px}.hero-copy{position:relative;display:flex;align-items:center;background:radial-gradient(ellipse at 23% 45%,#1e2020 0,#111315 50%,#0c0d0e 100%);overflow:hidden}.hero-ornament{position:absolute;width:2px;height:750px;top:-150px;left:19%;background:linear-gradient(transparent 7%,#a07850 18%,#eac290 36%,#563b25 45%,transparent 60%,#c6976d 78%,transparent);transform:rotate(40deg);transform-origin:center;opacity:.8}.hero-copy-inner{position:relative;z-index:1;padding:48px 9% 52px 18%;width:100%}.eyebrow{font:10px/1.4 Arial,sans-serif;letter-spacing:.21em;color:var(--bronze);text-transform:uppercase}.eyebrow span{padding:0 5px;color:#92877d}.hero h1{font-size:clamp(44px,4.8vw,69px);font-weight:400;line-height:1.03;letter-spacing:-.025em;margin:25px 0 20px}.hero-subtitle{display:flex;align-items:center;gap:17px;font:9px Arial,sans-serif;letter-spacing:.29em;color:#f4f1ed}.short-line{display:inline-block;width:49px;height:2px;background:var(--bronze)}.hero-description{font-size:15px;line-height:1.48;color:#efede9;margin:21px 0 24px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-width:215px;padding:17px 22px;background:linear-gradient(110deg,#e2bd8e,#bd8c5f);color:#15110d;text-decoration:none;font:10px Arial,sans-serif;letter-spacing:.14em;border:1px solid #d8aa7c;transition:filter .2s}.button:hover,.button:focus-visible{filter:brightness(1.14)}.button span{font-size:20px;line-height:8px}.hero-image{min-width:0;position:relative;background:#383632;overflow:hidden}.hero-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10111248,transparent 25%),linear-gradient(0deg,#10111230,transparent 40%);pointer-events:none}.hero-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center 47%}.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:18px 4.4% 45px}.service-card{position:relative;display:flex;align-items:end;min-height:240px;overflow:hidden;background:#262626;text-decoration:none;border:1px solid #ffffff0f}.service-card::before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#111 3%,#121314e6 32%,#13141420 100%);z-index:1}.service-card::after{content:'';position:absolute;height:2px;width:46%;right:-10%;bottom:12%;background:linear-gradient(90deg,transparent,#e4b381);transform:rotate(-44deg);transform-origin:center;z-index:2}.service-card img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;transition:transform .45s}.service-card:hover img{transform:scale(1.035)}.card-inner{position:relative;z-index:2;padding:20px 11%;display:flex;flex-direction:column;gap:10px}.service-heading{display:flex;align-items:center;gap:17px}.service-heading svg{width:40px;height:34px;stroke:var(--gold);fill:none;stroke-width:1.5;flex:none}.service-heading strong{font-size:27px;font-weight:400}.card-inner>span:nth-child(2){font-size:14px;line-height:1.35;max-width:260px;color:#eee}.card-link{font:9px Arial,sans-serif;letter-spacing:.16em;color:var(--gold);margin-top:5px}.card-link b{padding-left:8px;font-size:16px;font-weight:400}.reference-section{padding:0 4.4% 72px}.section-title{display:flex;align-items:center;gap:17px;margin-bottom:20px}.section-title h2{font-size:22px;font-weight:400;letter-spacing:.26em;margin:0}.section-title>span{height:1px;flex:1;background:linear-gradient(90deg,var(--bronze) 0 75px,#4a4440 75px)}.section-title p{font:9px Arial,sans-serif;letter-spacing:.16em;color:#b6aea3}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.gallery figure{margin:0;position:relative;aspect-ratio:1.25;overflow:hidden;background:#262626}.gallery img{display:block;width:100%;height:100%;object-fit:cover}.gallery figcaption{position:absolute;bottom:0;left:0;right:0;padding:28px 12px 10px;background:linear-gradient(transparent,#000b);font:10px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}.intro-section{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:75px 8%;background:#191a1a;border-top:1px solid #44392f}.intro-section h2,.contact-section h2{font-weight:400;font-size:clamp(33px,4vw,54px);line-height:1.15;letter-spacing:-.015em;margin:20px 0}.intro-section p:not(.eyebrow){font-size:17px;line-height:1.65;color:#ddd8d0;margin:12px 0 18px}.text-link{display:inline-block;color:var(--gold);font:10px Arial,sans-serif;letter-spacing:.13em;text-decoration:none;margin-top:18px}.text-link span{font-size:18px;margin-left:12px}.details-section{padding:65px 8%;display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.details-section article{border-top:1px solid #6e5744;padding-top:20px;scroll-margin-top:20px}.details-section article span{font:10px Arial,sans-serif;letter-spacing:.15em;color:var(--bronze)}.details-section h3{font-size:26px;font-weight:400;margin:18px 0 12px}.details-section p{font-size:15px;line-height:1.6;color:#cbc6bf}.contact-section{text-align:center;padding:72px 5% 82px;background:linear-gradient(125deg,#211d1a,#101112 62%);border-top:1px solid #4a392b}.contact-section>p:not(.eyebrow){font-size:16px;line-height:1.5;color:#ddd7cf}.contact-actions{display:flex;align-items:center;justify-content:center;gap:28px;margin-top:29px}.contact-email{font:12px Arial,sans-serif;letter-spacing:.03em;color:#e1d1be;text-decoration:none}.contact-email:hover{text-decoration:underline}.site-footer{display:flex;justify-content:space-between;gap:20px;padding:26px 5%;color:#9e9992;font:9px Arial,sans-serif;letter-spacing:.12em}.site-footer a{text-decoration:none;color:#b4a28f}#leistungen,#referenzen,#ueber,#kontakt{scroll-margin-top:18px}@media(max-width:800px){.site-header{height:78px;padding:0 5%}.brand{min-width:0}.brand-mark{width:60px;height:55px}.brand-mark span:first-child{font-size:56px;top:0}.brand-mark span:last-child{font-size:49px;left:27px;top:16px}.brand-rule{height:44px;margin:0 12px 0 2px}.brand-copy{gap:6px}.brand-copy>span{font-size:18px;padding-bottom:6px}.brand-copy small{font-size:7px;letter-spacing:.14em}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;border:0;background:none;padding:10px;cursor:pointer}.menu-toggle span{width:25px;height:1px;background:var(--gold)}.site-header nav{display:none;position:absolute;left:0;right:0;top:78px;flex-direction:column;align-items:stretch;gap:0;background:#151617;padding:12px 6% 22px;box-shadow:0 14px 20px #0008}.site-header nav.open{display:flex}.site-header nav a{padding:16px 0}.hero{position:relative;display:block;min-height:530px;overflow:hidden}.hero-image{position:absolute;inset:0}.hero-image img{object-position:center 43%}.hero-image::after{background:linear-gradient(0deg,#0d0e0f 0%,#0d0e0fe8 20%,#0d0e0f7a 58%,#0d0e0f1c 100%)}.hero-copy{position:absolute;inset:0;background:transparent;align-items:end;z-index:2}.hero-copy-inner{padding:125px 7% 38px}.hero-ornament{left:0%;top:-250px;height:850px;opacity:.45}.hero h1{font-size:clamp(43px,9.8vw,57px);margin:15px 0 17px}.hero-description{font-size:14px;margin:18px 0}.hero-subtitle{font-size:8px}.button{min-width:200px;padding:16px 20px}.services{display:flex;flex-direction:column;gap:0;padding:6px 5% 40px}.service-card{min-height:114px;border:0;border-bottom:1px solid #343333;align-items:center}.service-card::before{background:linear-gradient(90deg,transparent 0,#111 30%)}.service-card::after{display:none}.service-card img{width:26%;height:84px;top:15px;left:0;object-fit:cover}.card-inner{padding:14px 5% 14px 31%;gap:7px;width:100%}.service-heading{gap:10px}.service-heading svg{width:30px;height:27px}.service-heading strong{font-size:20px}.card-inner>span:nth-child(2){font-size:12px;line-height:1.3}.card-link{position:absolute;right:0;top:46%;font-size:0;margin:0}.card-link b{font-size:20px}.section-title h2{font-size:18px;letter-spacing:.21em}.section-title p{display:none}.reference-section{padding:0 5% 50px}.gallery{display:flex;gap:7px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:5px}.gallery figure{flex:0 0 45%;aspect-ratio:1.1;scroll-snap-align:start}.gallery figcaption{font-size:8px}.intro-section{grid-template-columns:1fr;gap:10px;padding:55px 7%}.intro-section h2{font-size:35px;margin:16px 0 0}.intro-section p:not(.eyebrow){font-size:15px;line-height:1.55}.details-section{grid-template-columns:1fr;gap:15px;padding:44px 7%}.details-section article{padding-top:15px}.details-section h3{font-size:23px;margin:11px 0}.details-section p{margin-bottom:18px}.contact-section{padding:55px 7% 65px}.contact-section h2{font-size:39px}.contact-actions{flex-direction:column;gap:21px}.site-footer{flex-direction:column;align-items:center;text-align:center;gap:12px;line-height:1.6}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
:root { color-scheme: dark; }
.hero-image-note { position:absolute; z-index:2; right:12px; bottom:10px; margin:0; padding:7px 9px; background:#111c; color:#eee5da; font:9px/1.5 Arial,sans-serif; letter-spacing:.09em; text-align:right; }
.hero-image-note a { color:inherit; text-underline-offset:3px; }
.services { grid-template-columns:repeat(3,minmax(0,1fr)); }
.service-heading strong { font-size:clamp(18px,1.9vw,27px); }
.gallery { grid-template-columns:repeat(3,minmax(0,1fr)); }
.gallery figure a { display:block; width:100%; height:100%; }
.gallery figure a:focus-visible { outline:3px solid var(--gold); outline-offset:-3px; }
.card-note { font:8px/1.3 Arial,sans-serif; letter-spacing:.08em; color:#e6d4bf; }
.details-section { grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.photo-dialog { width:min(94vw,1000px); max-height:94vh; padding:0; border:1px solid #83694f; color:var(--white); background:#151515; }
.photo-dialog::backdrop { background:#000d; }
.photo-dialog-inner { padding:14px; }
.photo-dialog-header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.photo-dialog h2 { font-size:18px; font-weight:400; margin:0; }
.photo-close { width:42px; height:42px; color:var(--white); background:transparent; border:1px solid #80654c; font:30px/1 Arial,sans-serif; cursor:pointer; }
.photo-dialog img { display:block; margin:12px auto 0; width:auto; max-width:100%; max-height:75vh; object-fit:contain; }
.photo-dialog p { font:10px Arial,sans-serif; letter-spacing:.1em; color:#c9bcae; text-align:center; }
@media(max-width:1000px) and (min-width:801px) { .services { grid-template-columns:repeat(2,minmax(0,1fr)); } .details-section { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:800px) { .hero-image-note { bottom:auto; top:10px; right:10px; max-width:70%; font-size:8px; } .service-heading strong { font-size:20px; } .gallery { display:flex; } .details-section { grid-template-columns:1fr; } }
@media(max-width:800px) { .hero-copy { pointer-events:none; } .hero-copy a { pointer-events:auto; } }

/* Separate service pages; reference selection is still open in this draft. */
.category-page{padding:0 8% 70px;min-height:68vh}.category-intro{padding:42px 0 28px;max-width:750px}.back-link{display:inline-block;color:var(--bronze);font:11px/1.5 Arial,sans-serif;text-decoration:none;letter-spacing:.05em;margin-bottom:28px}.category-intro h1{font-size:clamp(40px,5.7vw,70px);line-height:1.05;font-weight:400;letter-spacing:-.025em;margin:18px 0 20px}.category-description{font-size:19px;line-height:1.6;color:#ddd8d0;max-width:650px}.category-nav{display:flex;flex-wrap:wrap;gap:9px 24px;border-top:1px solid #594735;border-bottom:1px solid #594735;padding:18px 0}.category-nav a{font:11px/1.5 Arial,sans-serif;letter-spacing:.08em;text-decoration:none;color:#c2b9ae;padding:6px 0}.category-nav a[aria-current="page"]{color:var(--gold);text-decoration:underline;text-underline-offset:7px}.category-references{padding:38px 0 12px}.category-references h2{font-size:27px;font-weight:400;margin:0 0 22px}.draft-note{padding:26px 28px;border:1px dashed #76614e;background:#171818;max-width:780px}.draft-note>span{color:var(--bronze);font:9px/1.5 Arial,sans-serif;letter-spacing:.16em}.draft-note p{font:16px/1.6 Georgia,serif;color:#cbc4ba;max-width:560px;margin:10px 0 0}.category-gallery:empty{display:none}.category-contact{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:24px;max-width:780px}.category-contact>p{font-size:18px;color:#ddd8d0}.category-page a:focus-visible{outline:2px solid var(--bronze);outline-offset:5px}body:has(.category-page) .site-footer{border-top:1px solid #44392f}@media(max-width:800px){.category-page{padding:0 7% 45px}.category-intro{padding-top:28px}.category-description{font-size:17px}.category-nav{gap:8px 18px}.category-nav a{font-size:10px}.category-references{padding-top:30px}.category-references h2{font-size:24px}.draft-note{padding:22px}.category-contact{align-items:flex-start;flex-direction:column;gap:8px}.back-link{margin-bottom:24px}}

.subpage-shell{background:#e9e3da;color:#302c27}.subpage-shell .site-header{color:var(--white)}.subpage-shell .category-page{background:#e9e3da}.subpage-shell .category-intro .eyebrow,.subpage-shell .back-link{color:#7c5c3f}.subpage-shell .category-description,.subpage-shell .category-contact>p{color:#554b42}.subpage-shell .category-nav{border-color:#c5b8a8}.subpage-shell .category-nav a{color:#645549}.subpage-shell .category-nav a[aria-current="page"]{color:#7b4e29}.subpage-shell .draft-note{background:#f5f1ea;border-color:#b9a58d}.subpage-shell .draft-note>span{color:#806244}.subpage-shell .draft-note p{color:#625549}.subpage-shell .site-footer{background:#121313}.subpage-shell .category-page a:focus-visible{outline-color:#89633d}

@media(max-width:800px){.card-inner{padding-right:38px}.service-card[data-category="treppen"] img{object-fit:contain;background:#201c18}}

/* 28.10.2026: readable category names and one homepage-only image note. */
.homepage-image-note{margin:0;padding:0 5% 18px;color:#c2b9ae;font:11px/1.6 Arial,sans-serif;max-width:1100px}.service-heading strong{min-width:0}.service-heading{min-width:0}.category-intro h1,.details-section h3{overflow-wrap:anywhere;hyphens:auto}.category-intro h1{hyphens:manual}
@media(max-width:800px){.service-heading{align-items:flex-start}.service-heading strong{line-height:1.15}.service-card{min-height:114px}.homepage-image-note{padding:0 7% 20px;font-size:11px}.hero-description{max-width:330px}}

@media(max-width:800px){.hero-image img{width:200%;max-width:none;object-fit:cover;object-position:left center}}

@media(max-width:800px){.service-card[data-category="treppen"] img{object-fit:cover;object-position:center 65%}}

/* 29.10.2026: Existing bathroom motifs exchanged without altering their image files. */
.hero-montage{position:absolute;inset:0;width:100%;height:100%;display:block}
.bathroom-card-image{position:absolute;inset:0;width:100%;height:100%;display:block;transition:transform .45s}
.service-card:hover .bathroom-card-image{transform:scale(1.035)}
@media(max-width:800px){.hero-montage{width:200%;max-width:none}.bathroom-card-image{width:26%;height:84px;top:15px;left:0}}
.category-intro .kitchen-title{overflow-wrap:normal;word-break:normal;hyphens:manual}
.service-card[href="kuechenplatten.html"] .card-word{white-space:nowrap}
@media(max-width:800px){.service-card[href="kuechenplatten.html"] .service-heading strong{font-size:clamp(16px,5vw,20px)}}

/* Permanent contact and legal links on every page. */
.site-footer{align-items:center;flex-wrap:wrap}.footer-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 20px}.footer-links a{display:inline-block;padding:9px 0;font-size:10px;line-height:1.5}.footer-links a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
