:root{--ch:#2b2d30;--ch2:#3a3d42;--gd:#b8975a;--gl:#d8bd85;--cr:#fbfaf6;--sand:#f3ead6}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Georgia,'Times New Roman',serif;color:var(--ch);background:var(--cr);line-height:1.6}
a{color:inherit}
header{position:sticky;top:0;z-index:10;background:var(--ch);border-bottom:3px solid var(--gd)}
.nav{max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:.7rem 1.2rem;gap:1rem;flex-wrap:wrap}
.brand{color:#fff;text-decoration:none;font-weight:bold;letter-spacing:1px;font-size:1.15rem}
.brand small{display:block;color:var(--gl);font-style:italic;font-weight:normal;letter-spacing:0;font-size:.8rem}
.nav nav a{color:#ddd;text-decoration:none;margin-left:1.1rem;font-family:Arial,sans-serif;font-size:.9rem;text-transform:uppercase;letter-spacing:1px}
.nav nav a:hover{color:var(--gl)}
.hero{position:relative;min-height:78vh;display:flex;align-items:flex-end;background:#222 url(img/freer.jpg) center/cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(30,31,34,.92),rgba(30,31,34,.25) 60%,rgba(30,31,34,.1))}
.hero .in{position:relative;z-index:1;max-width:1100px;margin:auto;width:100%;padding:3rem 1.2rem;color:#fff}
.hero h1{font-size:clamp(2.2rem,6vw,4rem);margin:0;line-height:1.1}
.hero p{font-size:1.25rem;color:var(--gl);font-style:italic;margin:.6rem 0 1.4rem}
.btn{display:inline-block;background:var(--gd);color:var(--ch);padding:.8rem 1.5rem;text-decoration:none;font-family:Arial,sans-serif;font-weight:bold;letter-spacing:1px;text-transform:uppercase;font-size:.9rem;border:2px solid var(--gd)}
.btn.o{background:transparent;color:#fff;margin-left:.6rem}
section{padding:4rem 1.2rem}.wrap{max-width:1100px;margin:auto}
h2{font-size:2rem;margin:0 0 .4rem}h2+.rule{width:70px;height:3px;background:var(--gd);margin:0 0 1.6rem}
.about{display:grid;grid-template-columns:1.2fr 1fr;gap:2.5rem;align-items:center}
.about img{width:100%;border:6px solid #fff;box-shadow:0 6px 24px rgba(0,0,0,.18)}
.lead{font-size:1.15rem}
.dark{background:var(--ch);color:#eee}.dark h2{color:#fff}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.2rem}
.card{background:var(--ch2);border-top:4px solid var(--gd);padding:1.4rem}
.card h3{margin:0 0 .4rem;color:var(--gl);font-size:1.2rem}.card p{margin:0;font-family:Arial,sans-serif;font-size:.95rem;color:#ccc}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}
.gal button{padding:0;border:0;background:none;cursor:zoom-in;display:block}
.gal img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .3s}
.gal button:hover img{transform:scale(1.03)}
.gal figcaption{font-size:.9rem;color:#666;font-style:italic;padding:.3rem 0}
.note{font-size:.85rem;color:#777;margin-top:1rem}
.offers{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.offer{background:var(--sand);border:2px solid var(--gd);padding:1.6rem;text-align:center}
.offer h3{margin:0 0 .4rem;font-size:1.4rem}
.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:2.5rem}
.big{font-size:1.9rem;color:var(--gd);font-weight:bold;text-decoration:none}
.info p{margin:.3rem 0}
form{display:grid;gap:.8rem}
label{font-family:Arial,sans-serif;font-size:.85rem;text-transform:uppercase;letter-spacing:1px}
input,select,textarea{width:100%;padding:.7rem;border:1px solid #bbb;font:inherit;background:#fff}
.ph{background:#fff8e1;border:1px dashed var(--gd);padding:.6rem;font-family:Arial,sans-serif;font-size:.8rem}
footer{background:var(--ch);color:#bbb;text-align:center;padding:1.8rem 1rem;border-top:6px solid var(--gd);font-size:.9rem}
footer b{color:var(--gl)}
#lb{position:fixed;inset:0;background:rgba(10,10,12,.97);display:none;align-items:center;justify-content:center;z-index:50;flex-direction:column}
#lb.on{display:flex}#lb img{max-width:92vw;max-height:82vh;border:4px solid #fff}
#lb p{color:#ddd;font-style:italic}#lb .x,#lb .pv,#lb .nx{position:absolute;color:#fff;background:none;border:0;font-size:2.4rem;cursor:pointer;padding:1rem}
#lb .x{top:0;right:0}#lb .pv{left:0}#lb .nx{right:0}
@media(max-width:760px){.about,.contact,.offers{grid-template-columns:1fr}.nav nav{width:100%}.nav nav a{margin:0 .8rem 0 0;font-size:.8rem}.hero{min-height:65vh}.btn.o{margin:.6rem 0 0}section{padding:3rem 1.1rem}}
figure{margin:0}
.gal img{object-fit:contain;background:#2b2d30}
.hero::after{background:linear-gradient(90deg,rgba(30,31,34,.88),rgba(30,31,34,.55) 55%,rgba(30,31,34,.15)),linear-gradient(to top,rgba(30,31,34,.7),transparent 50%)}
.hero h1,.hero p{text-shadow:0 2px 8px rgba(0,0,0,.6)}
