:root { --roos-green: #254c31; --roos-dark: #183422; --roos-cream: #f5f2e9; --roos-gold: #b58b45; }
body { color: #334037; font-family: Georgia, "Times New Roman", serif; font-size: 17px; line-height: 1.7; }
h1, h2, h3, .navbar-nav { font-family: "Helvetica Neue", Arial, sans-serif; }
h1, h2 { color: var(--roos-dark); font-weight: 600; letter-spacing: -.03em; }
h2 { font-size: 38px; line-height: 1.15; }
#navbar { border: 0; box-shadow: 0 1px 10px rgba(0,0,0,.08); min-height: 78px; }
.navbar-brand { height: 78px; padding: 10px 15px; }
.navbar-brand img { max-height: 57px; width: auto; }
.navbar-nav > li > a { color: var(--roos-dark); font-size: 13px; font-weight: 700; letter-spacing: .06em; padding: 29px 13px; text-transform: uppercase; }
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > li > a:hover { color: var(--roos-green); background: transparent; }
.hero { background-position: center; background-size: cover; color: white; min-height: 610px; display: flex; align-items: center; }
.hero-content { padding: 125px 15px 85px; }
.hero h1 { color: white; font-size: clamp(48px, 7vw, 82px); line-height: .96; margin: 12px 0 25px; }
.hero-copy { font-size: 22px; line-height: 1.45; max-width: 590px; }
.eyebrow { color: var(--roos-gold); font-family: "Helvetica Neue", Arial, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.hero .eyebrow { color: #f1d7a5; }
.hero-button { border-radius: 0; font-family: Arial, sans-serif; font-size: 13px; font-weight: bold; letter-spacing: .08em; margin-top: 14px; padding: 13px 22px; text-transform: uppercase; }
.section-space { padding: 76px 0; }
.narrow { max-width: 780px; text-align: center; }
.narrow p:last-child { font-size: 20px; }
.cards-section { background: var(--roos-cream); padding-top: 55px; padding-bottom: 55px; }
.home-card { display: block; margin: 15px 0; overflow: hidden; position: relative; color: white; }
.home-card:after { background: linear-gradient(transparent 35%, rgba(15,30,18,.75)); content: ""; inset: 0; position: absolute; }
.home-card img { height: 300px; object-fit: cover; transition: transform .35s ease; width: 100%; }
.home-card:hover img { transform: scale(1.04); }
.home-card span { bottom: 22px; left: 25px; position: absolute; z-index: 1; }
.home-card small, .home-card strong { display: block; }
.home-card small { font-family: Arial, sans-serif; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.home-card strong { font-family: Arial, sans-serif; font-size: 25px; }
.vertical-center { display: flex; align-items: center; }
.season { background: white; }
.season-image { width: 100%; }
.text-link { color: var(--roos-green); font-family: Arial, sans-serif; font-size: 13px; font-weight: bold; letter-spacing: .05em; text-transform: uppercase; }
#heading-breadcrumbs { background: var(--roos-cream); border-top: 0; padding: 38px 0; }
#heading-breadcrumbs h1 { font-size: 42px; }
#content { padding: 52px 0; }
#content .container { max-width: 850px; }
#content p { margin-bottom: 1.35em; }
.detail-with-image { align-items: flex-start; display: flex; }
.detail-image { padding-left: 30px; }
.detail-image img { box-shadow: 0 12px 30px rgba(24,52,34,.14); width: 100%; }
#footer { background: var(--roos-dark); color: rgba(255,255,255,.82); padding: 48px 0 30px; }
#footer h4 { color: white; }
#footer a { color: #f1d7a5; }
#copyright { background: #112619; }
@media (max-width: 767px) { .navbar-brand img { max-height: 48px; } .navbar-nav > li > a { padding: 12px 15px; } .hero { min-height: 520px; } .section-space { padding: 54px 0; } .vertical-center, .detail-with-image { display: block; } .detail-image { padding: 25px 15px 0; } h2 { font-size: 32px; } }
