.season-lebkuchen-line{
background:
radial-gradient(ellipse 70% 46% at 92% 8%, rgba(196,120,70,.16), transparent 58%),
radial-gradient(ellipse 55% 40% at 6% 88%, rgba(138,90,50,.1), transparent 52%),
#f4ebe0;
}
.lebkuchen-hero,
.lebkuchen-panel{scroll-margin-top:96px}
.lebkuchen-hero--collage{
display:grid;
grid-template-columns:minmax(280px,0.85fr) minmax(320px,1.15fr);
gap:36px;
align-items:stretch;
max-width:1240px;
margin:0 auto;
padding:44px 24px 4px;
}
.lebkuchen-hero-copy{
display:flex;
flex-direction:column;
padding:18px 0 8px;
min-height:100%;
}
.lebkuchen-hero-copy .home-kicker{
color:#8a5a32;
margin-bottom:16px;
}
.lebkuchen-hero-copy h1{
font-family:'Cormorant Garamond',Georgia,serif;
font-size:clamp(2.25rem,4.6vw,3.7rem);
font-weight:500;
line-height:1.02;
letter-spacing:-.03em;
margin:0 0 22px;
color:var(--ink);
}
.lebkuchen-hero-copy h1 em{font-style:italic;color:#a4552f}
.lebkuchen-hero-pull{
font:italic 500 1.28rem/1.5 'Cormorant Garamond',Georgia,serif;
color:var(--ink);
max-width:46ch;
margin:0 0 16px;
}
.lebkuchen-hero-copy .lebkuchen-copy{
font-size:1.02rem;
line-height:1.7;
color:var(--ink-soft);
max-width:40ch;
margin:0 0 12px;
}
.lebkuchen-hero-note{
margin:2px 0 0;
font:500 .95rem 'Inter',sans-serif;
line-height:1.55;
color:#8a5a32;
}
.lebkuchen-hero-copy .home-hero-ctas{margin-top:8px}
.lebkuchen-collage{
display:grid;
grid-template-columns:1.25fr .85fr;
grid-template-rows:0.95fr 0.85fr 1.45fr;
grid-template-areas:
"wrap candle"
"wrap workshop"
"gift gift";
gap:12px;
min-height:0;
height:min(74vh,680px);
padding:6px 4px 10px;
}
.lebkuchen-collage__item{
margin:0;
overflow:hidden;
border-radius:20px;
background:#e8dccb;
box-shadow:0 14px 32px rgba(80,40,16,.12);
}
.lebkuchen-collage__item img{
width:100%;
height:100%;
object-fit:cover;
display:block;
}
.lebkuchen-collage__item--wrap{grid-area:wrap}
.lebkuchen-collage__item--candle{grid-area:candle;transform:rotate(1.4deg)}
.lebkuchen-collage__item--workshop{grid-area:workshop;transform:rotate(-1.2deg)}
.lebkuchen-collage__item--gift{grid-area:gift}
.lebkuchen-collage__item--wrap img{object-position:50% 62%}
.lebkuchen-collage__item--candle img{object-position:50% 48%}
.lebkuchen-collage__item--workshop img{object-position:50% 28%}
.lebkuchen-collage__item--gift img{object-position:50% 42%}
.lebkuchen-motto{
margin:auto 0 0;
padding:28px 0 4px;
max-width:22ch;
text-align:left;
font:italic 500 clamp(1.45rem,2.2vw,2rem)/1.2 'Cormorant Garamond',Georgia,serif;
color:var(--ink);
}
.lebkuchen-motto em{color:#a4552f}
.lebkuchen-section-sub{
margin:8px 0 0;
font:500 1.1rem 'Cormorant Garamond',Georgia,serif;
font-style:italic;
color:var(--ink-soft);
}
.lebkuchen-copy{margin:0 0 14px;color:var(--ink-soft);line-height:1.65}
.lebkuchen-lead{
margin:0 0 8px;
font:600 .95rem 'Inter',sans-serif;
color:var(--ink);
line-height:1.5;
}
.season-lebkuchen-line .home-kicker--ink{color:#8a5a32}
.lebkuchen-split{padding:18px 0 88px}
.lebkuchen-split-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:22px;
align-items:start;
max-width:1240px;
margin:0 auto;
padding:0 24px;
}
.lebkuchen-panel{
background:#fffaf4;
border:1px solid rgba(138,90,50,.12);
border-radius:24px;
padding:30px 28px 28px;
display:flex;
flex-direction:column;
box-shadow:0 18px 40px rgba(80,40,16,.07);
}
.lebkuchen-panel-head .home-kicker{margin-bottom:10px}
.lebkuchen-panel-head h2{
font-family:'Cormorant Garamond',Georgia,serif;
font-size:clamp(1.9rem,3vw,2.5rem);
font-weight:500;
line-height:1.08;
margin:0;
}
.lebkuchen-points{
list-style:none;
margin:8px 0 18px;
padding:0;
}
.lebkuchen-points li{
padding:14px 0 14px 18px;
border-top:1px solid var(--line);
position:relative;
}
.lebkuchen-points li:last-child{border-bottom:1px solid var(--line)}
.lebkuchen-points li::before{
content:"";
position:absolute;
left:0;
top:22px;
width:7px;
height:7px;
border-radius:99px;
background:#8a5a32;
}
.lebkuchen-points strong{
display:block;
margin:0 0 4px;
font:700 .9rem 'Inter',sans-serif;
color:var(--ink);
}
.lebkuchen-points span{color:var(--ink-soft);font-size:.92rem;line-height:1.55}
.lebkuchen-actions{
display:flex;
flex-direction:column;
align-items:flex-start;
gap:12px;
margin-top:22px;
}
.lebkuchen-actions .btn{justify-content:center}
.lebkuchen-actions__link{
font:600 .88rem 'Inter',sans-serif;
color:var(--ink-soft);
text-decoration:underline;
text-decoration-color:rgba(34,56,44,.25);
text-underline-offset:4px;
}
.lebkuchen-actions__link:hover{color:var(--terra);text-decoration-color:var(--terra)}
.lebkuchen-inline-link{
margin-left:6px;
font-weight:600;
text-decoration:underline;
text-underline-offset:3px;
}
body.lebkuchen-modal-open{overflow:hidden}
.lebkuchen-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}
.lebkuchen-modal[hidden]{display:none}
.lebkuchen-modal-overlay{position:absolute;inset:0;background:rgba(34,56,44,.55);backdrop-filter:blur(3px)}
.lebkuchen-modal-box{
position:relative;
z-index:1;
width:min(760px,100%);
max-height:min(92vh,880px);
overflow:auto;
background:#fff;
border-radius:22px;
padding:32px 28px 28px;
box-shadow:0 18px 48px rgba(34,56,44,.22);
}
.lebkuchen-modal-box > .home-kicker{margin-bottom:8px}
.lebkuchen-modal-box > h2{
font-family:'Cormorant Garamond',Georgia,serif;
font-size:clamp(1.8rem,3vw,2.4rem);
font-weight:500;
line-height:1.1;
margin:0 0 18px;
}
.lebkuchen-modal-close{
position:absolute;
top:12px;
right:12px;
width:36px;
height:36px;
border:none;
background:var(--cream);
border-radius:99px;
font-size:1.5rem;
line-height:1;
cursor:pointer;
color:var(--ink-soft);
}
.lebkuchen-modal-close:hover{background:var(--line);color:var(--ink)}
.lebkuchen-modal .lebkuchen-form{
background:transparent;
border:none;
border-radius:0;
padding:0;
}
.lebkuchen-form{
background:#fff;
border:1px solid var(--line);
border-radius:22px;
padding:28px 26px 26px;
}
.lebkuchen-form-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:16px;
}
.lebkuchen-form-span{grid-column:1 / -1}
.lebkuchen-form-grid > p{
display:grid;
gap:6px;
margin:0;
}
.lebkuchen-modal[data-kind="privat"] .lebkuchen-field-firma{
display:none !important;
}
.lebkuchen-form label{
display:block;
font:600 .86rem 'Inter',sans-serif;
color:var(--ink);
white-space:nowrap;
}
.lebkuchen-form input:not([type=checkbox]):not([type=hidden]),
.lebkuchen-form textarea{
width:100%;
box-sizing:border-box;
border:1px solid var(--line);
border-radius:10px;
background:#fff;
color:var(--ink);
font:400 .95rem 'Inter',sans-serif;
padding:12px 14px;
}
.lebkuchen-form textarea{resize:vertical}
.lebkuchen-form input:focus,
.lebkuchen-form textarea:focus{border-color:var(--gold);outline:none}
.lebkuchen-hp,
.lebkuchen-form .screen-reader-text{
position:absolute;
width:1px;
height:1px;
overflow:hidden;
clip:rect(0,0,0,0);
}
.lebkuchen-form-items{margin:22px 0 8px}
.lebkuchen-form-items h3{
font-family:'Cormorant Garamond',Georgia,serif;
font-size:1.6rem;
font-weight:500;
margin:0 0 12px;
}
.lebkuchen-form-items table{width:100%;border-collapse:collapse}
.lebkuchen-form-items th,
.lebkuchen-form-items td{
text-align:left;
padding:12px 8px;
border-bottom:1px solid var(--line);
vertical-align:middle;
}
.lebkuchen-form-items th{
font:700 .72rem 'Inter',sans-serif;
letter-spacing:.08em;
text-transform:uppercase;
color:var(--ink-soft);
}
.lebkuchen-form-items td:nth-child(2){white-space:nowrap;color:var(--ink-soft)}
.lebkuchen-form-items td:nth-child(3){width:96px}
.lebkuchen-qty input{
width:76px;
text-align:center;
}
.lebkuchen-privacy{
margin:18px 0 20px !important;
max-width:62ch;
}
.lebkuchen-privacy label{
display:flex;
gap:10px;
align-items:flex-start;
font-weight:400;
font-size:.82rem;
line-height:1.55;
color:var(--ink-soft);
}
.lebkuchen-privacy input{margin-top:3px}
.lebkuchen-privacy a{text-decoration:underline}
.lebkuchen-form-msg{
border-radius:14px;
padding:14px 16px;
margin:0 0 18px;
font-size:.95rem;
}
.lebkuchen-form-msg--ok{background:#eef5ee;color:#22382c}
.lebkuchen-form-msg--err{background:#f8ebe6;color:#7a3318}
@media(max-width:900px){
.lebkuchen-hero--collage{
grid-template-columns:1fr;
padding:20px 16px 8px;
gap:22px;
}
.lebkuchen-hero-copy{order:2;padding:4px}
.lebkuchen-collage{
order:1;
height:min(62vh,540px);
grid-template-rows:0.9fr 0.8fr 1.35fr;
gap:8px;
}
.lebkuchen-hero-copy .lebkuchen-copy,
.lebkuchen-hero-pull{max-width:none}
.lebkuchen-motto{margin-top:22px;padding:0;max-width:22ch}
.lebkuchen-split-grid{grid-template-columns:1fr;padding:0 16px}
.lebkuchen-form-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
.lebkuchen-collage{
height:440px;
grid-template-rows:0.95fr 0.8fr 1.35fr;
}
.lebkuchen-collage__item{border-radius:14px}
.lebkuchen-hero-copy h1{font-size:2.05rem}
.lebkuchen-modal{padding:10px}
.lebkuchen-modal-box{padding:28px 16px 20px}
.lebkuchen-form{padding:20px 16px}
.lebkuchen-form-items td:nth-child(2){display:none}
.lebkuchen-panel{padding:22px 18px}
}