* { margin:0; padding:0; box-sizing:border-box }
body { font-family:'Helvetica Neue',Helvetica,Arial,sans-serif; color:#111; background:#fff; line-height:1.6; font-size:16px }
a { color:#15803d; text-decoration:none }
a:hover { color:#116600 }
.site-header { display:flex; justify-content:space-between; align-items:center; max-width:1100px; margin:0 auto; padding:20px 30px }
.site-title { font-size:1.2em; font-weight:bold; letter-spacing:1px; text-transform:uppercase; color:#d9a258 }
.site-nav a { margin-left:20px; font-size:.85em; text-transform:uppercase; letter-spacing:.5px; color:#333; font-weight:500 }
.site-nav a:hover { color:#15803d }
.hero { position:relative; min-height:65vh; display:flex; align-items:center; padding:0 30px; overflow:hidden; background-size:cover; background-position:center; background-color:#333; }
.hero::before { content:''; position:absolute; top:0; left:0; width:100%; height:100%; background:linear-gradient(rgba(0,0,0,.35),rgba(0,0,0,.6)); z-index:1 }
.hero-text { position:relative; z-index:2; max-width:800px; margin:0 auto; text-align:center; color:#fff; padding:0 20px }
.hero-kicker { font-size:.8em; text-transform:uppercase; letter-spacing:3px; margin-bottom:10px; color:#d9a258; font-weight:600 }
.hero-title { font-size:3em; font-weight:700; line-height:1.2; margin-bottom:15px; text-shadow:2px 2px 8px rgba(0,0,0,.5) }
.hero-lead { font-size:1.1em; max-width:600px; margin:0 auto 25px; opacity:.9 }
.hero-cta { display:inline-block; padding:12px 35px; background:#d9a258; color:#111; font-weight:700; text-transform:uppercase; letter-spacing:1px; border-radius:0; transition:background .3s; border:2px solid #d9a258 }
.hero-cta:hover { background:#b3884d; border-color:#b3884d; color:#fff }
.section { padding:60px 30px; max-width:1100px; margin:0 auto }
.section-title { font-size:1.8em; font-weight:700; text-transform:uppercase; letter-spacing:1px; margin-bottom:40px; position:relative; display:inline-block }
.section-title::after { content:''; display:block; width:40px; height:3px; background:#d9a258; margin-top:8px }
.intro-text p { margin-bottom:1.2em; font-size:1.05em; color:#333 }
.grid-2 { display:grid; grid-template-columns:repeat(auto-fill,minmax(350px,1fr)); gap:30px }
.card { background:#f9f9f9; padding:30px; border-left:4px solid #d9a258; transition:all .3s; box-shadow:0 2px 5px rgba(0,0,0,.05) }
.card:hover { box-shadow:0 5px 15px rgba(0,0,0,.1); transform:translateY(-2px); border-left-color:#15803d }
.card-title { font-size:1.2em; font-weight:600; margin-bottom:8px; display:flex; align-items:center }
.card-title svg { margin-right:10px; flex-shrink:0 }
.card-blurb { color:#555; font-size:.95em; line-height:1.5 }
.card-blurb p { margin:0 }
.breadcrumb { max-width:1100px; margin:0 auto; padding:20px 30px 0; font-size:.85em; text-transform:uppercase; letter-spacing:.5px; color:#888 }
.breadcrumb a { color:#15803d }
.content-page { max-width:800px; margin:0 auto; padding:30px; line-height:1.7 }
.content-page h2 { font-size:1.6em; margin:1.5em 0 .5em; border-bottom:2px solid #d9a258; padding-bottom:5px; display:inline-block }
.content-page h3 { font-size:1.2em; margin:1.2em 0 .4em }
.content-page p { margin-bottom:1em }
.content-page figure { margin:1.5em 0; text-align:center }
.content-page figure img { max-width:100%; height:auto; border-radius:4px; border:1px solid #ddd; box-shadow:0 2px 8px rgba(0,0,0,.1) }
.content-page figcaption { font-size:.85em; color:#777; margin-top:5px }
.gallery { display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:15px; margin:1.5em 0 }
.gallery figure { margin:0 }
.siblings { margin-top:40px; padding:20px; background:#f5f5f5; border-radius:4px }
.siblings h3 { font-size:1.1em; text-transform:uppercase; letter-spacing:1px; margin-bottom:15px; color:#15803d }
.siblings ul { list-style:none; padding:0 }
.siblings li { margin-bottom:8px }
.siblings a { font-weight:500; display:flex; align-items:center }
.siblings a svg { margin-right:8px }
.footer { background:#111; color:#ccc; padding:40px 30px; text-align:center; font-size:.85em; margin-top:60px; background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23d9a258' fill-opacity='0.1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); background-size:30px 30px }
.footer a { color:#d9a258 }
.footer a:hover { color:#b3884d }
@media (max-width:768px) {
 .hero-title { font-size:2em }
 .hero-lead { font-size:1em }
 .section { padding:40px 20px }
 .grid-2 { grid-template-columns:1fr }
 .site-header { flex-direction:column; align-items:flex-start; gap:10px }
 .site-nav a { margin-left:0; margin-right:15px }
}
@media (max-width:480px) {
 .hero { min-height:50vh }
 .hero-text { padding:0 10px }
}
