
:root {
  --brown:#3a130e;
  --brown-dark:#1f0b08;
  --gold:#d79c48;
  --cream:#fbf8f4;
  --tan:#f3e7dd;
  --text:#211714;
  --muted:#655852;
  --border:#efe4db;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Helvetica Neue",Arial,sans-serif;background:var(--cream);color:var(--text);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.topbar{background:var(--brown-dark);color:#f5d49b;text-align:center;padding:9px 20px;font-size:14px;letter-spacing:.8px}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid #eadfd8}
.header-inner{max-width:1240px;margin:auto;padding:12px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{width:210px;height:auto;object-fit:contain}
nav{display:flex;gap:18px;flex-wrap:wrap;justify-content:flex-end;font-size:12px;text-transform:uppercase;letter-spacing:1.6px;color:var(--brown);font-weight:700}
nav a:hover{color:#b65a22}
.hero{min-height:82vh;display:flex;align-items:center;color:white;padding:90px 5%;background:linear-gradient(90deg,rgba(33,12,8,.86),rgba(33,12,8,.60),rgba(33,12,8,.25)),url("https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&w=2200&q=80") center/cover}
.hero-content{max-width:820px}
.eyebrow{text-transform:uppercase;letter-spacing:5px;color:var(--gold);font-size:12px;font-weight:800;margin-bottom:15px}
h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(44px,7vw,78px);line-height:1.03;margin-bottom:24px;font-weight:500}
h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,5vw,52px);line-height:1.12;color:var(--brown);margin-bottom:18px;font-weight:500}
h3{font-family:Georgia,"Times New Roman",serif;font-size:26px;color:var(--brown);margin-bottom:12px;font-weight:500}
.hero p{max-width:730px;color:#f0e8df;font-size:20px;margin-bottom:34px}
.button{display:inline-block;border-radius:999px;padding:15px 26px;margin:6px 8px 6px 0;font-weight:800;transition:.2s ease;cursor:pointer;border:none;font-size:15px}
.button-gold{background:var(--gold);color:white}
.button-gold:hover{background:#bd7d25}
.button-outline{border:1px solid rgba(255,255,255,.7);color:white}
.button-outline:hover{background:rgba(255,255,255,.12)}
.button-dark{background:var(--brown);color:white}
.button-dark:hover{background:#5b2118}
section{padding:78px 5%}
.container{max-width:1240px;margin:auto}
.center{text-align:center}
.muted{color:var(--muted);font-size:18px}
.search-panel{max-width:1160px;margin:-58px auto 0;position:relative;z-index:5;background:white;border-radius:30px;padding:30px;box-shadow:0 20px 55px rgba(43,17,11,.18);border:1px solid var(--border)}
.search-panel h2{font-size:34px;margin-bottom:18px}
.search-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:12px}
.search-grid.second{grid-template-columns:1fr 1fr 1fr;margin-top:12px}
input,select,textarea{width:100%;padding:15px 17px;border:1px solid #d9cbc0;border-radius:999px;font-size:15px;outline:none;background:white}
textarea{border-radius:22px;min-height:120px;resize:vertical;font-family:inherit}
button{font-family:inherit}
.two-col{display:grid;grid-template-columns:.95fr 1.05fr;gap:52px;align-items:center}
.photo-card{border-radius:34px;overflow:hidden;box-shadow:0 22px 60px rgba(43,17,11,.18)}
.photo-card img{height:560px;width:100%;object-fit:cover}
.intro{background:white}
.about{background:var(--tan)}
.services{background:white}
.dark{background:var(--brown-dark);color:white}
.dark h2,.dark h3{color:white}
.dark .muted{color:#e6d2c5}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:38px}
.card{background:white;border-radius:30px;padding:34px;box-shadow:0 12px 30px rgba(43,17,11,.07);border:1px solid var(--border);min-height:230px}
a.card{color:inherit;text-decoration:none;display:block}
.card:hover{transform:translateY(-4px);transition:.2s ease;box-shadow:0 20px 45px rgba(43,17,11,.13)}
.icon{width:52px;height:52px;border-radius:999px;background:var(--brown);color:#f1c27a;display:flex;align-items:center;justify-content:center;margin-bottom:18px;font-size:24px}
.community-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:35px}
.community{min-height:155px;border-radius:28px;padding:28px;display:flex;align-items:end;background:linear-gradient(rgba(42,13,9,.25),rgba(42,13,9,.75)),url("https://images.unsplash.com/photo-1570129477492-45c003edd2be?auto=format&fit=crop&w=1000&q=80") center/cover;border:1px solid rgba(255,255,255,.18)}
.split-cta{background:var(--tan)}
.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cta-card{border-radius:34px;padding:42px;min-height:245px}
.cta-card.light{background:white;box-shadow:0 12px 35px rgba(43,17,11,.08)}
.cta-card.dark-card{background:var(--brown);color:white}
.cta-card.dark-card h3{color:white}
.form-section{background:white}
.form-card{background:var(--cream);padding:34px;border-radius:30px;box-shadow:0 14px 38px rgba(43,17,11,.08);border:1px solid var(--border)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.full{grid-column:1/-1}
.detail-hero{min-height:46vh;display:flex;align-items:center;color:white;padding:90px 5%;background:linear-gradient(90deg,rgba(33,12,8,.86),rgba(33,12,8,.58)),url("https://images.unsplash.com/photo-1560518883-ce09059eeffa?auto=format&fit=crop&w=1800&q=80") center/cover}
.detail-list{margin-top:22px;padding-left:22px;color:var(--muted);font-size:18px;line-height:1.9}
.back-link{display:inline-block;margin-bottom:20px;color:var(--gold);font-weight:800}
.thank-you-body{display:flex;min-height:100vh;align-items:center;justify-content:center;text-align:center;padding:30px}
.thank-you-box{max-width:720px;background:white;border-radius:28px;padding:48px;box-shadow:0 18px 45px rgba(43,17,11,.14);border:1px solid var(--border)}
footer{background:var(--brown-dark);color:#dfc9ba;padding:48px 5%}
.footer-grid{max-width:1240px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:36px;align-items:start}
.footer-logo{background:white;padding:10px;border-radius:16px;width:230px;margin-bottom:16px}
.small{font-size:13px;color:#7a6a60}
footer .small{color:#cbb5a7}
@media(max-width:950px){
  .header-inner{display:block;text-align:center}
  .logo{margin:auto;width:190px}
  nav{justify-content:center;margin-top:14px;gap:12px;font-size:11px}
  .hero{min-height:72vh}
  .search-grid,.search-grid.second,.two-col,.cards,.community-grid,.cta-grid,.form-grid,.footer-grid{grid-template-columns:1fr}
  .full{grid-column:auto}
  .photo-card img{height:380px}
}
