/* The Old Church Winery — shared site styles */
:root{
  --ink:#241F1C; --ink-soft:#4A423C;
  --stone:#F5F0E6; --stone-deep:#EDE5D4;
  --card:#FFFDF9; --line:#DED2BA;
  --wine:#6E2436; --wine-dark:#4E1A27;
  --gold:#A9822F; --night:#241017;
  --green:#3F6B4A;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;}
body{background:var(--stone);color:var(--ink);font-family:'Work Sans',sans-serif;}
h1,h2,h3{font-family:'Bodoni Moda',serif;margin:0;font-weight:600;}
p{margin:0;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;}
img{max-width:100%;display:block;}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:2px;font-size:15px;font-weight:600;letter-spacing:.02em;border:1px solid transparent;cursor:pointer;font-family:inherit;}
.btn-primary{background:var(--wine);color:#fff;}
.btn-primary:hover{background:var(--wine-dark);}
.btn-primary:disabled{background:#B9A9A9;cursor:not-allowed;}
.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink);}
.btn-outline:hover{background:var(--ink);color:#fff;}
.btn-ghost-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.55);}
.btn-ghost-light:hover{background:rgba(255,255,255,.12);}

.navlink{font-size:14px;font-weight:500;letter-spacing:.02em;padding:8px 2px;border-bottom:2px solid transparent;}
.navlink:hover{border-bottom-color:var(--gold);}
.navlink.active{border-bottom-color:var(--wine);}

.site-nav{display:flex;align-items:center;justify-content:space-between;padding:18px clamp(20px,5vw,64px);border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(245,240,230,.92);backdrop-filter:blur(6px);z-index:20;}
.site-nav .brand{display:flex;align-items:center;gap:10px;font-family:'Bodoni Moda',serif;font-size:21px;font-weight:600;}
.site-nav .brand img{height:40px;width:auto;display:block;}
.nav-links{display:flex;align-items:center;gap:clamp(18px,2.6vw,34px);}

.site-footer{background:var(--night);color:#D9CBB8;padding:48px clamp(20px,5vw,64px) 28px;}
.site-footer .foot-inner{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:13px;}
.site-footer .foot-links{display:flex;gap:20px;flex-wrap:wrap;}
.site-footer .foot-bottom{max-width:1180px;margin:20px auto 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);font-size:12px;color:#A6957E;}

.placeholder-photo{background:repeating-linear-gradient(135deg,var(--stone-deep),var(--stone-deep) 10px,#E3D8C0 10px,#E3D8C0 11px);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:13px;text-align:center;padding:16px;overflow:hidden;}

.amenity{display:flex;gap:14px;padding:20px;background:var(--card);border:1px solid var(--line);}
.pkg{background:var(--card);border:1px solid var(--line);padding:32px;display:flex;flex-direction:column;gap:14px;}
.pkg ul{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:10px;}
.pkg li{font-size:14px;color:var(--ink-soft);display:flex;gap:10px;align-items:flex-start;}

.field{display:flex;flex-direction:column;gap:6px;}
.field label{font-size:13px;font-weight:600;}
.field input,.field select,.field textarea{font-family:inherit;font-size:14px;padding:11px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);}
.field textarea{resize:vertical;min-height:80px;}

.cal-nav{background:var(--card);border:1px solid var(--line);width:36px;height:36px;font-size:18px;cursor:pointer;color:var(--ink);}
.cal-nav:disabled{opacity:.35;cursor:not-allowed;}
.cal-dow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;font-size:12px;font-weight:600;color:var(--ink-soft);text-align:center;margin:14px 0 8px;}
.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;}
.cal-cell{min-height:64px;min-width:0;padding:8px 4px;display:flex;flex-direction:column;gap:2px;font-size:13px;background:#FFFDF9;border:1px solid var(--line);overflow:hidden;}
.cal-cell.is-available{cursor:pointer;}
.cal-cell.is-blank{background:transparent;border-color:transparent;}
.cal-cell.is-pending{border-color:var(--gold);}
.cal-cell.is-booked{background:var(--wine);border-color:var(--wine);color:#fff;cursor:not-allowed;}
.cal-cell.is-blocked{background:#8A8377;border-color:#8A8377;color:#fff;}
.cal-cell.is-selected{border-color:var(--ink);}
.cal-daynum{font-weight:600;font-size:14px;}
.cal-daylabel{font-size:10px;letter-spacing:.04em;text-transform:uppercase;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cal-legend{display:flex;gap:20px;flex-wrap:wrap;margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-soft);}
.cal-legend .swatch{display:flex;align-items:center;gap:8px;}
.cal-legend .dot{width:12px;height:12px;display:inline-block;border:1px solid var(--line);}

.pill{display:inline-flex;padding:4px 10px;font-size:12px;font-weight:600;border-radius:2px;}

/* Admin dashboard */
.dash-shell{width:100%;min-height:100vh;background:var(--stone);display:flex;}
.dash-sidebar{width:240px;flex-shrink:0;background:var(--night);min-height:100vh;padding:24px 0;display:flex;flex-direction:column;}
.dash-sidebar .brand{padding:0 20px 22px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:14px;display:flex;align-items:center;gap:12px;}
.dash-sidebar .brand img{height:34px;width:auto;display:block;flex-shrink:0;}
.dash-sidebar .brand .name{font-family:'Bodoni Moda',serif;font-size:18px;color:#fff;}
.dash-sidebar .brand .tag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-top:4px;}
.side-link{display:flex;align-items:center;gap:12px;padding:11px 16px;font-size:14px;font-weight:500;color:#D9CBB8;border-left:2px solid transparent;cursor:pointer;background:none;border-top:none;border-right:none;border-bottom:none;width:100%;text-align:left;}
.side-link:hover{color:#fff;}
.side-link.active{color:#fff;border-left-color:var(--gold);background:rgba(255,255,255,.05);}
.dash-main{flex:1;padding:clamp(24px,3vw,44px);max-width:1100px;}
.dash-tab{display:none;}
.dash-tab.active{display:block;}
.card{background:var(--card);border:1px solid var(--line);padding:24px;}
.stat{background:var(--card);border:1px solid var(--line);padding:22px;}
.stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:32px;}

@media (max-width:900px){
  .avail-layout,.contact-layout{grid-template-columns:1fr !important;}
}
@media (max-width:860px){
  .dash-sidebar{display:none !important;}
  .stat-row{grid-template-columns:1fr 1fr !important;}
}
@media (max-width:760px){
  .nav-links{display:none !important;}
  .hero-h1{font-size:40px !important;}
  .grid-3{grid-template-columns:1fr !important;}
  .grid-2{grid-template-columns:1fr !important;}
}
