@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');:root{--dark:#171715;--gold:#c7ab7d;--cream:#f4f0e9;--text:#292722}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--cream);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}.nav{height:88px;background:#171715;display:flex;align-items:center;justify-content:space-between;padding:0 6%;color:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #38352f}.brand{display:flex;align-items:center;gap:12px;font-size:19px;letter-spacing:4px}.brand img{height:72px;width:72px;object-fit:contain}.brand small{display:block;font-size:8px;letter-spacing:3px;color:var(--gold);margin-top:5px}.nav nav{display:flex;gap:32px;font-size:12px;letter-spacing:1px}.nav nav a:hover,.text-link:hover{color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--gold);border:1px solid var(--gold);padding:18px 27px;color:#1c1b18;font-weight:700;letter-spacing:1.5px;font-size:11px;cursor:pointer}.btn:hover{background:#e1c99e}.btn.small{padding:14px 18px}.hero{height:min(780px,85vh);min-height:540px;position:relative;background:url('assets/2.jpeg') center 45%/cover;display:flex;align-items:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,15,14,.87),rgba(15,15,14,.42) 65%,rgba(15,15,14,.1))}.hero-content{position:relative;color:#fff;margin-left:9%;max-width:650px}.eyebrow{font-size:11px;letter-spacing:4px;color:var(--gold);font-weight:700}.hero h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.15}.hero h1{font-size:clamp(49px,6vw,88px);margin:25px 0}.hero h1 em,h2 em{font-weight:400;color:var(--gold)}.hero p{line-height:1.9;color:#ddd;max-width:440px;margin-bottom:32px}.hero-caption{position:absolute;bottom:36px;right:7%;color:#fff;font-size:10px;letter-spacing:4px}.section{padding:105px 9%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:15%;align-items:center}.intro h2,.booking h2{font-size:clamp(45px,5vw,68px);margin:20px 0}.intro p,.booking-info p{line-height:2;color:#77736d}.text-link{display:inline-block;margin-top:20px;font-size:11px;font-weight:700;letter-spacing:2px}.services{background:#1d1c1a;color:#fff}.section-heading{text-align:center;max-width:650px;margin:0 auto 48px}.section-heading h2,.contact h2{font-size:clamp(42px,5vw,62px);margin:16px 0}.section-heading p{color:#9b978f;line-height:1.7}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#4a463e;border:1px solid #4a463e}.service-grid article{background:#1d1c1a;padding:38px 24px;min-height:245px}.service-grid span{color:var(--gold);font-size:12px}.service-grid h3{font-family:Georgia,serif;font-size:22px;font-weight:400;margin:38px 0 15px}.service-grid p{font-size:13px;color:#a9a59e;line-height:1.8}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.gallery-grid img{width:100%;height:280px;object-fit:cover}.gallery-grid img:first-child{grid-column:span 2;height:380px}.gallery-grid img:nth-child(2){height:380px}.booking{background:#e8e2d8;display:grid;grid-template-columns:1fr 1.2fr;gap:12%}.booking-info{padding-top:35px}.booking-form{background:#fff;padding:38px;box-shadow:0 15px 50px #25201612;display:grid;gap:19px}.booking-form label{display:block;font-size:12px;font-weight:700;letter-spacing:.4px}.booking-form input:not([type=checkbox]),.booking-form select,.booking-form textarea{display:block;width:100%;border:1px solid #ddd8d0;background:#faf9f7;padding:15px;font:inherit;font-size:14px;margin-top:9px;border-radius:0}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.slots{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.slot{padding:11px 14px;border:1px solid #d7d1c7;background:white;cursor:pointer}.slot.selected{background:#1d1c1a;color:#fff;border-color:#1d1c1a}.muted{color:#888;font-size:12px}.consent{display:flex!important;align-items:flex-start;gap:10px;line-height:1.6;font-weight:400!important}.consent input{margin-top:3px}.notice{font-size:12px;color:#7a5e40!important}.message{font-size:13px;line-height:1.6;margin:0}.contact{background:#1b1a18;color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:40px}.contact h3{color:var(--gold);font-size:12px;letter-spacing:2px;text-transform:uppercase;margin-top:25px}.contact p{color:#c0bdb8}.map-placeholder{border:1px solid #555047;min-height:180px;display:grid;place-items:center;font-size:11px;letter-spacing:2px;color:#aaa}footer{background:#10100f;color:#d7d3cb;padding:50px 9% 25px}.footer-main{display:flex;justify-content:space-between;align-items:center;padding-bottom:40px}.footer-main strong{font-size:30px;letter-spacing:6px}.footer-main p{font-size:9px;letter-spacing:4px;color:var(--gold)}.footer-bottom{border-top:1px solid #39352e;padding-top:24px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:11px;line-height:1.8}.footer-bottom a{color:var(--gold)}.admin-wrap{max-width:1050px;margin:50px auto;padding:20px}.admin-wrap h1{font-family:Georgia,serif;font-size:42px;font-weight:400}.admin-card{background:#fff;padding:28px;margin:22px 0}.admin-card input{padding:12px;border:1px solid #ccc;margin:8px}.admin-card button{padding:12px 20px;cursor:pointer}.admin-card table{width:100%;border-collapse:collapse;font-size:13px}.admin-card td,.admin-card th{text-align:left;padding:12px;border-bottom:1px solid #ddd}.admin-card th{color:#78644a}.admin-card .danger{color:#9b3029}.admin-note{background:#fff1dc;padding:15px;line-height:1.7}@media(max-width:850px){.nav{height:75px;padding:0 4%}.nav nav{display:none}.brand img{width:60px;height:60px}.section{padding:70px 6%}.intro,.booking,.contact-grid{grid-template-columns:1fr;gap:30px}.service-grid{grid-template-columns:repeat(2,1fr)}.hero-content{margin-left:6%}.gallery-grid img,.gallery-grid img:first-child,.gallery-grid img:nth-child(2){height:230px}.footer-main{display:block}}@media(max-width:540px){.nav .btn{font-size:9px;padding:12px}.brand{font-size:14px}.brand small{font-size:7px}.hero{min-height:570px}.hero h1{font-size:47px}.service-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid img,.gallery-grid img:first-child,.gallery-grid img:nth-child(2){grid-column:span 1;height:170px}.gallery-grid img:first-child{grid-column:span 2;height:240px}.booking-form{padding:23px}.two{grid-template-columns:1fr}.footer-bottom{display:block}}
