:root {
  --bg: #f4eee7;
  --panel: rgba(255,255,255,.78);
  --text: #241b18;
  --muted: #67544c;
  --line: rgba(36,27,24,.12);
  --accent: #b4683c;
  --accent-2: #23424a;
  --shadow: 0 18px 60px rgba(27, 20, 18, 0.12);
}
* { box-sizing: border-box; }
body { margin:0; font-family: Georgia, "Times New Roman", serif; color:var(--text); background:radial-gradient(circle at top left, rgba(180,104,60,.16), transparent 25%), radial-gradient(circle at 85% 20%, rgba(35,66,74,.12), transparent 22%), linear-gradient(180deg, #f7f1ea 0%, #efe4d8 100%); line-height:1.6; }
a { color:inherit; text-decoration:none; }
.container { width:min(1120px, calc(100% - 40px)); margin:0 auto; }
header { position:sticky; top:0; z-index:5; backdrop-filter:blur(14px); background:rgba(244,238,231,.84); border-bottom:1px solid var(--line); }
.nav { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:16px 0; }
.brand { font-size:1.3rem; letter-spacing:.08em; text-transform:uppercase; font-weight:700; }
nav { display:flex; flex-wrap:wrap; gap:18px; font-size:.95rem; color:var(--muted); }
.hero, .page-hero { padding:72px 0 42px; display:grid; grid-template-columns:1.25fr .95fr; gap:28px; align-items:stretch; }
.hero-copy, .hero-card, .card, .banner { background:var(--panel); border:1px solid rgba(255,255,255,.5); box-shadow:var(--shadow); border-radius:28px; }
.hero-copy, .hero-card, .card, .banner { padding:30px; }
.eyebrow { display:inline-block; padding:8px 12px; border-radius:999px; font-size:.78rem; letter-spacing:.08em; text-transform:uppercase; color:var(--accent-2); background:rgba(35,66,74,.08); margin-bottom:18px; }
h1,h2,h3 { margin:0 0 16px; line-height:1.08; }
h1 { font-size:clamp(2.7rem, 5vw, 5.4rem); }
h2 { font-size:clamp(1.9rem, 3vw, 3rem); }
p { margin:0 0 16px; color:var(--muted); }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.button { padding:14px 20px; border-radius:14px; border:1px solid transparent; font-weight:700; font-size:.95rem; }
.button.primary { background:var(--accent); color:#fff; }
.button.secondary { border-color:var(--line); background:rgba(255,255,255,.5); }
.hero-card { background:linear-gradient(155deg, rgba(35,66,74,.95), rgba(23,23,23,.92)), #1b1b1b; color:#f5f1ed; }
.hero-card p { color:rgba(245,241,237,.8); }
.photo-grid, .grid-3, .grid-4, .faq, .contact-grid { display:grid; gap:18px; }
.photo-grid { grid-template-columns:repeat(2,1fr); margin-top:26px; gap:12px; }
.tile { min-height:124px; border-radius:18px; padding:16px; display:flex; align-items:end; color:#fff; font-weight:700; }
.tile:nth-child(1) { background:linear-gradient(120deg, #bb8358, #6b4333); }
.tile:nth-child(2) { background:linear-gradient(120deg, #3b5e69, #19303a); }
.tile:nth-child(3) { background:linear-gradient(120deg, #8c604d, #40281f); }
.tile:nth-child(4) { background:linear-gradient(120deg, #7b6a58, #2e2a26); }
section { padding:24px 0 18px; }
.grid-3 { grid-template-columns:repeat(3,1fr); }
.grid-4 { grid-template-columns:repeat(4,1fr); }
.faq, .contact-grid { grid-template-columns:repeat(2,1fr); }
.metric { background:var(--panel); border:1px solid rgba(255,255,255,.5); box-shadow:var(--shadow); border-radius:24px; padding:20px; text-align:center; }
.metric strong { display:block; font-size:2rem; color:var(--accent-2); }
.footer-box { border-top:1px solid var(--line); padding:24px 0 64px; display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; color:var(--muted); }
.list { margin:0; padding-left:18px; color:var(--muted); }
@media (max-width: 960px) { .hero, .page-hero, .grid-3, .grid-4, .faq, .contact-grid { grid-template-columns:1fr; } }
@media (max-width: 640px) { .container { width:min(100% - 24px, 1120px); } .hero-copy, .hero-card, .card, .banner { padding:24px; border-radius:22px; } nav { gap:12px; } }
