
:root{
  --bg:#faf7f2;
  --muted:#6b5b47;
  --accent:#d4622d;
  --accent-2:#f4b382;
  --accent-dark:#a0471f;
  --card-bg:#fff9f5;
  --warm-bg:#f9f4ee;
  --max:1100px;
}

*{box-sizing:border-box}
body{font-family:Inter,system-ui,Arial,Helvetica,sans-serif;margin:0;color:#222;background:linear-gradient(135deg, #faf7f2 0%, #f5ede5 50%, #f9f4ee 100%);background-attachment:fixed;line-height:1.6}
h1,h2,h3,h4{font-family:'Playfair Display',serif;color:var(--accent-dark);margin:0}
.container{max-width:var(--max);margin:0 auto;padding:2rem}
.site-header{background:linear-gradient(135deg, rgba(255,249,245,0.95) 0%, rgba(250,247,242,0.98) 100%);padding:1rem 0;backdrop-filter:blur(10px);border-bottom:1px solid rgba(212,98,45,0.08)}
.header-inner{display:flex;align-items:center;justify-content:space-between}
.brand{font-weight:700;margin:0;font-family:'Playfair Display',serif;font-size:1.6rem;color:var(--accent-dark)}
.nav a{margin-left:1rem;color:#333;text-decoration:none;font-weight:600}
.nav a.cta{background:var(--accent);color:#fff;padding:.45rem .7rem;border-radius:6px}

.brand-left{display:flex;align-items:center;gap:.75rem}
.brand{display:flex;align-items:center;gap:.75rem}
.logo-link{display:inline-flex}
.header-logo{height:88px;width:auto;border-radius:10px;object-fit:cover;box-shadow:0 8px 26px rgba(0,0,0,0.09)}
.brand .logo{height:56px;width:auto;border-radius:8px;object-fit:cover;box-shadow:0 6px 18px rgba(0,0,0,0.06)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.brand-text{font-family:'Playfair Display',serif;font-size:1.6rem;color:var(--accent-dark);font-weight:700;line-height:1}
.brand-text{letter-spacing:0.4px}

.hero{background:linear-gradient(135deg, rgba(212,98,45,0.08) 0%, rgba(244,179,130,0.06) 50%, rgba(212,98,45,0.04) 100%), url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="%23d4622d" opacity="0.1"/><circle cx="80" cy="80" r="1.5" fill="%23f4b382" opacity="0.15"/><circle cx="60" cy="30" r="1" fill="%23a0471f" opacity="0.1"/></svg>');background-size:cover, 200px 200px;padding:6rem 0;border-bottom:1px solid rgba(0,0,0,0.02);position:relative}
.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at center, rgba(212,98,45,0.02), transparent 70%);pointer-events:none}
.hero-inner{display:flex;flex-direction:column;gap:1.5rem;align-items:flex-start;position:relative}
.hero h2{font-size:2.8rem;line-height:1.1;color:var(--accent-dark)}
.hero p{max-width:60ch;color:var(--muted);font-size:1.1rem;line-height:1.7}

.btn{display:inline-block;padding:.6rem 1rem;border-radius:8px;border:1px solid rgba(0,0,0,0.06);background:linear-gradient(135deg, #fff 0%, #fefefe 100%);cursor:pointer;font-weight:600;transition:all .2s ease;box-shadow:0 2px 6px rgba(0,0,0,0.05)}
.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,0.1)}
.btn.primary{background:linear-gradient(135deg, var(--accent) 0%, #e67030 100%);color:#fff;border-color:transparent;box-shadow:0 6px 18px rgba(196,75,41,0.12)}
.btn.primary:hover{background:linear-gradient(135deg, #e67030 0%, var(--accent) 100%);box-shadow:0 8px 24px rgba(196,75,41,0.2);transform:translateY(-2px)}

.section{padding:3rem 0}
.alt{background:linear-gradient(45deg, rgba(249,244,238,0.7) 0%, rgba(255,249,245,0.9) 100%), url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60"><circle cx="30" cy="30" r="1" fill="%23d4622d" opacity="0.05"/><circle cx="10" cy="10" r="0.5" fill="%23f4b382" opacity="0.08"/><circle cx="50" cy="50" r="0.8" fill="%23a0471f" opacity="0.06"/></svg>');background-size:auto, 120px 120px}
#menu{background:linear-gradient(135deg, rgba(255,249,245,0.8) 0%, rgba(250,247,242,1) 50%, rgba(244,179,130,0.05) 100%), url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80"><path d="M40,10 Q50,20 40,30 Q30,20 40,10" fill="%23d4622d" opacity="0.03"/><path d="M20,50 Q30,60 20,70 Q10,60 20,50" fill="%23f4b382" opacity="0.04"/></svg>');background-size:auto, 150px 150px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}
.card{padding:1.25rem;border-radius:12px;background:linear-gradient(135deg, #fff9f5 0%, #ffffff 100%);box-shadow:0 8px 18px rgba(0,0,0,0.05), 0 2px 6px rgba(212,98,45,0.08);transition:transform .18s ease,box-shadow .18s ease;border:1px solid rgba(212,98,45,0.06)}
.card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,0.08), 0 8px 24px rgba(212,98,45,0.15);border-color:rgba(212,98,45,0.12)}
.card h4{margin-bottom:.5rem}

.menu-item{display:flex;flex-direction:column;gap:1rem;position:relative;overflow:hidden}
.menu-img{width:100%;height:200px;object-fit:cover;border-radius:8px;transition:transform .3s ease;filter:brightness(1.05) contrast(1.1)}
.menu-img:hover{transform:scale(1.05)}
.menu-content{position:relative;z-index:2}
.menu-content h4{margin-bottom:.5rem;color:var(--accent-dark);text-shadow:0 1px 2px rgba(0,0,0,0.05)}
.menu-content p{margin:0;color:var(--muted);line-height:1.6}

/* Section Headers */
.section-header{margin-bottom:2rem;text-align:center}
.section-header h3{margin-bottom:0.5rem}

/* Hero Section */
.hero-description{max-width:60ch;color:var(--muted);font-size:1.1rem;line-height:1.7}

/* Contact Section */
.contact-info{margin-bottom:2rem}
.contact-method{font-weight:600;color:var(--accent-dark);margin-right:0.5rem}
.contact-hours{margin-top:1rem}
.services-list{columns:2;gap:1rem;margin:0;padding:0;list-style:none}

.gallery-grid img.gallery-img{width:100%;height:180px;object-fit:cover;border-radius:12px;box-shadow:0 8px 22px rgba(0,0,0,0.06);display:block}


.lead{font-weight:600;color:var(--accent-dark)}
.contact-block{display:block;text-align:left}
.contact-list{list-style:none;padding:0;margin:.5rem 0 1rem}
.contact-list li{padding:.4rem 0}
.contact-ctas{display:flex;gap:.75rem;margin-top:1rem}
.muted{color:var(--muted)}

.contact{background:linear-gradient(135deg, rgba(212,98,45,0.06) 0%, rgba(244,179,130,0.08) 50%, rgba(160,71,31,0.04) 100%), url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><path d=\"M50,10 C60,20 60,30 50,40 C40,30 40,20 50,10\" fill=\"%23d4622d\" opacity=\"0.02\"/><circle cx=\"20\" cy=\"70\" r=\"3\" fill=\"%23f4b382\" opacity=\"0.03\"/><circle cx=\"80\" cy=\"25\" r=\"2\" fill=\"%23a0471f\" opacity=\"0.03\"/></svg>');background-size:auto, 200px 200px;position:relative}
.contact::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 70%, rgba(212,98,45,0.03), transparent 50%);pointer-events:none}

.site-footer{border-top:1px solid rgba(212,98,45,0.1);padding:1.5rem 0;margin-top:2rem;background:linear-gradient(135deg, rgba(249,244,238,0.8) 0%, rgba(255,249,245,0.9) 100%);position:relative}

@media(max-width:760px){
  .header-inner{padding:0 1rem}
  .header-logo{height:56px}
  .services-list{columns:1}
  .hero h2{font-size:1.6rem}
  .contact-ctas{flex-direction:column}
}

