/* FuelHope Bäckerei & Konditorei — Hamburg. Prefix: bk- */
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@600;700&family=Fraunces:ital,opsz,wght@0,9..144,500;0,9..144,600;1,9..144,500&family=Nunito+Sans:wght@400;600;700&display=swap');
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --bk-cream:#fbf3e6;
  --bk-cream2:#f5e8d3;
  --bk-brown:#7a4a23;
  --bk-brown-d:#5a3517;
  --bk-caramel:#c98a3f;
  --bk-rose:#e7b9a0;
  --bk-text:#4a3825;
}
html{scroll-behavior:smooth}
body{font-family:'Nunito Sans',sans-serif;background:var(--bk-cream);color:var(--bk-text);line-height:1.75}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:'Fraunces',serif}
.bk-script{font-family:'Caveat',cursive}
.bk-wrap{max-width:1150px;margin:0 auto;padding:0 26px}

/* Header */
.bk-head{position:sticky;top:0;z-index:60;background:var(--bk-cream);border-bottom:2px solid var(--bk-cream2)}
.bk-head-in{display:flex;align-items:center;justify-content:space-between;height:82px}
.bk-brand{display:flex;align-items:center;gap:10px}
.bk-brand .bk-em{font-size:1.8rem}
.bk-brand b{font-family:'Fraunces';font-size:1.6rem;color:var(--bk-brown-d)}
.bk-brand span{font-family:'Caveat';font-size:1.05rem;color:var(--bk-caramel);display:block;margin-top:-8px}
.bk-menu{display:flex;gap:30px;list-style:none}
.bk-menu a{font-weight:700;font-size:.95rem;color:var(--bk-brown);transition:.2s;position:relative}
.bk-menu a:hover,.bk-menu a.act{color:var(--bk-caramel)}
.bk-menu a.act::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:3px;background:var(--bk-caramel);border-radius:3px}
.bk-mb{display:none;background:none;border:0;font-size:1.7rem;cursor:pointer;color:var(--bk-brown)}

/* Hero asymmetric */
.bk-hero{position:relative;padding:70px 0 90px;overflow:hidden}
.bk-hero-in{display:grid;grid-template-columns:1fr 1.05fr;gap:40px;align-items:center}
.bk-hero .bk-script{font-size:2rem;color:var(--bk-caramel)}
.bk-hero h1{font-size:3.6rem;line-height:1.05;color:var(--bk-brown-d);margin:6px 0 18px}
.bk-hero p{font-size:1.12rem;max-width:480px;margin-bottom:30px}
.bk-hero-img{position:relative}
.bk-hero-img img{border-radius:50% 50% 50% 50%/60% 60% 40% 40%;width:100%;height:480px;object-fit:cover;box-shadow:0 24px 50px rgba(122,74,35,.25)}
.bk-blob{position:absolute;width:120px;height:120px;background:var(--bk-rose);border-radius:46% 54% 60% 40%/52% 48% 52% 48%;top:-20px;right:10px;z-index:-1;opacity:.6}

.bk-btn{display:inline-block;background:var(--bk-brown);color:var(--bk-cream);padding:15px 36px;border-radius:40px;font-weight:700;transition:.25s;border:0;cursor:pointer;font-size:1rem}
.bk-btn:hover{background:var(--bk-brown-d);transform:translateY(-2px)}
.bk-btn.alt{background:transparent;color:var(--bk-brown);border:2px solid var(--bk-brown);margin-left:10px}
.bk-btn.alt:hover{background:var(--bk-brown);color:var(--bk-cream)}

