/* Breakfast Time - Styles */
:root{
  --bg:#f0cfa2;          /* warm peach background */
  --bg-deeper:#b07952;   /* brown circle */
  --accent:#cc4b1f;      /* callout red/orange */
  --text:#2c2c2c;
  --muted:#5c5c5c;
  --cream:#fff7ec;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:var(--bg);
}

.canvas{
  position:relative;
  min-height:100svh;
  overflow:hidden;
}

/* Decorative dots grid */
.dot-grid{
  position:absolute;inset:auto auto auto 1rem;top:3rem;left:1rem;
  width:110px;height:110px;
  --dot:#1e1e1e; --size:10px; --gap:10px;
  background:
    radial-gradient(var(--dot) 40%,transparent 41%) 0 0/var(--size) var(--size);
  filter:contrast(120%);
  mask: radial-gradient(circle at 0 0, black 65px, transparent 66px);
  opacity:.35;
  z-index:0; pointer-events:none;
}

/* Big arcs like the flyer corners */
.big-arc{
  position:absolute;right:-18vw;bottom:-18vw;width:55vw;height:55vw;border-radius:50%;
  background:var(--bg-deeper);
  filter:saturate(0.9);
}
.big-arc.arc-2{right:auto;left:-22vw;bottom:-22vw;width:45vw;height:45vw;opacity:.2}

