
:root{
  --ink:#2e211b;
  --muted:#73645b;
  --line:rgba(70,45,35,.13);
  --soft:#fff8f3;
  --pink:#e77d9d;
  --danger:#d94b4b;
  --ok:#246239;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#fff8f3,#fff)}
a{text-decoration:none;color:inherit}
.container{width:min(100% - 36px,1180px);margin:auto}
.header{position:sticky;top:0;background:rgba(255,250,245,.93);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);z-index:10}
.nav{height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.logo{display:flex;align-items:center;gap:10px;font-weight:900}
.logo-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--pink);color:#fff;font:italic 800 24px Georgia}
.nav-links{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:800;color:#6e5d52}
.nav-actions{display:flex;align-items:center;gap:10px}
.btn{border:0;border-radius:999px;background:#30231d;color:#fff;font-weight:900;padding:14px 22px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.btn.light{background:#fff;color:#30231d;border:1px solid var(--line)}
.btn.danger{background:#b94a4a}
.btn.small{font-size:12px;padding:8px 12px}
.hero{padding:92px 0 70px}
.hero-grid{display:grid;grid-template-columns:1fr .9fr;gap:50px;align-items:center}
.kicker{font-size:12px;letter-spacing:.2em;color:#e05e84;font-weight:900}
h1{font-size:clamp(50px,8vw,96px);line-height:.92;letter-spacing:-.08em;margin:14px 0 24px}
h2{font-size:clamp(36px,5vw,68px);line-height:.95;letter-spacing:-.06em;margin:0 0 18px}
h3{font-size:24px;margin:0 0 12px}
.lead{font-size:18px;line-height:1.65;color:var(--muted)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-card{border-radius:34px;overflow:hidden;box-shadow:0 24px 80px rgba(43,28,20,.13);position:relative}
.hero-card img{width:100%;height:520px;object-fit:cover;display:block}
.overlay{position:absolute;left:22px;right:22px;bottom:22px;background:rgba(48,35,29,.88);color:#fff;border-radius:24px;padding:22px}
.meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px}
.meta div,.card{background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:0 20px 60px rgba(43,28,20,.07)}
.meta strong{display:block;font-size:28px}
.meta span{color:var(--muted);font-weight:800}
.section{padding:72px 0}
.services{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.service{min-height:210px}
.service .num{color:#e05e84;font-size:12px;font-weight:900;letter-spacing:.2em}
.menu-layout,.booking-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.price-row{display:flex;justify-content:space-between;border-bottom:1px dashed rgba(70,45,35,.18);padding:14px 0;font-weight:800}
.lookbook{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:14px}
.lookbook img{width:100%;height:330px;object-fit:cover;border-radius:26px;display:block}
.form input,.form select,.form textarea{width:100%;border:1px solid var(--line);border-radius:16px;background:#fff;padding:13px 14px;font:inherit;color:var(--ink);margin:6px 0 14px}
.form label{font-size:12px;font-weight:900;color:#6b5a50}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.notice{padding:14px 16px;border-radius:18px;background:#fff0f0;border:1px solid rgba(190,60,60,.18);margin:0 0 18px;font-weight:700}
.notice.ok{background:#f0fff4;border-color:rgba(55,145,82,.18);color:#2f673f}
.map img{width:100%;border-radius:28px;box-shadow:0 20px 60px rgba(43,28,20,.11)}
.map p{color:var(--muted);line-height:1.65}
.footer{padding:36px 0;border-top:1px solid var(--line);color:var(--muted)}
.staff-wrap{width:min(100% - 32px,1220px);margin:30px auto 80px}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.role{border-radius:999px;background:#30231d;color:#fff;padding:9px 12px;font-weight:900;font-size:12px}
.role.staff{background:#f7eee8;color:#30231d}
.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.week{font-size:12px;font-weight:900;color:#88776d;text-align:center;padding:8px}
.day{min-height:92px;border:1px solid var(--line);border-radius:16px;background:#fff;padding:10px;display:flex;flex-direction:column}
.day.empty{opacity:.25}
.day.today{outline:2px solid rgba(231,125,157,.25)}
.day.newday{background:#fff0f0;border-color:rgba(204,51,51,.33)}
.day span{font-weight:900}
.badges{margin-top:auto;display:flex;gap:5px;flex-wrap:wrap}
.badges em{font-style:normal;font-size:11px;font-weight:900;border-radius:999px;padding:4px 7px;background:#f2eae5}
.badges .red{background:var(--danger);color:#fff}
.tablewrap{overflow:auto}
table{width:100%;min-width:820px;border-collapse:separate;border-spacing:0 8px}
th{text-align:left;font-size:12px;color:#7b6b60;padding:0 10px}
td{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 10px;vertical-align:top}
tr td:first-child{border-left:1px solid var(--line);border-radius:14px 0 0 14px;font-weight:900}
tr td:last-child{border-right:1px solid var(--line);border-radius:0 14px 14px 0}
tr.newrow td{background:#fff0f0}
.status{font-size:11px;font-weight:900;border-radius:999px;padding:4px 8px;background:#eee}
.status.new{background:var(--danger);color:#fff}
.status.confirmed{background:#e7f6eb;color:var(--ok)}
.status.cancelled{background:#eee;color:#777}
.staff-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}
.row-actions{display:flex;flex-wrap:wrap;gap:6px}
.hidden{display:none!important}
@media(max-width:820px){
  .nav{height:auto;padding:12px 0;align-items:flex-start}.nav-links{display:none}.nav-actions{margin-left:auto}
  .hero{padding:44px 0}.hero-grid,.menu-layout,.booking-grid,.contact-grid,.staff-grid{grid-template-columns:1fr}.hero-card img{height:340px}
  .services{grid-template-columns:1fr 1fr}.lookbook{grid-template-columns:1fr}.lookbook img{height:260px}.two{grid-template-columns:1fr}.calendar{gap:5px}.day{min-height:74px;border-radius:12px;padding:8px}h1{font-size:48px}
}

/* Add this to the bottom of public/styles.css */
.menu-image img,
.promo-card img{
  width:100%;
  border-radius:22px;
  display:block;
}
.promo-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  align-items:start;
}
.lookbook-second{
  margin-top:14px;
}
.lookbook-second img{
  height:360px;
}
@media(max-width:820px){
  .promo-grid{
    grid-template-columns:1fr;
  }
  .menu-image{
    padding:12px;
  }
  .lookbook-second img{
    height:260px;
  }
}
