*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  background:#050807;
  color:#fff4d7;
}
.hero{
  min-height:760px;
  position:relative;
  background:
    linear-gradient(90deg,rgba(0,0,0,.35),rgba(0,0,0,.05),rgba(0,0,0,.35)),
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.18)),
    url("assets/hero-toba-donna.png") center/cover no-repeat;
  border-bottom:2px solid #b27a1d;
}
.nav{
  max-width:1250px;
  margin:auto;
  padding:24px 28px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  position:relative;
  z-index:2;
}
.logo img{
  width:210px;
  height:auto;
  display:block;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.70));
  transition:all .3s ease;
}
.hero-overlay{
  max-width:760px;
  margin:95px auto 0;
  text-align:center;
  position:relative;
  z-index:2;
  padding:0 24px;
  text-shadow:0 4px 14px #000;
}
.hero h2{
  text-transform:uppercase;
  font-size:clamp(24px,3vw,34px);
  letter-spacing:1px;
  color:#fff0cf;
  margin:0 0 14px;
}
.hero-text{
  font-size:20px;
  line-height:1.6;
  max-width:600px;
  margin:0 auto 25px;
}
.info-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  border-top:1px solid #b27a1d;
  border-bottom:1px solid #b27a1d;
  background:linear-gradient(180deg,#10130d,#070907);
}
.panel{
  padding:36px 34px;
  min-height:300px;
  border-right:1px solid rgba(214,162,46,.55);
}
.panel h3{
  color:#d6a22e;
  text-transform:uppercase;
  font-size:22px;
  margin:0 0 18px;
  text-align:center;
}
.panel p,.dish span,.agenda span{
  color:#ead7ad;
  line-height:1.55;
}
.thumb{
  height:130px;
  border-radius:16px;
  background:url("assets/hero-toba-donna.png") left center/cover no-repeat;
  margin-bottom:20px;
  border:1px solid rgba(214,162,46,.6);
}
.mini-btn,.menu-btn{
  display:inline-block;
  background:linear-gradient(180deg,#c61912,#7b0805);
  color:#fff;
  text-decoration:none;
  text-transform:uppercase;
  font-weight:800;
  letter-spacing:.6px;
  border-radius:15px;
  padding:14px 24px;
  margin-top:16px;
  box-shadow:0 8px 22px rgba(0,0,0,.35);
}
.mini-btn:hover,.menu-btn:hover{
  background:linear-gradient(180deg,#e3261f,#980b08);
  transform:translateY(-3px);
}
.dish{
  display:grid;
  grid-template-columns:1fr;
  gap:4px;
  padding:10px 0 13px;
  border-bottom:1px solid rgba(214,162,46,.25);
}
.dish b{
  color:#d6a22e;
  text-transform:uppercase;
}
.loyalty-card{
  background:
    linear-gradient(180deg,rgba(124,15,18,.94),rgba(42,5,7,.98)),
    radial-gradient(circle at top right,rgba(214,162,46,.35),transparent 45%);
  border:2px solid #d6a22e;
  box-shadow:0 0 30px rgba(214,162,46,.22);
}
.loyalty-card h3{
  color:#ffd76a;
}
.loyalty-icon{
  width:78px;
  height:78px;
  margin:0 auto 22px;
  border-radius:50%;
  background:linear-gradient(180deg,#ffd76a,#d6a22e);
  color:#111;
  display:grid;
  place-items:center;
  font-size:40px;
  line-height:1;
  box-shadow:0 10px 28px rgba(0,0,0,.40);
}
.loyalty-intro{
  text-align:center;
  color:#fff4d7;
  font-size:17px;
  line-height:1.6;
  margin:0 0 22px;
}
.loyalty-benefits{
  display:grid;
  gap:10px;
  margin:22px 0 28px;
}
.loyalty-benefits div{
  background:rgba(0,0,0,.22);
  border:1px solid rgba(255,215,106,.24);
  border-radius:10px;
  color:#fff4d7;
  padding:11px 12px;
  line-height:1.35;
}
.loyalty-benefits div::before{
  content:"✓ ";
  color:#ffd76a;
  font-weight:900;
}
.klantenkaart-btn{
  display:block;
  width:100%;
  padding:15px 18px;
  border-radius:15px;
  background:linear-gradient(180deg,#c61912,#7b0805);
  color:#fff;
  text-align:center;
  text-decoration:none;
  text-transform:uppercase;
  font-weight:900;
  letter-spacing:.5px;
  box-shadow:0 8px 22px rgba(0,0,0,.35);
  transition:all .30s ease;
}
.klantenkaart-btn:hover{
  background:linear-gradient(180deg,#e3261f,#980b08);
  transform:translateY(-3px);
}
.agenda{
  margin-top:22px;
  display:grid;
  gap:12px;
}
.agenda div{
  background:rgba(214,162,46,.1);
  border:1px solid rgba(214,162,46,.35);
  border-radius:12px;
  padding:13px;
}
.agenda strong{
  display:block;
  color:#fff;
}
.agenda a{
  color:#ff2b2b;
  font-weight:800;
  text-decoration:none;
}
.agenda a:hover{
  color:#ff5c5c;
  text-decoration:underline;
}
.socials{
  display:flex;
  justify-content:center;
  gap:20px;
  margin:30px 0;
}
.socials span{
  width:58px;
  height:58px;
  border:3px solid #d6a22e;
  color:#d6a22e;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:34px;
  font-weight:900;
}
.handle{
  text-align:center;
  color:#d6a22e!important;
  font-weight:800;
}
.seo-local{
  max-width:1100px;
  margin:0 auto;
  padding:55px 30px;
  text-align:center;
  color:#f6e3b5;
}
.seo-local h2{
  color:#d6a22e;
  font-size:32px;
}
.seo-local p{
  font-size:19px;
  line-height:1.7;
}
footer{
  display:flex;
  justify-content:center;
  gap:44px;
  flex-wrap:wrap;
  padding:26px 24px;
  background:#0a0d0a;
  border-top:2px solid #b27a1d;
}
.footer-item{
  display:flex;
  align-items:center;
  gap:14px;
  color:#d6a22e;
  font-size:24px;
}
.footer-item a{
  color:#d6a22e;
  text-decoration:none;
  font-weight:700;
}
.footer-item span{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#d6a22e;
  color:#10130d;
  display:grid;
  place-items:center;
  font-weight:900;
}
@media(max-width:1200px){
  .info-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:1800px){
  .logo img{width:220px;}
}
@media(max-width:1200px){
  .logo img{width:190px;}
  .info-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .logo img{width:170px;}
}
@media(max-width:700px){
min-height:680px;background-position:center}
  .nav{justify-content:center;padding:20px 18px}
  .logo img{width:270px}
  .hero-overlay{margin-top:80px}
  .info-grid{grid-template-columns:1fr}
  .panel{border-right:0;border-bottom:1px solid rgba(214,162,46,.55)}
  footer{display:block;text-align:left}
  .footer-item{margin:14px 0;font-size:20px}
}