/* Sections */
.bk-sec{padding:84px 0}
.bk-sec.warm{background:var(--bk-cream2)}
.bk-sec.choc{background:var(--bk-brown-d);color:var(--bk-cream)}
.bk-sh{text-align:center;max-width:620px;margin:0 auto 52px}
.bk-sh .bk-script{font-size:1.9rem;color:var(--bk-caramel)}
.bk-sh h2{font-size:2.6rem;color:var(--bk-brown-d);margin:4px 0 12px}
.bk-sec.choc .bk-sh h2{color:#fff}
.bk-sh p{opacity:.85}

/* Product cards */
.bk-prods{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.bk-prod{background:var(--bk-cream);border-radius:24px;overflow:hidden;box-shadow:0 10px 30px rgba(122,74,35,.1);transition:.3s}
.bk-prod:hover{transform:translateY(-8px);box-shadow:0 20px 44px rgba(122,74,35,.18)}
.bk-prod img{height:220px;width:100%;object-fit:cover}
.bk-prod .bk-pi{padding:24px}
.bk-prod h3{font-size:1.4rem;color:var(--bk-brown-d);margin-bottom:8px}
.bk-prod p{font-size:.95rem;margin-bottom:12px}
.bk-prod .bk-price{font-family:'Fraunces';font-weight:600;color:var(--bk-caramel);font-size:1.2rem}

/* Split */
.bk-split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.bk-split img{border-radius:24px;height:430px;object-fit:cover;width:100%}
.bk-split .bk-script{font-size:1.8rem;color:var(--bk-caramel)}
.bk-split h2{font-size:2.3rem;color:var(--bk-brown-d);margin:4px 0 16px}
.bk-sec.choc .bk-split h2{color:#fff}
.bk-split p{margin-bottom:14px}
.bk-dots{list-style:none;margin-top:18px}
.bk-dots li{padding:9px 0 9px 32px;position:relative;font-weight:600}
.bk-dots li::before{content:"🥐";position:absolute;left:0}

/* Process steps */
.bk-proc{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;text-align:center}
.bk-pstep .bk-pn{font-family:'Caveat';font-size:3rem;color:var(--bk-caramel);font-weight:700}
.bk-pstep h4{font-family:'Fraunces';font-size:1.25rem;margin:4px 0 8px}
.bk-pstep p{font-size:.9rem;opacity:.85}

/* Stats */
.bk-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.bk-stat b{display:block;font-family:'Fraunces';font-size:2.8rem;color:var(--bk-caramel)}
.bk-stat span{font-size:.92rem;opacity:.85}

/* Contact */
.bk-cg{display:grid;grid-template-columns:1fr 1fr;gap:46px}
.bk-icard{background:var(--bk-cream2);border-radius:20px;padding:24px;margin-bottom:18px;display:flex;gap:16px;align-items:flex-start}
.bk-icard .bk-ie{font-size:1.7rem}
.bk-icard h4{font-family:'Fraunces';color:var(--bk-brown-d);font-size:1.15rem;margin-bottom:4px}
.bk-icard a:hover{color:var(--bk-caramel)}
.bk-form label{display:block;font-weight:700;color:var(--bk-brown);margin:14px 0 5px}
.bk-form input,.bk-form textarea{width:100%;padding:13px 16px;border:2px solid var(--bk-cream2);border-radius:14px;font-family:inherit;font-size:.96rem;background:#fff}
.bk-form input:focus,.bk-form textarea:focus{outline:0;border-color:var(--bk-caramel)}
.bk-form textarea{min-height:120px;resize:vertical}
.bk-map{margin-top:36px;border-radius:20px;overflow:hidden;box-shadow:0 12px 30px rgba(122,74,35,.14)}
.bk-map iframe{width:100%;height:300px;border:0;display:block}

/* Legal */
.bk-legal{max-width:800px;margin:0 auto}
.bk-legal h1{font-size:2.8rem;color:var(--bk-brown-d);margin-bottom:6px}
.bk-legal .bk-upd{color:#9a8468;margin-bottom:30px}
.bk-legal h2{font-size:1.5rem;color:var(--bk-caramel);margin:28px 0 12px}
.bk-legal p,.bk-legal li{margin-bottom:10px}
.bk-legal ul{padding-left:22px}

/* Footer */
.bk-ft{background:var(--bk-brown-d);color:#e8d4bd;padding:58px 0 24px}
.bk-fg{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:34px}
.bk-ft h5{font-family:'Fraunces';color:#fff;font-size:1.2rem;margin-bottom:14px}
.bk-ft a{display:block;padding:5px 0;color:#d6bfa3}
.bk-ft a:hover{color:var(--bk-rose)}
.bk-fb{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;text-align:center;font-size:.85rem;color:#b39a7c}

/* Cookie */
.bk-ck{position:fixed;bottom:20px;right:20px;width:calc(100% - 40px);max-width:440px;background:#fff;border-radius:22px;box-shadow:0 22px 50px rgba(90,53,23,.25);padding:26px;z-index:200;display:none;border:2px solid var(--bk-cream2)}
.bk-ck.show{display:block}
.bk-ck h4{font-family:'Fraunces';color:var(--bk-brown-d);font-size:1.3rem;margin-bottom:8px}
.bk-ck p{font-size:.9rem;margin-bottom:14px}
.bk-ck-o{margin:10px 0}
.bk-ck-o label{display:flex;gap:10px;align-items:center;padding:5px 0;font-size:.9rem}
.bk-ck-o input{width:auto}
.bk-ck-b{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.bk-ck-b button{flex:1;min-width:115px;padding:12px;border-radius:40px;border:0;font-weight:700;cursor:pointer;font-size:.9rem}
.bk-ck-y{background:var(--bk-brown);color:#fff}
.bk-ck-m{background:var(--bk-cream2);color:var(--bk-brown-d)}
.bk-ck-n{background:transparent;border:1px solid var(--bk-cream2)!important;color:var(--bk-brown)}

@media(max-width:900px){
  .bk-hero-in,.bk-prods,.bk-split,.bk-proc,.bk-stats,.bk-cg,.bk-fg{grid-template-columns:1fr}
  .bk-proc,.bk-stats{grid-template-columns:1fr 1fr}
  .bk-hero h1{font-size:2.5rem}
  .bk-menu{display:none;position:absolute;top:82px;left:0;right:0;flex-direction:column;background:var(--bk-cream);padding:18px 26px;gap:14px;border-bottom:2px solid var(--bk-cream2)}
  .bk-menu.open{display:flex}
  .bk-mb{display:block}
  .bk-head{position:relative}
}
