@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;600;700;800&display=swap');
*{box-sizing:border-box}
body{margin:0;background:#110e0c;color:#fff5e5;font-family:Cairo,sans-serif}
header,footer{display:flex;align-items:center;justify-content:center;gap:2rem;padding:1rem 5%;border-block-end:1px solid #b8945a55}
header{justify-content:space-between}
.brand img{width:105px;height:105px;object-fit:contain}
nav{display:flex;gap:clamp(.7rem,3vw,2.5rem);flex-wrap:wrap}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}
.hero img{display:block;width:100%;height:auto}
section{padding:clamp(1.5rem,5vw,4rem) 5%;max-width:1380px;margin:auto}
.intro{text-align:center}
h1{font-size:clamp(1.8rem,4vw,3.5rem);line-height:1.45;margin:.2em 0 .65em;color:#f1d299}
h2{font-size:clamp(1.5rem,3vw,2.4rem);color:#f1d299}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1rem}
article{background:#1d1712;border:1px solid #b8945a55;border-radius:12px;overflow:hidden;padding-bottom:1rem;text-align:center}
article img{display:block;width:100%;aspect-ratio:4/5;object-fit:contain;background:#14100d}
.button,button{display:inline-block;background:#e2bd7d;color:#21160b;border:0;border-radius:6px;padding:.55rem 1rem;font:700 1rem Cairo,sans-serif;cursor:pointer;margin:.25rem 0}
.narrow{max-width:680px;margin:auto}
form{display:grid;gap:.7rem;text-align:start;padding:1rem}
input,select,textarea{width:100%;display:block;font:inherit;border:1px solid #9c8059;border-radius:6px;padding:.55rem;background:#272019;color:#fff5e5}
textarea{min-height:100px}
iframe{display:block;width:100%;height:340px;border:0;margin:1rem 0}
footer{flex-wrap:wrap;text-align:center}
.record{padding:1rem;margin-block:.75rem;text-align:start;overflow-wrap:anywhere}
@media(max-width:520px){header{gap:.5rem;padding:0 4%}.brand img{width:72px;height:82px}nav{font-size:.87rem;gap:.65rem}footer{gap:.5rem}}
:root{--ink:#211914;--cream:#f8f2e9;--gold:#e6bd7c;--line:#dfceba}
body{background:var(--cream);color:var(--ink)}
header{background:#15100e;color:#fff4e4;padding:0 max(5%,calc((100% - 1240px)/2));min-height:92px}
.brand img{display:block;width:100px;height:90px}
nav a{padding:.55rem .35rem;font-weight:700}
nav a[href="/book"]{background:var(--gold);color:var(--ink);border-radius:6px;padding:.55rem 1rem}
.hero{background:#15100e;padding:clamp(.5rem,2vw,2rem) 5%}
.hero img{max-width:1280px;margin:auto;border:1px solid #846744;border-radius:12px}
main{min-height:58vh}
h1,h2{color:var(--ink)}
.intro{border-bottom:1px solid var(--line);padding-block:2.5rem}
.eyebrow{color:#805728;font-weight:800;font-size:.86rem}
.grid{gap:1.35rem;margin-top:1.8rem}
article{background:#fffaf3;border:1px solid var(--line);box-shadow:0 8px 26px #422c1710}
article img{background:#17110e}
.booking-layout,.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(1rem,4vw,4rem);align-items:start}
.booking-layout aside{background:linear-gradient(135deg,#1a1210,#39271d);color:#fff4e4;padding:clamp(1.4rem,4vw,3rem);border-radius:16px}
.booking-layout aside h1,.booking-layout aside .eyebrow{color:var(--gold)}
.form-card{background:#fffaf4;border:1px solid var(--line);border-radius:16px;padding:clamp(1rem,3vw,2rem);box-shadow:0 14px 42px #4a2b1611}
.form-card h2{margin-top:0}
.form-card form{padding:0;gap:1rem}
.form-card label{font-weight:700}
input,select,textarea{background:#fff;color:var(--ink);border-color:#bda78d;min-height:46px}
input:focus,select:focus,textarea:focus{outline:2px solid #946834;outline-offset:2px}
.contact-layout iframe{border-radius:12px}
.site-footer{display:block;background:#15100e;color:#fff4e4;padding:2.5rem 5% 1rem;text-align:start}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem;max-width:1200px;margin:auto}
.footer-grid img{width:105px;height:105px;object-fit:contain}
.footer-grid strong{display:block;color:var(--gold);margin-bottom:.5rem}
.footer-grid a,.footer-grid span{display:block;margin:.25rem 0}
.site-footer small{display:block;text-align:center;border-top:1px solid #a7875d55;margin-top:1.5rem;padding-top:1rem}
@media(max-width:720px){.booking-layout,.contact-layout{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:1rem}.footer-grid>div:first-child{grid-column:1/-1}header{padding-inline:4%;gap:.5rem}.brand img{width:70px;height:72px}nav{gap:.4rem}}
