
:root{--ink:#203c31;--green:#245b47;--pink:#e97d90;--peach:#ffcf9c;--cream:#fffaf2;--soft:#f6eee8;--lav:#eae4fa;--line:#e6e0d9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 system-ui,-apple-system,Segoe UI,sans-serif}h1,h2,h3{font-family:Georgia,serif;line-height:1.13;font-weight:500}h1{font-size:clamp(2.7rem,6vw,5.6rem);margin:.2em 0}h2{font-size:clamp(2.1rem,4vw,3.5rem);margin:.1em 0 .5em}h3{font-size:1.55rem;margin:.35em 0}p{margin:.6em 0 1.2em}a{color:inherit}button,input,textarea,select{font:inherit}.wrap{max-width:1200px;margin:auto;padding:0 24px}.header{position:sticky;top:0;background:#fffdf9ee;backdrop-filter:blur(16px);z-index:10;border-bottom:1px solid var(--line)}.head-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:80px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Georgia,serif;font-size:1.35rem;line-height:1.1}.brand small{font:600 .61rem system-ui;letter-spacing:.16em;display:block;margin-top:7px}.logo{width:45px;height:45px}.nav{display:flex;gap:20px;align-items:center}.nav a{text-decoration:none;font-size:.88rem;font-weight:600}.nav a:hover,.nav a:focus{color:#bf526c}.menu{display:none;border:0;background:none;font-size:1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 23px;background:var(--green);color:white;border-radius:100px;border:2px solid var(--green);font-weight:700;text-decoration:none;cursor:pointer;transition:.2s}.btn:hover{background:#153c2c}.btn.alt{background:white;color:var(--green)}.btn.pink{background:#cf5874;border-color:#cf5874}.eyebrow{font-weight:800;letter-spacing:.13em;text-transform:uppercase;font-size:.75rem;color:#a94f65}.hero{overflow:hidden;background:linear-gradient(110deg,#fff2df 0%,#fff9f3 52%,#f8d9e2 100%)}.hero-inner{display:grid;grid-template-columns:1fr 1fr;min-height:590px;align-items:center;gap:20px}.hero-copy{padding:65px 0}.hero-copy p{max-width:540px;font-size:1.13rem}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.art{position:relative;min-height:500px;display:grid;place-items:center}.art svg{width:min(100%,570px);filter:drop-shadow(0 25px 20px #c98e9a55)}.petal{transform-origin:center}.section{padding:85px 0}.section-head{max-width:760px;margin-bottom:35px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:white;border:1px solid var(--line);border-radius:23px;overflow:hidden;box-shadow:0 10px 25px #34271b08}.card-body{padding:25px}.card p{color:#53655c}.card a{font-weight:800;text-decoration:none;color:#b94b69}.visual{height:235px;display:grid;place-items:center;overflow:hidden}.visual svg{width:150px;height:150px;filter:drop-shadow(0 9px 8px #0001)}.v1{background:linear-gradient(140deg,#f9c8a5,#f8e4a3)}.v2{background:linear-gradient(140deg,#ffd2e1,#ead9ff)}.v3{background:linear-gradient(140deg,#d2eebd,#b9e4d9)}.v4{background:linear-gradient(140deg,#f7d6e5,#ffe9bd)}.v5{background:linear-gradient(140deg,#d4d9f5,#f4e5ed)}.v6{background:linear-gradient(140deg,#e7e4c6,#d2eacb)}.pill{display:inline-block;background:#fff0f2;color:#9e3b56;padding:6px 12px;border-radius:30px;font-size:.75rem;font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.panel{padding:45px;border-radius:26px;background:#e5f0df}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.feature{background:white;padding:23px;border-radius:18px;border:1px solid var(--line)}.feature strong{display:block;margin:10px 0 4px}.feature span{font-size:2rem}.section-tint{background:#fff1ee}.banner{background:linear-gradient(110deg,#225b46,#387b5b);color:white;padding:60px;border-radius:28px}.banner p{max-width:740px}.banner .eyebrow{color:#ffe1b7}.banner .btn{background:white;color:var(--green);border-color:white}.contact{display:grid;grid-template-columns:1fr 1fr;gap:35px}.field{display:flex;flex-direction:column;gap:6px;margin:12px 0}.field input,.field textarea,.field select{padding:12px 14px;border:1px solid #cbd3c9;border-radius:10px;background:white;width:100%}.note{font-size:.86rem;color:#66736c}.footer{background:#1e4939;color:#fff;padding:50px 0 20px}.footer a{color:white}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer small{color:#d0e4d7}.page{display:none}.page.active{display:block}.back{display:inline-block;margin-bottom:20px;color:#a44964;font-weight:700}.page-hero{padding:70px 0 40px;background:linear-gradient(120deg,#fff2df,#f7e8f3)}.page-hero p{max-width:780px;font-size:1.12rem}.details{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.detail{background:white;border:1px solid var(--line);border-radius:18px;padding:25px}.detail h3{font-size:1.3rem}.skip{position:absolute;top:-100px;left:12px;background:white;padding:10px;z-index:30}.skip:focus{top:10px}@media(max-width:900px){.nav{display:none;position:absolute;top:80px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:20px 24px;box-shadow:0 15px 25px #0001}.nav.open{display:flex}.menu{display:block}.hero-inner,.split,.contact{grid-template-columns:1fr}.hero-inner{gap:0}.hero-copy{padding:55px 0 0}.art{min-height:350px}.art svg{max-height:380px}.cards{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:580px){.cards,.details,.footgrid{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr 1fr}.section{padding:55px 0}.hero-actions{flex-direction:column;align-items:flex-start}.brand{font-size:1.1rem}.banner{padding:30px}.panel{padding:28px}.visual{height:180px}}

:root{--ink:#2b4035;--green:#315944;--pink:#829883;--peach:#ded9c8;--cream:#faf9f5;--soft:#f0eee7;--lav:#ecefe7;--line:#dedfd5}
body{background:var(--cream)}.header{background:#faf9f5f2}.brand{font-size:1.12rem;max-width:310px}.brand small{letter-spacing:.11em}.logo path:first-child{fill:#9bad91;stroke:#315944}.logo circle{fill:#e3cba5}.nav{gap:14px}.nav a{font-size:.82rem}.nav a:hover,.nav a:focus{color:var(--green);text-decoration:underline}.btn,.btn.pink{background:var(--green);border-color:var(--green);border-radius:7px}.btn.alt{background:transparent}.eyebrow{color:#617d67}.hero{background:linear-gradient(115deg,#f0f1e9,#faf9f5 60%,#e6e9df)}.hero-inner{min-height:540px}.hero-copy h1 em{font-style:normal}.art{min-height:460px}.botanical-art{height:390px;width:min(100%,470px);border-radius:48% 48% 12px 12px;background:linear-gradient(160deg,#dce6d8,#e9e3d4);display:flex;align-items:center;justify-content:center;flex-direction:column;box-shadow:20px 20px 0 #e9ece3}.botanical-circle{font:normal 15rem Georgia,serif;color:#78967c;line-height:1}.botanical-label{font:1.65rem Georgia,serif;text-align:center;color:#2b4b3b}.botanical-label span{font-size:1.1rem}.section-tint{background:#f0f1eb}.page-hero{background:linear-gradient(110deg,#e9eee6,#f7f5ee)}.card{border-radius:12px;box-shadow:none}.card a,.back{color:var(--green)}.visual{filter:saturate(.42)}.v1,.v2,.v3,.v4,.v5,.v6{background:linear-gradient(135deg,#e4e9df,#f0e8db)}.pill{background:#e8eee5;color:#47694e}.panel{background:#e7ede3;border-radius:12px}.detail{border-radius:10px}.banner{background:#315944;border-radius:12px}.banner .eyebrow{color:#e2e7d4}.footer{background:#243e32}.foot-related{font-size:.83rem;line-height:1.9;color:#e4e9e2}.foot-related a{color:#e4e9e2}@media(max-width:900px){.botanical-art{height:280px;max-width:350px}.botanical-circle{font-size:10rem}.art{min-height:330px}.nav{gap:0}}@media(max-width:580px){.brand{font-size:.95rem}.brand small{font-size:.52rem}.botanical-art{height:260px;max-width:290px}}
.page-hero .back{display:block;width:max-content;max-width:100%;margin:0 0 2.8rem 0}.page-hero .eyebrow{display:block;margin-bottom:.9rem}.page-hero h1{overflow-wrap:break-word;font-size:clamp(2.4rem,5.5vw,4.8rem)}@media(max-width:580px){.page-hero .back{margin-bottom:2.3rem}.page-hero h1{font-size:clamp(2.2rem,9vw,3.4rem)}}


/* Editorial photography for prototype; replace with licensed company photos before publication. */
.art{min-height:470px;padding:30px 0}.art .photo-img{width:100%;height:440px;object-fit:cover;border-radius:8px;box-shadow:18px 18px 0 #dfe7db}
.visual{background:#e8ebe4!important;filter:none!important}.visual .photo-img{width:100%;height:100%;object-fit:cover;display:block}
.panel>.photo-img{width:100%;height:250px;object-fit:cover;border-radius:8px;display:block;margin-bottom:20px}
.page-hero .wrap{position:relative}.subpage-photo{margin-top:34px;width:100%;max-height:340px;overflow:hidden;border-radius:10px}.subpage-photo img{display:block;width:100%;height:340px;object-fit:cover}
.photo-note{font-size:.78rem;color:#66736c}.photo-img{background:#e3e8df}
@media(max-width:900px){.art{min-height:310px;padding:0 0 30px}.art .photo-img{height:320px}.subpage-photo img{height:240px}}
@media(max-width:580px){.art .photo-img{height:250px;box-shadow:9px 9px 0 #dfe7db}.subpage-photo img{height:200px}}


.legal-links{display:flex;gap:22px;flex-wrap:wrap;margin-bottom:12px}.legal-links a{color:#fff;text-decoration:underline;text-underline-offset:4px}
.photo-img{background:#e6ece5}.page-hero .back{display:table;margin-bottom:2.5rem}


.news-list{display:grid;gap:22px;max-width:900px}.news-item{padding:28px 30px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 22px #203c3109}.news-item .news-meta{font-size:.8rem;color:#617268;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.news-item h2{font-size:clamp(1.45rem,3vw,2.1rem);margin:12px 0}.news-item p{color:#52645a}.news-item a{color:var(--green);font-weight:700;text-underline-offset:4px}.news-empty{padding:20px;border:1px solid var(--line);border-radius:12px}@media(max-width:600px){.news-item{padding:22px 18px}}


.opening-hours{margin:1.3rem 0 1.7rem;max-width:420px}.opening-hours h3{font-size:1.4rem;margin-bottom:.8rem}.hours-row{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--line)}.hours-row strong{white-space:nowrap}.footer-hours p{margin:.35rem 0;font-size:.9rem}.footer-hours strong{display:block;margin-bottom:.6rem}@media(max-width:580px){.hours-row{font-size:.94rem}}

.page{display:block!important}.page-hero{padding:64px 0 45px}.header .nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}.page-hero .back{margin-bottom:2.5rem}.news-item{margin-bottom:18px}@media(max-width:580px){.page-hero{padding:45px 0 30px}}

/* Markenoptik nach der LKW-Folierung: Anthrazit, Blattgrün und elegante Akzente. */
:root{--ink:#e9eddf;--green:#8fc72d;--cream:#101411;--soft:#1c231d;--line:#394438;--brand-dark:#0b0e0d;--brand-panel:#191e1a;--brand-muted:#b6c1ad}
body{background:#101411;color:#e9eddf}
h1,h2,h3{color:#f0f4e8;letter-spacing:-.025em}
.header{background:#0b0e0df5;border-bottom:1px solid #33422b;backdrop-filter:blur(18px)}
.brand{color:#eaf0dc}.brand small{color:#9ccd3c}.logo path:first-child{fill:#8fc72d;stroke:#a9d747}.logo circle{fill:#d6e7a0}.nav a{color:#dfe7d7}.nav a:hover,.nav a:focus,.header .nav a[aria-current="page"]{color:#a9db48;text-decoration-color:#a9db48}
.menu{color:#b7e460}
.hero{background:radial-gradient(ellipse at 82% 20%,#294125 0%,#151c16 43%,#0c100d 85%);border-bottom:1px solid #34412d}
.hero-copy h1{font-weight:500}.hero-copy h1::first-line{color:#f4f7ec}.hero-copy p,.page-hero p{color:#c4cebd}
.eyebrow{color:#a8d83c;letter-spacing:.18em}
.btn,.btn.pink{background:#95c934;border-color:#95c934;color:#0e140c;border-radius:4px}.btn:hover,.btn.pink:hover{background:#b2df55;border-color:#b2df55;color:#0e140c}
.btn.alt{background:transparent;color:#d6eab5;border-color:#759a43}.btn.alt:hover{background:#293b22;color:#fff}
.art .photo-img{border:1px solid #43583b;box-shadow:15px 15px 0 #293a22}
.section-tint{background:#1a231a}.section-head>p,.section p,.card p,.detail p,.panel p{color:#bac7b6}
.card,.detail,.feature,.news-item{background:#1a211b;border:1px solid #3a4a35;box-shadow:none;border-radius:7px}
.card a,.news-item a,.back{color:#a5d64b}.card a:hover,.back:hover{color:#d0ef8c}
.card-body h3{color:#f1f5e9}.pill{background:#2c3d23;color:#b9e36e;border-radius:3px}
.visual,.v1,.v2,.v3,.v4,.v5,.v6{background:#263427!important}
.panel{background:#263526;border:1px solid #40533a;border-radius:6px}
.banner{background:linear-gradient(105deg,#172417,#263d21);border:1px solid #58743b;border-radius:7px}
.banner .btn{background:#a5d64b;border-color:#a5d64b;color:#0b1009}.banner .eyebrow{color:#bce56d}
.page-hero{background:linear-gradient(120deg,#121b13,#233422 70%,#151d16);border-bottom:1px solid #344b30}
.page-hero h1{color:#f3f5ea}.page-hero .back{color:#b3db69}
.footer{background:#090d0a;border-top:2px solid #7ea933}.footer small,.foot-related{color:#aebcab}.footer a{color:#dce9d3}.footer a:hover{color:#b4e264}
.photo-note,.note{color:#a8b5a4}.opening-hours .hours-row{border-color:#43523c}
.field input,.field textarea,.field select{background:#f4f6f0;color:#1c271b;border-color:#72836c}
.news-item .news-meta{color:#a7d35c}.news-item p{color:#bdcbbb}
@media(max-width:900px){.nav{background:#101811;border-bottom:1px solid #3e5234}.nav a{padding:8px 0}}
@media(max-width:580px){.art .photo-img{box-shadow:8px 8px 0 #293a22}}

/* Original-Firmenlogo aus der LKW-Folierung */
.brand{flex:0 0 auto;max-width:none;display:flex;align-items:center;padding:5px 0}.brand-logo{display:block;width:110px;height:74px;object-fit:cover;object-position:center;background:#000;border:0}.head-inner{min-height:88px}.nav{gap:12px}.nav a{font-size:.79rem}@media(max-width:900px){.brand-logo{width:100px;height:67px}.nav{top:88px}}@media(max-width:580px){.brand-logo{width:92px;height:62px}}

/* Logo größer im Kopfbereich, proportional und vollständig sichtbar */
.brand-logo{width:156px;height:112px;object-fit:contain;object-position:center;background:#000}
.head-inner{min-height:124px}
@media(max-width:1100px){.brand-logo{width:130px;height:96px}.head-inner{min-height:108px}.nav{gap:9px}.nav a{font-size:.76rem}}
@media(max-width:900px){.brand-logo{width:132px;height:98px}.head-inner{min-height:110px}.nav{top:110px}}
@media(max-width:580px){.brand-logo{width:120px;height:88px}.head-inner{min-height:100px}.nav{top:100px}}
/* Original-Logo statt Platzhalterillustration auf der Startseite */
.hero .art{padding:30px 0;min-height:480px}
.hero .art .hero-brand-image{display:block;width:min(100%,540px);height:auto;max-height:570px;object-fit:contain;background:#000;border:0;border-radius:0;box-shadow:0 18px 35px #0005}
@media(max-width:900px){.hero .art{min-height:0;padding:24px 0 42px}.hero .art .hero-brand-image{width:min(100%,460px)}}

/* Portraitfotos auf Floristik-, Hochzeits- und Trauerseite vollständig zeigen */
body:has(#floristik) .subpage-photo,
body:has(#hochzeit) .subpage-photo,
body:has(#trauer) .subpage-photo {
  max-height: none; height: auto; overflow: visible;
  display: flex; justify-content: center; align-items: center;
  background: #101710; border-radius: 10px;
}
body:has(#floristik) .subpage-photo img,
body:has(#hochzeit) .subpage-photo img,
body:has(#trauer) .subpage-photo img {
  display: block; width: auto; max-width: 100%;
  height: auto; max-height: 760px; object-fit: contain;
  border-radius: 10px;
}
@media(max-width:600px) {
 body:has(#floristik) .subpage-photo img,
 body:has(#hochzeit) .subpage-photo img,
 body:has(#trauer) .subpage-photo img {max-height: 75vh;}
}

/* Beispielgalerien für Hochzeit und Trauer */
.btn-examples{display:inline-flex;margin:12px 0 0 10px}
.examples-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.example-placeholder{aspect-ratio:4/3;border:1px dashed #789a57;border-radius:12px;background:linear-gradient(145deg,#172319,#263a26);color:#dbe5d3;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;text-align:center;padding:16px}
.example-placeholder span:first-child{font-size:36px;color:#9ccd3c}
.examples-cta{margin-top:32px}
@media(max-width:800px){.examples-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.examples-grid{grid-template-columns:1fr}.btn-examples{margin-left:0}}

/* Bildflächen für Sortiment und Floristik */
.details .detail{overflow:hidden}
.category-image{margin:-1px -1px 18px;overflow:hidden;border-radius:9px 9px 0 0;background:#1b2b1d}
.category-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.details .detail h3,.details .detail p,.details .detail a{position:relative}

/* Kategorien: ursprüngliche Textkarten mit Beispielen-Link */
.category-examples-link {display:inline-block;margin-top:16px;color:#a4d642;font-weight:700;text-decoration:underline;text-underline-offset:4px;}
.category-examples-link:hover {color:#d6f29a;}
.gallery-photo {margin:0;display:flex;align-items:center;justify-content:center;background:#111a12;border:1px solid #43523a;border-radius:10px;overflow:hidden;min-height:180px;}
.gallery-photo img {width:100%;height:auto;max-height:520px;object-fit:contain;display:block;}
.gallery-empty {grid-column:1/-1;padding:32px;text-align:center;border:1px dashed #536447;border-radius:10px;color:#c5cbbf;}

/* Echte Beispielgalerien Hochzeit und Trauer */
.examples-grid .gallery-photo{display:flex;align-items:center;justify-content:center;min-width:0;min-height:220px;padding:10px;background:#151e17;border:1px solid #394638;border-radius:12px;overflow:hidden;transition:border-color .2s ease}
.examples-grid .gallery-photo:hover,.examples-grid .gallery-photo:focus-visible{border-color:#9ccd3c}
.examples-grid .gallery-photo img{display:block;width:100%;height:260px;object-fit:contain;object-position:center}
@media(max-width:650px){.examples-grid{grid-template-columns:1fr}.examples-grid .gallery-photo img{height:300px}}

/* Zusätzliche Galerie-Links auf der Startseite */
.card-body .home-gallery-link{display:block;width:fit-content;margin-top:12px;}


/* Einheitliche Vollbild-Galerie für alle Beispiel- und Raumgalerien */
.koenen-lightbox[hidden]{display:none!important}
.koenen-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(5,12,7,.97);display:grid;grid-template-columns:minmax(48px,90px) minmax(0,1fr) minmax(48px,90px);grid-template-rows:auto minmax(0,1fr);align-items:center;gap:8px;padding:16px;color:#f7f6ed}
.koenen-lightbox-open{overflow:hidden}
.koenen-lightbox-toolbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.koenen-lightbox button{font:inherit;cursor:pointer;color:#f7f6ed;border:1px solid #83b72e;background:#23331c;border-radius:9px;padding:12px 16px}
.koenen-lightbox button:hover,.koenen-lightbox button:focus-visible{background:#496a2a;outline:2px solid #c5ed72;outline-offset:2px}
.koenen-lightbox button:disabled{opacity:.3;cursor:default}
.koenen-lightbox-figure{grid-column:2;grid-row:2;min-height:0;min-width:0;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:100%}
.koenen-lightbox-figure img{display:block;max-width:100%;max-height:calc(100dvh - 155px);width:auto;height:auto;object-fit:contain;border-radius:5px}
.koenen-lightbox-figure figcaption{text-align:center;font-size:.9rem;color:#e4e9d8}
.koenen-lightbox-prev{grid-column:1;grid-row:2}
.koenen-lightbox-next{grid-column:3;grid-row:2}
.examples-grid .gallery-photo{cursor:zoom-in}
@media(max-width:600px){.koenen-lightbox{padding:10px;gap:4px;grid-template-columns:45px minmax(0,1fr) 45px}.koenen-lightbox button{padding:10px 5px}.koenen-lightbox-close{padding:10px!important}.koenen-lightbox-figure img{max-height:calc(100dvh - 160px)}}

/* Kontaktdaten im Seitenfuß */
.footer-contact { margin-top: 14px; line-height: 1.8; }
.footer-contact strong { color: inherit; }

/* Ergänzende SEO-Texte im bestehenden Seitenstil */
.seo-content{margin:0 0 2rem;max-width:900px}.seo-content h2{margin:0 0 .75rem}.seo-content p{line-height:1.75}
