:root{--ink:#292923;--paper:#f5f1ea;--cream:#ebe4d8;--sage:#75806d;--gold:#b69765;--line:rgba(41,41,35,.14)}
*{box-sizing:border-box} body{font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.65} h1,h2,h3,.navbar-brand{font-family:'Playfair Display',serif} h1{font-size:clamp(3.3rem,7vw,6.4rem);line-height:1.03;letter-spacing:-.04em} h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.12;letter-spacing:-.035em} h3{font-size:1.6rem} em{font-weight:500;color:var(--sage)} a{color:inherit;text-decoration:none}.navbar{padding:1.1rem 0;background:rgba(245,241,234,.93);backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:.2s}.navbar-brand{font-size:1.7rem;font-weight:600;letter-spacing:-.05em}.navbar-brand span{color:var(--gold)}.nav-link{font-size:.86rem;color:var(--ink)!important}.nav-link.active{color:var(--sage)!important}.btn{border-radius:0;padding:.75rem 1.25rem;font-weight:500;font-size:.88rem}.btn-dark{background:var(--ink);border-color:var(--ink)}.btn-light{background:var(--paper);border-color:var(--paper)}.hero{min-height:760px;background:linear-gradient(90deg,rgba(21,22,18,.70),rgba(21,22,18,.15)),url('../images/hero.jpg') center/cover}.hero h1{color:#fff}.hero h1 em{color:#e1d6c0}.hero-lead{color:rgba(255,255,255,.84);font-size:1.12rem;max-width:520px;margin:1.5rem 0}.pb-lg-6{padding-bottom:6rem}.eyebrow{font-size:.67rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--sage);margin-bottom:1.25rem}.section-space{padding:8rem 0}.lead-copy{font-size:1.27rem;line-height:1.65}.text-link{display:inline-block;margin-top:1rem;border-bottom:1px solid var(--ink);padding-bottom:.2rem;font-size:.9rem}.text-link i{margin-left:.5rem}.features{background:var(--cream)}.feature-card{padding:2.2rem;border:1px solid rgba(41,41,35,.10);height:100%}.feature-card i{font-size:1.55rem;color:var(--gold)}.feature-card h3{margin-top:1.7rem}.feature-card p{color:#66635d;font-size:.94rem}.showcase-image{min-height:520px;background:url('../images/qr.jpg') center/cover}.showcase-copy{background:#ded7ca;padding:5.5rem clamp(2rem,6vw,6rem);display:flex;flex-direction:column;justify-content:center}.showcase-copy p:not(.eyebrow){max-width:430px;margin:1.5rem 0}.cta{padding:8rem 0;background:#d1c5b3}.footer{background:#e8e1d5}.footer a{display:block;font-size:.88rem;margin:.35rem 0}.footer-bottom{border-top:1px solid var(--line);font-size:.76rem;color:#706d66}.footer-bottom .bi-heart-fill{color:#a15f56;font-size:.7rem}.page-hero{padding:13rem 0 6rem}.texture{background:radial-gradient(circle at 80% 20%,#e7dfd1,transparent 35%),var(--cream)}.process-row{padding:4.5rem 0;border-top:1px solid var(--line)}.process-row:last-child{border-bottom:1px solid var(--line)}.process-row img{height:340px;width:100%;object-fit:cover}.team-image{object-position:center 25%}.contact-image{width:100%;height:230px;object-fit:cover;object-position:center 25%}.number{font-family:'Playfair Display',serif;font-size:1.2rem;color:var(--gold)}.login-page{min-height:100vh;padding:11rem 0 6rem;background:linear-gradient(rgba(35,34,29,.25),rgba(35,34,29,.25)),url('../images/restaurant.jpg') center/cover}.login-card{background:rgba(245,241,234,.96);padding:3rem}.login-card h1{font-size:3.4rem}.form-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;font-weight:600}.form-control{border-radius:0;border:1px solid var(--line);padding:.75rem;background:rgba(255,255,255,.5)}.form-control:focus{box-shadow:none;border-color:var(--sage);background:white}.contact-details{margin-top:3rem}.contact-details p{padding:1rem 0;border-bottom:1px solid var(--line);margin:0}.contact-details span{display:block;font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;color:var(--sage);font-weight:600}.contact-form{background:#eee8de;padding:2.5rem}@media(max-width:991px){.navbar-collapse{background:var(--paper);padding:1rem}.hero{min-height:650px}.section-space{padding:5rem 0}.showcase-copy{min-height:440px}.page-hero{padding:10rem 0 4rem}}@media(max-width:575px){.hero{min-height:620px}.login-card{padding:2rem 1.5rem}.contact-form{padding:1.5rem}.section-space{padding:4rem 0}}
