:root{
  --ink:#242820;
  --ink2:#4d5148;
  --cream:#f7f2e8;
  --paper:#fffdf8;
  --sand:#d8c7aa;
  --taupe:#a88d68;
  --sage:#7a806e;
  --olive:#4f5749;
  --moss:#364037;
  --line:rgba(54,64,55,.13);
  --shadow:0 20px 60px rgba(54,64,55,.12);
  --radius:28px;
  --max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:linear-gradient(180deg,#fbf8f1,#f3eee4 56%,#f8f5ee);line-height:1.65;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4{font-family:Georgia,"Times New Roman",serif;line-height:1.05;margin:0 0 1rem;font-weight:500}p{margin:0 0 1rem}.container{width:min(calc(100% - 2rem),var(--max));margin:auto}.section{padding:5.3rem 0}.section-tight{padding:3.2rem 0}.muted{color:#6d7168}.lead{font-size:1.12rem;color:#555b51;max-width:65ch}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:800;color:var(--olive);margin-bottom:1rem}.eyebrow:before{content:"";width:34px;height:1px;background:var(--taupe)}.card{background:rgba(255,253,248,.86);border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow);border-radius:var(--radius);backdrop-filter:blur(8px)}.btn-row{display:flex;flex-wrap:wrap;gap:.85rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.9rem 1.2rem;border-radius:999px;border:1px solid transparent;font-weight:800;cursor:pointer;transition:.2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--moss);color:#fff;box-shadow:0 12px 28px rgba(54,64,55,.22)}.btn-secondary{background:#e6dcc9;color:#343b33}.btn-ghost{border-color:var(--line);background:rgba(255,255,255,.6)}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;z-index:100;background:#fff;padding:.8rem 1rem;border-radius:999px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(250,247,240,.88);backdrop-filter:blur(14px);border-bottom:1px solid rgba(54,64,55,.07)}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:1.1rem}.brand{display:flex;align-items:center;gap:.8rem;min-width:200px}.brand-symbol{width:52px;height:52px;border:1px solid var(--olive);border-radius:50%;display:grid;place-items:center;position:relative;background:#fbf7ed}.brand-symbol:before{content:"S";font-family:Georgia,serif;font-style:italic;font-size:1.8rem;color:var(--moss)}.brand-symbol:after{content:"";position:absolute;width:12px;height:28px;border-left:2px solid var(--sage);border-radius:50%;right:4px;bottom:5px;transform:rotate(35deg)}.brand-text strong{display:block;font-family:Georgia,serif;font-size:1.25rem;font-weight:500;letter-spacing:.02em}.brand-text span{display:block;font-size:.73rem;letter-spacing:.16em;text-transform:uppercase;color:#73786f}.nav-toggle{display:none;width:48px;height:48px;border:1px solid var(--line);background:#fff;border-radius:14px}.nav-toggle span,.nav-toggle:before,.nav-toggle:after{content:"";display:block;width:20px;height:2px;background:var(--moss);margin:5px auto}.main-nav ul{list-style:none;padding:0;margin:0;display:flex;align-items:center;gap:.25rem}.main-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 .95rem;border-radius:999px;font-weight:700;color:#3d433b}.main-nav a:hover,.main-nav a.active{background:#fff;box-shadow:0 7px 20px rgba(54,64,55,.08);color:var(--moss)}.header-actions{display:flex;align-items:center;gap:.65rem}
.hero{position:relative;padding:5rem 0 4rem;min-height:760px;display:flex;align-items:center;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,31,26,.82) 0%,rgba(24,31,26,.66) 40%,rgba(24,31,26,.12) 72%,rgba(24,31,26,.05)),url('https://images.pexels.com/photos/30175124/pexels-photo-30175124.jpeg?cs=srgb&fm=jpg&w=2000') center/cover no-repeat}.hero:after{content:"";position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,#f4efe5)}.hero .container{position:relative;z-index:2}.hero-copy{max-width:720px;color:#fff}.hero-copy h1{font-size:clamp(3.2rem,8vw,7rem);color:#fff;letter-spacing:-.035em}.hero-copy .lead{color:#eff0e9;font-size:1.18rem}.hero-line{font-family:Georgia,serif;font-style:italic;font-size:1.55rem;color:#e8dbc0;margin:1rem 0 1.8rem}.hero .eyebrow{color:#e7dcc8}.hero .eyebrow:before{background:#e7dcc8}.hero .btn-ghost{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.22)}.float-note{position:absolute;right:0;bottom:-1.5rem;background:#f7f1e6;color:#394038;padding:1.2rem 1.4rem;border-radius:22px;max-width:310px;box-shadow:var(--shadow)}
.ribbon{background:var(--moss);color:#f5efe3;padding:1rem 0;overflow:hidden}.ribbon-track{display:flex;gap:3rem;white-space:nowrap;justify-content:center;font-size:.82rem;text-transform:uppercase;letter-spacing:.18em}.ribbon-track span:before{content:"•";color:#ceb58e;margin-right:1.2rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:center}.story-card{padding:2.2rem}.story-card h2,.section-heading h2{font-size:clamp(2.4rem,5vw,4.6rem)}.image-card{overflow:hidden;min-height:520px}.image-card img{width:100%;height:100%;object-fit:cover;min-height:520px}.quote{font-family:Georgia,serif;font-size:1.5rem;font-style:italic;color:#505a50;border-left:2px solid var(--taupe);padding-left:1.2rem}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:2rem}.menu-grid,.feature-grid,.gallery-grid,.footer-grid,.form-grid,.stats-grid{display:grid;gap:1.15rem}.feature-grid{grid-template-columns:repeat(3,1fr)}.feature-card{padding:1.5rem}.feature-card .num{font-family:Georgia,serif;font-size:2.6rem;color:#a98a63}.menu-grid{grid-template-columns:repeat(2,1fr)}.menu-card{padding:1.6rem}.menu-card h3{font-size:2rem}.menu-item{display:grid;grid-template-columns:1fr auto;gap:1rem;padding:.75rem 0;border-bottom:1px dashed rgba(54,64,55,.15)}.menu-item:last-child{border-bottom:0}.menu-item strong{font-family:Georgia,serif;font-size:1.06rem;font-weight:600}.menu-item small{display:block;color:#797d74;margin-top:.18rem}.price{font-weight:900;color:var(--moss)}.menu-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.4rem}.menu-tab{border:1px solid var(--line);background:#fffdf8;color:#444c43;padding:.7rem 1rem;border-radius:999px;font-weight:800;cursor:pointer}.menu-tab.active{background:var(--moss);color:#fff}.menu-panel{display:none}.menu-panel.active{display:block}.gallery-grid{grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:270px}.gallery-item{overflow:hidden;border-radius:24px;position:relative}.gallery-item:first-child{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item .caption{position:absolute;left:1rem;bottom:1rem;background:rgba(35,42,35,.76);color:#fff;padding:.55rem .75rem;border-radius:12px;font-size:.78rem;backdrop-filter:blur(8px)}
.page-hero{padding:4.5rem 0 2.4rem}.page-hero .card{padding:2.2rem;background:linear-gradient(135deg,#fffdf8,#eee5d5)}.page-hero h1{font-size:clamp(3rem,7vw,6rem)}.original-menu{max-width:780px;margin:0 auto;overflow:hidden}.original-menu img{width:100%}.notice{padding:1.1rem 1.2rem;background:#ede4d5;border-radius:18px;border:1px solid #dfd2bc}.booking-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:1.2rem;align-items:start}.booking-card,.summary-card{padding:1.6rem}.summary-card{position:sticky;top:102px}.calendar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.45rem}.weekday{text-align:center;font-size:.72rem;text-transform:uppercase;color:#777c73;font-weight:800;padding:.4rem}.day{aspect-ratio:1;border:1px solid var(--line);background:#fff;border-radius:14px;cursor:pointer;color:#3e453d}.day:hover{border-color:#89917f}.day.selected{background:var(--moss);color:#fff}.day.disabled{opacity:.25;pointer-events:none}.counter{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:#fff}.counter button{width:42px;height:42px;border:0;background:#f3ede3;font-weight:900;cursor:pointer}.counter span{width:52px;text-align:center;font-weight:900}.time-slots{display:flex;flex-wrap:wrap;gap:.55rem}.time-slot{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.65rem .9rem;cursor:pointer;font-weight:700}.time-slot.selected{background:var(--moss);color:#fff}.field{display:grid;gap:.4rem}.field label{font-weight:800;color:#41483f}.field input,.field select,.field textarea{border:1px solid var(--line);background:#fff;border-radius:16px;padding:.9rem 1rem;color:var(--ink)}.field textarea{min-height:120px;resize:vertical}.form-grid{grid-template-columns:repeat(2,1fr)}.field.full{grid-column:1/-1}.summary-row{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.success-box{display:none;margin-top:1rem;padding:1rem;border-radius:18px;background:#e4ebdf}.success-box.show{display:block}.stats-grid{grid-template-columns:repeat(3,1fr)}.stat{padding:1.4rem;text-align:center}.stat strong{font-family:Georgia,serif;font-size:2rem;display:block}.footer{background:#333b34;color:#e9e6dc;margin-top:4rem}.footer h3{color:#fff}.footer-top{padding:3rem 0}.footer-grid{grid-template-columns:1.2fr .8fr .8fr}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin:.55rem 0}.footer-bottom{padding:1.2rem 0 2rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:#c9c9bf;font-size:.86rem}.photo-note{font-size:.77rem;color:#777d74}.lightbox{position:fixed;inset:0;background:rgba(20,25,21,.92);display:none;z-index:100;place-items:center;padding:2rem}.lightbox.open{display:grid}.lightbox img{max-width:min(100%,1100px);max-height:85vh;border-radius:18px}.lightbox button{position:absolute;right:1.5rem;top:1.5rem;background:#fff;border:0;width:46px;height:46px;border-radius:50%;font-size:1.5rem;cursor:pointer}
@media(max-width:1040px){.feature-grid,.stats-grid,.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>:first-child{grid-column:1/-1}.booking-layout{grid-template-columns:1fr}.summary-card{position:static}}
@media(max-width:880px){.nav-toggle{display:block}.header-actions .desktop-only{display:none}.main-nav{position:fixed;left:1rem;right:1rem;top:88px;opacity:0;pointer-events:none;transform:translateY(-10px);transition:.2s}.main-nav.open{opacity:1;pointer-events:auto;transform:none}.main-nav ul{display:grid;background:#faf7f0;padding:.7rem;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.main-nav a{width:100%}.split,.menu-grid,.feature-grid,.gallery-grid,.footer-grid,.stats-grid,.form-grid{grid-template-columns:1fr}.gallery-grid{grid-auto-rows:320px}.gallery-item:first-child{grid-row:auto}.hero{min-height:700px}.hero:before{background:linear-gradient(90deg,rgba(24,31,26,.86),rgba(24,31,26,.64)),url('https://images.pexels.com/photos/30175124/pexels-photo-30175124.jpeg?cs=srgb&fm=jpg&w=1600') center/cover}.float-note{position:static;margin-top:1rem}.section-heading{align-items:start;flex-direction:column}.field.full{grid-column:auto}}
@media(max-width:560px){.brand-text span{display:none}.brand{min-width:auto}.header-inner{min-height:76px}.section{padding:4.2rem 0}.hero{padding-top:3rem}.hero-copy h1{font-size:clamp(3.2rem,15vw,5.3rem)}.page-hero h1{font-size:3.2rem}.calendar-grid{gap:.28rem}.day{border-radius:10px}.booking-card,.summary-card{padding:1.1rem}}

/* Official Selah Café identity */
.brand{min-width:auto;gap:0}
.brand-logo{display:block;width:150px;height:auto;max-height:none;object-fit:contain}
.footer .brand-logo{width:168px;max-height:none;background:#f7f1e7;padding:10px 12px;border-radius:18px;box-shadow:0 10px 24px rgba(0,0,0,.12)}
@media(max-width:860px){.brand-logo{width:136px}}
@media(max-width:560px){.brand-logo{width:118px}.footer .brand-logo{width:146px;padding:8px 10px}}

/* Selah Café contact + WhatsApp */
.whatsapp-float{
  position:fixed;right:22px;bottom:22px;z-index:90;
  display:inline-flex;align-items:center;gap:.65rem;
  min-height:56px;padding:.75rem 1rem .75rem .82rem;
  border-radius:999px;background:#25D366;color:#fff;
  font-weight:900;letter-spacing:.01em;
  box-shadow:0 16px 36px rgba(17,94,46,.28);
  border:1px solid rgba(255,255,255,.3);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(17,94,46,.35);filter:saturate(1.06)}
.whatsapp-float img{width:30px;height:30px;filter:brightness(0) invert(1)}
.whatsapp-float span{white-space:nowrap}
.contact-number{font-family:Georgia,serif;font-size:clamp(1.8rem,4vw,3rem);color:var(--moss);font-weight:600;line-height:1.1}
.contact-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.2rem}
.whatsapp-btn{background:#25D366!important;color:#fff!important;border-color:#25D366!important}
.whatsapp-btn:hover{background:#1fb85a!important}
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:1.3rem;align-items:stretch}
.contact-card{padding:2rem}
.contact-detail{display:flex;align-items:flex-start;gap:.9rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.contact-detail:last-child{border-bottom:0}
.contact-detail-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#e8eee4;color:var(--moss);font-weight:900;flex:0 0 auto}
@media(max-width:880px){.contact-grid{grid-template-columns:1fr}}
@media(max-width:560px){.whatsapp-float{right:14px;bottom:14px;width:56px;height:56px;padding:0;justify-content:center}.whatsapp-float span{display:none}.whatsapp-float img{width:31px;height:31px}}