/* Subtle rays */
.sun-rays{position:absolute;left:52%;top:48%;width:120px;height:120px;pointer-events:none}
.sun-rays::before{content:"";position:absolute;inset:0;background:
  conic-gradient(from 0deg,#0000 0 70deg,#0003 70deg 75deg,#0000 75deg 360deg);
  -webkit-mask:radial-gradient(circle,transparent 52%,#000 53%);
  mask:radial-gradient(circle,transparent 52%,#000 53%);
  opacity:.15;transform:rotate(-25deg)
}

/* Content column */
.content{
  position:relative;z-index:2;
  max-width:760px;padding:56px 24px 120px 48px;
}

.hero .title{
  font-family:"Pacifico", cursive;
  font-size:clamp(40px,6vw,88px);
  line-height:1.05;margin:0 0 8px;
  color:#ffffff;
  text-decoration:none;
  white-space:nowrap;
}
.hero{ text-align:center; }
.brand{display:inline-flex;align-items:center;gap:16px}
.brand-logo{width:96px;height:auto;filter:drop-shadow(0 3px 6px rgba(0,0,0,.15))}
@media (max-width:640px){
  .brand{gap:10px}
  .brand-logo{width:72px}
}
.hero .subtitle{
  text-transform:uppercase;letter-spacing:.08em;font-weight:500;
  font-size:14px;line-height:1.6;margin:6px 0 28px;color:var(--muted);
  text-shadow:0 2px 8px rgba(0,0,0,.08);
}

.features .intro{margin:0 0 12px;color:var(--muted)}
.list{list-style:none;margin:0;padding:0;display:grid;gap:12px;max-width:520px}
.list li{display:flex;align-items:center;gap:12px;font-size:18px}
.icon{font-size:22px;display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--cream);box-shadow:0 1px 0 #0001,inset 0 0 0 1px #0002}

.availability{margin:28px 0 0;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.availability .badge{
  background:var(--accent);color:white;border-radius:8px;padding:14px 16px;font-weight:600;
  box-shadow:0 6px 12px rgba(204,75,31,.35);
}
.availability p{margin:0;color:#3b2a21}
.availability strong{font-weight:700}

/* Contact */
.contact{display:grid;gap:10px;margin-top:28px}
.contact-item{display:flex;align-items:center;gap:10px}
.contact-icon{font-size:20px}
.contact-text{color:inherit;text-decoration:none}
.contact a:hover{opacity:.8}

/* Right plate image */
.hero-plate{position:absolute;right:-20vw;bottom:-8vw;width:min(120vw,1000px);z-index:1;margin:0}
.hero-plate img{width:100%;height:auto;object-fit:cover;filter:drop-shadow(0 18px 22px rgba(0,0,0,.25)) saturate(1.1)}

/* Slow spin animation for the hero image */
@keyframes slow-spin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
.hero-plate img{animation:slow-spin 120s linear infinite;transform-origin:center}

/* Animations */
.reveal{opacity:0;transform:translateY(8px);transition:opacity .6s ease,transform .6s ease}
.reveal.show{opacity:1;transform:none}

/* Build Your Own section (simple list) */
.byo{margin-top:36px}
.byo h2{margin:0 0 6px;font-size:28px}
.byo-sub{margin:0 0 8px;color:#3b2a21}
.byo-sub .price{background:var(--cream);padding:2px 8px;border-radius:6px;font-weight:700;box-shadow:0 1px 0 #0001}
.byo-intro{margin:0 0 12px;color:var(--muted);font-weight:500}
.byo-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:640px}
.byo-list li{position:relative;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;overflow:hidden;
  /* Liquid glass base */
  background: linear-gradient(135deg, rgba(255,255,255,.34), rgba(255,255,255,.16));
  border:1px solid rgba(255,255,255,.45);
  box-shadow: 0 8px 24px rgba(30,30,30,.12), inset 0 1px 0 rgba(255,255,255,.35);
  backdrop-filter: blur(10px) saturate(1.2);
  -webkit-backdrop-filter: blur(10px) saturate(1.2);
}
.byo-list li::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(120px 60px at 12% 0%, rgba(255,255,255,.55), transparent 70%),
    linear-gradient(180deg, rgba(255,255,255,.08), transparent 40%);
  opacity:.9;
}
.byo-list .icon{background:rgba(255,255,255,.65);border:1px solid rgba(255,255,255,.65);box-shadow:0 1px 0 rgba(255,255,255,.4);backdrop-filter:blur(4px) saturate(1.2);-webkit-backdrop-filter:blur(4px) saturate(1.2)}

/* Responsive tweaks */
@media (max-width: 900px){
  .hero-plate{right:-42vw;bottom:-18vw;width:min(85vw,800px)}
}
@media (max-width: 640px){
  .canvas{padding-bottom:160px}
  .content{padding:32px 18px 120px 18px}
  .dot-grid{display:none}
  .big-arc{right:-34vw;bottom:-34vw}
  .byo-list{grid-template-columns:1fr}
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  *{animation:none!important;transition:none!important}
}

/* Food wheel animation */
.food-wheel{position:absolute;right:-2vw;bottom:-2vw;width:clamp(420px,48vw,720px);aspect-ratio:1/1;z-index:2;transform-origin:center center;transition:transform .8s ease}
.food-wheel img{position:absolute;top:50%;left:50%;width:clamp(80px,12vw,120px);height:clamp(80px,12vw,120px);object-fit:contain;opacity:0.7;transition:opacity .6s ease, transform .6s ease;transform-origin:center center}
.food-wheel img:nth-child(1){transform:translate(-50%,-50%) translateY(-140px) rotate(0deg)}
.food-wheel img:nth-child(2){transform:translate(-50%,-50%) translateY(-140px) rotate(60deg)}
.food-wheel img:nth-child(3){transform:translate(-50%,-50%) translateY(-140px) rotate(120deg)}
.food-wheel img:nth-child(4){transform:translate(-50%,-50%) translateY(-140px) rotate(180deg)}
.food-wheel img:nth-child(5){transform:translate(-50%,-50%) translateY(-140px) rotate(240deg)}
.food-wheel img:nth-child(6){transform:translate(-50%,-50%) translateY(-140px) rotate(300deg)}
.food-wheel img.active{opacity:1;transform:translate(-50%,-50%) translateY(-140px) scale(1.2)}
@media (max-width: 768px){.food-wheel{right:-10vw;bottom:-10vw;width:clamp(320px,55vw,480px)}.food-wheel img{width:clamp(60px,10vw,90px);height:clamp(60px,10vw,90px)}.food-wheel img:nth-child(1){transform:translate(-50%,-50%) translateY(-100px) rotate(0deg)}.food-wheel img:nth-child(2){transform:translate(-50%,-50%) translateY(-100px) rotate(60deg)}.food-wheel img:nth-child(3){transform:translate(-50%,-50%) translateY(-100px) rotate(120deg)}.food-wheel img:nth-child(4){transform:translate(-50%,-50%) translateY(-100px) rotate(180deg)}.food-wheel img:nth-child(5){transform:translate(-50%,-50%) translateY(-100px) rotate(240deg)}.food-wheel img:nth-child(6){transform:translate(-50%,-50%) translateY(-100px) rotate(300deg)}.food-wheel img.active{transform:translate(-50%,-50%) translateY(-100px) scale(1.2)}}
@media (max-width: 480px){.food-wheel{display:none}}

/* Additional responsive enhancements */
@media (max-width: 1024px){
  .content{padding:48px 24px 120px 32px}
  .hero-plate{right:-36vw;bottom:-14vw;width:min(72vw,780px)}
}
@media (max-width: 768px){
  .content{padding:40px 20px 140px 20px}
  .hero-plate{right:-45vw;bottom:-24vw;width:min(90vw,680px)}
  .byo-list{grid-template-columns:1fr}
}
@media (max-width: 480px){
  .hero-plate{right:-55vw;bottom:-32vw;width:min(110vw,580px)}
  .dot-grid, .sun-rays, .big-arc.arc-2{display:none}
}

/* Larger screens: scale the dish up */
@media (min-width: 1200px){
  .hero-plate{right:-25vw;bottom:-6vw;width:clamp(900px, 68vw, 1200px)}
}
@media (min-width: 1600px){
  .hero-plate{right:-20vw;bottom:-4vw;width:clamp(1100px, 65vw, 1500px)}
}
