*{box-sizing:border-box}body{margin:0;background:#f6f1e8;color:#3d2118;font-family:Arial,Helvetica,sans-serif}a{color:inherit}header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid #d7c5b0}nav{display:flex;gap:1.5rem;font-size:.85rem;font-weight:700}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;text-transform:uppercase;font-size:.68rem;font-weight:700;line-height:1.05;letter-spacing:.08em}.brand b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#3d2118;color:#fff;font-family:Georgia,serif;letter-spacing:0}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1fr 1fr}.hero>div:first-child{padding:clamp(4rem,10vw,9rem) 10%}.eyebrow{color:#d85525;font-size:.68rem;font-weight:700;letter-spacing:.13em}.hero h1,.intro h2,.services h2,.booking h2{font-family:Georgia,serif;letter-spacing:-.06em;line-height:.98}.hero h1{font-size:clamp(3.8rem,7vw,7rem);max-width:10ch}.hero i{color:#d85525}.lead{max-width:32rem;line-height:1.65}.button{display:inline-block;margin-top:1.4rem;background:#3d2118;color:#fff;border:0;padding:1rem 1.2rem;text-decoration:none;font-weight:700;cursor:pointer}.button:hover{background:#d85525}.heroImage{background:linear-gradient(0deg,rgba(43,23,17,.16),rgba(43,23,17,.05)),url('/images/IMG_7205.jpeg') center/cover}.intro{text-align:center;background:#fffdf8;padding:8rem 10%}.intro h2{font-size:clamp(2.5rem,5vw,5rem);max-width:14ch;margin:1rem auto}.intro p:last-child{max-width:34rem;margin:auto;line-height:1.7}.about{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:clamp(3rem,7vw,8rem);align-items:center;padding:7rem 8%;background:#ede1d0}.aboutImage{min-height:650px;background:#d6c0aa;overflow:hidden}.aboutImage img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.aboutCopy{max-width:48rem}.about h2,.whyUs h2{margin:1rem 0;font:clamp(2.8rem,5vw,5.3rem)/.96 Georgia,serif;letter-spacing:-.065em}.aboutCopy>p:not(.eyebrow){font-size:1.06rem;line-height:1.72;max-width:42rem}.aboutSpecialisms{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;padding-top:2.2rem;border-top:1px solid #cbb6aa}.aboutSpecialisms span{font-size:1.45rem}.aboutSpecialisms h3{margin:.65rem 0 .4rem;font:1.35rem/1.1 Georgia,serif}.aboutSpecialisms p{margin:0;line-height:1.55;font-size:.92rem}.services{padding:7rem 8%}.services h2{font-size:clamp(2.6rem,4vw,4.5rem)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem}.cards article{background:#fffdf8;padding:2rem;min-height:250px}.cards span{color:#d85525;font-size:.75rem;font-weight:bold}.cards h3{font-family:Georgia,serif;font-size:2rem;margin-bottom:.5rem}.cards p{line-height:1.65}.serviceButton{margin-top:1rem;border:0;background:transparent;padding:0;color:#3d2118;font-weight:700;text-decoration:underline;text-underline-offset:.3rem;cursor:pointer}.serviceButton:hover{color:#d85525}.whyUs{padding:7rem 8%;background:#fffdf8}.whyUsHeading{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem;align-items:end;max-width:1100px;margin:0 auto 3rem}.whyUsHeading .eyebrow{grid-column:1}.whyUsHeading h2{grid-column:1;grid-row:2;margin:0}.whyUsHeading>p:last-child{grid-column:2;grid-row:2;margin:0;max-width:33rem;line-height:1.7}.whyGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;max-width:1200px;margin:auto}.whyGrid article{padding:2rem;background:#3d2118;color:#f6f1e8;min-height:270px}.whyGrid span{color:#ffbc9c;font-size:.72rem;font-weight:bold;letter-spacing:.1em}.whyGrid h3{margin:3.6rem 0 .6rem;font:1.7rem/1.05 Georgia,serif}.whyGrid p{margin:0;line-height:1.6;font-size:.95rem}.chefNote{padding:6rem 10%;background:#fffdf8;text-align:center}.chefNote h2{max-width:14ch;margin:1rem auto;font:clamp(2.6rem,5vw,5rem)/.98 Georgia,serif;letter-spacing:-.06em}.chefNote p:not(.eyebrow){max-width:42rem;margin:0 auto;line-height:1.65}.chefNote .button{margin-top:2rem}.gallery{padding:7rem 8%;background:#eee4d6}.galleryHeading{text-align:center;margin-bottom:3rem}.galleryHeading h2{margin:0;font:clamp(2.8rem,5vw,5.5rem)/.95 Georgia,serif;letter-spacing:-.06em}.galleryGrid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:150px;gap:1rem}.galleryGrid img{display:block;width:100%;height:100%;object-fit:cover;background:#d7c5b0}.galleryGrid img:nth-child(1){grid-column:span 3;grid-row:span 3}.galleryGrid img:nth-child(2){grid-column:span 6;grid-row:span 2}.galleryGrid img:nth-child(n+3){grid-column:span 3;grid-row:span 2}.booking{background:#3d2118;color:#f6f1e8;padding:7rem 8%;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.booking h2{font-size:clamp(2.6rem,5vw,5rem)}form label{display:block;font-size:.78rem;font-weight:700;margin-bottom:1rem}input,select,textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #cbb6aa;color:inherit;padding:.7rem 0;font:1rem Arial;margin-top:.4rem}.booking select{background:#f6f1e8;color:#3d2118;border:1px solid #cbb6aa;border-radius:0;padding:.7rem}.booking select option{background:#fffdf8;color:#3d2118}.booking input:focus,.booking select:focus,.booking textarea:focus{outline:2px solid #ffbc9c;outline-offset:3px}.booking .button:disabled{opacity:.65;cursor:not-allowed}.two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.trap{position:absolute;left:-9999px}.status{min-height:1.5rem;color:#ffbc9c}.contactDetails{display:grid;gap:.75rem;margin-top:2.5rem;font-size:.9rem}.contactDetails a{text-decoration:none}.contactDetails a:hover{text-decoration:underline;text-underline-offset:.25rem}footer{padding:2rem 8%;background:#2b1711;color:#f6f1e8;display:flex;justify-content:space-between;font-size:.8rem}.auth{min-height:100vh;padding:2rem 8%;background:#3d2118;color:#f6f1e8}.auth form{max-width:420px;margin:12vh auto;background:#2b1711;padding:2rem}.auth h1,.admin h1{font-family:Georgia,serif;font-size:3rem}.admin section{padding:4rem 8%}.tablewrap{overflow:auto;background:#fffdf8;margin-top:2rem}.tablewrap table{width:100%;border-collapse:collapse;min-width:780px}.tablewrap th,.tablewrap td{text-align:left;vertical-align:top;padding:1rem;border-bottom:1px solid #e1d3c1}.empty{margin-top:2rem;padding:2rem;background:#fffdf8}.adminNotice{max-width:680px;margin-top:2rem;padding:1.25rem 1.4rem;border-left:4px solid #d85525;background:#fff1e9;line-height:1.6}.viewButton,.closeButton,.deleteButton{font:inherit;cursor:pointer}.viewButton{border:0;background:transparent;padding:0;color:#3d2118;font-weight:700;text-decoration:underline;text-underline-offset:.28rem;white-space:nowrap}.viewButton:hover{color:#d85525}.statusPill{display:inline-block;padding:.38rem .55rem;background:#eee4d6;font-size:.75rem;font-weight:700;text-transform:capitalize}.statusPill.confirmed{background:#d9e8d3}.statusPill.completed{background:#d3e5df}.statusPill.cancelled,.statusPill.no_show{background:#f5d6ca}.jobPanel{max-width:860px;margin:2rem 0 0 auto;padding:2.25rem;background:#fffdf8;border-top:5px solid #d85525;box-shadow:0 16px 40px rgba(61,33,24,.13)}.jobPanelTop{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.jobPanel h2{margin:.35rem 0 0;font:clamp(2.25rem,5vw,4rem)/.95 Georgia,serif;letter-spacing:-.06em}.closeButton{border:0;background:transparent;color:#3d2118;font-size:2.2rem;line-height:1;padding:0}.jobDetails{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2.25rem 0}.jobDetails div,.jobMessage{padding:1rem;background:#f6f1e8}.jobDetails span,.jobMessage span,.statusControl{display:block;color:#7a5548;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.jobDetails b{display:block;margin-top:.45rem;line-height:1.35}.jobMessage p{margin:.6rem 0 0;white-space:pre-wrap;line-height:1.65}.quickActions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.2rem}.actionButton{display:inline-block;padding:.78rem .95rem;background:#3d2118;color:#fff;text-decoration:none;font-size:.9rem;font-weight:700}.actionButton:hover{background:#d85525}.statusControl{max-width:270px;margin-top:1.8rem}.statusControl select{background:#fffdf8;color:#3d2118;border:1px solid #cbb6aa;padding:.7rem;margin-top:.5rem}.deleteButton{display:block;margin-top:1.4rem;border:0;background:transparent;padding:0;color:#a72f12;font-weight:700;text-decoration:underline;text-underline-offset:.3rem}.deleteButton:hover{color:#d85525}@media(max-width:900px){.about{grid-template-columns:1fr;padding:5rem 8%}.aboutImage{min-height:520px;max-height:720px}.aboutSpecialisms{grid-template-columns:1fr}.whyUsHeading{grid-template-columns:1fr;gap:1.25rem}.whyUsHeading .eyebrow,.whyUsHeading h2,.whyUsHeading>p:last-child{grid-column:auto;grid-row:auto}.whyGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:750px){header{padding:0 1.2rem}nav{gap:.8rem}.hero,.booking{grid-template-columns:1fr}.heroImage{height:65vw}.cards,.two{grid-template-columns:1fr}.booking{gap:2rem;padding:4rem 1.4rem}.services,.about,.whyUs{padding:4rem 1.4rem}.intro{padding:5rem 1.4rem}.about{gap:2rem}.aboutImage{min-height:440px}.aboutSpecialisms{gap:1.25rem}.whyGrid{grid-template-columns:1fr}.whyGrid article{min-height:220px}.whyGrid h3{margin-top:2.25rem}.gallery{padding:4rem 1.4rem}.galleryGrid{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px}.galleryGrid img:nth-child(n){grid-column:span 1;grid-row:span 1}.galleryGrid img:nth-child(1){grid-row:span 2}.contactDetails{font-size:.84rem}.jobPanel{padding:1.5rem;margin-top:1rem}.jobDetails{grid-template-columns:1fr 1fr;margin:1.5rem 0}.quickActions{display:grid;grid-template-columns:1fr}.actionButton{text-align:center}}
